diff options
Diffstat (limited to 'nixpkgs/pkgs/top-level')
48 files changed, 84714 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/top-level/agda-packages.nix b/nixpkgs/pkgs/top-level/agda-packages.nix new file mode 100644 index 000000000000..18c32b9a9d92 --- /dev/null +++ b/nixpkgs/pkgs/top-level/agda-packages.nix @@ -0,0 +1,40 @@ +{ pkgs, lib, callPackage, newScope, Agda }: + +let + mkAgdaPackages = Agda: lib.makeScope newScope (mkAgdaPackages' Agda); + mkAgdaPackages' = Agda: self: let + callPackage = self.callPackage; + inherit (callPackage ../build-support/agda { + inherit Agda self; + inherit (pkgs.haskellPackages) ghcWithPackages; + }) withPackages mkDerivation; + in { + inherit mkDerivation; + + lib = lib.extend (final: prev: import ../build-support/agda/lib.nix { lib = prev; }); + + agda = withPackages [] // { + inherit withPackages; + passthru.tests.allPackages = withPackages (lib.filter (pkg: self.lib.isUnbrokenAgdaPackage pkg) (lib.attrValues self)); + }; + + standard-library = callPackage ../development/libraries/agda/standard-library { + inherit (pkgs.haskellPackages) ghcWithPackages; + }; + + iowa-stdlib = callPackage ../development/libraries/agda/iowa-stdlib { }; + + agda-prelude = callPackage ../development/libraries/agda/agda-prelude { }; + + agda-categories = callPackage ../development/libraries/agda/agda-categories { }; + + cubical = callPackage ../development/libraries/agda/cubical { }; + + functional-linear-algebra = callPackage + ../development/libraries/agda/functional-linear-algebra { }; + + generic = callPackage ../development/libraries/agda/generic { }; + + agdarsec = callPackage ../development/libraries/agda/agdarsec { }; + }; +in mkAgdaPackages Agda diff --git a/nixpkgs/pkgs/top-level/aliases.nix b/nixpkgs/pkgs/top-level/aliases.nix new file mode 100644 index 000000000000..46a74b391a51 --- /dev/null +++ b/nixpkgs/pkgs/top-level/aliases.nix @@ -0,0 +1,1455 @@ +lib: self: super: + +with self; + +let + # Removing recurseForDerivation prevents derivations of aliased attribute set + # to appear while listing all the packages available. + removeRecurseForDerivations = alias: with lib; + if alias.recurseForDerivations or false + then removeAttrs alias ["recurseForDerivations"] + else alias; + + # Disabling distribution prevents top-level aliases for non-recursed package + # sets from building on Hydra. + removeDistribute = alias: with lib; + if isDerivation alias then + dontDistribute alias + else alias; + + # Make sure that we are not shadowing something from all-packages.nix. + checkInPkgs = n: alias: + if builtins.hasAttr n super + then throw "Alias ${n} is still in all-packages.nix" + else alias; + + mapAliases = aliases: + lib.mapAttrs (n: alias: + removeDistribute + (removeRecurseForDerivations + (checkInPkgs n alias))) + aliases; +in + +### Deprecated aliases - for backward compatibility +### Please maintain this list in ASCIIbetical ordering. +### Hint: the "sections" are delimited by ### <letter> ### + +# A script to convert old aliases to throws and remove old +# throws can be found in './maintainers/scripts/remove-old-aliases.py'. + +mapAliases ({ + # forceSystem should not be used directly in Nixpkgs. + # Added 2018-07-16 + forceSystem = system: _: + (import self.path { localSystem = { inherit system; }; }); + + _0x0 = throw "0x0 upstream is abandoned and no longer exists: https://gitlab.com/somasis/scripts/"; + + ### A ### + + accounts-qt = throw "'accounts-qt' has been renamed to/replaced by 'libsForQt5.accounts-qt'"; # Converted to throw 2022-02-22 + adobeReader = throw "'adobeReader' has been renamed to/replaced by 'adobe-reader'"; # Converted to throw 2022-02-22 + adobe_flex_sdk = throw "'adobe_flex_sdk' has been renamed to/replaced by 'apache-flex-sdk'"; # Converted to throw 2022-02-22 + aesop = throw "aesop has been removed from nixpkgs, as it was unmaintained."; # Added 2021-08-05 + ag = throw "'ag' has been renamed to/replaced by 'silver-searcher'"; # Converted to throw 2022-02-22 + aircrackng = throw "'aircrackng' has been renamed to/replaced by 'aircrack-ng'"; # Converted to throw 2022-02-22 + airtame = throw "airtame has been removed due to being unmaintained."; # Added 2022-01-19 + aleth = throw "aleth (previously packaged as cpp_ethereum) has been removed; abandoned upstream."; # Added 2020-11-30 + alienfx = throw "alienfx has been removed."; # Added 2019-12-08 + alsaLib = alsa-lib; # Added 2021-06-09 + alsaOss = alsa-oss; # Added 2021-06-10 + alsaPluginWrapper = alsa-plugins-wrapper; # Added 2021-06-10 + alsaPlugins = alsa-plugins; # Added 2021-06-10 + alsaTools = alsa-tools; # Added 2021-06-10 + alsaUtils = alsa-utils; # Added 2021-06-10 + amazon-glacier-cmd-interface = throw "amazon-glacier-cmd-interface has been removed due to it being unmaintained."; # Added 2020-10-30 + aminal = throw "aminal was renamed to darktile."; # Added 2021-09-28 + ammonite-repl = throw "'ammonite-repl' has been renamed to/replaced by 'ammonite'"; # Converted to throw 2022-02-22 + amuleDaemon = throw "amuleDaemon was renamed to amule-daemon."; # Added 2022-02-11 + amuleGui = throw "amuleGui was renamed to amule-gui."; # Added 2022-02-11 + amsn = throw "amsn has been removed due to being unmaintained."; # Added 2020-12-09 + angelfish = libsForQt5.plasmaMobileGear.angelfish; # Added 2021-10-06 + antimicro = throw "antimicro has been removed as it was broken, see antimicrox instead."; # Added 2020-08-06 + antimicroX = antimicrox; # Added 2021-10-31 + ardour_5 = throw "ardour_5 has been removed. see https://github.com/NixOS/nixpkgs/issues/139549"; # Added 2021-09-28 + arduino_core = throw "'arduino_core' has been renamed to/replaced by 'arduino-core'"; # Converted to throw 2022-02-22 + arora = throw "arora has been removed."; # Added 2020-09-09 + asciidocFull = throw "'asciidocFull' has been renamed to/replaced by 'asciidoc-full'"; # Converted to throw 2022-02-22 + asn1c = throw "asn1c has been removed: deleted by upstream"; # Added 2022-01-07 + asterisk_15 = throw "asterisk_15: Asterisk 15 is end of life and has been removed."; # Added 2020-10-07 + at_spi2_atk = throw "'at_spi2_atk' has been renamed to/replaced by 'at-spi2-atk'"; # Converted to throw 2022-02-22 + at_spi2_core = throw "'at_spi2_core' has been renamed to/replaced by 'at-spi2-core'"; # Converted to throw 2022-02-22 + aucdtect = throw "aucdtect: Upstream no longer provides download urls."; # Added 2020-12-26 + avldrums-lv2 = x42-avldrums; # Added 2020-03-29 + avxsynth = throw "avxsynth was removed because it was broken"; # Added 2021-05-18 + azureus = throw "azureus is now known as vuze and the version in nixpkgs was really outdated"; # Added 2021-08-02 + + ### B ### + + badtouch = authoscope; # Project was renamed, added 20210626 + bar-xft = throw "'bar-xft' has been renamed to/replaced by 'lemonbar-xft'"; # Converted to throw 2022-02-22 + bashCompletion = throw "'bashCompletion' has been renamed to/replaced by 'bash-completion'"; # Converted to throw 2022-02-22 + bashInteractive_5 = bashInteractive; # Added 2021-08-20 + bash_5 = bash; # Added 2021-08-20 + bashburn = throw "bashburn has been removed: deleted by upstream"; # Added 2022-01-07 + batti = throw "batti has been removed from nixpkgs, as it was unmaintained"; # Added 2019-12-10 + bazaar = throw "bazaar has been deprecated by breezy."; # Added 2020-04-19 + bazaarTools = throw "bazaar has been deprecated by breezy."; # Added 2020-04-19 + bcat = throw "bcat has been removed because upstream is dead"; # Added 2021-08-22 + beegfs = throw "beegfs has been removed."; # Added 2019-11-24 + beret = throw "beret has been removed"; # Added 2021-11-16 + bin_replace_string = throw "bin_replace_string has been removed: deleted by upstream"; # Added 2022-01-07 + bitsnbots = throw "bitsnbots has been removed because it was broken and upstream missing"; # Added 2021-08-22 + blastem = throw "blastem has been removed from nixpkgs as it would still require python2."; # Added 2022-01-01 + bluezFull = bluez; # Added 2019-12-03 + bomi = throw "bomi has been removed from nixpkgs since it was broken and abandoned upstream"; # Added 2020-12-10 + bootchart = throw "bootchart has been removed from nixpkgs, as it is without a maintainer"; # Added 2019-12-10 + bpftool = bpftools; # Added 2021-05-03 + brackets = throw "brackets has been removed, it was unmaintained and had open vulnerabilities"; # Added 2021-01-24 + bridge_utils = throw "'bridge_utils' has been renamed to/replaced by 'bridge-utils'"; # Converted to throw 2022-02-22 + bro = zeek; # Added 2019-09-29 + bird2 = bird; # Added 2022-02-21 + bird6 = throw "bird6 was dropped. Use bird instead, which has support for both ipv4/ipv6"; # Added 2022-02-21 + btrfsProgs = throw "'btrfsProgs' has been renamed to/replaced by 'btrfs-progs'"; # Converted to throw 2022-02-22 + + # bitwarden_rs renamed to vaultwarden with release 1.21.0 (2021-04-30) + bitwarden_rs = vaultwarden; + bitwarden_rs-mysql = vaultwarden-mysql; + bitwarden_rs-postgresql = vaultwarden-postgresql; + bitwarden_rs-sqlite = vaultwarden-sqlite; + bitwarden_rs-vault = vaultwarden-vault; + + + blink = throw "blink has been removed from nixpkgs, it was unmaintained and required python2 at the time of removal."; # Added 2022-01-12 + bs1770gain = throw "bs1770gain has been removed from nixpkgs, as it had no maintainer or reverse dependencies."; # Added 2021-01-02 + bsod = throw "bsod has been removed: deleted by upstream"; # Added 2022-01-07 + btc1 = throw "btc1 has been removed, it was abandoned by upstream"; # Added 2020-11-03 + buildPerlPackage = throw "'buildPerlPackage' has been renamed to/replaced by 'perlPackages.buildPerlPackage'"; # Converted to throw 2022-02-22 + buildkite-agent3 = throw "'buildkite-agent3' has been renamed to/replaced by 'buildkite-agent'"; # Converted to throw 2022-02-22 + bundler_HEAD = throw "'bundler_HEAD' has been renamed to/replaced by 'bundler'"; # Converted to throw 2022-02-22 + bunny = throw "bunny has been removed: deleted by upstream"; # Added 2022-01-07 + bypass403 = throw "bypass403 has been removed: deleted by upstream"; # Added 2022-01-07 + + ### C ### + + caddy1 = throw "caddy 1.x has been removed from nixpkgs, as it's unmaintained: https://github.com/caddyserver/caddy/blob/master/.github/SECURITY.md#supported-versions"; # Added 2020-10-02 + calibre-py2 = throw "calibre-py2 has been removed from nixpkgs, as calibre has upgraded to python 3. Please use calibre as replacement."; # Added 2021-01-13 + calibre-py3 = throw "calibre-py3 has been removed from nixpkgs, as calibre's default python version is now 3. Please use calibre as replacement."; # Added 2021-01-13 + cantarell_fonts = throw "'cantarell_fonts' has been renamed to/replaced by 'cantarell-fonts'"; # Converted to throw 2022-02-22 + cargo-tree = throw "cargo-tree has been removed, use the builtin `cargo tree` command instead."; # Added 2020-08-20 + casperjs = throw "casperjs has been removed, it was abandoned by upstream and broken."; + catfish = xfce.catfish; # Added 2019-12-22 + ccnet = throw "ccnet has been removed because seafile does not depend on it anymore"; # Added 2021-03-25 + cde-gtk-theme = throw "cde-gtk-theme has been removed from nixpkgs as it shipped with python2 scripts that didn't work anymore."; # Added 2022-01-12 + cgmanager = throw "cgmanager was deprecated by lxc and therefore removed from nixpkgs."; # Added 2020-06-05 + checkbashism = throw "'checkbashism' has been renamed to/replaced by 'checkbashisms'"; # Converted to throw 2022-02-22 + chronos = throw "chronos has been removed from nixpkgs, as it was unmaintained"; # Added 2020-08-15 + chunkwm = throw "chunkwm has been removed: abandoned by upstream"; # Added 2022-01-07 + cide = throw "cide was deprecated on 2019-09-11: abandoned by upstream"; + cifs_utils = throw "'cifs_utils' has been renamed to/replaced by 'cifs-utils'"; # Converted to throw 2022-02-22 + cinepaint = throw "cinepaint has been removed from nixpkgs, as it was unmaintained"; # Added 2019-12-10 + ckb = throw "'ckb' has been renamed to/replaced by 'ckb-next'"; # Converted to throw 2022-02-22 + callPackage_i686 = pkgsi686Linux.callPackage; + creddump = throw "creddump has been removed from nixpkgs as the upstream has abandoned the project."; # Added 2022-01-01 + + # these are for convenience, not for backward compat and shouldn't expire + clang5Stdenv = lowPrio llvmPackages_5.stdenv; + clang6Stdenv = lowPrio llvmPackages_6.stdenv; + clang7Stdenv = lowPrio llvmPackages_7.stdenv; + clang8Stdenv = lowPrio llvmPackages_8.stdenv; + clang9Stdenv = lowPrio llvmPackages_9.stdenv; + clang10Stdenv = lowPrio llvmPackages_10.stdenv; + clang11Stdenv = lowPrio llvmPackages_11.stdenv; + clang12Stdenv = lowPrio llvmPackages_12.stdenv; + clang13Stdenv = lowPrio llvmPackages_13.stdenv; + + clangAnalyzer = throw "'clangAnalyzer' has been renamed to/replaced by 'clang-analyzer'"; # Converted to throw 2022-02-22 + claws-mail-gtk2 = throw "claws-mail-gtk2 was removed to get rid of Python 2, please use claws-mail"; # Added 2021-12-05 + claws-mail-gtk3 = claws-mail; # Added 2021-07-10 + clawsMail = throw "'clawsMail' has been renamed to/replaced by 'claws-mail'"; # Converted to throw 2022-02-22 + clutter_gtk = throw "'clutter_gtk' has been renamed to/replaced by 'clutter-gtk'"; # Converted to throw 2022-02-22 + cmakeWithQt4Gui = throw "cmakeWithQt4Gui has been removed in favor of cmakeWithGui (Qt 5)"; # Added 2021-05 + codimd = hedgedoc; # Added 2020-11-29 + compton = picom; # Added 2019-12-02 + compton-git = throw "'compton-git' has been renamed to/replaced by 'compton'"; # Converted to throw 2022-02-22 + concurrencykit = libck; # Added 2021-03 + conntrack_tools = throw "'conntrack_tools' has been renamed to/replaced by 'conntrack-tools'"; # Converted to throw 2022-02-22 + cool-old-term = throw "'cool-old-term' has been renamed to/replaced by 'cool-retro-term'"; # Converted to throw 2022-02-22 + coprthr = throw "coprthr has been removed."; # Added 2019-12-08 + coredumper = throw "coredumper has been removed: abandoned by upstream."; # Added 2019-11-16 + corsmisc = throw "corsmisc has been removed (upstream is gone)"; # Added 2022-01-24 + couchdb = throw "couchdb was removed from nixpkgs, use couchdb3 instead"; # Added 2021-03-03 + couchdb2 = throw "couchdb2 was removed from nixpkgs, use couchdb3 instead"; # Added 2021-03-03 + cpp-gsl = throw "'cpp-gsl' has been renamed to/replaced by 'microsoft_gsl'"; # Converted to throw 2022-02-22 + cpp_ethereum = throw "cpp_ethereum has been removed; abandoned upstream."; # Added 2020-11-30 + cpuminer-multi = throw "cpuminer-multi has been removed: deleted by upstream"; # Added 2022-01-07 + crafty = throw "crafty has been removed: deleted by upstream"; # Added 2022-01-07 + cryptol = throw "cryptol was removed due to prolonged broken build"; # Added 2020-08-21 + + # CUDA Toolkit + + cudatoolkit_6 = throw "cudatoolkit_6 has been removed in favor of newer versions"; # Added 2021-02-14 + cudatoolkit_65 = throw "cudatoolkit_65 has been removed in favor of newer versions"; # Added 2021-02-14 + cudatoolkit_7 = throw "cudatoolkit_7 has been removed in favor of newer versions"; # Added 2021-02-14 + cudatoolkit_7_5 = throw "cudatoolkit_7_5 has been removed in favor of newer versions"; # Added 2021-02-14 + cudatoolkit_8 = throw "cudatoolkit_8 has been removed in favor of newer versions"; # Added 2021-02-14 + cudatoolkit_9 = throw "cudatoolkit_9 has been removed in favor of newer versions"; # Added 2021-04-18 + cudatoolkit_9_0 = throw "cudatoolkit_9_0 has been removed in favor of newer versions"; # Added 2021-04-18 + cudatoolkit_9_1 = throw "cudatoolkit_9_1 has been removed in favor of newer versions"; # Added 2021-04-18 + cudatoolkit_9_2 = throw "cudatoolkit_9_2 has been removed in favor of newer versions"; # Added 2021-04-18 + cudnn6_cudatoolkit_8 = throw "cudnn6_cudatoolkit_8 has been removed in favor of newer versions"; # Added 2021-02-14 + cudnn_cudatoolkit_7 = throw "cudnn_cudatoolkit_7 has been removed in favor of newer versions"; # Added 2021-02-14 + cudnn_cudatoolkit_7_5 = throw "cudnn_cudatoolkit_7_5 has been removed in favor of newer versions"; # Added 2021-02-14 + cudnn_cudatoolkit_8 = throw "cudnn_cudatoolkit_8 has been removed in favor of newer versions"; # Added 2021-02-14 + cudnn_cudatoolkit_9 = throw "cudnn_cudatoolkit_9 has been removed in favor of newer versions"; # Added 2021-04-18 + cudnn_cudatoolkit_9_0 = throw "cudnn_cudatoolkit_9_0 has been removed in favor of newer versions"; # Added 2021-04-18 + cudnn_cudatoolkit_9_1 = throw "cudnn_cudatoolkit_9_1 has been removed in favor of newer versions"; # Added 2021-04-18 + cudnn_cudatoolkit_9_2 = throw "cudnn_cudatoolkit_9_2 has been removed in favor of newer versions"; # Added 2021-04-18 + + cloud-print-connector = throw "Google Cloudprint is officially discontinued since Jan 2021, more info https://support.google.com/chrome/a/answer/9633006"; + cquery = throw "cquery has been removed because it is abandoned by upstream. Consider switching to clangd or ccls instead."; # Added 2020-06-15 + cups-googlecloudprint = throw "Google Cloudprint is officially discontinued since Jan 2021, more info https://support.google.com/chrome/a/answer/9633006"; + cupsBjnp = throw "'cupsBjnp' has been renamed to/replaced by 'cups-bjnp'"; # Converted to throw 2022-02-22 + cups_filters = throw "'cups_filters' has been renamed to/replaced by 'cups-filters'"; # Converted to throw 2022-02-22 + curaByDagoma = throw "curaByDagoma has been removed from nixpkgs, because it was unmaintained and dependent on python2 packages."; # Added 2022-01-12 + curaLulzbot = throw "curaLulzbot has been removed due to insufficient upstream support for a modern dependency chain"; # Added 2021-10-23 + cv = throw "'cv' has been renamed to/replaced by 'progress'"; # Converted to throw 2022-02-22 + cvs_fast_export = cvs-fast-export; # Added 2021-06-10 + + ### D ### + + d1x_rebirth = throw "'d1x_rebirth' has been renamed to/replaced by 'dxx-rebirth'"; # Converted to throw 2022-02-22 + d2x_rebirth = throw "'d2x_rebirth' has been renamed to/replaced by 'dxx-rebirth'"; # Converted to throw 2022-02-22 + dart_dev = throw "Non-stable versions of Dart have been removed."; # Added 2020-01-15 + dart_old = throw "Non-stable versions of Dart have been removed."; # Added 2020-01-15 + dart_stable = dart; # Added 2020-01-15 + dat = nodePackages.dat; + dbus_daemon = throw "'dbus_daemon' has been renamed to/replaced by 'dbus.daemon'"; # Converted to throw 2022-02-22 + dbus_glib = throw "'dbus_glib' has been renamed to/replaced by 'dbus-glib'"; # Converted to throw 2022-02-22 + dbus_libs = throw "'dbus_libs' has been renamed to/replaced by 'dbus'"; # Converted to throw 2022-02-22 + dbus_tools = throw "'dbus_tools' has been renamed to/replaced by 'dbus.out'"; # Converted to throw 2022-02-22 + dbvisualizer = throw "dbvisualizer has been removed from nixpkgs, as it's unmaintained"; # Added 2020-09-20 + deadbeef-mpris2-plugin = throw "'deadbeef-mpris2-plugin' has been renamed to/replaced by 'deadbeefPlugins.mpris2'"; # Converted to throw 2022-02-22 + deadpixi-sam = deadpixi-sam-unstable; + + debian_devscripts = throw "'debian_devscripts' has been renamed to/replaced by 'debian-devscripts'"; # Converted to throw 2022-02-22 + debugedit-unstable = debugedit; # Added 2021-11-22 + deepin = throw "deepin was a work in progress and it has been canceled and removed https://github.com/NixOS/nixpkgs/issues/94870"; # added 2020-08-31 + deepspeech = throw "deepspeech was removed in favor of stt. https://github.com/NixOS/nixpkgs/issues/119496"; # added 2021-05-05 + deisctl = throw "deisctl was removed ; the service does not exist anymore"; # added 2022-02-06 + deis = throw "deis was removed ; the service does not exist anymore"; # added 2022-02-06 + deltachat-electron = deltachat-desktop; # added 2021-07-18 + diffuse = throw "diffuse has been removed from nixpkgs, as it's unmaintained"; # Added 2019-12-10 + + deluge-1_x = throw '' + Deluge 1.x (deluge-1_x) is no longer supported. + Please use Deluge 2.x (deluge-2_x) instead, for example: + + services.deluge.package = pkgs.deluge-2_x; + + Note that it is NOT possible to switch back to Deluge 1.x after this change. + ''; # Added 2021-08-18 + + demjson = with python3Packages; toPythonApplication demjson; # Added 2022-01-18 + desktop_file_utils = throw "'desktop_file_utils' has been renamed to/replaced by 'desktop-file-utils'"; # Converted to throw 2022-02-22 + devicemapper = throw "'devicemapper' has been renamed to/replaced by 'lvm2'"; # Converted to throw 2022-02-22 + digikam5 = throw "'digikam5' has been renamed to/replaced by 'digikam'"; # Converted to throw 2022-02-22 + displaycal = throw "displaycal has been removed from nixpkgs, as it hasn't migrated to python3."; # Added 2022-01-12 + dmtx = throw "'dmtx' has been renamed to/replaced by 'dmtx-utils'"; # Converted to throw 2022-02-22 + dnnl = oneDNN; # Added 2020-04-22 + docbook5_xsl = throw "'docbook5_xsl' has been renamed to/replaced by 'docbook_xsl_ns'"; # Converted to throw 2022-02-22 + docbookrx = throw "docbookrx has been removed since it was unmaintained"; # Added 2021-01-12 + docbook_xml_xslt = throw "'docbook_xml_xslt' has been renamed to/replaced by 'docbook_xsl'"; # Converted to throw 2022-02-22 + docker_compose = throw "'docker_compose' has been renamed to/replaced by 'docker-compose'"; # Converted to throw 2022-02-22 + dolphinEmu = dolphin-emu; # Added 2021-11-10 + dolphinEmuMaster = dolphin-emu-beta; # Added 2021-11-10 + dotnet-netcore = dotnet-runtime; # Added 2021-10-07 + double_conversion = throw "'double_conversion' has been renamed to/replaced by 'double-conversion'"; # Converted to throw 2022-02-22 + draftsight = throw "draftsight has been removed, no longer available as freeware"; # Added 2020-08-14 + dvb_apps = throw "dvb_apps has been removed."; # Added 2020-11-03 + dwarf_fortress = throw "'dwarf_fortress' has been renamed to/replaced by 'dwarf-fortress'"; # Converted to throw 2022-02-22 + dwm-git = throw "dwm-git has been removed from nixpkgs, as it had no updates for 2 years not serving it's purpose."; # Added 2021-02-07 + dylibbundler = macdylibbundler; # Added 2021-04-24 + + ### E ### + + + ec2_ami_tools = ec2-ami-tools; # Added 2021-10-08 + ec2_api_tools = ec2-api-tools; # Added 2021-10-08 + ec2-utils = amazon-ec2-utils; # Added 2022-02-01 + elasticmq = throw "elasticmq has been removed in favour of elasticmq-server-bin"; # Added 2021-01-17 + elasticsearch7-oss = throw "elasticsearch7-oss has been removed, as the distribution is no longer provided by upstream. https://github.com/NixOS/nixpkgs/pull/114456"; # Added 2021-06-09 + + # Electron + electron_3 = throw "electron_3 has been removed in favor of newer versions"; # added 2022-01-06 + electron_4 = throw "electron_4 has been removed in favor of newer versions"; # added 2022-01-06 + electron_5 = throw "electron_5 has been removed in favor of newer versions"; # added 2022-01-06 + electron_6 = throw "electron_6 has been removed in favor of newer versions"; # added 2022-01-06 + electron_7 = throw "electron_7 has been removed in favor of newer versions"; # added 2022-02-08 + electron_8 = throw "electron_8 has been removed in favor of newer versions"; # added 2022-02-08 + + electrum-dash = throw "electrum-dash has been removed from nixpkgs as the project is abandoned."; # Added 2022-01-01 + + # Emacs + emacs27Packages = emacs27.pkgs; # Added 2020-12-18 + emacs27WithPackages = emacs27.pkgs.withPackages; # Added 2020-12-18 + emacsPackages = emacs.pkgs; # Added 2020-12-18 + emacsPackagesGen = throw "'emacsPackagesGen' has been renamed to/replaced by 'emacsPackagesFor'"; # Converted to throw 2022-02-22 + emacsPackagesNg = emacs.pkgs; # Added 2019-08-07 + emacsPackagesNgFor = emacsPackagesFor; # Added 2019-08-07 + emacsPackagesNgGen = throw "'emacsPackagesNgGen' has been renamed to/replaced by 'emacsPackagesFor'"; # Converted to throw 2022-02-22 + emacsWithPackages = emacs.pkgs.withPackages; # Added 2020-12-18 + + enblendenfuse = throw "'enblendenfuse' has been renamed to/replaced by 'enblend-enfuse'"; # Converted to throw 2022-02-22 + encryptr = throw "encryptr was removed because it reached end of life"; # Added 2022-02-06 + envelope = throw "envelope has been removed from nixpkgs, as it was unmaintained."; # Added 2021-08-05 + epoxy = libepoxy; # Added 2021-11-11 + esniper = throw "esniper has been removed because upstream no longer maintains it (and it no longer works)"; # Added 2021-04-12 + etcdctl = throw "'etcdctl' has been renamed to/replaced by 'etcd'"; # Converted to throw 2022-02-22 + euca2tools = throw "euca2ools has been removed because it is unmaintained upstream and still uses python2."; # Added 2022-01-01 + evilvte = throw "evilvte has been removed from nixpkgs for being unmaintained with security issues and dependant on an old version of vte which was removed."; # Added 2022-01-14 + evolution_data_server = throw "'evolution_data_server' has been renamed to/replaced by 'evolution-data-server'"; # Converted to throw 2022-02-22 + exfat-utils = throw "'exfat-utils' has been renamed to/replaced by 'exfat'"; # Converted to throw 2022-02-22 + + ### F ### + + facette = throw "facette has been removed."; # Added 2020-01-06 + fast-neural-doodle = throw "fast-neural-doodle has been removed, as the upstream project has been abandoned"; # Added 2020-03-28 + fastnlo = fastnlo_toolkit; # Added 2021-04-24 + fedora-coreos-config-transpiler = throw "fedora-coreos-config-transpiler has been renamed to 'butane'."; # Added 2021-04-13 + fetchFromGithub = throw "You meant fetchFromGitHub, with a capital H."; + ffadoFull = throw "'ffadoFull' has been renamed to/replaced by 'ffado'"; # Converted to throw 2022-02-22 + firefox-esr-68 = throw "Firefox 68 ESR was removed because it reached end of life with its final release 68.12esr on 2020-08-25."; + firefox-esr-wrapper = throw "'firefox-esr-wrapper' has been renamed to/replaced by 'firefox-esr'"; # Converted to throw 2022-02-22 + firefoxWrapper = throw "'firefoxWrapper' has been renamed to/replaced by 'firefox'"; # Converted to throw 2022-02-22 + firefox-wrapper = throw "'firefox-wrapper' has been renamed to/replaced by 'firefox'"; # Converted to throw 2022-02-22 + firestr = throw "firestr has been removed."; # Added 2019-12-08 + firmwareLinuxNonfree = linux-firmware; # Added 2022-01-09 + fish-foreign-env = throw "fish-foreign-env has been replaced with fishPlugins.foreign-env"; # Added 2020-12-29, modified 2021-01-10 + flameGraph = throw "'flameGraph' has been renamed to/replaced by 'flamegraph'"; # Converted to throw 2022-02-22 + flashplayer-standalone-debugger = throw "flashplayer-standalone-debugger has been removed as Adobe Flash Player is now deprecated."; # Added 2021-02-07 + flashplayer-standalone = throw "flashplayer-standalone has been removed as Adobe Flash Player is now deprecated."; # Added 2021-02-07 + flashplayer = throw "flashplayer has been removed as Adobe Flash Player is now deprecated."; # Added 2021-02-07 + flashtool = throw "flashtool was removed from nixpkgs, because the download is down for copyright reasons and the site looks very fishy"; # Added 2021-06-31 + flink_1_5 = throw "flink_1_5 was removed, use flink instead"; # Added 2021-01-25 + flutter-beta = throw "Non-stable versions of Flutter have been removed. You can use flutterPackages.mkFlutter to generate a package for other Flutter versions."; # Added 2020-01-15 + flutter-dev = throw "Non-stable versions of Flutter have been removed. You can use flutterPackages.mkFlutter to generate a package for other Flutter versions."; # Added 2020-01-15 + flvtool2 = throw "flvtool2 has been removed."; # Added 2020-11-03 + fme = throw "fme was removed, because it is old and uses Glade, a discontinued library."; # Added 2022-01-26 + foldingathome = fahclient; # Added 2020-09-03 + font-awesome-ttf = throw "'font-awesome-ttf' has been renamed to/replaced by 'font-awesome'"; # Converted to throw 2022-02-22 + + fontconfig-ultimate = throw '' + fontconfig-ultimate has been removed. The repository has been archived upstream and activity has ceased for several years. + https://github.com/bohoomil/fontconfig-ultimate/issues/171. + ''; # Added 2019-10-31 + + fontconfig-penultimate = throw '' + fontconfig-penultimate has been removed. + It was a fork of the abandoned fontconfig-ultimate. + ''; # Added 2020-07-21 + + fontconfig_210 = throw '' + fontconfig 2.10.x hasn't had a release in years, is vulnerable to CVE-2016-5384 + and has only been used for old fontconfig caches. + ''; + + foomatic_filters = throw "'foomatic_filters' has been renamed to/replaced by 'foomatic-filters'"; # Converted to throw 2022-02-22 + fscryptctl-experimental = throw "The package fscryptctl-experimental has been removed. Please switch to fscryptctl."; # Added 2021-11-07 + fsharp41 = throw "fsharp41 has been removed, please use dotnet-sdk_5 or later"; + fslint = throw "fslint has been removed: end of life. Upstream recommends using czkawka (https://qarmin.github.io/czkawka/) instead"; # Added 2022-01-15 + fuse_exfat = throw "'fuse_exfat' has been renamed to/replaced by 'exfat'"; # Converted to throw 2022-02-22 + fuseki = throw "'fuseki' has been renamed to/replaced by 'apache-jena-fuseki'"; # Converted to throw 2022-02-22 + fwupdate = throw "fwupdate was merged into fwupd"; # Added 2020-05-19 + + ### G ### + + g4py = python3Packages.geant4; # Added 2020-06-06 + gaia = throw "gaia has been removed because it seems abandoned upstream and uses no longer supported dependencies"; # Added 2020-06-06 + gdal_1_11 = throw "gdal_1_11 was removed. Use gdal instead."; # Added 2021-04-03 + gdb-multitarget = throw "'gdb-multitarget' has been renamed to/replaced by 'gdb'"; # Converted to throw 2022-02-22 + gdk_pixbuf = throw "'gdk_pixbuf' has been renamed to/replaced by 'gdk-pixbuf'"; # Converted to throw 2022-02-22 + getmail = throw "getmail has been removed from nixpkgs, migrate to getmail6."; # Added 2022-01-12 + gettextWithExpat = throw "'gettextWithExpat' has been renamed to/replaced by 'gettext'"; # Converted to throw 2022-02-22 + gfm = throw "gfm has been removed"; # Added 2021-01-15 + giblib = throw " giblib has been removed from nixpkgs because upstream is gone."; # Added 2022-01-23 + giflib_4_1 = throw "giflib_4_1 has been removed; use giflib instead"; # Added 2020-02-12 + git-bz = throw "giz-bz has been removed from nixpkgs as it is stuck on python2."; # Added 2022-01-01 + + gitAndTools = self // { + darcsToGit = darcs-to-git; + gitAnnex = git-annex; + gitBrunch = git-brunch; + gitFastExport = git-fast-export; + gitRemoteGcrypt = git-remote-gcrypt; + svn_all_fast_export = svn-all-fast-export; + topGit = top-git; + }; # Added 2021-01-14 + + gitin = throw "gitin has been remove because it was unmaintained and depended on an insecure version of libgit2"; # Added 2021-12-07 + gitinspector = throw "gitinspector has been removed because it doesn't work with python3."; # Added 2022-01-12 + gksu = throw "gksu has been removed"; # Added 2022-01-16 + glib_networking = throw "'glib_networking' has been renamed to/replaced by 'glib-networking'"; # Converted to throw 2022-02-22 + gmailieer = lieer; # Added 2020-04-19 + gmic_krita_qt = gmic-qt-krita; # Added 2019-09-07 + gmvault = throw "gmvault has been removed because it is unmaintained, mostly broken, and insecure"; # Added 2021-03-08 + gnash = throw "gnash has been removed; broken and abandoned upstream."; # added 2022-02-06 + gnome-passwordsafe = gnome-secrets; # added 2022-01-30 + gnome-mpv = celluloid; # Added 2019-08-22 + gnome-sharp = throw "gnome-sharp has been removed from nixpkgs"; # Added 2022-01-15 + gnome-themes-standard = throw "'gnome-themes-standard' has been renamed to/replaced by 'gnome-themes-extra'"; # Converted to throw 2022-02-22 + gnome_user_docs = gnome-user-docs; # Added 2019-11-20 + gnome15 = throw "gnome15 has been removed from nixpkgs, as it's unmaintained and depends on deprecated libraries."; # Added 2019-12-10 + gnome_doc_utils = throw "'gnome_doc_utils' has been renamed to/replaced by 'gnome-doc-utils'"; # Converted to throw 2022-02-22 + gnome_themes_standard = throw "'gnome_themes_standard' has been renamed to/replaced by 'gnome-themes-standard'"; # Converted to throw 2022-02-22 + + gnuradio-with-packages = gnuradio3_7.override { + extraPackages = lib.attrVals [ + "osmosdr" "ais" "gsm" "nacl" "rds" "limesdr" + ] gnuradio3_7Packages; + }; # Added 2020-10-16 + + gmock = gtest; # moved from top-level 2021-03-14 + + gnome3 = gnome; # Added 2021-05-07 + gnupg20 = throw "gnupg20 has been removed from nixpkgs as upstream dropped support on 2017-12-31";# Added 2020-07-12 + gnuradio3_7 = throw "gnuradio3_7 has been removed because it required Python 2"; # Added 2022-01-16 + gnuradio-ais = gnuradio3_7.pkgs.ais; # Added 2019-05-27, changed 2020-10-16 + gnuradio-gsm = gnuradio3_7.pkgs.gsm; # Added 2019-05-27, changed 2020-10-16 + gnuradio-limesdr = gnuradio3_7.pkgs.limesdr; # Added 2019-05-27, changed 2020-10-16 + gnuradio-nacl = gnuradio3_7.pkgs.nacl; # Added 2019-05-27, changed 2020-10-16 + gnuradio-osmosdr = gnuradio3_7.pkgs.osmosdr; # Added 2019-05-27, changed 2020-10-16 + gnuradio-rds = gnuradio3_7.pkgs.rds; # Added 2019-05-27, changed 2020-10-16 + gnustep-make = throw "'gnustep-make' has been renamed to/replaced by 'gnustep.make'"; # Converted to throw 2022-02-22 + gnuvd = throw "gnuvd was removed because the backend service is missing"; # Added 2020-01-14 + gobby5 = gobby; # Added 2021-02-01 + gobjectIntrospection = throw "'gobjectIntrospection' has been renamed to/replaced by 'gobject-introspection'"; # Converted to throw 2022-02-22 + gogoclient = throw "gogoclient has been removed, because it was unmaintained"; # Added 2021-12-15 + goimports = throw "'goimports' has been renamed to/replaced by 'gotools'"; # Converted to throw 2022-02-22 + gometalinter = throw "gometalinter was abandoned by upstream. Consider switching to golangci-lint instead"; # Added 2020-04-23 + googleAuthenticator = throw "'googleAuthenticator' has been renamed to/replaced by 'google-authenticator'"; # Converted to throw 2022-02-22 + googleearth = throw "the non-pro version of Google Earth was removed because it was discontinued and downloading it isn't possible anymore"; # Added 2022-01-22 + google-gflags = gflags; # Added 2019-07-25 + google-musicmanager = throw "google-musicmanager has been removed because Google Play Music was discontinued"; # Added 2021-03-07 + google-music-scripts = throw "google-music-scripts has been removed because Google Play Music was discontinued"; # Added 2021-03-07 + go-pup = throw "'go-pup' has been renamed to/replaced by 'pup'"; # Converted to throw 2022-02-22 + gpgstats = throw "gpgstats has been removed: upstream is gone"; # Added 2022-02-06 + + graalvm11 = graalvm11-ce; + graalvm8-ce = throw "graalvm8-ce has been removed by upstream."; # Added 2021-10-19 + graalvm8 = throw "graalvm8-ce has been removed by upstream."; # Added 2021-10-19 + gr-ais = gnuradio3_7.pkgs.ais; # Added 2019-05-27, changed 2020-10-16 + grantlee5 = throw "'grantlee5' has been renamed to/replaced by 'libsForQt5.grantlee'"; # Converted to throw 2022-02-22 + gr-gsm = gnuradio3_7.pkgs.gsm; # Added 2019-05-27, changed 2020-10-16 + grib-api = throw "grib-api has been replaced by ecCodes => https://confluence.ecmwf.int/display/ECC/GRIB-API+migration"; # Added 2022-01-05 + gr-limesdr = gnuradio3_7.pkgs.limesdr; # Added 2019-05-27, changed 2020-10-16 + gr-nacl = gnuradio3_7.pkgs.nacl; # Added 2019-05-27, changed 2020-10-16 + gr-osmosdr = gnuradio3_7.pkgs.osmosdr; # Added 2019-05-27, changed 2020-10-16 + gr-rds = gnuradio3_7.pkgs.rds; # Added 2019-05-27, changed 2020-10-16 + gsettings_desktop_schemas = throw "'gsettings_desktop_schemas' has been renamed to/replaced by 'gsettings-desktop-schemas'"; # Converted to throw 2022-02-22 + gtk_doc = throw "'gtk_doc' has been renamed to/replaced by 'gtk-doc'"; # Converted to throw 2022-02-22 + gtklick = throw "gtklick has been removed from nixpkgs as the project is stuck on python2"; # Added 2022-01-01 + gtk-recordmydesktop = throw "gtk-recordmydesktop has been removed from nixpkgs, as it's unmaintained and uses deprecated libraries"; # Added 2019-12-10 + guileCairo = throw "'guileCairo' has been renamed to/replaced by 'guile-cairo'"; # Converted to throw 2022-02-22 + guile-gnome = throw "guile-gnome has been removed"; # Added 2022-01-16 + guileGnome = throw "guile-gnome has been removed"; # Added 2022-01-16 + guile_lib = throw "'guile_lib' has been renamed to/replaced by 'guile-lib'"; # Converted to throw 2022-02-22 + guileLint = throw "'guileLint' has been renamed to/replaced by 'guile-lint'"; # Converted to throw 2022-02-22 + guile_ncurses = throw "'guile_ncurses' has been renamed to/replaced by 'guile-ncurses'"; # Converted to throw 2022-02-22 + gupnp_av = throw "'gupnp_av' has been renamed to/replaced by 'gupnp-av'"; # Converted to throw 2022-02-22 + gupnp_dlna = throw "'gupnp_dlna' has been renamed to/replaced by 'gupnp-dlna'"; # Converted to throw 2022-02-22 + gupnp_igd = throw "'gupnp_igd' has been renamed to/replaced by 'gupnp-igd'"; # Converted to throw 2022-02-22 + gupnptools = throw "'gupnptools' has been renamed to/replaced by 'gupnp-tools'"; # Converted to throw 2022-02-22 + gutenberg = throw "'gutenberg' has been renamed to/replaced by 'zola'"; # Converted to throw 2022-02-22 + gwtdragdrop = throw "gwtdragdrop was removed: abandoned by upstream"; # Added 2022-02-06 + gwtwidgets = throw "gwtwidgets was removed: unmaintained"; # Added 2022-02-06 + + ### H ### + + hal-flash = throw "hal-flash has been removed as Adobe Flash Player is now deprecated."; # Added 2021-02-07 + hawkthorne = throw "hawkthorne has been removed because it depended on a broken version of love"; # Added 2022-01-15 + heimdalFull = throw "'heimdalFull' has been renamed to/replaced by 'heimdal'"; # Converted to throw 2022-02-22 + heme = throw "heme has been removed: upstream is gone"; # added 2022-02-06 + hepmc = hepmc2; # Added 2019-08-05 + hexen = throw "hexen (SDL port) has been removed: abandoned by upstream."; # Added 2019-12-11 + hicolor_icon_theme = throw "'hicolor_icon_theme' has been renamed to/replaced by 'hicolor-icon-theme'"; # Converted to throw 2022-02-22 + holochain-go = throw "holochain-go was abandoned by upstream"; # Added 2022-01-01 + htmlTidy = throw "'htmlTidy' has been renamed to/replaced by 'html-tidy'"; # Converted to throw 2022-02-22 + ht-rust = xh; # Added 2021-02-13 + hydra-flakes = throw "hydra-flakes: Flakes support has been merged into Hydra's master. Please use `hydra-unstable` now."; # Added 2020-04-06 + + ### I ### + + iana_etc = throw "'iana_etc' has been renamed to/replaced by 'iana-etc'"; # Converted to throw 2022-02-22 + iasl = throw "iasl has been removed, use acpica-tools instead"; # Added 2021-08-08 + icecat-bin = throw "icecat-bin has been removed, the binary builds are not maintained upstream."; # Added 2022-02-15 + icedtea8_web = adoptopenjdk-icedtea-web; # Added 2019-08-21 + icedtea_web = adoptopenjdk-icedtea-web; # Added 2019-08-21 + idea = throw "'idea' has been renamed to/replaced by 'jetbrains'"; # Converted to throw 2022-02-22 + imapproxy = throw "imapproxy has been removed because it did not support a supported openssl version"; # added 2021-12-15 + imagemagick7Big = imagemagickBig; # Added 2021-02-22 + imagemagick7 = imagemagick; # Added 2021-02-22 + imagemagick7_light = imagemagick_light; # Added 2021-02-22 + impressive = throw "impressive has been removed due to lack of released python 2 support and maintainership in nixpkgs"; # Added 2022-01-27 + i-score = throw "i-score has been removed: abandoned upstream."; # Added 2020-11-21 + inboxer = throw "inboxer has been removed as it is no longer maintained and no longer works as Google shut down the inbox service this package wrapped."; + infiniband-diags = rdma-core; # Added 2019-08-09 + ino = throw "ino has been removed from nixpkgs, the project is stuck on python2 and upstream has archived the project."; # Added 2022-01-12 + inotifyTools = inotify-tools; + inter-ui = inter; # Added 2021-03-27 + iops = throw "iops was removed: upstream is gone"; # Added 2022-02-06 + iproute = iproute2; # moved from top-level 2021-03-14 + ipsecTools = throw "ipsecTools has benn removed, because it was no longer maintained upstream"; # Added 2021-12-15 + + ### J ### + + + jack2Full = jack2; # moved from top-level 2021-03-14 + jamomacore = throw "jamomacore has been removed: abandoned upstream."; # Added 2020-11-21 + jbidwatcher = throw "jbidwatcher was discontinued in march 2021"; # Added 2021-03-15 + jbuilder = throw "'jbuilder' has been renamed to/replaced by 'dune_1'"; # Converted to throw 2022-02-22 + jellyfin_10_5 = throw "Jellyfin 10.5 is no longer supported and contains a security vulnerability. Please upgrade to a newer version."; # Added 2021-04-26 + jikes = throw "jikes was deprecated on 2019-10-07: abandoned by upstream"; + joseki = throw "'joseki' has been renamed to/replaced by 'apache-jena-fuseki'"; # Converted to throw 2022-02-22 + journalbeat7 = throw "journalbeat has been removed upstream. Use filebeat with the journald input instead."; + + # Julia + julia_07 = throw "julia_07 has been deprecated in favor of the latest LTS version"; # Added 2020-09-15 + julia_1 = throw "julia_1 has been deprecated in favor of julia_10 as it was ambiguous"; # Added 2021-03-13 + julia_11 = throw "julia_11 has been deprecated in favor of the latest stable version"; # Added 2020-09-15 + julia_13 = throw "julia_13 has been deprecated in favor of the latest stable version"; # Added 2021-03-13 + julia_10-bin = throw "julia_10-bin has been deprecated in favor of the latest LTS version"; # Added 2021-12-02 + + json_glib = throw "'json_glib' has been renamed to/replaced by 'json-glib'"; # Converted to throw 2022-02-22 + jvmci8 = throw "graalvm8 and its tools were deprecated in favor of graalvm8-ce"; # Added 2021-10-15 + + ### K ### + + k3d = throw "k3d has been removed because it was broken and has seen no release since 2016"; # Added 2022-01-04 + k9copy = throw "k9copy has been removed from nixpkgs, as there is no upstream activity"; # Added 2020-11-06 + kafkacat = kcat; # Added 2021-10-07 + kbdKeymaps = throw "kbdKeymaps is not needed anymore since dvp and neo are now part of kbd"; # Added 2021-04-11 + kdeconnect = plasma5Packages.kdeconnect-kde; # Added 2020-10-28 + kdecoration-viewer = throw "kdecoration-viewer has been removed from nixpkgs, as there is no upstream activity"; # Added 2020-06-16 + kdiff3-qt5 = throw "'kdiff3-qt5' has been renamed to/replaced by 'kdiff3'"; # Converted to throw 2022-02-22 + keepass-keefox = throw "'keepass-keefox' has been renamed to/replaced by 'keepass-keepassrpc'"; # Converted to throw 2022-02-22 + keepassx-community = throw "'keepassx-community' has been renamed to/replaced by 'keepassxc'"; # Converted to throw 2022-02-22 + keepassx-reboot = throw "'keepassx-reboot' has been renamed to/replaced by 'keepassx-community'"; # Converted to throw 2022-02-22 + keepassx2-http = throw "'keepassx2-http' has been renamed to/replaced by 'keepassx-reboot'"; # Converted to throw 2022-02-22 + keepnote = throw "keepnote has been removed from nixpkgs, as it is stuck on python2."; # Added 2022-01-01 + kerberos = libkrb5; # moved from top-level 2021-03-14 + kexectools = kexec-tools; # Added 2021-09-03 + keybase-go = throw "'keybase-go' has been renamed to/replaced by 'keybase'"; # Converted to throw 2022-02-22 + keymon = throw "keymon has been removed from nixpkgs, as it's abandoned and archived."; # Added 2019-12-10 + keysmith = libsForQt5.plasmaMobileGear.keysmith; # Added 2021-07-14 + kibana7-oss = throw "kibana7-oss has been removed, as the distribution is no longer provided by upstream. https://github.com/NixOS/nixpkgs/pull/114456"; # Added 2021-06-09 + kicad-with-packages3d = kicad; # Added 2019-11-25 + kindlegen = throw "kindlegen has been removed from nixpkgs, as it's abandoned and no longer available for download."; # Added 2021-03-09 + kinetic-cpp-client = throw "kinetic-cpp-client has been removed from nixpkgs, as it's abandoned."; # Added 2020-04-28 + kino = throw "kino has been removed because it was broken and abandoned"; # Added 2021-04-25 + knockknock = throw "knockknock has been removed from nixpkgs because the upstream project is abandoned."; # Added 2022-01-01 + kodiGBM = kodi-gbm; + kodiPlain = kodi; + kodiPlainWayland = kodi-wayland; + kodiPlugins = kodiPackages; # Added 2021-03-09; + kramdown-rfc2629 = rubyPackages.kramdown-rfc2629; # Added 2021-03-23 + krename-qt5 = throw "'krename-qt5' has been renamed to/replaced by 'krename'"; # Converted to throw 2022-02-22 + krita-beta = krita; # moved from top-level 2021-12-23 + kvm = throw "'kvm' has been renamed to/replaced by 'qemu_kvm'"; # Converted to throw 2022-02-22 + + ### L ### + + lastfmsubmitd = throw "lastfmsubmitd was removed from nixpkgs as the project is abandoned"; # Added 2022-01-01 + latinmodern-math = lmmath; + letsencrypt = throw "'letsencrypt' has been renamed to/replaced by 'certbot'"; # Converted to throw 2022-02-22 + libGL_driver = throw "'libGL_driver' has been renamed to/replaced by 'mesa.drivers'"; # Converted to throw 2022-02-22 + libaudit = throw "'libaudit' has been renamed to/replaced by 'audit'"; # Converted to throw 2022-02-22 + libcanberra_gtk2 = throw "'libcanberra_gtk2' has been renamed to/replaced by 'libcanberra-gtk2'"; # Converted to throw 2022-02-22 + libcanberra_gtk3 = throw "'libcanberra_gtk3' has been renamed to/replaced by 'libcanberra-gtk3'"; # Converted to throw 2022-02-22 + libcap_manpages = throw "'libcap_manpages' has been renamed to/replaced by 'libcap.doc'"; # Converted to throw 2022-02-22 + libcap_pam = if stdenv.isLinux then libcap.pam else null; # Added 2016-04-29 + libcap_progs = throw "'libcap_progs' has been renamed to/replaced by 'libcap.out'"; # Converted to throw 2022-02-22 + libco-canonical = throw "libco-canonical: Canonical deleted the repo, libco-canonical is not used anymore."; # Added 2021-05-16 + libcroco = throw "libcroco has been removed as it's no longer used in any derivations."; # Added 2020-03-04 + libdbusmenu-glib = throw "'libdbusmenu-glib' has been renamed to/replaced by 'libdbusmenu'"; # Converted to throw 2022-02-22 + libdbusmenu_qt5 = throw "'libdbusmenu_qt5' has been renamed to/replaced by 'libsForQt5.libdbusmenu'"; # Converted to throw 2022-02-22 + liberation_ttf_v1_from_source = throw "'liberation_ttf_v1_from_source' has been renamed to/replaced by 'liberation_ttf_v1'"; # Converted to throw 2022-02-22 + liberation_ttf_v2_from_source = throw "'liberation_ttf_v2_from_source' has been renamed to/replaced by 'liberation_ttf_v2'"; # Converted to throw 2022-02-22 + liberationsansnarrow = throw "'liberationsansnarrow' has been renamed to/replaced by 'liberation-sans-narrow'"; # Converted to throw 2022-02-22 + libgksu = throw "libgksu has been removed"; # Added 2022-01-16 + libgnome_keyring = throw "'libgnome_keyring' has been renamed to/replaced by 'libgnome-keyring'"; # Converted to throw 2022-02-22 + libgnome_keyring3 = throw "'libgnome_keyring3' has been renamed to/replaced by 'libgnome-keyring3'"; # Converted to throw 2022-02-22 + libgpgerror = libgpg-error; # Added 2021-09-04 + libgroove = throw "libgroove has been removed, because it depends on an outdated and insecure version of ffmpeg"; # Added 2022-01-21 + libgumbo = throw "'libgumbo' has been renamed to/replaced by 'gumbo'"; # Converted to throw 2022-02-22 + libindicate = throw "libindacate has been removed from nixpkgs, as it's abandoned and uses deprecated libraries"; # Added 2019-12-10 + libindicate-gtk2 = throw "libindacate-gtk3 has been removed from nixpkgs, as it's abandoned and uses deprecated libraries"; # Added 2019-12-10 + libindicate-gtk3 = throw "libindacate-gtk2 has been removed from nixpkgs, as it's abandoned and uses deprecated libraries"; # Added 2019-12-10 + libintlOrEmpty = lib.optional (!stdenv.isLinux || stdenv.hostPlatform.libc != "glibc") gettext; # Added 2018-03-14 + libjpeg_drop = libjpeg_original; # Added 2020-06-05 + libjson_rpc_cpp = throw "'libjson_rpc_cpp' has been renamed to/replaced by 'libjson-rpc-cpp'"; # Converted to throw 2022-02-22 + libkml = throw "libkml has been removed from nixpkgs, as it's abandoned and no package needed it."; # Added 2021-11-09 + liblapackWithoutAtlas = throw "'liblapackWithoutAtlas' has been renamed to/replaced by 'lapack-reference'"; # Converted to throw 2022-02-22 + liblastfm = libsForQt5.liblastfm; # Added 2020-06-14 + liblrdf = throw "'liblrdf' has been renamed to/replaced by 'lrdf'"; # Converted to throw 2022-02-22 + libmsgpack = throw "'libmsgpack' has been renamed to/replaced by 'msgpack'"; # Converted to throw 2022-02-22 + libosmpbf = throw "libosmpbf was removed because it is no longer required by osrm-backend"; + libqmatrixclient = throw "libqmatrixclient was renamed to libquotient"; # Added 2020-04-09 + libqrencode = throw "'libqrencode' has been renamed to/replaced by 'qrencode'"; # Converted to throw 2022-02-22 + librdf = lrdf; # Added 2020-03-22 + librecad2 = throw "'librecad2' has been renamed to/replaced by 'librecad'"; # Converted to throw 2022-02-22 + librsync_0_9 = throw "librsync_0_9 has been removed"; # Added 2021-07-24 + libseat = seatd; # Added 2021-06-24 + libsexy = throw "libsexy has been removed from nixpkgs, as it's abandoned and no package needed it."; # Added 2019-12-10 + libstdcxxHook = throw "libstdcxx hook has been removed because cc-wrapper is now directly aware of the c++ standard library intended to be used."; # Added 2020-06-22 + libsysfs = throw "'libsysfs' has been renamed to/replaced by 'sysfsutils'"; # Converted to throw 2022-02-22 + libtidy = throw "'libtidy' has been renamed to/replaced by 'html-tidy'"; # Converted to throw 2022-02-22 + libtorrentRasterbar = libtorrent-rasterbar; # Added 2020-12-20 + libtorrentRasterbar-1_1_x = libtorrent-rasterbar-1_1_x; # Added 2020-12-20 + libtorrentRasterbar-1_2_x = libtorrent-rasterbar-1_2_x; # Added 2020-12-20 + libtorrentRasterbar-2_0_x = libtorrent-rasterbar-2_0_x; # Added 2020-12-20 + libtxc_dxtn = throw "libtxc_dxtn was removed 2020-03-16, now integrated in Mesa"; + libtxc_dxtn_s2tc = throw "libtxc_dxtn_s2tc was removed 2020-03-16, now integrated in Mesa"; + libudev = throw "'libudev' has been renamed to/replaced by 'udev'"; # Converted to throw 2022-02-22 + libungif = giflib; # Added 2020-02-12 + libusb = libusb1; # Added 2020-04-28 + libva-full = throw "'libva-full' has been renamed to/replaced by 'libva'"; # Converted to throw 2022-02-22 + libva1-full = throw "'libva1-full' has been renamed to/replaced by 'libva1'"; # Converted to throw 2022-02-22 + libwnck3 = libwnck; + lilypond-unstable = lilypond; # Added 2021-03-11 + lilyterm = throw "lilyterm has been removed from nixpkgs, because it was relying on a vte version that depended on python2."; # Added 2022-01-14 + lilyterm-git = throw "lilyterm-git has been removed from nixpkgs, because it was relying on a vte version that depended on python2."; # Added 2022-01-14 + links = throw "'links' has been renamed to/replaced by 'links2'"; # Converted to throw 2022-02-22 + linuxband = throw "linuxband has been removed from nixpkgs, as it's abandoned upstream."; # Added 2021-12-09 + + # Linux kernels + linux-rt_5_10 = linuxKernel.kernels.linux_rt_5_10; + linux-rt_5_4 = linuxKernel.kernels.linux_rt_5_4; + linuxPackages_4_14 = linuxKernel.packages.linux_4_14; + linuxPackages_4_19 = linuxKernel.packages.linux_4_19; + linuxPackages_4_4 = linuxKernel.packages.linux_4_4; + linuxPackages_4_9 = linuxKernel.packages.linux_4_9; + linuxPackages_5_10 = linuxKernel.packages.linux_5_10; + linuxPackages_5_15 = linuxKernel.packages.linux_5_15; + linuxPackages_5_16 = linuxKernel.packages.linux_5_16; + linuxPackages_5_4 = linuxKernel.packages.linux_5_4; + linuxPackages_hardkernel_4_14 = linuxKernel.packages.hardkernel_4_14; + linuxPackages_rpi0 = linuxKernel.packages.linux_rpi1; + linuxPackages_rpi02w = linuxKernel.packages.linux_rpi3; + linuxPackages_rpi1 = linuxKernel.packages.linux_rpi1; + linuxPackages_rpi2 = linuxKernel.packages.linux_rpi2; + linuxPackages_rpi3 = linuxKernel.packages.linux_rpi3; + linuxPackages_rpi4 = linuxKernel.packages.linux_rpi4; + linuxPackages_rt_5_10 = linuxKernel.packages.linux_rt_5_10; + linuxPackages_rt_5_4 = linuxKernel.packages.linux_rt_5_4; + linux_4_14 = linuxKernel.kernels.linux_4_14; + linux_4_19 = linuxKernel.kernels.linux_4_19; + linux_4_4 = linuxKernel.kernels.linux_4_4; + linux_4_9 = linuxKernel.kernels.linux_4_9; + linux_5_10 = linuxKernel.kernels.linux_5_10; + linux_5_15 = linuxKernel.kernels.linux_5_15; + linux_5_16 = linuxKernel.kernels.linux_5_16; + linux_5_4 = linuxKernel.kernels.linux_5_4; + linux_mptcp_95 = linuxKernel.kernels.linux_mptcp_95; + linux_rpi0 = linuxKernel.kernels.linux_rpi1; + linux_rpi02w = linuxKernel.kernels.linux_rpi3; + linux_rpi1 = linuxKernel.kernels.linux_rpi1; + linux_rpi2 = linuxKernel.kernels.linux_rpi2; + linux_rpi3 = linuxKernel.kernels.linux_rpi3; + linux_rpi4 = linuxKernel.kernels.linux_rpi4; + + # Added 2020-04-04 + linuxPackages_testing_hardened = throw "linuxPackages_testing_hardened has been removed, please use linuxPackages_latest_hardened"; + linux_testing_hardened = throw "linux_testing_hardened has been removed, please use linux_latest_hardened"; + + # Added 2021-04-04 + linuxPackages_xen_dom0 = linuxPackages; + linuxPackages_latest_xen_dom0 = linuxPackages_latest; + linuxPackages_xen_dom0_hardened = linuxPackages_hardened; + linuxPackages_latest_xen_dom0_hardened = linuxPackages_latest_hardened; + + # Added 2021-08-16 + linuxPackages_latest_hardened = throw '' + The attribute `linuxPackages_hardened_latest' was dropped because the hardened patches + frequently lag behind the upstream kernel. In some cases this meant that this attribute + had to refer to an older kernel[1] because the latest hardened kernel was EOL and + the latest supported kernel didn't have patches. + + If you want to use a hardened kernel, please check which kernel minors are supported + and use a versioned attribute, e.g. `linuxPackages_5_10_hardened'. + + [1] for more context: https://github.com/NixOS/nixpkgs/pull/133587 + ''; + linux_latest_hardened = linuxPackages_latest_hardened; + + linux-steam-integration = throw "linux-steam-integration has been removed, as the upstream project has been abandoned"; # Added 2020-05-22 + + loadcaffe = throw "loadcaffe has been removed, as the upstream project has been abandoned"; # Added 2020-03-28 + lobster-two = google-fonts; # Added 2021-07-22 + love_0_7 = throw "love_0_7 was removed because it is a very old version and no longer used by any package in nixpkgs"; # Added 2022-01-15 + love_0_8 = throw "love_0_8 was removed because it is a very old version and no longer used by any package in nixpkgs"; # Added 2022-01-15 + love_0_9 = throw "love_0_9 was removed because was broken for a long time and no longer used by any package in nixpkgs"; # Added 2022-01-15 + lprof = throw "lprof has been removed as it's unmaintained upstream and broken in nixpkgs since a while ago"; # Added 2021-02-15 + lttngTools = throw "'lttngTools' has been renamed to/replaced by 'lttng-tools'"; # Converted to throw 2022-02-22 + lttngUst = throw "'lttngUst' has been renamed to/replaced by 'lttng-ust'"; # Converted to throw 2022-02-22 + lua5_1_sockets = throw "'lua5_1_sockets' has been renamed to/replaced by 'lua51Packages.luasocket'"; # Converted to throw 2022-02-22 + lua5_expat = throw "'lua5_expat' has been renamed to/replaced by 'luaPackages.luaexpat'"; # Converted to throw 2022-02-22 + lua5_sec = throw "'lua5_sec' has been renamed to/replaced by 'luaPackages.luasec'"; # Converted to throw 2022-02-22 + lumpy = throw "lumpy has been removed from nixpkgs, as it is stuck on python2."; # Added 2022-01-12 + lxappearance-gtk3 = throw "lxappearance-gtk3 has been removed. Use lxappearance instead, which now defaults to Gtk3"; # Added 2020-06-03 + lzma = xz; # moved from top-level 2021-03-14 + + ### M ### + + m3d-linux = throw "'m3d-linux' has been renamed to/replaced by 'm33-linux'"; # Converted to throw 2022-02-22 + mail-notification = throw "mail-notification has been removed from nixpkgs, as it's unmaintained and has dependencies on old gnome libraries we want to remove"; # Added 2021-08-21 + mailpile = throw "mailpile was removed from nixpkgs, as it is stuck on python2."; # Added 2022-01-12 + man_db = throw "'man_db' has been renamed to/replaced by 'man-db'"; # Converted to throw 2022-02-22 + manpages = throw "'manpages' has been renamed to/replaced by 'man-pages'"; # Converted to throw 2022-02-22 + marathon = throw "marathon has been removed from nixpkgs, as it's unmaintained"; # Added 2020-08-15 + mariadb-client = hiPrio mariadb.client; #added 2019.07.28 + matcha = throw "matcha was renamed to matcha-gtk-theme"; # added 2020-05-09 + mathics = throw "mathics has been removed from nixpkgs, as it's unmaintained"; # Added 2020-08-15 + matrique = spectral; # Added 2020-01-27 + mbedtls_1_3 = throw "mbedtls_1_3 is end of life, see https://tls.mbed.org/kb/how-to/upgrade-2.0"; # Added 2019-12-08 + mcgrid = throw "mcgrid has been removed from nixpkgs, as it's not compatible with rivet 3"; # Added 2020-05-23 + mcomix = throw "mcomix has been removed from nixpkgs, as it's unmaintained; try mcomix3 a Python 3 fork"; # Added 2019-12-10, modified 2020-11-25 + mediatomb = throw "mediatomb is no longer maintained upstream, use gerbera instead"; # added 2022-01-04 + meme = meme-image-generator; # Added 2021-04-21 + memtest86 = throw "'memtest86' has been renamed to/replaced by 'memtest86plus'"; # Converted to throw 2022-02-22 + mercurial_4 = throw "mercurial_4 has been removed as it's unmaintained"; # Added 2021-10-18 + mesos = throw "mesos has been removed from nixpkgs, as it's unmaintained"; # Added 2020-08-15 + mess = mame; # Added 2019-10-30 + metamorphose2 = throw "metamorphose2 has been removed from nixpkgs, as it was stuck on python2."; # Added 2022-01-12 + mididings = throw "mididings has been removed from nixpkgs as it doesn't support recent python3 versions and its upstream stopped maintaining it."; # Added 2022-01-12 + midoriWrapper = throw "'midoriWrapper' has been renamed to/replaced by 'midori'"; # Converted to throw 2022-02-22 + mime-types = mailcap; # Added 2022-01-21 + mimms = throw "mimms has been removed from nixpkgs as the upstream project is stuck on python2."; # Added 2022-01-01 + minergate-cli = throw "minergatecli has been removed from nixpkgs, because the package is unmaintained and the site has a bad reputation"; # Added 2021-08-13 + minergate = throw "minergate has been removed from nixpkgs, because the package is unmaintained and the site has a bad reputation"; # Added 2021-08-13 + minetime = throw "minetime has been removed from nixpkgs, because it was discontinued 2021-06-22"; # Added 2021-10-14 + mirage = throw "mirage has been removed from nixpkgs, as it's unmaintained"; # Added 2019-12-10 + mist = throw "mist has been removed as the upstream project has been abandoned, see https://github.com/ethereum/mist#mist-browser-deprecated"; # Added 2020-08-15 + mlt-qt5 = throw "'mlt-qt5' has been renamed to/replaced by 'libsForQt5.mlt'"; # Converted to throw 2022-02-22 + mobile_broadband_provider_info = throw "'mobile_broadband_provider_info' has been renamed to/replaced by 'mobile-broadband-provider-info'"; # Converted to throw 2022-02-22 + moby = throw "moby has been removed, merged into linuxkit in 2018. Use linuxkit instead."; + module_init_tools = throw "'module_init_tools' has been renamed to/replaced by 'kmod'"; # Converted to throw 2022-02-22 + monero = monero-cli; # Added 2021-11-28 + monodevelop = throw "monodevelop has been removed from nixpgks"; # Added 2022-01-15 + mopidy-gmusic = throw "mopidy-gmusic has been removed because Google Play Music was discontinued"; # Added 2021-03-07 + mopidy-local-images = throw "mopidy-local-images has been removed as it's unmaintained. Its functionality has been merged into the mopidy-local extension."; # Added 2020-10-18 + mopidy-local-sqlite = throw "mopidy-local-sqlite has been removed as it's unmaintained. Its functionality has been merged into the mopidy-local extension."; # Added 2020-10-18 + + morituri = throw "'morituri' has been renamed to/replaced by 'whipper'"; # Converted to throw 2022-02-22 + mozart-binary = mozart2-binary; # Added 2019-09-23 + mozart = mozart2-binary; # Added 2019-09-23 + mpc_cli = mpc-cli; # moved from top-level 2022-01-24 + mpd_clientlib = libmpdclient; # Added 2021-02-11 + mpich2 = throw "'mpich2' has been renamed to/replaced by 'mpich'"; # Converted to throw 2022-02-22 + msf = throw "'msf' has been renamed to/replaced by 'metasploit'"; # Converted to throw 2022-02-22 + multimc = throw "multimc was removed from nixpkgs; use polymc instead (see https://github.com/NixOS/nixpkgs/pull/154051 for more information)"; # Added 2022-01-08 + mumble_git = pkgs.mumble; # Added 2019-08-01 + murmur_git = pkgs.murmur; # Added 2019-08-01 + mysql-client = hiPrio mariadb.client; + mysql = mariadb; # moved from top-level 2021-03-14 + + # NOTE: 2018-07-12: legacy alias: + # grsecurity business is done: https://www.theregister.co.uk/2018/02/08/bruce_perens_grsecurity_anti_slapp/ + + # floating point textures patents are expired, + # so package reduced to alias + mesa_drivers = mesa.drivers; + mesa_noglu = throw "'mesa_noglu' has been renamed to/replaced by 'mesa'"; # Converted to throw 2022-02-22 + + mpv-with-scripts = self.wrapMpv self.mpv-unwrapped { }; # Added 2020-05-22 + mssys = throw "'mssys' has been renamed to/replaced by 'ms-sys'"; # Converted to throw 2022-02-22 + multipath_tools = throw "'multipath_tools' has been renamed to/replaced by 'multipath-tools'"; # Converted to throw 2022-02-22 + mumsi = throw "mumsi has been removed from nixpkgs, as it's unmaintained and does not build anymore"; # Added 2021-11-18 + mupen64plus1_5 = throw "'mupen64plus1_5' has been renamed to/replaced by 'mupen64plus'"; # Converted to throw 2022-02-22 + mx = throw "graalvm8 and its tools were deprecated in favor of graalvm8-ce"; # Added 2021-10-15 + mxisd = throw "mxisd has been removed from nixpkgs as it has reached end of life, see https://github.com/kamax-matrix/mxisd/blob/535e0a5b96ab63cb0ddef90f6f42c5866407df95/EOL.md#end-of-life-notice . ma1sd may be a suitable alternative."; # Added 2021-04-15 + mysqlWorkbench = throw "'mysqlWorkbench' has been renamed to/replaced by 'mysql-workbench'"; # Converted to throw 2022-02-22 + + ### N ### + + net_snmp = net-snmp; # Added 2019-12-21 + nagiosPluginsOfficial = monitoring-plugins; + navit = throw "navit has been removed from nixpkgs, due to being unmaintained"; # Added 2021-06-07 + ncat = throw "'ncat' has been renamed to/replaced by 'nmap'"; # Converted to throw 2022-02-22 + neap = throw "neap was removed from nixpkgs, as it relies on python2"; # Added 2022-01-12 + netcat-openbsd = throw "'netcat-openbsd' has been renamed to/replaced by 'libressl.nc'"; # Converted to throw 2022-02-22 + netease-cloud-music = throw "netease-cloud-music has been removed together with deepin"; # Added 2020-08-31 + networkmanager_fortisslvpn = throw "'networkmanager_fortisslvpn' has been renamed to/replaced by 'networkmanager-fortisslvpn'"; # Converted to throw 2022-02-22 + networkmanager_iodine = throw "'networkmanager_iodine' has been renamed to/replaced by 'networkmanager-iodine'"; # Converted to throw 2022-02-22 + networkmanager_l2tp = throw "'networkmanager_l2tp' has been renamed to/replaced by 'networkmanager-l2tp'"; # Converted to throw 2022-02-22 + networkmanager_openconnect = throw "'networkmanager_openconnect' has been renamed to/replaced by 'networkmanager-openconnect'"; # Converted to throw 2022-02-22 + networkmanager_openvpn = throw "'networkmanager_openvpn' has been renamed to/replaced by 'networkmanager-openvpn'"; # Converted to throw 2022-02-22 + networkmanager_vpnc = throw "'networkmanager_vpnc' has been renamed to/replaced by 'networkmanager-vpnc'"; # Converted to throw 2022-02-22 + neutral-style = throw "neural-style has been removed, as the upstream project has been abandoned"; # Added 2020-03-28 + nfsUtils = throw "'nfsUtils' has been renamed to/replaced by 'nfs-utils'"; # Converted to throw 2022-02-22 + nginxUnstable = throw "'nginxUnstable' has been renamed to/replaced by 'nginxMainline'"; # Converted to throw 2022-02-22 + nilfs_utils = throw "'nilfs_utils' has been renamed to/replaced by 'nilfs-utils'"; # Converted to throw 2022-02-22 + nix-direnv-flakes = nix-direnv; + nix-review = nixpkgs-review; # Added 2019-12-22 + nixFlakes = nixVersions.stable; # Added 2021-05-21 + nixStable = nixVersions.stable; # Added 2022-01-24 + nixUnstable = nixVersions.unstable; # Added 2022-01-26 + nix_2_3 = nixVersions.nix_2_3; + nix_2_4 = nixVersions.nix_2_4; + nix_2_5 = nixVersions.nix_2_5; + nix_2_6 = nixVersions.nix_2_6; + nixopsUnstable = nixops_unstable; # Added 2022-03-03 + nmap-unfree = nmap; # Added 2021-04-06 + nmap_graphical = throw "'nmap_graphical' has been renamed to/replaced by 'nmap-graphical'"; # Converted to throw 2022-02-22 + nologin = throw "'nologin' has been renamed to/replaced by 'shadow'"; # Converted to throw 2022-02-22 + nordic-polar = throw "nordic-polar was removed on 2021-05-27, now integrated in nordic"; # Added 2021-05-27 + noto-fonts-cjk = noto-fonts-cjk-sans; # Added 2021-12-16 + nottetris2 = throw "nottetris2 was removed because it is unmaintained by upstream and broken"; # Added 2022-01-15 + now-cli = throw "now-cli has been replaced with nodePackages.vercel"; # Added 2021-08-05 + nxproxy = throw "'nxproxy' has been renamed to/replaced by 'nx-libs'"; # Converted to throw 2022-02-22 + nylas-mail-bin = throw "nylas-mail-bin was deprecated on 2019-09-11: abandoned by upstream"; + + ### O ### + + oracleXE = throw "oracleXE has been removed, as it's heavily outdated and unmaintained."; # Added 2020-10-09 + OVMF-CSM = throw "OVMF-CSM has been removed in favor of OVMFFull"; # Added 2021-10-16 + OVMF-secureBoot = throw "OVMF-secureBoot has been removed in favor of OVMFFull"; # Added 2021-10-16 + oauth2_proxy = oauth2-proxy; # Added 2021-04-18 + oblogout = throw "oblogout has been removed from nixpkgs, as it's archived upstream."; # Added 2019-12-10 + octoprint-plugins = throw "octoprint-plugins are now part of the octoprint.python.pkgs package set."; # Added 2021-01-24 + ocz-ssd-guru = throw "ocz-ssd-guru has been removed due to there being no source available"; # Added 2021-07-12 + ofp = throw "ofp is not compatible with odp-dpdk"; + olifant = throw "olifant has been removed from nixpkgs, as it was unmaintained."; # Added 2021-08-05 + onnxruntime = throw "onnxruntime has been removed due to poor maintainability"; # Added 2020-12-04 + openbazaar = throw "openbazzar has been removed from nixpkgs as upstream has abandoned the project"; # Added 2022-01-06 + openbazaar-client = throw "openbazzar-client has been removed from nixpkgs as upstream has abandoned the project"; # Added 2022-01-06 + opencascade_oce = throw "'opencascade_oce' has been renamed to/replaced by 'opencascade'"; # Converted to throw 2022-02-22 + opencl-icd = throw "'opencl-icd' has been renamed to/replaced by 'ocl-icd'"; # Converted to throw 2022-02-22 + openconnect_pa = throw "openconnect_pa fork has been discontinued, support for GlobalProtect is now available in openconnect"; # Added 2021-05-21 + openelec-dvb-firmware = libreelec-dvb-firmware; # Added 2021-05-10 + openexr_ctl = throw "'openexr_ctl' has been renamed to/replaced by 'ctl'"; # Converted to throw 2022-02-22 + openisns = open-isns; # Added 2020-01-28 + openjpeg_1 = throw "openjpeg_1 has been removed, use openjpeg_2 instead"; # Added 2021-01-24 + openjpeg_2 = openjpeg; # Added 2021-01-25 + openmpt123 = libopenmpt; # Added 2021-09-05 + opensans-ttf = throw "'opensans-ttf' has been renamed to/replaced by 'open-sans'"; # Converted to throw 2022-02-22 + openssh_with_kerberos = throw "'openssh_with_kerberos' has been renamed to/replaced by 'openssh'"; # Converted to throw 2022-02-22 + orchis = orchis-theme; # Added 2021-06-09 + osquery = throw "osquery has been removed."; # Added 2019-11-24 + osxfuse = macfuse-stubs; # Added 2021-03-20 + otter-browser = throw "otter-browser has been removed from nixpkgs, as it was unmaintained"; # Added 2020-02-02 + owncloudclient = throw "'owncloudclient' has been renamed to/replaced by 'owncloud-client'"; # Converted to throw 2022-02-22 + + ### P ### + + PPSSPP = throw "'PPSSPP' has been renamed to/replaced by 'ppsspp'"; # Converted to throw 2022-02-22 + + p11_kit = throw "'p11_kit' has been renamed to/replaced by 'p11-kit'"; # Converted to throw 2022-02-22 + packet-cli = metal-cli; # Added 2021-10-25 + paperless = paperless-ng; # Added 2021-06-06 + parity = openethereum; # Added 2020-08-01 + parity-ui = throw "parity-ui was removed because it was broken and unmaintained by upstream"; # Added 2022-01-10 + parquet-cpp = throw "'parquet-cpp' has been renamed to/replaced by 'arrow-cpp'"; # Converted to throw 2022-02-22 + pass-otp = throw "'pass-otp' has been renamed to/replaced by 'pass.withExtensions'"; # Converted to throw 2022-02-22 + pdfmod = throw "pdfmod has been removed"; # Added 2022-01-15 + pdfread = throw "pdfread has been remove because it is unmaintained for years and the sources are no longer available"; # Added 2021-07-22 + pdf-redact-tools = throw "pdf-redact-tools has been removed from nixpkgs because the upstream has abandoned the project."; # Added 2022-01-01 + pdf2htmlEx = throw "pdf2htmlEx has been removed from nixpkgs, as it was unmaintained"; # Added 2020-11-03 + perlXMLParser = throw "'perlXMLParser' has been renamed to/replaced by 'perlPackages.XMLParser'"; # Converted to throw 2022-02-22 + perlArchiveCpio = throw "'perlArchiveCpio' has been renamed to/replaced by 'perlPackages.ArchiveCpio'"; # Converted to throw 2022-02-22 + pgadmin = pgadmin4; + pgp-tools = throw "'pgp-tools' has been renamed to/replaced by 'signing-party'"; # Converted to throw 2022-02-22 + pg_tmp = throw "'pg_tmp' has been renamed to/replaced by 'ephemeralpg'"; # Converted to throw 2022-02-22 + + phantomjs = throw "phantomjs 1.9.8 has been dropped due to lack of maintenance and security issues"; # Added 2022-02-20 + + # Obsolete PHP version aliases + php73 = throw "php73 has been dropped due to the lack of maintanence from upstream for future releases."; # Added 2021-06-03 + php73Packages = php73; # Added 2021-06-03 + php73Extensions = php73; # Added 2021-06-03 + + php-embed = throw '' + php*-embed has been dropped, you can build something similar + with the following snippet: + php74.override { embedSupport = true; apxs2Support = false; } + ''; # Added 2020-04-01 + php73-embed = php-embed; # Added 2020-04-01 + php74-embed = php-embed; # Added 2020-04-01 + + phpPackages-embed = throw '' + php*Packages-embed has been dropped, you can build something + similar with the following snippet: + (php74.override { embedSupport = true; apxs2Support = false; }).packages + ''; # Added 2020-04-01 + php73Packages-embed = phpPackages-embed; + php74Packages-embed = phpPackages-embed; + + php-unit = throw '' + php*-unit has been dropped, you can build something similar with + the following snippet: + php74.override { + embedSupport = true; + apxs2Support = false; + systemdSupport = false; + phpdbgSupport = false; + cgiSupport = false; + fpmSupport = false; + } + ''; # Added 2020-04-01 + php73-unit = php-unit; # Added 2020-04-01 + php74-unit = php-unit; # Added 2020-04-01 + + phpPackages-unit = throw '' + php*Packages-unit has been dropped, you can build something + similar with this following snippet: + (php74.override { + embedSupport = true; + apxs2Support = false; + systemdSupport = false; + phpdbgSupport = false; + cgiSupport = false; + fpmSupport = false; + }).packages + ''; # Added 2020-04-01 + php73Packages-unit = phpPackages-unit; + php74Packages-unit = phpPackages-unit; + + pidgin-with-plugins = throw "'pidgin-with-plugins' has been renamed to/replaced by 'pidgin'"; # Converted to throw 2022-02-22 + pidginlatex = throw "'pidginlatex' has been renamed to/replaced by 'pidgin-latex'"; # Converted to throw 2022-02-22 + pidginlatexSF = throw "'pidginlatexSF' has been renamed to/replaced by 'pidgin-latex'"; # Converted to throw 2022-02-22 + pidginmsnpecan = throw "'pidginmsnpecan' has been renamed to/replaced by 'pidgin-msn-pecan'"; # Converted to throw 2022-02-22 + pidginosd = throw "'pidginosd' has been renamed to/replaced by 'pidgin-osd'"; # Converted to throw 2022-02-22 + pidginotr = throw "'pidginotr' has been renamed to/replaced by 'pidgin-otr'"; # Converted to throw 2022-02-22 + pidginsipe = throw "'pidginsipe' has been renamed to/replaced by 'pidgin-sipe'"; # Converted to throw 2022-02-22 + pidginwindowmerge = throw "'pidginwindowmerge' has been renamed to/replaced by 'pidgin-window-merge'"; # Converted to throw 2022-02-22 + pifi = throw "pifi has been removed from nixpkgs, as it is no longer developed."; # Added 2022-01-19 + piwik = throw "'piwik' has been renamed to/replaced by 'matomo'"; # Converted to throw 2022-02-22 + pkgconfig = pkg-config; # Added 2018-02-02, moved to aliases.nix 2021-01-18 + pkgconfigUpstream = throw "'pkgconfigUpstream' has been renamed to/replaced by 'pkg-configUpstream'"; # Converted to throw 2022-02-22 + planner = throw "planner has been removed from nixpkgs, as it is no longer developed and still uses python2/PyGTK."; # Added 2021-02-02 + pleroma-otp = pleroma; # Added 2021-07-10 + plexpy = throw "'plexpy' has been renamed to/replaced by 'tautulli'"; # Converted to throw 2022-02-22 + pltScheme = racket; # just to be sure + pmtools = throw "'pmtools' has been renamed to/replaced by 'acpica-tools'"; # Converted to throw 2022-02-22 + polarssl = throw "'polarssl' has been renamed to/replaced by 'mbedtls'"; # Converted to throw 2022-02-22 + polysh = throw "polysh has been removed from nixpkgs as the upstream has abandoned the project."; # Added 2022-01-01 + poppler_qt5 = throw "'poppler_qt5' has been renamed to/replaced by 'libsForQt5.poppler'"; # Converted to throw 2022-02-22 + + # postgresql + postgresql96 = postgresql_9_6; + postgresql_9_6 = throw "postgresql_9_6 has been removed from nixpkgs, as this version is no longer supported by upstream"; # Added 2021-12-03 + + # postgresql plugins + cstore_fdw = postgresqlPackages.cstore_fdw; + pg_cron = postgresqlPackages.pg_cron; + pg_hll = postgresqlPackages.pg_hll; + pg_repack = postgresqlPackages.pg_repack; + pg_similarity = postgresqlPackages.pg_similarity; + pg_topn = postgresqlPackages.pg_topn; + pgjwt = postgresqlPackages.pgjwt; + pgroonga = postgresqlPackages.pgroonga; + pgtap = postgresqlPackages.pgtap; + plv8 = postgresqlPackages.plv8; + postgis = postgresqlPackages.postgis; + tilp2 = throw "tilp2 has been removed"; # Added 2022-01-15 + timekeeper = throw "timekeeper has been removed"; # Added 2022-01-16 + timescaledb = postgresqlPackages.timescaledb; + tlauncher = throw "tlauncher has been removed because there questionable practices and legality concerns"; + tsearch_extras = postgresqlPackages.tsearch_extras; + + phonon = throw "phonon: Please use libsForQt5.phonon, as Qt4 support in this package has been removed."; # Added 2019-11-22 + phonon-backend-gstreamer = throw "phonon-backend-gstreamer: Please use libsForQt5.phonon-backend-gstreamer, as Qt4 support in this package has been removed."; # Added 2019-11-22 + phonon-backend-vlc = throw "phonon-backend-vlc: Please use libsForQt5.phonon-backend-vlc, as Qt4 support in this package has been removed."; # Added 2019-11-22 + pinentry_curses = pinentry-curses; # Added 2019-10-14 + pinentry_emacs = pinentry-emacs; # Added 2019-10-14 + pinentry_gnome = pinentry-gnome; # Added 2019-10-14 + pinentry_gtk2 = pinentry-gtk2; # Added 2019-10-14 + pinentry_qt = pinentry-qt; # Added 2019-10-14 + pinentry_qt5 = pinentry-qt; # Added 2020-02-11 + pmenu = throw "pmenu has been removed from nixpkgs, as its maintainer is no longer interested in the package."; # Added 2019-12-10 + privateer = throw "privateer was removed because it was broken"; # Added 2021-05-18 + processing3 = processing; # Added 2019-08-16 + procps-ng = throw "'procps-ng' has been renamed to/replaced by 'procps'"; # Converted to throw 2022-02-22 + proglodyte-wasm = throw "proglodyte-wasm has been removed from nixpkgs, because it is unmaintained since 5 years with zero github stars"; # Added 2021-06-30 + proj_5 = throw "Proj-5 has been removed from nixpkgs, use proj instead."; # Added 2021-04-12 + prometheus-cups-exporter = throw "outdated and broken by design; removed by developer."; # Added 2021-03-16 + pulseaudioLight = throw "'pulseaudioLight' has been renamed to/replaced by 'pulseaudio'"; # Converted to throw 2022-02-22 + pulseeffects = throw "Use pulseeffects-legacy if you use PulseAudio and easyeffects if you use PipeWire."; # Added 2021-02-13 + pulseeffects-pw = easyeffects; # Added 2021-07-07 + pyIRCt = throw "pyIRCt has been removed from nixpkgs as it is unmaintained and python2-only"; + pyMAILt = throw "pyMAILt has been removed from nixpkgs as it is unmaintained and python2-only"; + pybind11 = throw "pybind11 was removed because pythonPackages.pybind11 for the appropriate version of Python should be used"; # Added 2021-05-14 + pybitmessage = throw "pybitmessage was removed from nixpkgs as it is stuck on python2."; # Added 2022-01-01 + pygmentex = texlive.bin.pygmentex; # Added 2019-12-15 + pyload = throw "pyload has been removed from nixpkgs, as it was unmaintained."; # Added 2021-03-21 + pynagsystemd = throw "pynagsystemd was removed as it was unmaintained and incompatible with recent systemd versions. Instead use its fork check_systemd."; # Added 2020-10-24 + pyo3-pack = maturin; + pyrex = throw "pyrex has been removed from nixpkgs as the project is still stuck on python2."; # Added 2022-01-12 + pyrex095 = throw "pyrex has been removed from nixpkgs as the project is still stuck on python2."; # Added 2022-01-12 + pyrex096 = throw "pyrex has been removed from nixpkgs as the project is still stuck on python2."; # Added 2022-01-12 + pyrit = throw "pyrit has been removed from nixpkgs as the project is still stuck on python2."; # Added 2022-01-01 + python = python2; # Added 2022-01-11 + python-swiftclient = swiftclient; # Added 2021-09-09 + python2nix = throw "python2nix has been removed as it is outdated. Use e.g. nixpkgs-pytools instead."; # Added 2021-03-08 + pythonFull = python2Full; # Added 2022-01-11 + pythonPackages = python.pkgs; # Added 2022-01-11 + + ### Q ### + + QmidiNet = throw "'QmidiNet' has been renamed to/replaced by 'qmidinet'"; # Converted to throw 2022-02-22 + qca-qt5 = throw "'qca-qt5' has been renamed to/replaced by 'libsForQt5.qca-qt5'"; # Converted to throw 2022-02-22 + qcsxcad = libsForQt5.qcsxcad; # Added 2020-11-05 + qflipper = qFlipper; # Added 2022-02-11 + qmk_firmware = throw "qmk_firmware has been removed because it was broken"; # Added 2021-04-02 + qr-filetransfer = throw ''"qr-filetransfer" has been renamed to "qrcp"''; # Added 2020-12-02 + qt-3 = throw "qt-3 has been removed from nixpkgs, as it's unmaintained and insecure"; # Added 2021-02-15 + qt-recordmydesktop = throw "qt-recordmydesktop has been removed from nixpkgs, as it's abandoned and uses deprecated libraries"; # Added 2019-12-10 + qt5ct = libsForQt5.qt5ct; # Added 2021-12-27 + qtcurve = libsForQt5.qtcurve; # Added 2020-11-07 + qtkeychain = throw "the qtkeychain attribute (qt4 version) has been removes, use the qt5 version: libsForQt5.qtkeychain"; # Added 2021-08-04 + quagga = throw "quagga is no longer maintained upstream"; # Added 2021-04-22 + quake3game = throw "'quake3game' has been renamed to/replaced by 'ioquake3'"; # Converted to throw 2022-02-22 + quaternion-git = throw "quaternion-git has been removed in favor of the stable version 'quaternion'"; # Added 2020-04-09 + quilter = throw "quilter has been removed from nixpkgs, as it was unmaintained."; # Added 2021-08-03 + qvim = throw "qvim has been removed."; # Added 2020-08-31 + qweechat = throw "qweechat has been removed because it was broken"; # Added 2021-03-08 + qwt6 = throw "'qwt6' has been renamed to/replaced by 'libsForQt5.qwt'"; # Converted to throw 2022-02-22 + + ### R ### + + radare2-cutter = cutter; # Added 2021-03-30 + raspberrypi-tools = throw "raspberrypi-tools has been removed in favor of identical 'libraspberrypi'"; # Added 2020-12-24 + rawdog = throw "rawdog has been removed from nixpkgs as it still requires python2."; # Added 2022-01-01 + rdf4store = throw "rdf4store has been removed from nixpkgs."; # Added 2019-12-21 + rdiff_backup = throw "'rdiff_backup' has been renamed to/replaced by 'rdiff-backup'"; # Converted to throw 2022-02-22 + rdmd = throw "'rdmd' has been renamed to/replaced by 'dtools'"; # Converted to throw 2022-02-22 + readline5 = throw "readline-5 is no longer supported in nixpkgs, please use 'readline' for main supported version"; # Added 2022-02-20 + readline62 = throw "readline-6.2 is no longer supported in nixpkgs, please use 'readline' for main supported version"; # Added 2022-02-20 + readline80 = throw "readline-8.0 is no longer supported in nixpkgs, please use 'readline' for main supported version or 'readline81' for most recent version"; # Added 2021-04-22 + recordmydesktop = throw "recordmydesktop has been removed from nixpkgs, as it's unmaintained and uses deprecated libraries"; # Added 2019-12-10 + redkite = throw "redkite was archived by upstream"; # Added 2021-04-12 + redshift-wlr = throw "redshift-wlr has been replaced by gammastep"; # Added 2021-12-25 + renpy = throw "renpy has been removed from nixpkgs, it was unmaintained and the latest packaged version required python2."; # Added 2022-01-12 + residualvm = throw "residualvm was merged to scummvm code in 2018-06-15; consider using scummvm"; # Added 2021-11-27 + retroArchCores = throw "retroArchCores has been removed. Please use overrides instead, e.g.: `retroarch.override { cores = with libretro; [ ... ]; }`"; # Added 2021-11-19 + retroshare06 = retroshare; + rfkill = throw "rfkill has been removed, as it's included in util-linux"; # Added 2020-08-23 + riak-cs = throw "riak-cs is not maintained anymore"; # Added 2020-10-14 + rimshot = throw "rimshot has been removed, because it is broken and no longer maintained upstream"; # Added 2022-01-15 + ring-daemon = jami-daemon; # Added 2021-10-26 + rkt = throw "rkt was archived by upstream"; # Added 2020-05-16 + rng_tools = throw "'rng_tools' has been renamed to/replaced by 'rng-tools'"; # Converted to throw 2022-02-22 + robomongo = throw "'robomongo' has been renamed to/replaced by 'robo3t'"; # Converted to throw 2022-02-22 + rocm-runtime-ext = throw "rocm-runtime-ext has been removed, since its functionality was added to rocm-runtime"; #added 2020-08-21 + rpiboot-unstable = rpiboot; # Added 2021-07-30 + rssglx = throw "'rssglx' has been renamed to/replaced by 'rss-glx'"; # Converted to throw 2022-02-22 + rssh = throw "rssh has been removed from nixpkgs: no upstream releases since 2012, several known CVEs"; # Added 2020-08-25 + rtv = throw "rtv was archived by upstream. Consider using tuir, an actively maintained fork"; # Added 2021-08-08 + rubyMinimal = throw "rubyMinimal was removed due to being unused"; + runCommandNoCC = runCommand; + runCommandNoCCLocal = runCommandLocal; + runwayml = throw "runwayml is now a webapp"; # Added 2021-04-17 + rustracerd = throw "rustracerd has been removed because it is broken and unmaintained"; # Added 2021-10-19 + rxvt_unicode = rxvt-unicode-unwrapped; # Added 2020-02-02 + rxvt_unicode-with-plugins = rxvt-unicode; # Added 2020-02-02 + + # The alias for linuxPackages*.rtlwifi_new is defined in ./all-packages.nix, + # due to it being inside the linuxPackagesFor function. + rtlwifi_new-firmware = rtw88-firmware; # Added 2021-03-14 + + ### S ### + + s2n = s2n-tls; # Added 2021-03-03 + s6Dns = throw "'s6Dns' has been renamed to/replaced by 's6-dns'"; # Converted to throw 2022-02-22 + s6LinuxUtils = throw "'s6LinuxUtils' has been renamed to/replaced by 's6-linux-utils'"; # Converted to throw 2022-02-22 + s6Networking = throw "'s6Networking' has been renamed to/replaced by 's6-networking'"; # Converted to throw 2022-02-22 + s6PortableUtils = throw "'s6PortableUtils' has been renamed to/replaced by 's6-portable-utils'"; # Converted to throw 2022-02-22 + sagemath = throw "'sagemath' has been renamed to/replaced by 'sage'"; # Converted to throw 2022-02-22 + sam = throw "'sam' has been renamed to/replaced by 'deadpixi-sam'"; # Converted to throw 2022-02-22 + samsungUnifiedLinuxDriver = throw "'samsungUnifiedLinuxDriver' has been renamed to/replaced by 'samsung-unified-linux-driver'"; # Converted to throw 2022-02-22 + sane-backends-git = sane-backends; # Added 2021-02-19 + saneBackends = throw "'saneBackends' has been renamed to/replaced by 'sane-backends'"; # Converted to throw 2022-02-22 + saneBackendsGit = throw "'saneBackendsGit' has been renamed to/replaced by 'sane-backends'"; # Converted to throw 2022-02-22 + saneFrontends = throw "'saneFrontends' has been renamed to/replaced by 'sane-frontends'"; # Converted to throw 2022-02-22 + scaff = throw "scaff is deprecated - replaced by https://gitlab.com/jD91mZM2/inc (not in nixpkgs yet)"; # Added 2020-03-01 + scallion = throw "scallion has been removed, because it is currently unmaintained upstream"; # added 2021-12-15 + scim = throw "'scim' has been renamed to/replaced by 'sc-im'"; # Converted to throw 2022-02-22 + scollector = throw "'scollector' has been renamed to/replaced by 'bosun'"; # Converted to throw 2022-02-22 + scyther = throw "scyther has been removed since it currently only supports Python 2, see https://github.com/cascremers/scyther/issues/20"; # Added 2021-10-07 + sdlmame = mame; # Added 2019-10-30 + seeks = throw "seeks has been removed from nixpkgs, as it was unmaintained"; # Added 2020-06-21 + seg3d = throw "seg3d has been removed from nixpkgs (2019-11-10)"; + sepolgen = throw "sepolgen was merged into selinux-python"; # Added 2021-11-11 + shared_mime_info = throw "'shared_mime_info' has been renamed to/replaced by 'shared-mime-info'"; # Converted to throw 2022-02-22 + shellinabox = throw "shellinabox has been removed from nixpkgs, as it was unmaintained upstream"; # Added 2021-12-15 + sickbeard = throw "sickbeard has been removed from nixpkgs, as it was unmaintained."; # Added 2022-01-01 + sickrage = throw "sickbeard has been removed from nixpkgs, as it was unmaintained."; # Added 2022-01-01 + sigurlx = throw "sigurlx has been removed (upstream is gone)"; # Added 2022-01-24 + skrooge2 = throw "'skrooge2' has been renamed to/replaced by 'skrooge'"; # Converted to throw 2022-02-22 + sky = throw "sky has been removed from nixpkgs (2020-09-16)"; + skype = throw "'skype' has been renamed to/replaced by 'skypeforlinux'"; # Converted to throw 2022-02-22 + skype4pidgin = throw "skype4pidgin has been remove from nixpkgs, because it stopped working when classic Skype was retired."; # Added 2021-07-14 + skype_call_recorder = throw "skype_call_recorder has been removed from nixpkgs, because it stopped working when classic Skype was retired."; # Added 2020-10-31 + slack-dark = slack; # Added 2020-03-27 + slic3r-prusa3d = throw "'slic3r-prusa3d' has been renamed to/replaced by 'prusa-slicer'"; # Converted to throw 2022-02-22 + slim = throw "slim has been removed. Please use a different display-manager"; # Added 2019-11-11 + slimThemes = throw "slimThemes has been removed because slim has been also"; # Added 2019-11-11 + slurm-full = throw "'slurm-full' has been renamed to/replaced by 'slurm'"; # Converted to throw 2022-02-22 + slurm-llnl = slurm; # renamed July 2017 + slurm-llnl-full = slurm-full; # renamed July 2017 + smbclient = throw "'smbclient' has been renamed to/replaced by 'samba'"; # Converted to throw 2022-02-22 + smugline = throw "smugline has been removed from nixpkgs, as it's unmaintained and depends on deprecated libraries."; # Added 2020-11-04 + solr_8 = solr; # Added 2021-01-30 + + # Added 2020-02-10 + sourceHanSansPackages = { + japanese = source-han-sans; + korean = source-han-sans; + simplified-chinese = source-han-sans; + traditional-chinese = source-han-sans; + }; + source-han-sans-japanese = source-han-sans; + source-han-sans-korean = source-han-sans; + source-han-sans-simplified-chinese = source-han-sans; + source-han-sans-traditional-chinese = source-han-sans; + sourceHanSerifPackages = { + japanese = source-han-serif; + korean = source-han-serif; + simplified-chinese = source-han-serif; + traditional-chinese = source-han-serif; + }; + source-han-serif-japanese = source-han-serif; + source-han-serif-korean = source-han-serif; + source-han-serif-simplified-chinese = source-han-serif; + source-han-serif-traditional-chinese = source-han-serif; + + spaceOrbit = throw "'spaceOrbit' has been renamed to/replaced by 'space-orbit'"; # Converted to throw 2022-02-22 + spectral = neochat; # Added 2020-12-27 + speech_tools = throw "'speech_tools' has been renamed to/replaced by 'speech-tools'"; # Converted to throw 2022-02-22 + speedtest_cli = throw "'speedtest_cli' has been renamed to/replaced by 'speedtest-cli'"; # Converted to throw 2022-02-22 + spice_gtk = throw "'spice_gtk' has been renamed to/replaced by 'spice-gtk'"; # Converted to throw 2022-02-22 + spice_protocol = throw "'spice_protocol' has been renamed to/replaced by 'spice-protocol'"; # Converted to throw 2022-02-22 + spidermonkey_1_8_5 = throw "spidermonkey_1_8_5 has been removed, because it is based on Firefox 4.0 from 2011."; # added 2021-05-03 + spidermonkey_38 = throw "spidermonkey_38 has been removed. Please use spidermonkey_78 instead."; # Added 2021-03-21 + spidermonkey_52 = throw "spidermonkey_52 has been removed. Please use spidermonkey_78 instead."; # Added 2019-10-16 + spidermonkey_60 = throw "spidermonkey_60 has been removed. Please use spidermonkey_78 instead."; # Added 2021-03-21 + spidermonkey_68 = throw "spidermonkey_68 has been removed. Please use spidermonkey_91 instead."; # added 2022-01-04 + # spidermonkey is not ABI upwards-compatible, so only allow this for nix-shell + spidermonkey = spidermonkey_78; # Added 2020-10-09 + spring-boot = spring-boot-cli; # added 2020-04-24 + sqlite3_analyzer = throw "'sqlite3_analyzer' has been renamed to/replaced by 'sqlite-analyzer'"; # Converted to throw 2022-02-22 + sqliteInteractive = throw "'sqliteInteractive' has been renamed to/replaced by 'sqlite-interactive'"; # Converted to throw 2022-02-22 + squid4 = squid; # added 2019-08-22 + sshfsFuse = throw "'sshfsFuse' has been renamed to/replaced by 'sshfs-fuse'"; # Converted to throw 2022-02-22 + stanchion = throw "Stanchion was part of riak-cs which is not maintained anymore"; # added 2020-10-14 + steam-run-native = steam-run; # added 2022-02-21 + stumpwm-git = throw "stumpwm-git has been broken for a long time and lispPackages.stumpwm follows Quicklisp that is close to git version"; # Added 2021-05-09 + subversion19 = throw "subversion19 has been removed as it has reached its end of life"; # Added 2021-03-31 + sundials_3 = throw "sundials_3 was removed in 2020-02. outdated and no longer needed"; + surf-webkit2 = throw "'surf-webkit2' has been renamed to/replaced by 'surf'"; # Converted to throw 2022-02-22 + svgcleaner = throw "svgcleaner has been removed."; # Added 2021-11-17 + swec = throw "swec has been removed; broken and abandoned upstream."; # Added 2021-10-14 + swfdec = throw "swfdec has been removed as broken and unmaintained."; # Added 2020-08-23 + swtpm-tpm2 = swtpm; # Added 2021-02-26 + syncthing-cli = syncthing; # Added 2021-04-06 + synology-drive = throw "synology-drive has been superseded by synology-drive-client"; # Added 2021-11-26 + system_config_printer = throw "'system_config_printer' has been renamed to/replaced by 'system-config-printer'"; # Converted to throw 2022-02-22 + systemd-cryptsetup-generator = throw "systemd-cryptsetup-generator is now included in the systemd package"; # Added 2020-07-12 + systemd_with_lvm2 = throw "systemd_with_lvm2 is obsolete, enabled by default via the lvm module"; # Added 2020-07-12 + systool = throw "'systool' has been renamed to/replaced by 'sysfsutils'"; # Converted to throw 2022-02-22 + + ### T ### + + tahoelafs = throw "'tahoelafs' has been renamed to/replaced by 'tahoe-lafs'"; # Converted to throw 2022-02-22 + tangogps = foxtrotgps; # Added 2020-01-26 + tdm = throw "tdm has been removed because nobody can figure out how to fix OpenAL integration. Use precompiled binary and `steam-run` instead."; + telepathy-qt = throw "telepathy-qt no longer supports Qt 4. Please use libsForQt5.telepathy instead."; # Added 2020-07-02 + telepathy_farstream = throw "'telepathy_farstream' has been renamed to/replaced by 'telepathy-farstream'"; # Converted to throw 2022-02-22 + telepathy_gabble = throw "'telepathy_gabble' has been renamed to/replaced by 'telepathy-gabble'"; # Converted to throw 2022-02-22 + telepathy_glib = throw "'telepathy_glib' has been renamed to/replaced by 'telepathy-glib'"; # Converted to throw 2022-02-22 + telepathy_haze = throw "'telepathy_haze' has been renamed to/replaced by 'telepathy-haze'"; # Converted to throw 2022-02-22 + telepathy_idle = throw "'telepathy_idle' has been renamed to/replaced by 'telepathy-idle'"; # Converted to throw 2022-02-22 + telepathy_logger = throw "'telepathy_logger' has been renamed to/replaced by 'telepathy-logger'"; # Converted to throw 2022-02-22 + telepathy_mission_control = throw "'telepathy_mission_control' has been renamed to/replaced by 'telepathy-mission-control'"; # Converted to throw 2022-02-22 + telepathy_qt = throw "'telepathy_qt' has been renamed to/replaced by 'telepathy-qt'"; # Converted to throw 2022-02-22 + telepathy_qt5 = throw "'telepathy_qt5' has been renamed to/replaced by 'libsForQt5.telepathy'"; # Converted to throw 2022-02-22 + telepathy_salut = throw "'telepathy_salut' has been renamed to/replaced by 'telepathy-salut'"; # Converted to throw 2022-02-22 + telnet = throw "'telnet' has been renamed to/replaced by 'inetutils'"; # Converted to throw 2022-02-22 + terminus = throw "terminus has been removed, it was unmaintained in nixpkgs"; # Added 2021-08-21 + terraform-provider-ibm = throw "'terraform-provider-ibm' has been renamed to/replaced by 'terraform-providers.ibm'"; # Converted to throw 2022-02-22 + terraform-provider-libvirt = throw "'terraform-provider-libvirt' has been renamed to/replaced by 'terraform-providers.libvirt'"; # Converted to throw 2022-02-22 + terraform-provider-lxd = terraform-providers.lxd; # Added 2020-03-16 + terraform_0_12 = throw "terraform_0_12 has been removed from nixpkgs on 2021/01"; + terraform_1_0 = throw "terraform_1_0 has been renamed to terraform_1"; # Added 2021-12-08 + terraform_1_0_0 = throw "terraform_1_0_0 has been renamed to terraform_1"; # Added 2021-06-15 + tesseract_4 = throw "'tesseract_4' has been renamed to/replaced by 'tesseract4'"; # Converted to throw 2022-02-22 + tex-gyre-bonum-math = throw "'tex-gyre-bonum-math' has been renamed to/replaced by 'tex-gyre-math.bonum'"; # Converted to throw 2022-02-22 + tex-gyre-pagella-math = throw "'tex-gyre-pagella-math' has been renamed to/replaced by 'tex-gyre-math.pagella'"; # Converted to throw 2022-02-22 + tex-gyre-schola-math = throw "'tex-gyre-schola-math' has been renamed to/replaced by 'tex-gyre-math.schola'"; # Converted to throw 2022-02-22 + tex-gyre-termes-math = throw "'tex-gyre-termes-math' has been renamed to/replaced by 'tex-gyre-math.termes'"; # Converted to throw 2022-02-22 + tftp_hpa = throw "'tftp_hpa' has been renamed to/replaced by 'tftp-hpa'"; # Converted to throw 2022-02-22 + thunderbird-68 = throw "Thunderbird 68 reached end of life with its final release 68.12.0 on 2020-08-25."; + thunderbird-bin-68 = thunderbird-68; + timescale-prometheus = promscale; # Added 2020-09-29 + timetable = throw "timetable has been removed, as the upstream project has been abandoned"; # Added 2021-09-05 + tkcvs = tkrev; # Added 2022-03-07 + togglesg-download = throw "togglesg-download was removed 2021-04-30 as it's unmaintained"; # Added 2021-04-30 + tomboy = throw "tomboy is not actively developed anymore and was removed."; # Added 2022-01-27 + tomcat7 = throw "tomcat7 has been removed from nixpkgs as it has reached end of life."; # Added 2021-06-16 + tomcat8 = throw "tomcat8 has been removed from nixpkgs as it has reached end of life."; # Added 2021-06-16 + tomcat85 = throw "tomcat85 has been removed from nixpkgs as it has reached end of life."; # Added 2020-03-11 + tor-arm = throw "tor-arm has been removed from nixpkgs as the upstream project has been abandoned."; # Added 2022-01-01 + torbrowser = throw "'torbrowser' has been renamed to/replaced by 'tor-browser-bundle-bin'"; # Converted to throw 2022-02-22 + torch = throw "torch has been removed, as the upstream project has been abandoned"; # Added 2020-03-28 + torch-hdf5 = throw "torch-hdf5 has been removed, as the upstream project has been abandoned"; # Added 2020-03-28 + torch-repl = throw "torch-repl has been removed, as the upstream project has been abandoned"; # Added 2020-03-28 + torchPackages = throw "torchPackages has been removed, as the upstream project has been abandoned"; # Added 2020-03-28 + trang = throw "'trang' has been renamed to/replaced by 'jing-trang'"; # Converted to throw 2022-02-22 + transfig = fig2dev; # Added 2022-02-15 + transmission-remote-cli = "transmission-remote-cli has been removed, as the upstream project has been abandoned. Please use tremc instead"; # Added 2020-10-14 + transmission_gtk = throw "'transmission_gtk' has been renamed to/replaced by 'transmission-gtk'"; # Converted to throw 2022-02-22 + transmission_remote_gtk = throw "'transmission_remote_gtk' has been renamed to/replaced by 'transmission-remote-gtk'"; # Converted to throw 2022-02-22 + transporter = throw "transporter has been removed. It was archived upstream, so it's considered abandoned."; + trebleshot = throw "trebleshot has been removed. It was archived upstream, so it's considered abandoned."; + trilium = throw "trilium has been removed. Please use trilium-desktop instead."; # Added 2020-04-29 + truecrypt = throw "'truecrypt' has been renamed to/replaced by 'veracrypt'"; # Converted to throw 2022-02-22 + tshark = throw "'tshark' has been renamed to/replaced by 'wireshark-cli'"; # Converted to throw 2022-02-22 + tuijam = throw "tuijam has been removed because Google Play Music was discontinued"; # Added 2021-03-07 + turbo-geth = throw "turbo-geth has been renamed to erigon"; # Added 2021-08-08 + typora = throw "Newer versions of typora use anti-user encryption and refuse to start. As such it has been removed."; # Added 2021-09-11 + + ### U ### + + uberwriter = apostrophe; # Added 2020-04-23 + ubootBeagleboneBlack = ubootAmx335xEVM; # Added 2020-01-21 + ucsFonts = throw "'ucsFonts' has been renamed to/replaced by 'ucs-fonts'"; # Converted to throw 2022-02-22 + ufraw = throw "ufraw is unmaintained and has been removed from nixpkgs. Its successor, nufraw, doesn't seem to be stable enough. Consider using Darktable for now."; # Added 2020-01-11 + ultrastardx-beta = throw "'ultrastardx-beta' has been renamed to/replaced by 'ultrastardx'"; # Converted to throw 2022-02-22 + unicorn-emu = unicorn; # Added 2020-10-29 + unifiStable = unifi6; # Added 2020-12-28 + untrunc = untrunc-anthwlock; # Added 2021-02-01 + urxvt_autocomplete_all_the_things = rxvt-unicode-plugins.autocomplete-all-the-things; # Added 2020-02-02 + urxvt_bidi = rxvt-unicode-plugins.bidi; # Added 2020-02-02 + urxvt_font_size = rxvt-unicode-plugins.font-size; # Added 2020-02-02 + urxvt_perl = rxvt-unicode-plugins.perl; # Added 2020-02-02 + urxvt_perls = rxvt-unicode-plugins.perls; # Added 2020-02-02 + urxvt_tabbedex = rxvt-unicode-plugins.tabbedex; # Added 2020-02-02 + urxvt_theme_switch = rxvt-unicode-plugins.theme-switch; # Added 2020-02-02 + urxvt_vtwheel = rxvt-unicode-plugins.vtwheel; # Added 2020-02-02 + usb_modeswitch = throw "'usb_modeswitch' has been renamed to/replaced by 'usb-modeswitch'"; # Converted to throw 2022-02-22 + usbguard-nox = usbguard; # Added 2019-09-04 + utillinux = util-linux; # Added 2020-11-24 + uzbl = throw "uzbl has been removed from nixpkgs, as it's unmaintained and uses insecure libraries"; + + ### V ### + + v4l_utils = v4l-utils; # Added 2019-08-07 + v8_3_16_14 = throw "v8_3_16_14 was removed in 2019-11-01: no longer referenced by other packages"; + vamp = { vampSDK = vamp-plugin-sdk; }; # Added 2020-03-26 + vapor = throw "vapor was removed because it was unmaintained and upstream service no longer exists"; + varnish62 = throw "varnish62 was removed from nixpkgs, because it is unmaintained upstream. Please switch to a different release."; # Added 2021-07-26 + varnish63 = throw "varnish63 was removed from nixpkgs, because it is unmaintained upstream. Please switch to a different release."; # Added 2021-07-26 + varnish65 = throw "varnish65 was removed from nixpkgs, because it is unmaintained upstream. Please switch to a different release."; # Added 2021-09-15 + vdirsyncerStable = vdirsyncer; # Added 2020-11-08, see https://github.com/NixOS/nixpkgs/issues/103026#issuecomment-723428168 + venus = throw "venus has been removed from nixpkgs, as it's unmaintained"; # Added 2021-02-05 + vimbWrapper = throw "'vimbWrapper' has been renamed to/replaced by 'vimb'"; # Converted to throw 2022-02-22 + vimprobable2 = throw "vimprobable2 has been removed from nixpkgs. It relied on webkitgtk24x that has been removed."; # Added 2019-12-05 + vimprobable2-unwrapped = vimprobable2; # Added 2019-12-05 + virtinst = throw "virtinst has been removed, as it's included in virt-manager"; # Added 2021-07-21 + virtuoso = throw "virtuoso has been removed, because it was unmaintained in nixpkgs"; # added 2021-12-15 + virtmanager = virt-manager; # Added 2019-10-29 + virtmanager-qt = virt-manager-qt; # Added 2019-10-29 + virtviewer = throw "'virtviewer' has been renamed to/replaced by 'virt-viewer'"; # Converted to throw 2022-02-22 + vorbisTools = throw "'vorbisTools' has been renamed to/replaced by 'vorbis-tools'"; # Converted to throw 2022-02-22 + vtun = throw "vtune has been removed as it's unmaintained upstream."; # Added 2021-10-29 + + ### W ### + + way-cooler = throw "way-cooler is abandoned by its author: https://way-cooler.org/blog/2020/01/09/way-cooler-post-mortem.html"; # Added 2020-01-13 + webkit = throw "'webkit' has been renamed to/replaced by 'webkitgtk'"; # Converted to throw 2022-02-22 + webkitgtk24x-gtk2 = throw "webkitgtk24x-gtk2 has been removed because it's insecure. Please use webkitgtk."; # Added 2019-12-05 + webkitgtk24x-gtk3 = throw "webkitgtk24x-gtk3 has been removed because it's insecure. Please use webkitgtk."; # Added 2019-12-05 + weechat-matrix-bridge = throw "'weechat-matrix-bridge' has been renamed to/replaced by 'weechatScripts.weechat-matrix-bridge'"; # Converted to throw 2022-02-22 + whirlpool-gui = throw "whirlpool-gui has been removed as it depended on an insecure version of Electron."; # added 2022-02-08 + wicd = throw "wicd has been removed as it is abandoned."; # Added 2021-09-11 + wineFull = throw "'wineFull' has been renamed to/replaced by 'winePackages.full'"; # Converted to throw 2022-02-22 + wineMinimal = throw "'wineMinimal' has been renamed to/replaced by 'winePackages.minimal'"; # Converted to throw 2022-02-22 + wineStable = throw "'wineStable' has been renamed to/replaced by 'winePackages.stable'"; # Converted to throw 2022-02-22 + wineStaging = throw "'wineStaging' has been renamed to/replaced by 'wine-staging'"; # Converted to throw 2022-02-22 + wineUnstable = throw "'wineUnstable' has been renamed to/replaced by 'winePackages.unstable'"; # Converted to throw 2022-02-22 + wineWayland = wine-wayland; + winswitch = throw "winswitch has been removed from nixpkgs."; # Added 2019-12-10 + winusb = throw "'winusb' has been renamed to/replaced by 'woeusb'"; # Converted to throw 2022-02-22 + wireguard = throw "'wireguard' has been renamed to/replaced by 'wireguard-tools'"; # Converted to throw 2022-02-22 + wireshark-gtk = throw "wireshark-gtk is not supported anymore. Use wireshark-qt or wireshark-cli instead."; # Added 2019-11-18 + wxmupen64plus = throw "wxmupen64plus was removed because the upstream disappeared."; # Added 2022-01-31 + + ### X ### + + x11 = throw "'x11' has been renamed to/replaced by 'xlibsWrapper'"; # Converted to throw 2022-02-22 + xara = throw "xara has been removed from nixpkgs. Unmaintained since 2006"; # Added 2020-06-24 + xbmc = throw "'xbmc' has been renamed to/replaced by 'kodi'"; # Converted to throw 2022-02-22 + xbmc-retroarch-advanced-launchers = kodi-retroarch-advanced-launchers; # Added 2021-11-19 + xbmcPlain = throw "'xbmcPlain' has been renamed to/replaced by 'kodiPlain'"; # Converted to throw 2022-02-22 + xbmcPlugins = throw "'xbmcPlugins' has been renamed to/replaced by 'kodiPackages'"; # Converted to throw 2022-02-22 + xdg_utils = xdg-utils; # Added 2021-02-01 + xfce4-12 = throw "xfce4-12 has been replaced by xfce4-14"; # Added 2020-03-14 + xfce4-14 = xfce; + xfceUnstable = xfce4-14; # Added 2019-09-17 + xineLib = xine-lib; # Added 2021-04-27 + xineUI = xine-ui; # Added 2021-04-27 + xmonad_log_applet_gnome3 = throw "'xmonad_log_applet_gnome3' has been renamed to/replaced by 'xmonad_log_applet'"; # Converted to throw 2022-02-22 + xmpppy = throw "xmpppy has been removed from nixpkgs as it is unmaintained and python2-only"; + xp-pen-g430 = pentablet-driver; # Added 2020-05-03 + xf86_video_nouveau = throw "'xf86_video_nouveau' has been renamed to/replaced by 'xorg.xf86videonouveau'"; # Converted to throw 2022-02-22 + xf86_input_mtrack = throw '' + xf86_input_mtrack has been removed from nixpkgs as it is broken and + unmaintained. Working alternatives are libinput and synaptics. + ''; + xf86_input_multitouch = throw "xf86_input_multitouch has been removed from nixpkgs."; # Added 2020-01-20 + xlibs = throw "'xlibs' has been renamed to/replaced by 'xorg'"; # Converted to throw 2022-02-22 + xpraGtk3 = throw "'xpraGtk3' has been renamed to/replaced by 'xpra'"; # Converted to throw 2022-02-22 + xv = xxv; # Added 2020-02-22 + xvfb_run = xvfb-run; # Added 2021-05-07 + + ### Y ### + + yacc = bison; # moved from top-level 2021-03-14 + yarssr = throw "yarssr has been removed as part of the python2 deprecation"; # Added 2022-01-15 + youtubeDL = throw "'youtubeDL' has been renamed to/replaced by 'youtube-dl'"; # Converted to throw 2022-02-22 + ytop = throw "ytop has been abandoned by upstream. Consider switching to bottom instead"; + yubikey-neo-manager = throw "yubikey-neo-manager has been removed because it was broken. Use yubikey-manager-qt instead."; # Added 2021-03-08 + yuzu = yuzu-mainline; # Added 2021-01-25 + + ### Z ### + + zabbix30 = throw "Zabbix 3.0.x is end of life, see https://www.zabbix.com/documentation/5.0/manual/installation/upgrade/sources for a direct upgrade path to 5.0.x"; # Added 2021-04-07 + zdfmediathk = throw "'zdfmediathk' has been renamed to/replaced by 'mediathekview'"; # Converted to throw 2022-02-22 + zimreader = throw "zimreader has been removed from nixpkgs as it has been replaced by kiwix-serve and stopped working with modern zimlib versions."; # Added 2021-03-28 + + # TODO(ekleog): add ‘wasm’ alias to ‘ocamlPackages.wasm’ after 19.03 + # branch-off + + ocamlPackages_4_00_1 = throw "'ocamlPackages_4_00_1' has been renamed to/replaced by 'ocaml-ng.ocamlPackages_4_00_1'"; # Converted to throw 2022-02-22 + ocamlPackages_4_01_0 = throw "'ocamlPackages_4_01_0' has been renamed to/replaced by 'ocaml-ng.ocamlPackages_4_01_0'"; # Converted to throw 2022-02-22 + ocamlPackages_4_02 = throw "'ocamlPackages_4_02' has been renamed to/replaced by 'ocaml-ng.ocamlPackages_4_02'"; # Converted to throw 2022-02-22 + ocamlPackages_4_03 = throw "'ocamlPackages_4_03' has been renamed to/replaced by 'ocaml-ng.ocamlPackages_4_03'"; # Converted to throw 2022-02-22 + ocamlPackages_latest = throw "'ocamlPackages_latest' has been renamed to/replaced by 'ocaml-ng.ocamlPackages_latest'"; # Converted to throw 2022-02-22 + + ocaml_4_00_1 = throw "'ocamlPackages_4_00_1.ocaml' has been renamed to/replaced by 'ocaml-ng.ocamlPackages_4_00_1.ocaml'"; # Converted to throw 2022-02-22 + ocaml_4_01_0 = throw "'ocamlPackages_4_01_0.ocaml' has been renamed to/replaced by 'ocaml-ng.ocamlPackages_4_01_0.ocaml'"; # Converted to throw 2022-02-22 + ocaml_4_02 = throw "'ocamlPackages_4_02.ocaml' has been renamed to/replaced by 'ocaml-ng.ocamlPackages_4_02.ocaml'"; # Converted to throw 2022-02-22 + ocaml_4_03 = throw "'ocamlPackages_4_03.ocaml' has been renamed to/replaced by 'ocaml-ng.ocamlPackages_4_03.ocaml'"; # Converted to throw 2022-02-22 + + zabbix44 = throw '' + Zabbix 4.4 is end of life. For details on upgrading to Zabbix 5.0 look at + https://www.zabbix.com/documentation/current/manual/installation/upgrade_notes_500 + ''; # Added 2020-08-17 + + # Added 2019-09-06 + zeroc_ice = pkgs.zeroc-ice; + + # Added 2020-06-22 + zeromq3 = throw "zeromq3 has been deprecated by zeromq4."; + jzmq = throw "jzmq has been removed from nixpkgs, as it was unmaintained"; + + avian = throw '' + The package doesn't compile anymore on NixOS and both development & + maintenance is abandoned by upstream. + ''; # Cleanup before 21.11, Added 2021-05-07 + ant-dracula-theme = throw "ant-dracula-theme is now dracula-theme, and theme name is Dracula instead of Ant-Dracula."; + dina-font-pcf = dina-font; # Added 2020-02-09 + dnscrypt-proxy = throw "dnscrypt-proxy has been removed. Please use dnscrypt-proxy2."; # Added 2020-02-02 + gcc-snapshot = throw "gcc-snapshot: Marked as broken for >2 years, additionally this 'snapshot' pointed to a fairly old one from gcc7."; + gnatsd = nats-server; # Added 2019-10-28 + + obs-gstreamer = throw '' + obs-gstreamer has been converted into a plugin for use with wrapOBS. + Its new location is obs-studio-plugins.obs-gstreamer. + ''; # Added 2021-06-01 + + obs-move-transition = throw '' + obs-move-transition has been converted into a plugin for use with wrapOBS. + Its new location is obs-studio-plugins.obs-move-transition. + ''; # Added 2021-06-01 + + obs-multi-rtmp = throw '' + obs-multi-rtmp has been converted into a plugin for use with wrapOBS. + Its new location is obs-studio-plugins.obs-multi-rtmp. + ''; # Added 2021-06-01 + + obs-ndi = throw '' + obs-ndi has been converted into a plugin for use with wrapOBS. + Its new location is obs-studio-plugins.obs-ndi. + ''; # Added 2021-06-01 + + obs-v4l2sink = throw "obs-v4l2sink is integrated into upstream OBS since version 26.1"; # Added 2021-06-01 + + obs-wlrobs = throw '' + wlrobs has been converted into a plugin for use with wrapOBS. + Its new location is obs-studio-plugins.wlrobs. + ''; # Added 2021-06-01 + + oraclejdk8psu = throw "The *psu versions of oraclejdk are no longer provided by upstream."; # Cleanup before 20.09 + oraclejre8psu = oraclejdk8psu; # Cleanup before 20.09 + oraclejdk8psu_distro = oraclejdk8psu; # Cleanup before 20.09 + posix_man_pages = man-pages-posix; # Added 2021-04-15 + riot-desktop = throw "riot-desktop is now element-desktop!"; # Cleanup before 21.05 + riot-web = throw "riot-web is now element-web"; # Cleanup before 21.05 + sqldeveloper_18 = throw "sqldeveloper_18 is not maintained anymore!"; # Added 2020-02-04 + todolist = throw "todolist is now ultralist."; # Added 2020-12-27 + tor-browser-bundle = throw "tor-browser-bundle was removed because it was out of date and inadequately maintained. Please use tor-browser-bundle-bin instead."; # Added 2020-01-10 + tor-browser-unwrapped = throw "tor-browser-unwrapped was removed because it was out of date and inadequately maintained. Please use tor-browser-bundle-bin instead."; # Added 2020-01-10 + ttyrec = ovh-ttyrec; # Added 2021-01-02 + zplugin = zinit; # Added 2021-01-30 + + inherit (stdenv.hostPlatform) system; # Added 2021-10-22 + + # LLVM packages for (integration) testing that should not be used inside Nixpkgs: + llvmPackages_git = recurseIntoAttrs (callPackage ../development/compilers/llvm/git { + inherit (stdenvAdapters) overrideCC; + buildLlvmTools = buildPackages.llvmPackages_git.tools; + targetLlvmLibraries = targetPackages.llvmPackages_git.libraries; + }); + + /* If these are in the scope of all-packages.nix, they cause collisions + between mixed versions of qt. See: + https://github.com/NixOS/nixpkgs/pull/101369 */ + + inherit (plasma5Packages) + akonadi akregator ark bluedevil bomber bovo breeze-grub breeze-gtk + breeze-icons breeze-plymouth breeze-qt5 discover dolphin dragon elisa + ffmpegthumbs filelight granatier gwenview k3b kactivitymanagerd kaddressbook + kalzium kapman kapptemplate kate katomic kblackbox kblocks kbounce + kcachegrind kcalc kcharselect kcolorchooser kde-cli-tools kde-gtk-config + kdenlive kdeplasma-addons kdf kdialog kdiamond keditbookmarks kfind kfloppy + kgamma5 kget kgpg khelpcenter kig kigo killbots kinfocenter kitinerary + kleopatra klettres klines kmag kmail kmenuedit kmines kmix kmplot + knavalbattle knetwalk knights kollision kolourpaint kompare konsole kontact + korganizer kpkpass krdc kreversi krfb kscreen kscreenlocker kshisen ksquares + ksshaskpass ksystemlog kteatime ktimer ktorrent ktouch kturtle kwallet-pam + kwalletmanager kwave kwayland-integration kwin kwrited marble milou minuet + okular oxygen oxygen-icons5 picmi plasma-browser-integration plasma-desktop + plasma-integration plasma-nano plasma-nm plasma-pa plasma-phone-components + plasma-systemmonitor plasma-thunderbolt plasma-vault plasma-workspace + plasma-workspace-wallpapers polkit-kde-agent powerdevil qqc2-breeze-style + sddm-kcm skanlite spectacle systemsettings xdg-desktop-portal-kde yakuake + zanshin + ; + + inherit (plasma5Packages.thirdParty) + krohnkite + krunner-ssh + krunner-symbols + kwin-dynamic-workspaces + kwin-tiling + plasma-applet-caffeine-plus + plasma-applet-virtual-desktop-bar + ; + + inherit (libsForQt5) + sddm + ; + +}) diff --git a/nixpkgs/pkgs/top-level/all-packages.nix b/nixpkgs/pkgs/top-level/all-packages.nix new file mode 100644 index 000000000000..6aca83b2f469 --- /dev/null +++ b/nixpkgs/pkgs/top-level/all-packages.nix @@ -0,0 +1,34873 @@ +/* The top-level package collection of nixpkgs. + * It is sorted by categories corresponding to the folder names + * in the /pkgs folder. Inside the categories packages are roughly + * sorted by alphabet, but strict sorting has been long lost due + * to merges. Please use the full-text search of your editor. ;) + * Hint: ### starts category names. + */ +{ lib, noSysDirs, config, overlays }: +res: pkgs: super: + +with pkgs; + +{ + + # A stdenv capable of building 32-bit binaries. On x86_64-linux, + # it uses GCC compiled with multilib support; on i686-linux, it's + # just the plain stdenv. + stdenv_32bit = lowPrio (if stdenv.hostPlatform.is32bit then stdenv else multiStdenv); + + stdenvNoCC = stdenv.override ( + { cc = null; hasCC = false; } + + // lib.optionalAttrs (stdenv.hostPlatform.isDarwin && (stdenv.hostPlatform != stdenv.buildPlatform)) { + # TODO: This is a hack to use stdenvNoCC to produce a CF when cross + # compiling. It's not very sound. The cross stdenv has: + # extraBuildInputs = [ targetPackages.darwin.apple_sdks.frameworks.CoreFoundation ] + # and uses stdenvNoCC. In order to make this not infinitely recursive, we need to exclude + # this extraBuildInput. + extraBuildInputs = []; + } + ); + + mkStdenvNoLibs = stdenv: let + bintools = stdenv.cc.bintools.override { + libc = null; + noLibc = true; + }; + in stdenv.override { + cc = stdenv.cc.override { + libc = null; + noLibc = true; + extraPackages = []; + inherit bintools; + }; + allowedRequisites = + lib.mapNullable (rs: rs ++ [ bintools ]) (stdenv.allowedRequisites or null); + }; + + stdenvNoLibs = + if stdenv.hostPlatform != stdenv.buildPlatform && (stdenv.hostPlatform.isDarwin || stdenv.hostPlatform.isDarwin.useLLVM or false) + then + # We cannot touch binutils or cc themselves, because that will cause + # infinite recursion. So instead, we just choose a libc based on the + # current platform. That means we won't respect whatever compiler was + # passed in with the stdenv stage argument. + # + # TODO It would be much better to pass the `stdenvNoCC` and *unwrapped* + # cc, bintools, compiler-rt equivalent, etc. and create all final stdenvs + # as part of the stage. Then we would never be tempted to override a + # later thing to to create an earlier thing (leading to infinite + # recursion) and we also would still respect the stage arguments choices + # for these things. + overrideCC stdenv buildPackages.llvmPackages.clangNoCompilerRt + else mkStdenvNoLibs stdenv; + + gccStdenvNoLibs = mkStdenvNoLibs gccStdenv; + clangStdenvNoLibs = mkStdenvNoLibs clangStdenv; + + # For convenience, allow callers to get the path to Nixpkgs. + path = ../..; + + + ### Helper functions. + inherit lib config overlays; + + inherit (lib) lowPrio hiPrio appendToName makeOverridable; + + inherit (lib) recurseIntoAttrs; + + # This is intended to be the reverse of recurseIntoAttrs, as it is + # defined now it exists mainly for documentation purposes, but you + # can also override this with recurseIntoAttrs to recurseInto all + # the Attrs which is useful for testing massive changes. Ideally, + # every package subset not marked with recurseIntoAttrs should be + # marked with this. + inherit (lib) dontRecurseIntoAttrs; + + stringsWithDeps = lib.stringsWithDeps; + + ### Evaluating the entire Nixpkgs naively will fail, make failure fast + AAAAAASomeThingsFailToEvaluate = throw '' + Please be informed that this pseudo-package is not the only part of + Nixpkgs that fails to evaluate. You should not evaluate entire Nixpkgs + without some special measures to handle failing packages, like those taken + by Hydra. + ''; + + tests = callPackages ../test {}; + + ### Nixpkgs maintainer tools + + nix-generate-from-cpan = callPackage ../../maintainers/scripts/nix-generate-from-cpan.nix { }; + + nixpkgs-lint = callPackage ../../maintainers/scripts/nixpkgs-lint.nix { }; + + common-updater-scripts = callPackage ../common-updater/scripts.nix { }; + + genericUpdater = callPackage ../common-updater/generic-updater.nix { }; + + gitUpdater = callPackage ../common-updater/git-updater.nix { }; + + httpTwoLevelsUpdater = callPackage ../common-updater/http-two-levels-updater.nix { }; + + unstableGitUpdater = callPackage ../common-updater/unstable-updater.nix { }; + + nix-update-script = callPackage ../common-updater/nix-update.nix { }; + + ### Push NixOS tests inside the fixed point + + nixosTests = import ../../nixos/tests/all-tests.nix { + inherit pkgs; + system = stdenv.hostPlatform.system; + callTest = t: t.test; + }; + + ### BUILD SUPPORT + + auditBlasHook = makeSetupHook + { name = "auto-blas-hook"; deps = [ blas lapack ]; } + ../build-support/setup-hooks/audit-blas.sh; + + autoreconfHook = callPackage ( + { makeSetupHook, autoconf, automake, gettext, libtool }: + makeSetupHook + { deps = [ autoconf automake gettext libtool ]; } + ../build-support/setup-hooks/autoreconf.sh + ) { }; + + autoreconfHook264 = autoreconfHook.override { + autoconf = autoconf264; + automake = automake111x; + }; + + autoreconfHook269 = autoreconfHook.override { + autoconf = autoconf269; + }; + + autorestic = callPackage ../tools/backup/autorestic { }; + + autoPatchelfHook = makeSetupHook + { name = "auto-patchelf-hook"; deps = [ bintools ]; } + ../build-support/setup-hooks/auto-patchelf.sh; + + appflowy = callPackage ../applications/office/appflowy { }; + + appimageTools = callPackage ../build-support/appimage { + buildFHSUserEnv = buildFHSUserEnvBubblewrap; + }; + + appindicator-sharp = callPackage ../development/libraries/appindicator-sharp { }; + + canonicalize-jar = callPackage ../build-support/java/canonicalize-jar.nix { }; + canonicalize-jars-hook = makeSetupHook { + name = "canonicalize-jars-hook"; + substitutions = { canonicalize_jar = canonicalize-jar; }; + } ../build-support/setup-hooks/canonicalize-jars.sh; + + ensureNewerSourcesHook = { year }: makeSetupHook {} + (writeScript "ensure-newer-sources-hook.sh" '' + postUnpackHooks+=(_ensureNewerSources) + _ensureNewerSources() { + '${findutils}/bin/find' "$sourceRoot" \ + '!' -newermt '${year}-01-01' -exec touch -h -d '${year}-01-02' '{}' '+' + } + ''); + + addOpenGLRunpath = callPackage ../build-support/add-opengl-runpath { }; + + quickemu = callPackage ../development/quickemu { }; + + aether = callPackage ../applications/networking/aether { }; + + alda = callPackage ../development/interpreters/alda { }; + + align = callPackage ../tools/text/align { }; + + althttpd = callPackage ../servers/althttpd { }; + + anders = callPackage ../applications/science/logic/anders { }; + + ankisyncd = callPackage ../servers/ankisyncd { }; + + aocd = with python3Packages; toPythonApplication aocd; + + astrolog = callPackage ../applications/science/astronomy/astrolog { }; + + atkinson-hyperlegible = callPackage ../data/fonts/atkinson-hyperlegible { }; + + atuin = callPackage ../tools/misc/atuin { + inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration; + }; + + fiche = callPackage ../servers/fiche { }; + + fishnet = callPackage ../servers/fishnet { }; + + fission = callPackage ../development/tools/fission { }; + + appthreat-depscan = callPackage ../development/tools/appthreat-depscan { }; + + + authy = callPackage ../applications/misc/authy { }; + + authz0 = callPackage ../tools/security/authz0 { }; + + avro-tools = callPackage ../development/tools/avro-tools { }; + + bacnet-stack = callPackage ../tools/networking/bacnet-stack {}; + + bada-bib = callPackage ../applications/science/misc/bada-bib {}; + + bakelite = callPackage ../tools/backup/bakelite { }; + + beyond-identity = callPackage ../tools/security/beyond-identity {}; + + bingo = callPackage ../development/tools/bingo {}; + + breakpad = callPackage ../development/misc/breakpad { }; + + buf = callPackage ../development/tools/buf { }; + + elfcat = callPackage ../tools/misc/elfcat { }; + + # Zip file format only allows times after year 1980, which makes e.g. Python wheel building fail with: + # ValueError: ZIP does not support timestamps before 1980 + ensureNewerSourcesForZipFilesHook = ensureNewerSourcesHook { year = "1980"; }; + + updateAutotoolsGnuConfigScriptsHook = makeSetupHook + { substitutions = { gnu_config = gnu-config;}; } + ../build-support/setup-hooks/update-autotools-gnu-config-scripts.sh; + + gogUnpackHook = makeSetupHook { + name = "gog-unpack-hook"; + deps = [ innoextract file-rename ]; } + ../build-support/setup-hooks/gog-unpack.sh; + + buildEnv = callPackage ../build-support/buildenv { }; # not actually a package + + # TODO: eventually migrate everything to buildFHSUserEnvBubblewrap + buildFHSUserEnv = buildFHSUserEnvChroot; + buildFHSUserEnvChroot = callPackage ../build-support/build-fhs-userenv { }; + buildFHSUserEnvBubblewrap = callPackage ../build-support/build-fhs-userenv-bubblewrap { }; + + buildMaven = callPackage ../build-support/build-maven.nix {}; + + castget = callPackage ../applications/networking/feedreaders/castget { }; + + castxml = callPackage ../development/tools/castxml { + inherit (llvmPackages) libclang llvm; + inherit (python3.pkgs) sphinx; + }; + + catatonit = callPackage ../applications/virtualization/catatonit { }; + + cen64 = callPackage ../applications/emulators/cen64 { }; + + btdu = callPackage ../tools/misc/btdu { }; + + uxn = callPackage ../applications/emulators/uxn { }; + + cereal = callPackage ../development/libraries/cereal { }; + + certgraph = callPackage ../tools/security/certgraph { }; + + cewl = callPackage ../tools/security/cewl { }; + + checkov = callPackage ../development/tools/analysis/checkov {}; + + chrysalis = callPackage ../applications/misc/chrysalis { }; + + clifm = callPackage ../applications/misc/clifm { }; + + clj-kondo = callPackage ../development/tools/clj-kondo { }; + + cloak = callPackage ../applications/misc/cloak { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + cmark = callPackage ../development/libraries/cmark { }; + + cmark-gfm = callPackage ../development/libraries/cmark-gfm { }; + + cm256cc = callPackage ../development/libraries/cm256cc { }; + + cocogitto = callPackage ../development/tools/cocogitto { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + conftest = callPackage ../development/tools/conftest { }; + + corgi = callPackage ../development/tools/corgi { }; + + colmena = callPackage ../tools/admin/colmena { }; + + colorz = callPackage ../tools/misc/colorz { }; + + colorpicker = callPackage ../tools/misc/colorpicker { }; + + comedilib = callPackage ../development/libraries/comedilib { }; + + commitlint = nodePackages."@commitlint/cli"; + + commit-formatter = callPackage ../applications/version-management/commit-formatter { }; + + containerpilot = callPackage ../applications/networking/cluster/containerpilot { }; + + coordgenlibs = callPackage ../development/libraries/coordgenlibs { }; + + cp437 = callPackage ../tools/misc/cp437 { }; + + cpu-x = callPackage ../applications/misc/cpu-x { }; + + crackle = callPackage ../tools/networking/crackle { }; + + crow-translate = libsForQt5.callPackage ../applications/misc/crow-translate { }; + + dhallDirectoryToNix = callPackage ../build-support/dhall/directory-to-nix.nix { }; + + dhallPackageToNix = callPackage ../build-support/dhall/package-to-nix.nix { }; + + dhallToNix = callPackage ../build-support/dhall/to-nix.nix { }; + + deadcode = callPackage ../development/tools/deadcode { }; + + deadnix = callPackage ../development/tools/deadnix { }; + + each = callPackage ../tools/text/each { }; + + eclipse-mat = callPackage ../development/tools/eclipse-mat { }; + + evans = callPackage ../development/tools/evans { }; + + firefly-desktop = callPackage ../applications/misc/firefly-desktop { }; + + frugal = callPackage ../development/tools/frugal { }; + + glade = callPackage ../development/tools/glade { }; + + gpick = callPackage ../tools/misc/gpick { }; + + hobbes = callPackage ../development/tools/hobbes { }; + + html5validator = python3Packages.callPackage ../applications/misc/html5validator { }; + + buildcatrust = with python3.pkgs; toPythonApplication buildcatrust; + + probe-rs-cli = callPackage ../development/tools/rust/probe-rs-cli { + inherit (darwin.apple_sdk.frameworks) AppKit; + }; + + probe-run = callPackage ../development/tools/rust/probe-run { + inherit (darwin.apple_sdk.frameworks) AppKit IOKit; + }; + + mix2nix = callPackage ../development/tools/mix2nix { }; + + prisma-engines = callPackage ../development/tools/database/prisma-engines { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + pridecat = callPackage ../tools/misc/pridecat { }; + + proto-contrib = callPackage ../development/tools/proto-contrib { }; + + protoc-gen-doc = callPackage ../development/tools/protoc-gen-doc { }; + + protoc-gen-go = callPackage ../development/tools/protoc-gen-go { }; + + protoc-gen-go-grpc = callPackage ../development/tools/protoc-gen-go-grpc { }; + + protoc-gen-go-vtproto = callPackage ../development/tools/protoc-gen-go-vtproto { }; + + protoc-gen-grpc-web = callPackage ../development/tools/protoc-gen-grpc-web { }; + + protoc-gen-twirp = callPackage ../development/tools/protoc-gen-twirp { }; + + protoc-gen-twirp_php = callPackage ../development/tools/protoc-gen-twirp_php { }; + + protoc-gen-twirp_swagger = callPackage ../development/tools/protoc-gen-twirp_swagger { }; + + protoc-gen-twirp_typescript = callPackage ../development/tools/protoc-gen-twirp_typescript { }; + + protoc-gen-validate = callPackage ../development/tools/protoc-gen-validate { }; + + proton-caller = callPackage ../applications/emulators/proton-caller { }; + + ptags = callPackage ../development/tools/misc/ptags { }; + + ptouch-print = callPackage ../misc/ptouch-print { }; + + demoit = callPackage ../servers/demoit { }; + + deviceTree = callPackage ../os-specific/linux/device-tree {}; + + enum4linux = callPackage ../tools/security/enum4linux {}; + + enum4linux-ng = python3Packages.callPackage ../tools/security/enum4linux-ng { }; + + onesixtyone = callPackage ../tools/security/onesixtyone {}; + + oletools = with python3.pkgs; toPythonApplication oletools; + + credential-detector = callPackage ../tools/security/credential-detector { }; + + credslayer = callPackage ../tools/security/credslayer { }; + + device-tree_rpi = callPackage ../os-specific/linux/device-tree/raspberrypi.nix {}; + + devour = callPackage ../tools/X11/devour {}; + + diffPlugins = (callPackage ../build-support/plugins.nix {}).diffPlugins; + + dieHook = makeSetupHook {} ../build-support/setup-hooks/die.sh; + + archiver = callPackage ../applications/misc/archiver { }; + + # It segfaults if it uses qt5.15 + digitalbitbox = libsForQt514.callPackage ../applications/misc/digitalbitbox { + autoreconfHook = buildPackages.autoreconfHook269; + }; + + gretl = callPackage ../applications/science/math/gretl { }; + + grsync = callPackage ../applications/misc/grsync { }; + + dockerTools = callPackage ../build-support/docker { + writePython3 = buildPackages.writers.writePython3; + }; + tarsum = callPackage ../build-support/docker/tarsum.nix { }; + + snapTools = callPackage ../build-support/snap { }; + + nix-prefetch-docker = callPackage ../build-support/docker/nix-prefetch-docker.nix { }; + + docker-compose = python3Packages.callPackage ../applications/virtualization/docker-compose {}; + + docker-ls = callPackage ../tools/misc/docker-ls { }; + + docker-slim = callPackage ../applications/virtualization/docker-slim { }; + + docker-sync = callPackage ../tools/misc/docker-sync { }; + + dockle = callPackage ../development/tools/dockle { }; + + docui = callPackage ../tools/misc/docui { }; + + dotfiles = callPackage ../applications/misc/dotfiles { }; + + # Dotnet + + dotnetCorePackages = recurseIntoAttrs (callPackage ../development/compilers/dotnet {}); + + dotnet-sdk_2 = dotnetCorePackages.sdk_2_1; + dotnet-sdk_3 = dotnetCorePackages.sdk_3_1; + dotnet-sdk_5 = dotnetCorePackages.sdk_5_0; + dotnet-sdk_6 = dotnetCorePackages.sdk_6_0; + + dotnet-sdk = dotnetCorePackages.sdk_6_0; + dotnet-runtime = dotnetCorePackages.runtime_6_0; + dotnet-aspnetcore = dotnetCorePackages.aspnetcore_6_0; + + buildDotnetModule = callPackage ../build-support/dotnet/build-dotnet-module { }; + nuget-to-nix = callPackage ../build-support/dotnet/nuget-to-nix { }; + mkNugetSource = callPackage ../build-support/dotnet/make-nuget-source { }; + mkNugetDeps = callPackage ../build-support/dotnet/make-nuget-deps { }; + + dotnetenv = callPackage ../build-support/dotnet/dotnetenv { + dotnetfx = dotnetfx40; + }; + + buildDotnetPackage = callPackage ../build-support/dotnet/build-dotnet-package { }; + fetchNuGet = callPackage ../build-support/dotnet/fetchnuget { }; + dotnetbuildhelpers = callPackage ../build-support/dotnet/dotnetbuildhelpers { }; + + dumb-init = callPackage ../applications/virtualization/dumb-init {}; + + umoci = callPackage ../applications/virtualization/umoci {}; + + dispad = callPackage ../tools/X11/dispad { }; + + dupeguru = callPackage ../applications/misc/dupeguru { }; + + dump1090 = callPackage ../applications/radio/dump1090 { }; + + ebook2cw = callPackage ../applications/radio/ebook2cw { }; + + edwin = callPackage ../data/fonts/edwin { }; + + etBook = callPackage ../data/fonts/et-book { }; + + fntsample = callPackage ../tools/misc/fntsample { }; + + fetchutils = callPackage ../tools/misc/fetchutils { }; + + fet-sh = callPackage ../tools/misc/fet-sh { }; + + fetchbower = callPackage ../build-support/fetchbower { + inherit (nodePackages) bower2nix; + }; + + fetchbzr = callPackage ../build-support/fetchbzr { }; + + fetchcvs = if stdenv.buildPlatform != stdenv.hostPlatform + # hack around splicing being crummy with things that (correctly) don't eval. + then buildPackages.fetchcvs + else callPackage ../build-support/fetchcvs { }; + + fetchdarcs = callPackage ../build-support/fetchdarcs { }; + + fetchdocker = callPackage ../build-support/fetchdocker { }; + + fetchDockerConfig = callPackage ../build-support/fetchdocker/fetchDockerConfig.nix { }; + + fetchDockerLayer = callPackage ../build-support/fetchdocker/fetchDockerLayer.nix { }; + + fetchfossil = callPackage ../build-support/fetchfossil { }; + + fetchgit = (callPackage ../build-support/fetchgit { + git = buildPackages.gitMinimal; + cacert = buildPackages.cacert; + git-lfs = buildPackages.git-lfs; + }) // { # fetchgit is a function, so we use // instead of passthru. + tests = pkgs.tests.fetchgit; + }; + + fetchgitLocal = callPackage ../build-support/fetchgitlocal { }; + + fetchmtn = callPackage ../build-support/fetchmtn (config.fetchmtn or {}); + + fetchMavenArtifact = callPackage ../build-support/fetchmavenartifact { }; + + inherit (callPackage ../build-support/node/fetch-yarn-deps { }) + prefetch-yarn-deps + fetchYarnDeps; + + find-cursor = callPackage ../tools/X11/find-cursor { }; + + flare-floss = callPackage ../tools/security/flare-floss { }; + + prefer-remote-fetch = import ../build-support/prefer-remote-fetch; + + global-platform-pro = callPackage ../development/tools/global-platform-pro { }; + + graph-easy = callPackage ../tools/graphics/graph-easy { }; + + opendrop = python3Packages.callPackage ../tools/networking/opendrop { }; + + owl = callPackage ../tools/networking/owl { }; + + packer = callPackage ../development/tools/packer { }; + + packr = callPackage ../development/libraries/packr { }; + + perseus-cli = callPackage ../development/tools/perseus-cli { }; + + pet = callPackage ../development/tools/pet { }; + + pkger = callPackage ../development/libraries/pkger { }; + + tapview = callPackage ../development/tools/tapview { }; + + run = callPackage ../development/tools/run { }; + + mblock-mlink = callPackage ../development/tools/mblock-mlink { }; + + mod = callPackage ../development/tools/mod { }; + + broadlink-cli = callPackage ../tools/misc/broadlink-cli {}; + + mht2htm = callPackage ../tools/misc/mht2htm { }; + + fetchpatch = callPackage ../build-support/fetchpatch { } + // { + tests = pkgs.tests.fetchpatch; + }; + + fetchs3 = callPackage ../build-support/fetchs3 { }; + + fetchsvn = if stdenv.buildPlatform != stdenv.hostPlatform + # hack around splicing being crummy with things that (correctly) don't eval. + then buildPackages.fetchsvn + else callPackage ../build-support/fetchsvn { }; + + fetchsvnrevision = import ../build-support/fetchsvnrevision runCommand subversion; + + fetchsvnssh = callPackage ../build-support/fetchsvnssh { }; + + fetchhg = callPackage ../build-support/fetchhg { }; + + fetchFirefoxAddon = callPackage ../build-support/fetchfirefoxaddon { } + // { + tests = pkgs.tests.fetchFirefoxAddon; + }; + + fetchNextcloudApp = callPackage ../build-support/fetchnextcloudapp {}; + + # `fetchurl' downloads a file from the network. + fetchurl = if stdenv.buildPlatform != stdenv.hostPlatform + then buildPackages.fetchurl # No need to do special overrides twice, + else makeOverridable (import ../build-support/fetchurl) { + inherit lib stdenvNoCC buildPackages; + inherit cacert; + curl = buildPackages.curlMinimal.override (old: rec { + # break dependency cycles + fetchurl = stdenv.fetchurlBoot; + zlib = buildPackages.zlib.override { fetchurl = stdenv.fetchurlBoot; }; + pkg-config = buildPackages.pkg-config.override (old: { + pkg-config = old.pkg-config.override { + fetchurl = stdenv.fetchurlBoot; + }; + }); + perl = buildPackages.perl.override { fetchurl = stdenv.fetchurlBoot; }; + openssl = buildPackages.openssl.override { + fetchurl = stdenv.fetchurlBoot; + buildPackages = { + coreutils = buildPackages.coreutils.override { + fetchurl = stdenv.fetchurlBoot; + inherit perl; + xz = buildPackages.xz.override { fetchurl = stdenv.fetchurlBoot; }; + gmp = null; + aclSupport = false; + attrSupport = false; + }; + inherit perl; + }; + inherit perl; + }; + libssh2 = buildPackages.libssh2.override { + fetchurl = stdenv.fetchurlBoot; + inherit zlib openssl; + }; + # On darwin, libkrb5 needs bootstrap_cmds which would require + # converting many packages to fetchurl_boot to avoid evaluation cycles. + # So turn gssSupport off there, and on Windows. + # On other platforms, keep the previous value. + gssSupport = + if stdenv.isDarwin || stdenv.hostPlatform.isWindows + then false + else old.gssSupport or true; # `? true` is the default + libkrb5 = buildPackages.libkrb5.override { + fetchurl = stdenv.fetchurlBoot; + inherit pkg-config perl openssl; + keyutils = buildPackages.keyutils.override { fetchurl = stdenv.fetchurlBoot; }; + }; + nghttp2 = buildPackages.nghttp2.override { + fetchurl = stdenv.fetchurlBoot; + inherit zlib pkg-config openssl; + c-ares = buildPackages.c-ares.override { fetchurl = stdenv.fetchurlBoot; }; + libev = buildPackages.libev.override { fetchurl = stdenv.fetchurlBoot; }; + }; + }); + }; + + fetchRepoProject = callPackage ../build-support/fetchrepoproject { }; + + fetchipfs = import ../build-support/fetchipfs { + inherit curl stdenv; + }; + + fetchzip = callPackage ../build-support/fetchzip { }; + + fetchCrate = callPackage ../build-support/rust/fetchcrate.nix { }; + + fetchFromGitea = callPackage ../build-support/fetchgitea { }; + + fetchFromGitHub = callPackage ../build-support/fetchgithub {}; + + fetchFromBitbucket = callPackage ../build-support/fetchbitbucket {}; + + fetchFromSavannah = callPackage ../build-support/fetchsavannah {}; + + fetchFromSourcehut = callPackage ../build-support/fetchsourcehut { }; + + fetchFromGitLab = callPackage ../build-support/fetchgitlab {}; + + fetchFromGitiles = callPackage ../build-support/fetchgitiles {}; + + fetchFromRepoOrCz = callPackage ../build-support/fetchrepoorcz {}; + + fetchgx = callPackage ../build-support/fetchgx { }; + + resolveMirrorURLs = {url}: fetchurl { + showURLs = true; + inherit url; + }; + + installShellFiles = callPackage ../build-support/install-shell-files {}; + + # See doc/builders/special/invalidateFetcherByDrvHash.section.md or + # https://nixos.org/manual/nixpkgs/unstable/#sec-pkgs-invalidateFetcherByDrvHash + invalidateFetcherByDrvHash = f: args: + let + drvPath = (f args).drvPath; + # It's safe to discard the context, because we don't access the path. + salt = builtins.unsafeDiscardStringContext (lib.substring 0 12 (baseNameOf drvPath)); + # New derivation incorporating the original drv hash in the name + salted = f (args // { name = "${args.name or "source"}-salted-${salt}"; }); + # Make sure we did change the derivation. If the fetcher ignores `name`, + # `invalidateFetcherByDrvHash` doesn't work. + checked = + if salted.drvPath == drvPath + then throw "invalidateFetcherByDrvHash: Adding the derivation hash to the fixed-output derivation name had no effect. Make sure the fetcher's name argument ends up in the derivation name. Otherwise, the fetcher will not be re-run when its implementation changes. This is important for testing." + else salted; + in checked; + + lazydocker = callPackage ../tools/misc/lazydocker { }; + + ld-is-cc-hook = makeSetupHook { name = "ld-is-cc-hook"; } + ../build-support/setup-hooks/ld-is-cc-hook.sh; + + libredirect = callPackage ../build-support/libredirect { }; + + madonctl = callPackage ../applications/misc/madonctl { }; + + copyDesktopItems = makeSetupHook { } ../build-support/setup-hooks/copy-desktop-items.sh; + + makeDesktopItem = callPackage ../build-support/make-desktopitem { }; + + makeDarwinBundle = callPackage ../build-support/make-darwin-bundle { }; + + makeAutostartItem = callPackage ../build-support/make-startupitem { }; + + makeInitrd = callPackage ../build-support/kernel/make-initrd.nix; # Args intentionally left out + + makeWrapper = makeSetupHook + { deps = [ dieHook ]; + substitutions = { + shell = targetPackages.runtimeShell; + passthru.tests = tests.makeWrapper; + }; + } + ../build-support/setup-hooks/make-wrapper.sh; + + makeBinaryWrapper = let + f = { cc, sanitizers }: let + san = lib.concatMapStringsSep " " (s: "-fsanitize=${s}") sanitizers; + script = runCommand "make-binary-wrapper.sh" {} '' + substitute ${../build-support/setup-hooks/make-binary-wrapper.sh} $out \ + --replace " @CC@ " " ${cc}/bin/cc ${san} " + ''; + in + makeSetupHook { + deps = [ dieHook cc ]; + substitutions.passthru.tests = callPackage ../test/make-binary-wrapper { + makeBinaryWrapper = makeBinaryWrapper.override { + sanitizers = (if stdenv.isDarwin && stdenv.isAarch64 + then [ ] + else [ "undefined" "address" ] + ); + }; + }; + } script; + in + lib.makeOverridable f { + cc = stdenv.cc; + sanitizers = [ ]; + }; + + makeModulesClosure = { kernel, firmware, rootModules, allowMissing ? false }: + callPackage ../build-support/kernel/modules-closure.nix { + inherit kernel firmware rootModules allowMissing; + }; + + mkShell = callPackage ../build-support/mkshell { }; + mkShellNoCC = mkShell.override { stdenv = stdenvNoCC; }; + + mokutil = callPackage ../tools/security/mokutil { }; + + nixBufferBuilders = import ../build-support/emacs/buffer.nix { inherit lib writeText; inherit (emacs.pkgs) inherit-local; }; + + nix-gitignore = callPackage ../build-support/nix-gitignore { }; + + numworks-epsilon = callPackage ../applications/science/math/numworks-epsilon { }; + + ociTools = callPackage ../build-support/oci-tools { }; + + octant = callPackage ../applications/networking/cluster/octant { }; + octant-desktop = callPackage ../applications/networking/cluster/octant/desktop.nix { }; + starboard-octant-plugin = callPackage ../applications/networking/cluster/octant/plugins/starboard-octant-plugin.nix { }; + + pathsFromGraph = ../build-support/kernel/paths-from-graph.pl; + + pruneLibtoolFiles = makeSetupHook { name = "prune-libtool-files"; } + ../build-support/setup-hooks/prune-libtool-files.sh; + + closureInfo = callPackage ../build-support/closure-info.nix { }; + + setupSystemdUnits = callPackage ../build-support/setup-systemd-units.nix { }; + + shortenPerlShebang = makeSetupHook + { deps = [ dieHook ]; } + ../build-support/setup-hooks/shorten-perl-shebang.sh; + + singularity-tools = callPackage ../build-support/singularity-tools { }; + + sirula = callPackage ../tools/wayland/sirula { }; + + srcOnly = callPackage ../build-support/src-only { }; + + substitute = callPackage ../build-support/substitute/substitute.nix { }; + + substituteAll = callPackage ../build-support/substitute/substitute-all.nix { }; + + substituteAllFiles = callPackage ../build-support/substitute-files/substitute-all-files.nix { }; + + replaceDependency = callPackage ../build-support/replace-dependency.nix { }; + + nukeReferences = callPackage ../build-support/nuke-references { + inherit (darwin) signingUtils; + }; + + referencesByPopularity = callPackage ../build-support/references-by-popularity { }; + + removeReferencesTo = callPackage ../build-support/remove-references-to { + inherit (darwin) signingUtils; + }; + + # No callPackage. In particular, we don't want `img` *package* in parameters. + vmTools = makeOverridable (import ../build-support/vm) { inherit pkgs lib; }; + + releaseTools = callPackage ../build-support/release { }; + + inherit (lib.systems) platforms; + + setJavaClassPath = makeSetupHook { } ../build-support/setup-hooks/set-java-classpath.sh; + + fixDarwinDylibNames = makeSetupHook { + substitutions = { inherit (binutils) targetPrefix; }; + } ../build-support/setup-hooks/fix-darwin-dylib-names.sh; + + writeDarwinBundle = callPackage ../build-support/make-darwin-bundle/write-darwin-bundle.nix { }; + + desktopToDarwinBundle = makeSetupHook { + deps = [ writeDarwinBundle librsvg imagemagick python3Packages.icnsutil ]; + } ../build-support/setup-hooks/desktop-to-darwin-bundle.sh; + + keepBuildTree = makeSetupHook { } ../build-support/setup-hooks/keep-build-tree.sh; + + enableGCOVInstrumentation = makeSetupHook { } ../build-support/setup-hooks/enable-coverage-instrumentation.sh; + + makeGCOVReport = makeSetupHook + { deps = [ lcov enableGCOVInstrumentation ]; } + ../build-support/setup-hooks/make-coverage-analysis-report.sh; + + # intended to be used like nix-build -E 'with import <nixpkgs> {}; enableDebugging fooPackage' + enableDebugging = pkg: pkg.override { stdenv = stdenvAdapters.keepDebugInfo pkg.stdenv; }; + + findXMLCatalogs = makeSetupHook { } ../build-support/setup-hooks/find-xml-catalogs.sh; + + wrapGAppsHook = callPackage ../build-support/setup-hooks/wrap-gapps-hook { }; + + wrapGAppsHook4 = wrapGAppsHook.override { gtk3 = gtk4; }; + + wrapGAppsNoGuiHook = wrapGAppsHook.override { isGraphical = false; }; + + separateDebugInfo = makeSetupHook { } ../build-support/setup-hooks/separate-debug-info.sh; + + setupDebugInfoDirs = makeSetupHook { } ../build-support/setup-hooks/setup-debug-info-dirs.sh; + + useOldCXXAbi = makeSetupHook { } ../build-support/setup-hooks/use-old-cxx-abi.sh; + + ical2org = callPackage ../tools/misc/ical2org {}; + + iconConvTools = callPackage ../build-support/icon-conv-tools {}; + + validatePkgConfig = makeSetupHook + { name = "validate-pkg-config"; deps = [ findutils pkg-config ]; } + ../build-support/setup-hooks/validate-pkg-config.sh; + + #package writers + writers = callPackage ../build-support/writers {}; + + # lib functions depending on pkgs + inherit (import ../pkgs-lib { inherit lib pkgs; }) formats; + + ### TOOLS + + _3llo = callPackage ../tools/misc/3llo { }; + + _3mux = callPackage ../tools/misc/3mux { }; + + _1password = callPackage ../applications/misc/1password { }; + + _1password-gui = callPackage ../applications/misc/1password-gui { }; + + _6tunnel = callPackage ../tools/networking/6tunnel { }; + + _7zz = callPackage ../tools/archivers/7zz { }; + + _9pfs = callPackage ../tools/filesystems/9pfs { }; + + aardvark-dns = callPackage ../tools/networking/aardvark-dns { }; + + a2ps = callPackage ../tools/text/a2ps { }; + + abcm2ps = callPackage ../tools/audio/abcm2ps { }; + + abcmidi = callPackage ../tools/audio/abcmidi { }; + + abduco = callPackage ../tools/misc/abduco { }; + + acct = callPackage ../tools/system/acct { }; + + accuraterip-checksum = callPackage ../tools/audio/accuraterip-checksum { }; + + acme-sh = callPackage ../tools/admin/acme-sh { }; + + acousticbrainz-client = callPackage ../tools/audio/acousticbrainz-client { }; + + acoustidFingerprinter = callPackage ../tools/audio/acoustid-fingerprinter { }; + + alsaequal = callPackage ../tools/audio/alsaequal { }; + + acpica-tools = callPackage ../tools/system/acpica-tools { }; + + act = callPackage ../development/tools/misc/act { }; + + actdiag = with python3.pkgs; toPythonApplication actdiag; + + actkbd = callPackage ../tools/system/actkbd { }; + + adafruit-ampy = callPackage ../tools/misc/adafruit-ampy { }; + + adlplug = callPackage ../applications/audio/adlplug { + inherit (darwin) libobjc; + inherit (darwin.apple_sdk.frameworks) Cocoa CoreServices WebKit DiscRecording; + jack = libjack2; + }; + opnplug = adlplug.override { + type = "OPN"; + }; + + arc_unpacker = callPackage ../tools/archivers/arc_unpacker { + boost = boost16x; # checkPhase fails with Boost 1.77 + }; + + adminer = callPackage ../servers/adminer { }; + + advancecomp = callPackage ../tools/compression/advancecomp {}; + + aefs = callPackage ../tools/filesystems/aefs { }; + + aegisub = callPackage ../applications/video/aegisub ({ + wxGTK = wxGTK30; + } // (config.aegisub or {})); + + aerc = callPackage ../applications/networking/mailreaders/aerc { }; + + aerospike = callPackage ../servers/nosql/aerospike { }; + + aespipe = callPackage ../tools/security/aespipe { }; + + aescrypt = callPackage ../tools/misc/aescrypt { }; + + aether-lv2 = callPackage ../applications/audio/aether-lv2 { }; + + acme-client = callPackage ../tools/networking/acme-client { stdenv = gccStdenv; }; + + adrgen = callPackage ../tools/misc/adrgen { }; + + adriconf = callPackage ../tools/graphics/adriconf { }; + + amass = callPackage ../tools/networking/amass { }; + + afew = callPackage ../applications/networking/mailreaders/afew { }; + + afetch = callPackage ../tools/misc/afetch { }; + + afio = callPackage ../tools/archivers/afio { }; + + afl = callPackage ../tools/security/afl { + stdenv = clangStdenv; + }; + + honggfuzz = callPackage ../tools/security/honggfuzz { }; + + aflplusplus = callPackage ../tools/security/aflplusplus { + clang = clang_9; + llvm = llvm_9; + python = python37; + wine = null; + }; + + libdislocator = callPackage ../tools/security/afl/libdislocator.nix { }; + + afpfs-ng = callPackage ../tools/filesystems/afpfs-ng { }; + + agate = callPackage ../servers/gemini/agate { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + agda-pkg = callPackage ../development/tools/agda-pkg { }; + + agi = callPackage ../tools/graphics/agi { }; + + agrep = callPackage ../tools/text/agrep { }; + + aha = callPackage ../tools/text/aha { }; + + ahcpd = callPackage ../tools/networking/ahcpd { }; + + aide = callPackage ../tools/security/aide { }; + + aiodnsbrute = python3Packages.callPackage ../tools/security/aiodnsbrute { }; + + aircrack-ng = callPackage ../tools/networking/aircrack-ng { }; + + airfield = callPackage ../tools/networking/airfield { }; + + apache-airflow = with python3.pkgs; toPythonApplication apache-airflow; + + airsonic = callPackage ../servers/misc/airsonic { }; + + airspy = callPackage ../applications/radio/airspy { }; + + airspyhf = callPackage ../applications/radio/airspyhf { }; + + aj-snapshot = callPackage ../applications/audio/aj-snapshot { }; + + ajour = callPackage ../tools/games/ajour { + inherit (gnome) zenity; + inherit (plasma5Packages) kdialog; + }; + + akku = callPackage ../tools/package-management/akku { }; + + albert = libsForQt5.callPackage ../applications/misc/albert {}; + + aquosctl = callPackage ../tools/misc/aquosctl { }; + + arch-install-scripts = callPackage ../tools/misc/arch-install-scripts {}; + + auditwheel = callPackage ../tools/package-management/auditwheel { }; + + amidst = callPackage ../tools/games/minecraft/amidst { }; + + cf-vault = callPackage ../tools/admin/cf-vault { }; + + cope = callPackage ../tools/misc/cope { }; + + ejson2env = callPackage ../tools/admin/ejson2env { }; + + gamemode = callPackage ../tools/games/gamemode { + libgamemode32 = pkgsi686Linux.gamemode.lib; + }; + + gay = callPackage ../tools/misc/gay { }; + + elkhound = callPackage ../development/tools/elkhound { }; + + weidu = callPackage ../tools/games/weidu { }; + + weylus = callPackage ../applications/graphics/weylus { + inherit (darwin.apple_sdk.frameworks) ApplicationServices Carbon Cocoa VideoToolbox; + }; + + gfshare = callPackage ../tools/security/gfshare { }; + + glooctl = callPackage ../applications/networking/cluster/glooctl { }; + + gobgp = callPackage ../tools/networking/gobgp { }; + + goflow = callPackage ../tools/networking/goflow { }; + + gofu = callPackage ../applications/misc/gofu { }; + + godns = callPackage ../tools/networking/godns { }; + + godspeed = callPackage ../tools/networking/godspeed { }; + + fwbuilder = libsForQt5.callPackage ../tools/security/fwbuilder { }; + + headsetcontrol = callPackage ../tools/audio/headsetcontrol { }; + + ksnip = libsForQt5.callPackage ../tools/misc/ksnip { }; + + linux-router = callPackage ../tools/networking/linux-router { }; + + linux-router-without-wifi = linux-router.override { useWifiDependencies = false; }; + + metapixel = callPackage ../tools/graphics/metapixel { }; + + midimonster = callPackage ../tools/audio/midimonster { }; + + pferd = callPackage ../tools/misc/pferd {}; + + qFlipper = libsForQt515.callPackage ../tools/misc/qflipper { }; + + quich = callPackage ../tools/misc/quich { } ; + + redfang = callPackage ../tools/networking/redfang { }; + + sdlookup = callPackage ../tools/security/sdlookup { }; + + sx-go = callPackage ../tools/security/sx-go { }; + + tauon = callPackage ../applications/audio/tauon { }; + + termusic = callPackage ../applications/audio/termusic { }; + + tfk8s = callPackage ../tools/misc/tfk8s { }; + + tnat64 = callPackage ../tools/networking/tnat64 { }; + + topicctl = callPackage ../tools/misc/topicctl { }; + + veikk-linux-driver-gui = libsForQt5.callPackage ../tools/misc/veikk-linux-driver-gui { }; + + ventoy-bin = callPackage ../tools/cd-dvd/ventoy-bin { }; + + vopono = callPackage ../tools/networking/vopono { }; + + winbox = callPackage ../tools/admin/winbox { + wine = wineWowPackages.staging; + use64 = true; + }; + + writedisk = callPackage ../tools/misc/writedisk { }; + + xcd = callPackage ../tools/misc/xcd { }; + + xrootd = callPackage ../tools/networking/xrootd { }; + + xtrt = callPackage ../tools/archivers/xtrt { }; + + yabridge = callPackage ../tools/audio/yabridge { + wine = wineWowPackages.staging; + }; + + yabridgectl = callPackage ../tools/audio/yabridgectl { + wine = wineWowPackages.staging; + }; + + yafetch = callPackage ../tools/misc/yafetch { + stdenv = clangStdenv; + }; + + archi = callPackage ../tools/misc/archi { }; + + breitbandmessung = callPackage ../applications/networking/breitbandmessung { }; + + ### APPLICATIONS/TERMINAL-EMULATORS + + alacritty = callPackage ../applications/terminal-emulators/alacritty { + inherit (xorg) libXcursor libXxf86vm libXi; + inherit (darwin.apple_sdk.frameworks) AppKit CoreGraphics CoreServices CoreText Foundation OpenGL; + }; + + contour = libsForQt5.callPackage ../applications/terminal-emulators/contour { }; + + cool-retro-term = libsForQt5.callPackage ../applications/terminal-emulators/cool-retro-term { }; + + ctx = callPackage ../applications/terminal-emulators/ctx { }; + + darktile = callPackage ../applications/terminal-emulators/darktile { }; + + eterm = callPackage ../applications/terminal-emulators/eterm { }; + + foot = callPackage ../applications/terminal-emulators/foot { }; + + germinal = callPackage ../applications/terminal-emulators/germinal { }; + + guake = callPackage ../applications/terminal-emulators/guake { }; + + havoc = callPackage ../applications/terminal-emulators/havoc { }; + + hyper = callPackage ../applications/terminal-emulators/hyper { }; + + iterm2 = callPackage ../applications/terminal-emulators/iterm2 { }; + + kermit-terminal = callPackage ../applications/terminal-emulators/kermit-terminal { }; + + kitty = callPackage ../applications/terminal-emulators/kitty { + harfbuzz = harfbuzz.override { withCoreText = stdenv.isDarwin; }; + inherit (darwin.apple_sdk.frameworks) Cocoa CoreGraphics Foundation IOKit Kernel OpenGL; + }; + + kitty-themes = callPackage ../misc/kitty-themes {}; + + lxterminal = callPackage ../applications/terminal-emulators/lxterminal { }; + + microcom = callPackage ../applications/terminal-emulators/microcom { }; + + mlterm = callPackage ../applications/terminal-emulators/mlterm { + libssh2 = null; + openssl = null; + inherit (darwin.apple_sdk.frameworks) Cocoa; + }; + + mrxvt = callPackage ../applications/terminal-emulators/mrxvt { }; + + nimmm = callPackage ../applications/terminal-emulators/nimmm { }; + + roxterm = callPackage ../applications/terminal-emulators/roxterm { }; + + rxvt = callPackage ../applications/terminal-emulators/rxvt { }; + + rxvt-unicode = callPackage ../applications/terminal-emulators/rxvt-unicode/wrapper.nix { }; + + rxvt-unicode-emoji = rxvt-unicode.override { + rxvt-unicode-unwrapped = rxvt-unicode-unwrapped-emoji; + }; + + rxvt-unicode-plugins = import ../applications/terminal-emulators/rxvt-unicode-plugins { inherit callPackage; }; + + rxvt-unicode-unwrapped = callPackage ../applications/terminal-emulators/rxvt-unicode { }; + + rxvt-unicode-unwrapped-emoji = rxvt-unicode-unwrapped.override { + emojiSupport = true; + }; + + sakura = callPackage ../applications/terminal-emulators/sakura { }; + + st = callPackage ../applications/terminal-emulators/st { + conf = config.st.conf or null; + patches = config.st.patches or []; + extraLibs = config.st.extraLibs or []; + }; + xst = callPackage ../applications/terminal-emulators/st/xst.nix { }; + lukesmithxyz-st = callPackage ../applications/terminal-emulators/st/lukesmithxyz-st { }; + mcaimi-st = callPackage ../applications/terminal-emulators/st/mcaimi-st.nix { }; + siduck76-st = callPackage ../applications/terminal-emulators/st/siduck76-st.nix { }; + + stupidterm = callPackage ../applications/terminal-emulators/stupidterm { + gtk = gtk3; + }; + + terminator = callPackage ../applications/terminal-emulators/terminator { }; + + termite = callPackage ../applications/terminal-emulators/termite/wrapper.nix { + termite = termite-unwrapped; + }; + termite-unwrapped = callPackage ../applications/terminal-emulators/termite { }; + + termonad-with-packages = callPackage ../applications/terminal-emulators/termonad { }; + + termonad = termonad-with-packages; + + tilda = callPackage ../applications/terminal-emulators/tilda { + gtk = gtk3; + }; + + tilix = callPackage ../applications/terminal-emulators/tilix { }; + + wayst = callPackage ../applications/terminal-emulators/wayst { }; + + wezterm = callPackage ../applications/terminal-emulators/wezterm { + inherit (darwin.apple_sdk.frameworks) Cocoa CoreGraphics Foundation; + }; + + x3270 = callPackage ../applications/terminal-emulators/x3270 { }; + + xterm = callPackage ../applications/terminal-emulators/xterm { }; + + xtermcontrol = callPackage ../applications/terminal-emulators/xtermcontrol { }; + + yaft = callPackage ../applications/terminal-emulators/yaft { }; + + writefreely = callPackage ../applications/misc/writefreely { }; + + iqueue = callPackage ../development/libraries/iqueue { }; + + lifecycled = callPackage ../tools/misc/lifecycled { }; + + lilo = callPackage ../tools/misc/lilo { }; + + logseq = callPackage ../applications/misc/logseq { + electron = electron_15; + }; + + natls = callPackage ../tools/misc/natls { }; + + notion-app-enhanced = callPackage ../applications/office/notion-app-enhanced { }; + + pikchr = callPackage ../tools/graphics/pikchr { }; + + popsicle = callPackage ../tools/misc/popsicle { }; + + terminal-colors = callPackage ../applications/misc/terminal-colors { }; + + termsyn = callPackage ../data/fonts/termsyn { }; + + timedoctor = callPackage ../applications/office/timedoctor { }; + + tvnamer = callPackage ../tools/misc/tvnamer { }; + + twine = with python3Packages; toPythonApplication twine; + + aldo = callPackage ../applications/radio/aldo { }; + + alglib = callPackage ../development/libraries/alglib { }; + + almanah = callPackage ../applications/misc/almanah { }; + + alpine-make-vm-image = callPackage ../tools/virtualization/alpine-make-vm-image { }; + + amazon-ec2-utils = callPackage ../tools/admin/amazon-ec2-utils { }; + + amazon-ecs-cli = callPackage ../tools/virtualization/amazon-ecs-cli { }; + + amazon-qldb-shell = callPackage ../development/tools/amazon-qldb-shell { }; + + amber = callPackage ../tools/text/amber { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + amber-secret = callPackage ../tools/security/amber { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + inherit (callPackages ../development/tools/ammonite {}) + ammonite_2_12 + ammonite_2_13; + ammonite = if scala == scala_2_12 then ammonite_2_12 else ammonite_2_13; + + amp = callPackage ../applications/editors/amp {}; + + ams = callPackage ../applications/audio/ams {}; + + amtterm = callPackage ../tools/system/amtterm {}; + + analog = callPackage ../tools/admin/analog {}; + + android-backup-extractor = callPackage ../tools/backup/android-backup-extractor {}; + + android-tools = lowPrio (callPackage ../tools/misc/android-tools { + stdenv = if stdenv.targetPlatform.isAarch64 then gcc10Stdenv else stdenv; + }); + + anewer = callPackage ../tools/text/anewer { }; + + angle-grinder = callPackage ../tools/text/angle-grinder {}; + + ansifilter = callPackage ../tools/text/ansifilter {}; + + antora = callPackage ../development/tools/documentation/antora {}; + + apfs-fuse = callPackage ../tools/filesystems/apfs-fuse { }; + + apfsprogs = callPackage ../tools/filesystems/apfsprogs { }; + + apk-tools = callPackage ../tools/package-management/apk-tools { + lua = lua5_3; + }; + + apkid = callPackage ../development/tools/apkid { }; + + apkleaks = callPackage ../tools/security/apkleaks { }; + + apksigcopier = callPackage ../development/tools/apksigcopier { }; + + apksigner = callPackage ../development/tools/apksigner { + inherit (androidenv.androidPkgs_9_0) build-tools; + }; + + apktool = callPackage ../development/tools/apktool { + inherit (androidenv.androidPkgs_9_0) build-tools; + }; + + appimage-run = callPackage ../tools/package-management/appimage-run { }; + appimage-run-tests = callPackage ../tools/package-management/appimage-run/test.nix { + appimage-run = appimage-run.override { + appimage-run-tests = null; /* break boostrap cycle for passthru.tests */ + }; + }; + + appimagekit = callPackage ../tools/package-management/appimagekit {}; + + apt-cacher-ng = callPackage ../servers/http/apt-cacher-ng { }; + + apt-offline = callPackage ../tools/misc/apt-offline { }; + + aptly = callPackage ../tools/misc/aptly { }; + + ArchiSteamFarm = callPackage ../applications/misc/ArchiSteamFarm { }; + + archivebox = callPackage ../applications/misc/archivebox { }; + + archivemount = callPackage ../tools/filesystems/archivemount { }; + + archivy = python3Packages.callPackage ../applications/misc/archivy { }; + + arandr = callPackage ../tools/X11/arandr { }; + + inherit (callPackages ../servers/nosql/arangodb { + stdenv = gcc8Stdenv; + }) arangodb_3_3 arangodb_3_4 arangodb_3_5; + arangodb = arangodb_3_4; + + arcanist = callPackage ../development/tools/misc/arcanist { php = php74; }; + + arduino = arduino-core.override { withGui = true; }; + + arduino-ci = callPackage ../development/embedded/arduino/arduino-ci { }; + + arduino-cli = callPackage ../development/embedded/arduino/arduino-cli { }; + + arduino-core = callPackage ../development/embedded/arduino/arduino-core/chrootenv.nix { }; + arduino-core-unwrapped = callPackage ../development/embedded/arduino/arduino-core { }; + + arduino-mk = callPackage ../development/embedded/arduino/arduino-mk {}; + + apio = python3Packages.callPackage ../development/embedded/fpga/apio { }; + + apitrace = libsForQt514.callPackage ../applications/graphics/apitrace {}; + + argtable = callPackage ../development/libraries/argtable { }; + + arguments = callPackage ../development/libraries/arguments { }; + + argus = callPackage ../tools/networking/argus {}; + + argus-clients = callPackage ../tools/networking/argus-clients {}; + + argyllcms = callPackage ../tools/graphics/argyllcms {}; + + arj = callPackage ../tools/archivers/arj { + stdenv = gccStdenv; + }; + + arp-scan = callPackage ../tools/misc/arp-scan { }; + + inherit (callPackages ../data/fonts/arphic {}) + arphic-ukai arphic-uming; + + artyFX = callPackage ../applications/audio/artyFX {}; + + oggvideotools = callPackage ../tools/misc/oggvideotools { }; + + owl-lisp = callPackage ../development/compilers/owl-lisp {}; + + ascii = callPackage ../tools/text/ascii { }; + + asciinema = callPackage ../tools/misc/asciinema {}; + + asciinema-scenario = callPackage ../tools/misc/asciinema-scenario {}; + + asciiquarium = callPackage ../applications/misc/asciiquarium {}; + + ashuffle = callPackage ../applications/audio/ashuffle {}; + + ashpd-demo = callPackage ../development/tools/ashpd-demo {}; + + asls = callPackage ../development/tools/misc/asls { }; + + astc-encoder = callPackage ../tools/graphics/astc-encoder { }; + + asymptote = callPackage ../tools/graphics/asymptote { + texLive = texlive.combine { inherit (texlive) scheme-small epsf cm-super texinfo; }; + gsl = gsl_1; + }; + + async = callPackage ../development/tools/async {}; + + async-profiler = callPackage ../development/tools/async-profiler { }; + + atheme = callPackage ../servers/irc/atheme { }; + + atinout = callPackage ../tools/networking/atinout { }; + + atomicparsley = callPackage ../tools/video/atomicparsley { + inherit (darwin.apple_sdk.frameworks) Cocoa; + }; + + audiowaveform = callPackage ../tools/audio/audiowaveform { }; + + authenticator = callPackage ../applications/misc/authenticator { }; + + autoflake = callPackage ../development/tools/analysis/autoflake { }; + + autospotting = callPackage ../applications/misc/autospotting { }; + + autosuspend = callPackage ../os-specific/linux/autosuspend { }; + + avfs = callPackage ../tools/filesystems/avfs { }; + + aliyun-cli = callPackage ../tools/admin/aliyun-cli { }; + + aws-iam-authenticator = callPackage ../tools/security/aws-iam-authenticator {}; + + awscli = callPackage ../tools/admin/awscli { }; + + awscli2 = callPackage ../tools/admin/awscli2 { }; + + awsebcli = callPackage ../tools/virtualization/awsebcli {}; + + awslimitchecker = callPackage ../tools/admin/awslimitchecker { }; + + awslogs = callPackage ../tools/admin/awslogs { }; + + aws-lambda-rie = callPackage ../tools/admin/aws-lambda-runtime-interface-emulator { }; + + aws-env = callPackage ../tools/admin/aws-env { }; + + aws-google-auth = python3Packages.callPackage ../tools/admin/aws-google-auth { }; + + aws-mfa = python3Packages.callPackage ../tools/admin/aws-mfa { }; + + aws-nuke = callPackage ../tools/admin/aws-nuke { }; + + aws-okta = callPackage ../tools/security/aws-okta { }; + + aws-rotate-key = callPackage ../tools/admin/aws-rotate-key { }; + + aws-sam-cli = callPackage ../development/tools/aws-sam-cli { }; + + aws-vault = callPackage ../tools/admin/aws-vault { }; + + aws-workspaces = callPackage ../applications/networking/remote/aws-workspaces { }; + + iamy = callPackage ../tools/admin/iamy { }; + + azure-cli = callPackage ../tools/admin/azure-cli { }; + + azure-functions-core-tools = callPackage ../development/tools/azure-functions-core-tools { }; + + azure-storage-azcopy = callPackage ../development/tools/azcopy { }; + + azure-vhd-utils = callPackage ../tools/misc/azure-vhd-utils { }; + + awless = callPackage ../tools/virtualization/awless { }; + + berglas = callPackage ../tools/admin/berglas { }; + + betterdiscordctl = callPackage ../tools/misc/betterdiscordctl { }; + + betterdiscord-installer = callPackage ../tools/misc/betterdiscord-installer { }; + + bitwise = callPackage ../tools/misc/bitwise { }; + + blanket = callPackage ../applications/audio/blanket { }; + + brakeman = callPackage ../development/tools/analysis/brakeman { }; + + brewtarget = libsForQt514.callPackage ../applications/misc/brewtarget { } ; + + boxes = callPackage ../tools/text/boxes { }; + + boundary = callPackage ../tools/networking/boundary { }; + + chamber = callPackage ../tools/admin/chamber { }; + + chaos = callPackage ../tools/networking/chaos { }; + + charm = callPackage ../applications/misc/charm { }; + + chars = callPackage ../tools/text/chars { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + checkip = callPackage ../tools/networking/checkip { }; + + ec2-api-tools = callPackage ../tools/virtualization/ec2-api-tools { }; + + ec2-ami-tools = callPackage ../tools/virtualization/ec2-ami-tools { }; + + ec2-metadata-mock = callPackage ../development/tools/ec2-metadata-mock { }; + + exoscale-cli = callPackage ../tools/admin/exoscale-cli { }; + + altermime = callPackage ../tools/networking/altermime {}; + + alttab = callPackage ../tools/X11/alttab { }; + + amule = callPackage ../tools/networking/p2p/amule { }; + + amule-daemon = amule.override { + monolithic = false; + enableDaemon = true; + }; + + amule-gui = amule.override { + monolithic = false; + client = true; + }; + + antennas = nodePackages.antennas; + + apg = callPackage ../tools/security/apg { }; + + apt-dater = callPackage ../tools/package-management/apt-dater { + autoreconfHook = buildPackages.autoreconfHook269; + }; + + autorevision = callPackage ../tools/misc/autorevision { }; + + automirror = callPackage ../tools/misc/automirror { }; + + barman = callPackage ../tools/misc/barman { }; + + base16-universal-manager = callPackage ../applications/misc/base16-universal-manager { }; + + bashate = python3Packages.callPackage ../development/tools/bashate { }; + + bash-my-aws = callPackage ../tools/admin/bash-my-aws { }; + + bashcards = callPackage ../tools/misc/bashcards { }; + + bazarr = callPackage ../servers/bazarr { }; + + bcachefs-tools = callPackage ../tools/filesystems/bcachefs-tools { }; + + bisq-desktop = callPackage ../applications/blockchains/bisq-desktop { }; + + bic = callPackage ../development/interpreters/bic { }; + + binance = callPackage ../applications/misc/binance { + electron = electron_13; + }; + + bit = callPackage ../applications/version-management/git-and-tools/bit { }; + + bitwarden = callPackage ../tools/security/bitwarden { }; + + inherit (nodePackages) bitwarden-cli; + + inherit (nodePackages) concurrently; + + inherit (nodePackages) hyperspace-cli; + + bklk = callPackage ../applications/misc/bklk { }; + + bkyml = callPackage ../tools/misc/bkyml { }; + + blockbench-electron = callPackage ../applications/graphics/blockbench-electron { }; + + blocksat-cli = with python3Packages; toPythonApplication blocksat-cli; + + bmap-tools = callPackage ../tools/misc/bmap-tools { }; + + bonnmotion = callPackage ../development/tools/misc/bonnmotion { }; + + bonnie = callPackage ../tools/filesystems/bonnie { }; + + bonfire = callPackage ../tools/misc/bonfire { }; + + botamusique = callPackage ../tools/audio/botamusique { }; + + boulder = callPackage ../tools/admin/boulder { }; + + btrfs-heatmap = callPackage ../tools/filesystems/btrfs-heatmap { }; + + bucklespring = bucklespring-x11; + bucklespring-libinput = callPackage ../applications/audio/bucklespring { }; + bucklespring-x11 = callPackage ../applications/audio/bucklespring { legacy = true; }; + + buildbot = with python3Packages; toPythonApplication buildbot; + buildbot-ui = with python3Packages; toPythonApplication buildbot-ui; + buildbot-full = with python3Packages; toPythonApplication buildbot-full; + buildbot-worker = with python3Packages; toPythonApplication buildbot-worker; + + bunyan-rs = callPackage ../development/tools/bunyan-rs { }; + + callaudiod = callPackage ../applications/audio/callaudiod { }; + + calls = callPackage ../applications/networking/calls { }; + + inherit (nodePackages) castnow; + + castty = callPackage ../tools/misc/castty { }; + + certigo = callPackage ../tools/admin/certigo { }; + + certipy = callPackage ../tools/security/certipy { }; + + catcli = python3Packages.callPackage ../tools/filesystems/catcli { }; + + chezmoi = callPackage ../tools/misc/chezmoi { }; + + chipsec = callPackage ../tools/security/chipsec { + kernel = null; + withDriver = false; + }; + + chroma = callPackage ../tools/text/chroma { }; + + clair = callPackage ../tools/admin/clair { }; + + cloud-sql-proxy = callPackage ../tools/misc/cloud-sql-proxy { }; + + cloudsmith-cli = callPackage ../development/tools/cloudsmith-cli { }; + + codeql = callPackage ../development/tools/analysis/codeql { }; + + container-linux-config-transpiler = callPackage ../development/tools/container-linux-config-transpiler { }; + + fedora-backgrounds = callPackage ../data/misc/fedora-backgrounds { }; + + ccextractor = callPackage ../applications/video/ccextractor { }; + + cconv = callPackage ../tools/text/cconv { }; + + go-check = callPackage ../development/tools/check { }; + + go-cve-search = callPackage ../tools/security/go-cve-search { }; + + chkcrontab = callPackage ../tools/admin/chkcrontab { }; + + claws = callPackage ../tools/misc/claws { }; + + cloud-custodian = python3Packages.callPackage ../tools/networking/cloud-custodian { }; + + coconut = with python3Packages; toPythonApplication coconut; + + cod = callPackage ../tools/misc/cod { }; + + codespell = with python3Packages; toPythonApplication codespell; + + coolreader = libsForQt5.callPackage ../applications/misc/coolreader {}; + + corsair = with python3Packages; toPythonApplication corsair-scan; + + cosign = callPackage ../tools/security/cosign { + inherit (darwin.apple_sdk.frameworks) PCSC; + }; + + cozy = callPackage ../applications/audio/cozy { }; + + cpptoml = callPackage ../development/libraries/cpptoml { }; + + cpuid = callPackage ../os-specific/linux/cpuid { }; + + msr = callPackage ../os-specific/linux/msr { }; + + ctrtool = callPackage ../tools/archivers/ctrtool { }; + + crowbar = callPackage ../tools/security/crowbar { }; + + crumbs = callPackage ../applications/misc/crumbs { }; + + crc32c = callPackage ../development/libraries/crc32c { }; + + crcpp = callPackage ../development/libraries/crcpp { }; + + cudd = callPackage ../development/libraries/cudd { }; + + cue = callPackage ../development/tools/cue { }; + + cyclone-scheme = callPackage ../development/interpreters/cyclone { }; + + cyclonedx-python = callPackage ../tools/misc/cyclonedx-python { }; + + dcap = callPackage ../tools/networking/dcap { }; + + deltachat-cursed = callPackage ../applications/networking/instant-messengers/deltachat-cursed { }; + + deltachat-desktop = callPackage ../applications/networking/instant-messengers/deltachat-desktop { + inherit (darwin.apple_sdk.frameworks) CoreServices; + }; + + deskew = callPackage ../applications/graphics/deskew { }; + + detect-secrets = with python3Packages; toPythonApplication detect-secrets; + + dfmt = callPackage ../tools/text/dfmt { }; + + diopser = callPackage ../applications/audio/diopser { }; + + diskonaut = callPackage ../tools/misc/diskonaut { }; + + diskus = callPackage ../tools/misc/diskus { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + distrobox = callPackage ../applications/virtualization/distrobox { }; + + djmount = callPackage ../tools/filesystems/djmount { }; + + dgsh = callPackage ../shells/dgsh { }; + + dkimpy = with python3Packages; toPythonApplication dkimpy; + + dontgo403 = callPackage ../tools/security/dontgo403 { }; + + dpt-rp1-py = callPackage ../tools/misc/dpt-rp1-py { }; + + dot-http = callPackage ../development/tools/dot-http { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + doona = callPackage ../tools/security/doona { }; + + dotter = callPackage ../tools/misc/dotter { }; + + droidcam = callPackage ../applications/video/droidcam { }; + + ecdsautils = callPackage ../tools/security/ecdsautils { }; + + echidna = haskell.lib.compose.justStaticExecutables (haskellPackages.callPackage (../tools/security/echidna) { }); + + sedutil = callPackage ../tools/security/sedutil { }; + + elvish = callPackage ../shells/elvish { }; + + emplace = callPackage ../tools/package-management/emplace { }; + + enchive = callPackage ../tools/security/enchive { }; + + enjarify = callPackage ../tools/misc/enjarify { }; + + enpass = callPackage ../tools/security/enpass { }; + + esbuild = callPackage ../development/tools/esbuild { }; + + esbuild_netlify = callPackage ../development/tools/esbuild/netlify.nix { }; + + essentia-extractor = callPackage ../tools/audio/essentia-extractor { }; + + esh = callPackage ../tools/text/esh { }; + + ezstream = callPackage ../tools/audio/ezstream { }; + + libfx2 = with python3Packages; toPythonApplication fx2; + + fastmod = callPackage ../tools/text/fastmod { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + fitnesstrax = callPackage ../applications/misc/fitnesstrax { }; + + flavours = callPackage ../applications/misc/flavours { }; + + flirc = libsForQt5.callPackage ../applications/video/flirc { }; + + flood = nodePackages.flood; + + font-config-info = callPackage ../tools/misc/font-config-info { }; + + foxdot = with python3Packages; toPythonApplication foxdot; + + fspy = callPackage ../applications/misc/fspy { }; + + fluffychat = callPackage ../applications/networking/instant-messengers/fluffychat { }; + + fxlinuxprintutil = callPackage ../tools/misc/fxlinuxprintutil { }; + + genann = callPackage ../development/libraries/genann { }; + + genpass = callPackage ../tools/security/genpass { + inherit (darwin.apple_sdk.frameworks) CoreFoundation Security; + }; + + genymotion = callPackage ../development/mobile/genymotion { }; + + galene = callPackage ../servers/web-apps/galene { }; + + gamecube-tools = callPackage ../development/tools/gamecube-tools { }; + + gammy = qt5.callPackage ../tools/misc/gammy { }; + + gams = callPackage ../tools/misc/gams (config.gams or {}); + + gem = callPackage ../applications/audio/pd-plugins/gem { }; + + git-fire = callPackage ../tools/misc/git-fire { }; + + git-privacy = callPackage ../development/tools/git-privacy { }; + + git-repo-updater = python3Packages.callPackage ../development/tools/git-repo-updater { }; + + git-revise = with python3Packages; toPythonApplication git-revise; + + git-town = callPackage ../tools/misc/git-town { }; + + github-changelog-generator = callPackage ../development/tools/github-changelog-generator { }; + + github-commenter = callPackage ../development/tools/github-commenter { }; + + github-desktop = callPackage ../applications/version-management/github-desktop { }; + + github-to-sqlite = with python3Packages; toPythonApplication github-to-sqlite; + + gitless = callPackage ../applications/version-management/gitless { }; + + gistyc = with python3Packages; toPythonApplication gistyc; + + gitlint = python3Packages.callPackage ../tools/misc/gitlint { }; + + gitter = callPackage ../applications/networking/instant-messengers/gitter { }; + + gjs = callPackage ../development/libraries/gjs { }; + + gjo = callPackage ../tools/text/gjo { }; + + glances = python3Packages.callPackage ../applications/system/glances { }; + + glasgow = with python3Packages; toPythonApplication glasgow; + + gmid = callPackage ../servers/gemini/gmid { }; + + gmni = callPackage ../applications/networking/browsers/gmni { }; + + gmnisrv = callPackage ../servers/gemini/gmnisrv { }; + + gmnitohtml = callPackage ../applications/misc/gmnitohtml { }; + + goimapnotify = callPackage ../tools/networking/goimapnotify { }; + + gojsontoyaml = callPackage ../development/tools/gojsontoyaml { }; + + gomatrix = callPackage ../applications/misc/gomatrix { }; + + gomapenum = callPackage ../tools/security/gomapenum { }; + + gopacked = callPackage ../applications/misc/gopacked { }; + + gucci = callPackage ../tools/text/gucci { }; + + guglielmo = libsForQt5.callPackage ../applications/radio/guglielmo { }; + + grc = python3Packages.callPackage ../tools/misc/grc { }; + + green-pdfviewer = callPackage ../applications/misc/green-pdfviewer { + SDL = SDL_sixel; + }; + + gremlin-console = callPackage ../applications/misc/gremlin-console { + openjdk = openjdk11; + }; + + gremlin-server = callPackage ../applications/misc/gremlin-server { + openjdk = openjdk11; + }; + + grex = callPackage ../tools/misc/grex { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + gcsfuse = callPackage ../tools/filesystems/gcsfuse { }; + + glyr = callPackage ../tools/audio/glyr { }; + + gtklp = callPackage ../tools/misc/gtklp { }; + + google-amber = callPackage ../tools/graphics/amber { }; + + hakrawler = callPackage ../tools/security/hakrawler { }; + + harvid = callPackage ../tools/video/harvid { }; + + hilbish = callPackage ../shells/hilbish { }; + + hime = callPackage ../tools/inputmethods/hime {}; + + hinit = haskell.lib.compose.justStaticExecutables haskellPackages.hinit; + + hostctl = callPackage ../tools/system/hostctl { }; + + hp2p = callPackage ../tools/networking/hp2p { }; + + hpe-ltfs = callPackage ../tools/backup/hpe-ltfs { }; + + http2tcp = callPackage ../tools/networking/http2tcp { }; + + httperf = callPackage ../tools/networking/httperf { }; + + hwi = with python3Packages; toPythonApplication hwi; + + ili2c = callPackage ../tools/misc/ili2c { }; + + imagelol = callPackage ../tools/compression/imagelol { }; + + imageworsener = callPackage ../tools/graphics/imageworsener { }; + + imgpatchtools = callPackage ../development/mobile/imgpatchtools { }; + + imgcrypt = callPackage ../applications/virtualization/imgcrypt { }; + + ipgrep = callPackage ../tools/networking/ipgrep { }; + + itch = callPackage ../games/itch {}; + + itch-setup = callPackage ../games/itch-setup {}; + + lastpass-cli = callPackage ../tools/security/lastpass-cli { }; + + leetcode-cli = callPackage ../applications/misc/leetcode-cli { }; + + lesspass-cli = callPackage ../tools/security/lesspass-cli { }; + + lsix = callPackage ../tools/graphics/lsix { }; + + mdr = callPackage ../tools/misc/mdr { }; + + mobilecoin-wallet = callPackage ../applications/misc/mobilecoin-wallet { }; + + mpdevil = callPackage ../applications/audio/mpdevil { }; + + pacparser = callPackage ../tools/networking/pacparser { }; + + opencbm = callPackage ../tools/misc/opencbm { }; + + parquet-tools = callPackage ../tools/misc/parquet-tools { }; + + pass = callPackage ../tools/security/pass { }; + + passphrase2pgp = callPackage ../tools/security/passphrase2pgp { }; + + pass-git-helper = python3Packages.callPackage ../applications/version-management/git-and-tools/pass-git-helper { }; + + pass-nodmenu = callPackage ../tools/security/pass { + dmenuSupport = false; + pass = pass-nodmenu; + }; + + pass-wayland = callPackage ../tools/security/pass { + waylandSupport = true; + pass = pass-wayland; + }; + + passExtensions = recurseIntoAttrs pass.extensions; + + inherd-quake = callPackage ../applications/misc/inherd-quake { + inherit (darwin.apple_sdk.frameworks) CoreServices Security; + }; + + xjadeo = callPackage ../tools/video/xjadeo { }; + + asc-key-to-qr-code-gif = callPackage ../tools/security/asc-key-to-qr-code-gif { }; + + go-audit = callPackage ../tools/system/go-audit { }; + + gopass = callPackage ../tools/security/gopass { }; + + gopass-jsonapi = callPackage ../tools/security/gopass/jsonapi.nix { }; + + git-credential-gopass = callPackage ../tools/security/gopass/git-credential.nix { }; + + gopass-summon-provider = callPackage ../tools/security/gopass/summon.nix { }; + + gosh = callPackage ../tools/security/gosh { }; + + gospider = callPackage ../tools/security/gospider { }; + + browserpass = callPackage ../tools/security/browserpass { }; + + passff-host = callPackage ../tools/security/passff-host { }; + + oracle-instantclient = callPackage ../development/libraries/oracle-instantclient { }; + + goku = callPackage ../os-specific/darwin/goku { }; + + kwakd = callPackage ../servers/kwakd { }; + + kwm = callPackage ../os-specific/darwin/kwm { }; + + khd = callPackage ../os-specific/darwin/khd { + inherit (darwin.apple_sdk.frameworks) Carbon Cocoa; + }; + + kjv = callPackage ../applications/misc/kjv { }; + + luigi = callPackage ../applications/networking/cluster/luigi { }; + + m-cli = callPackage ../os-specific/darwin/m-cli { }; + + pebble = callPackage ../tools/admin/pebble { }; + + play-with-mpv = callPackage ../tools/video/play-with-mpv { }; + + plausible = callPackage ../servers/web-apps/plausible { }; + + reattach-to-user-namespace = callPackage ../os-specific/darwin/reattach-to-user-namespace {}; + + skhd = callPackage ../os-specific/darwin/skhd { + inherit (darwin.apple_sdk.frameworks) Carbon; + }; + + qes = callPackage ../os-specific/darwin/qes { + inherit (darwin.apple_sdk.frameworks) Carbon; + }; + + waydroid = callPackage ../os-specific/linux/waydroid { }; + + wiiload = callPackage ../development/tools/wiiload { }; + + wiimms-iso-tools = callPackage ../tools/filesystems/wiimms-iso-tools { }; + + waypoint = callPackage ../applications/networking/cluster/waypoint { }; + + xcodeenv = callPackage ../development/mobile/xcodeenv { }; + + gomobile = callPackage ../development/mobile/gomobile { + buildGoModule = buildGo116Module; + }; + + ssh-agents = callPackage ../tools/networking/ssh-agents { }; + + ssh-import-id = python3Packages.callPackage ../tools/admin/ssh-import-id { }; + + ssh-key-confirmer = callPackage ../tools/networking/ssh-key-confirmer { }; + + sshchecker = callPackage ../tools/security/sshchecker { }; + + titaniumenv = callPackage ../development/mobile/titaniumenv { }; + + abootimg = callPackage ../development/mobile/abootimg {}; + + adbfs-rootless = callPackage ../development/mobile/adbfs-rootless { + adb = androidenv.androidPkgs_9_0.platform-tools; + }; + + adb-sync = callPackage ../development/mobile/adb-sync { + inherit (androidenv.androidPkgs_9_0) platform-tools; + }; + + anbox = callPackage ../os-specific/linux/anbox { }; + + androidenv = callPackage ../development/mobile/androidenv { + pkgs_i686 = pkgsi686Linux; + }; + + androidndkPkgs = androidndkPkgs_18b; + androidndkPkgs_18b = (callPackage ../development/androidndk-pkgs {})."18b"; + androidndkPkgs_21 = (callPackage ../development/androidndk-pkgs {})."21"; + + androidsdk_9_0 = androidenv.androidPkgs_9_0.androidsdk; + + webos = recurseIntoAttrs { + cmake-modules = callPackage ../development/mobile/webos/cmake-modules.nix { }; + + novacom = callPackage ../development/mobile/webos/novacom.nix { }; + novacomd = callPackage ../development/mobile/webos/novacomd.nix { }; + }; + + anevicon = callPackage ../tools/networking/anevicon { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + apprise = with python3Packages; toPythonApplication apprise; + + aria2 = callPackage ../tools/networking/aria2 { + inherit (darwin.apple_sdk.frameworks) Security; + }; + aria = aria2; + + as-tree = callPackage ../tools/misc/as-tree { }; + + asmfmt = callPackage ../development/tools/asmfmt { }; + + asmrepl = callPackage ../development/interpreters/asmrepl { }; + + aspcud = callPackage ../tools/misc/aspcud { }; + + at = callPackage ../tools/system/at { }; + + atftp = callPackage ../tools/networking/atftp { }; + + authoscope = callPackage ../tools/security/authoscope { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + autogen = callPackage ../development/tools/misc/autogen { }; + + autojump = callPackage ../tools/misc/autojump { }; + + automysqlbackup = callPackage ../tools/backup/automysqlbackup { }; + + autorandr = callPackage ../tools/misc/autorandr {}; + + avahi = callPackage ../development/libraries/avahi (config.avahi or {}); + + avahi-compat = callPackage ../development/libraries/avahi ((config.avahi or {}) // { + withLibdnssdCompat = true; + }); + + avro-c = callPackage ../development/libraries/avro-c { }; + + avro-cpp = callPackage ../development/libraries/avro-c++ { }; + + aws = callPackage ../tools/virtualization/aws { }; + + aws_mturk_clt = callPackage ../tools/misc/aws-mturk-clt { }; + + awstats = callPackage ../tools/system/awstats { }; + + awsweeper = callPackage ../tools/admin/awsweeper { }; + + axel = callPackage ../tools/networking/axel { + libssl = openssl; + }; + + axoloti = callPackage ../applications/audio/axoloti { + gcc-arm-embedded = pkgsCross.arm-embedded.buildPackages.gcc; + binutils-arm-embedded = pkgsCross.arm-embedded.buildPackages.binutils; + jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + dfu-util-axoloti = callPackage ../applications/audio/axoloti/dfu-util.nix { }; + libusb1-axoloti = callPackage ../applications/audio/axoloti/libusb1.nix { + inherit (darwin) libobjc; + inherit (darwin.apple_sdk.frameworks) IOKit; + }; + + b3sum = callPackage ../tools/security/b3sum {}; + + backblaze-b2 = callPackage ../development/tools/backblaze-b2 { }; + + bandwhich = callPackage ../tools/networking/bandwhich { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + bar = callPackage ../tools/system/bar {}; + + base16-shell-preview = callPackage ../misc/base16-shell-preview { }; + + base16-builder = callPackage ../misc/base16-builder { }; + + basex = callPackage ../tools/text/xml/basex { }; + + bashplotlib = callPackage ../tools/misc/bashplotlib { }; + + babeld = callPackage ../tools/networking/babeld { }; + + babelfish = callPackage ../shells/fish/babelfish.nix { }; + + badchars = python3Packages.callPackage ../tools/security/badchars { }; + + badvpn = callPackage ../tools/networking/badvpn {}; + + baget = callPackage ../servers/web-apps/baget { }; + + barcode = callPackage ../tools/graphics/barcode {}; + + bashmount = callPackage ../tools/filesystems/bashmount {}; + + bat = callPackage ../tools/misc/bat { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + bat-extras = recurseIntoAttrs (callPackages ../tools/misc/bat-extras { }); + + beats = callPackage ../tools/misc/beats { }; + + beauty-line-icon-theme = callPackage ../data/icons/beauty-line-icon-theme { + inherit (plasma5Packages) breeze-icons; + }; + + bc = callPackage ../tools/misc/bc { }; + + bdf2psf = callPackage ../tools/misc/bdf2psf { }; + + bdf2sfd = callPackage ../tools/misc/bdf2sfd { }; + + bcache-tools = callPackage ../tools/filesystems/bcache-tools { }; + + bchunk = callPackage ../tools/cd-dvd/bchunk { }; + + inherit (callPackages ../misc/logging/beats/6.x.nix { }) + filebeat6 + heartbeat6 + metricbeat6 + packetbeat6 + journalbeat6; + + inherit (callPackages ../misc/logging/beats/7.x.nix { }) + filebeat7 + heartbeat7 + metricbeat7 + packetbeat7; + + filebeat = filebeat6; + heartbeat = heartbeat6; + metricbeat = metricbeat6; + packetbeat = packetbeat6; + journalbeat = journalbeat6; + + bfr = callPackage ../tools/misc/bfr { }; + + bibtool = callPackage ../tools/misc/bibtool { }; + + bibutils = callPackage ../tools/misc/bibutils { }; + + bibtex2html = callPackage ../tools/misc/bibtex2html { }; + + bicon = callPackage ../applications/misc/bicon { }; + + bindfs = callPackage ../tools/filesystems/bindfs { }; + + binwalk = with python3Packages; toPythonApplication binwalk; + + birdtray = libsForQt5.callPackage ../applications/misc/birdtray { }; + + bitbucket-cli = callPackage ../tools/misc/bitbucket-cli { }; + + bitbucket-server-cli = callPackage ../applications/version-management/git-and-tools/bitbucket-server-cli { }; + + blitz = callPackage ../development/libraries/blitz { }; + + blockbook = callPackage ../servers/blockbook { }; + + blockhash = callPackage ../tools/graphics/blockhash { }; + + bluemix-cli = callPackage ../tools/admin/bluemix-cli { }; + + blur-effect = callPackage ../tools/graphics/blur-effect { }; + + bootiso = callPackage ../tools/cd-dvd/bootiso { }; + + butane = callPackage ../development/tools/butane { }; + + buttercup-desktop = callPackage ../tools/security/buttercup-desktop { }; + + charles = charles4; + inherit (callPackage ../applications/networking/charles {}) + charles3 + charles4 + ; + + libquotient = libsForQt5.callPackage ../development/libraries/libquotient {}; + + quaternion = libsForQt5.callPackage ../applications/networking/instant-messengers/quaternion { }; + + mirage-im = libsForQt5.callPackage ../applications/networking/instant-messengers/mirage {}; + + tensor = libsForQt5.callPackage ../applications/networking/instant-messengers/tensor { }; + + libtensorflow-bin = callPackage ../development/libraries/science/math/tensorflow/bin.nix { + cudaSupport = config.cudaSupport or false; + cudatoolkit = cudatoolkit_10_0; + cudnn = cudnn_7_4_cudatoolkit_10_0; + }; + + libtensorflow = + if python3.pkgs.tensorflow ? libtensorflow + then python3.pkgs.tensorflow.libtensorflow + else libtensorflow-bin; + + libtorch-bin = callPackage ../development/libraries/science/math/libtorch/bin.nix { + cudaSupport = config.cudaSupport or false; + }; + + tensorflow-lite = callPackage ../development/libraries/science/math/tensorflow-lite { }; + + tezos-rust-libs = callPackage ../development/libraries/tezos-rust-libs { }; + + behdad-fonts = callPackage ../data/fonts/behdad-fonts { }; + + bfetch = callPackage ../tools/misc/bfetch { }; + + bless = callPackage ../applications/editors/bless { }; + + blink1-tool = callPackage ../tools/misc/blink1-tool { }; + + blis = callPackage ../development/libraries/science/math/blis { }; + + bliss = callPackage ../applications/science/math/bliss { }; + + blobfuse = callPackage ../tools/filesystems/blobfuse { }; + + blockdiag = with python3Packages; toPythonApplication blockdiag; + + bluez-alsa = callPackage ../tools/bluetooth/bluez-alsa { }; + + bluez-tools = callPackage ../tools/bluetooth/bluez-tools { }; + + bmon = callPackage ../tools/misc/bmon { }; + + bmake = callPackage ../development/tools/build-managers/bmake { }; + + go-mk = callPackage ../development/tools/build-managers/go-mk { }; + + boca = callPackage ../development/libraries/boca { }; + + bochs = callPackage ../applications/emulators/bochs { + wxGTK = wxGTK30; + }; + + bubblewrap = callPackage ../tools/admin/bubblewrap { }; + + borgbackup = callPackage ../tools/backup/borgbackup { }; + + borgmatic = callPackage ../tools/backup/borgmatic { }; + + boringtun = callPackage ../tools/networking/boringtun { }; + + bookstack = callPackage ../servers/web-apps/bookstack { }; + + # Upstream recommends qt5.12 and it doesn't build with qt5.15 + boomerang = libsForQt512.callPackage ../development/tools/boomerang { }; + + boost-build = callPackage ../development/tools/boost-build { }; + + boot = callPackage ../development/tools/build-managers/boot { }; + + bowtie = callPackage ../applications/science/biology/bowtie { }; + + bowtie2 = callPackage ../applications/science/biology/bowtie2 { }; + + boxfs = callPackage ../tools/filesystems/boxfs { }; + + bozohttpd = callPackage ../servers/http/bozohttpd { }; + bozohttpd-minimal = callPackage ../servers/http/bozohttpd { minimal = true; }; + + bpb = callPackage ../tools/security/bpb { inherit (darwin.apple_sdk.frameworks) Security; }; + + bpytop = callPackage ../tools/system/bpytop { }; + + brasero-original = lowPrio (callPackage ../tools/cd-dvd/brasero { }); + + brasero = callPackage ../tools/cd-dvd/brasero/wrapper.nix { }; + + brigand = callPackage ../development/libraries/brigand { }; + + brltty = callPackage ../tools/misc/brltty { }; + + brook = callPackage ../tools/networking/brook { }; + + broot = callPackage ../tools/misc/broot { + inherit (darwin.apple_sdk.frameworks) Security; + inherit (xorg) libxcb; + }; + + bruteforce-luks = callPackage ../tools/security/bruteforce-luks { }; + + brutespray = callPackage ../tools/security/brutespray { }; + + breakpointHook = assert stdenv.isLinux; + makeSetupHook { } ../build-support/setup-hooks/breakpoint-hook.sh; + + py65 = python3Packages.callPackage ../applications/emulators/py65 { }; + + simh = callPackage ../applications/emulators/simh { }; + + btrfs-progs = callPackage ../tools/filesystems/btrfs-progs { }; + + btrfs-snap = callPackage ../tools/filesystems/btrfs-snap { }; + + btlejack = python3Packages.callPackage ../applications/radio/btlejack { }; + + btrbk = callPackage ../tools/backup/btrbk { }; + + buildpack = callPackage ../development/tools/buildpack { }; + + bottom-rs = callPackage ../tools/misc/bottom-rs { }; + + bsp-layout = callPackage ../tools/misc/bsp-layout {}; + + buildtorrent = callPackage ../tools/misc/buildtorrent { }; + + bustle = haskellPackages.bustle; + + buttersink = callPackage ../tools/filesystems/buttersink { }; + + bwm_ng = callPackage ../tools/networking/bwm-ng { }; + + bwbasic = callPackage ../development/interpreters/bwbasic { }; + + byobu = callPackage ../tools/misc/byobu { + # Choices: [ tmux screen ]; + textual-window-manager = tmux; + }; + + bsh = fetchurl { + url = "http://www.beanshell.org/bsh-2.0b5.jar"; + sha256 = "0p2sxrpzd0vsk11zf3kb5h12yl1nq4yypb5mpjrm8ww0cfaijck2"; + }; + + btfs = callPackage ../os-specific/linux/btfs { }; + + buildah = callPackage ../development/tools/buildah/wrapper.nix { }; + buildah-unwrapped = callPackage ../development/tools/buildah { }; + + buildkit = callPackage ../development/tools/buildkit { }; + + bukubrow = callPackage ../tools/networking/bukubrow { }; + + burpsuite = callPackage ../tools/networking/burpsuite {}; + + bs-platform = callPackage ../development/compilers/bs-platform {}; + + ciano = callPackage ../applications/graphics/ciano { + inherit (pantheon) granite; + python = python3; + gtk = gtk3; + }; + + c3d = callPackage ../applications/graphics/c3d { + inherit (darwin.apple_sdk.frameworks) Cocoa; + }; + + cue2pops = callPackage ../tools/cd-dvd/cue2pops { }; + + cabal2nix-unwrapped = haskell.lib.compose.justStaticExecutables (haskell.lib.compose.generateOptparseApplicativeCompletion "cabal2nix" haskellPackages.cabal2nix); + + cabal2nix = symlinkJoin { + inherit (cabal2nix-unwrapped) name meta; + nativeBuildInputs = [ makeWrapper ]; + paths = [ cabal2nix-unwrapped ]; + postBuild = '' + wrapProgram $out/bin/cabal2nix \ + --prefix PATH ":" "${lib.makeBinPath [ nix nix-prefetch-scripts ]}" + ''; + }; + + stack2nix = with haskell.lib; overrideCabal (justStaticExecutables haskellPackages.stack2nix) (_: { + executableToolDepends = [ makeWrapper ]; + postInstall = '' + wrapProgram $out/bin/stack2nix \ + --prefix PATH ":" "${git}/bin:${cabal-install}/bin" + ''; + }); + + caddy = callPackage ../servers/caddy { }; + + traefik = callPackage ../servers/traefik { }; + + traefik-certs-dumper = callPackage ../tools/misc/traefik-certs-dumper { }; + + calamares = libsForQt515.callPackage ../tools/misc/calamares { + python = python3; + boost = boost.override { enablePython = true; python = python3; }; + }; + + calendar-cli = callPackage ../tools/networking/calendar-cli { }; + + cameradar = callPackage ../tools/security/cameradar { }; + + candle = libsForQt5.callPackage ../applications/misc/candle { }; + + capstone = callPackage ../development/libraries/capstone { }; + + keystone = callPackage ../development/libraries/keystone { }; + + casync = callPackage ../applications/networking/sync/casync { + sphinx = python3Packages.sphinx; + }; + + cataract = callPackage ../applications/misc/cataract { }; + cataract-unstable = callPackage ../applications/misc/cataract/unstable.nix { }; + + catch = callPackage ../development/libraries/catch { }; + + catch2 = callPackage ../development/libraries/catch2 { }; + + catdoc = callPackage ../tools/text/catdoc { }; + + catdocx = callPackage ../tools/text/catdocx { }; + + catclock = callPackage ../applications/misc/catclock { }; + + cardpeek = callPackage ../applications/misc/cardpeek { inherit (darwin.apple_sdk.frameworks) PCSC; }; + + cawbird = callPackage ../applications/networking/cawbird { }; + + cde = callPackage ../tools/package-management/cde { }; + + cdemu-daemon = callPackage ../applications/emulators/cdemu/daemon.nix { }; + + cdemu-client = callPackage ../applications/emulators/cdemu/client.nix { }; + + ceres-solver = callPackage ../development/libraries/ceres-solver { + gflags = null; # only required for examples/tests + }; + + craftos-pc = callPackage ../applications/emulators/craftos-pc { }; + + gcdemu = callPackage ../applications/emulators/cdemu/gui.nix { }; + + image-analyzer = callPackage ../applications/emulators/cdemu/analyzer.nix { }; + + cbor-diag = callPackage ../development/tools/cbor-diag { }; + + cassowary = callPackage ../tools/networking/cassowary { }; + + croc = callPackage ../tools/networking/croc { }; + + cbftp = callPackage ../tools/networking/cbftp { }; + + cddl = callPackage ../development/tools/cddl { }; + + cedille = callPackage ../applications/science/logic/cedille + { inherit (haskellPackages) alex happy Agda ghcWithPackages; + }; + + cfdyndns = callPackage ../applications/networking/dyndns/cfdyndns { }; + + cfm = callPackage ../applications/misc/cfm { }; + + charliecloud = callPackage ../applications/virtualization/charliecloud { }; + + chelf = callPackage ../tools/misc/chelf { }; + + chisel = callPackage ../tools/networking/chisel { }; + + cht-sh = callPackage ../tools/misc/cht.sh { }; + + cinny = callPackage ../applications/networking/instant-messengers/cinny { stdenv = stdenvNoCC; }; + + ckbcomp = callPackage ../tools/X11/ckbcomp { }; + + clac = callPackage ../tools/misc/clac {}; + + clash = callPackage ../tools/networking/clash { }; + + clasp = callPackage ../tools/misc/clasp { }; + + clevercsv = with python3Packages; toPythonApplication clevercsv; + + clevis = callPackage ../tools/security/clevis { + asciidoc = asciidoc-full; + }; + + cli53 = callPackage ../tools/admin/cli53 { }; + + cli-visualizer = callPackage ../applications/misc/cli-visualizer { }; + + clickclack = callPackage ../tools/misc/clickclack { }; + + clickgen = with python3Packages; toPythonApplication clickgen; + + clog-cli = callPackage ../development/tools/clog-cli { }; + + cloud-init = python3.pkgs.callPackage ../tools/virtualization/cloud-init { inherit systemd; }; + + cloudbrute = callPackage ../tools/security/cloudbrute { }; + + cloudflared = callPackage ../applications/networking/cloudflared { }; + + cloudmonkey = callPackage ../tools/virtualization/cloudmonkey { }; + + clib = callPackage ../tools/package-management/clib { }; + + clingo = callPackage ../applications/science/logic/potassco/clingo.nix { }; + + clingcon = callPackage ../applications/science/logic/potassco/clingcon.nix { }; + + clprover = callPackage ../applications/science/logic/clprover/clprover.nix { }; + + clusterctl = callPackage ../applications/networking/cluster/clusterctl { }; + + coloredlogs = with python3Packages; toPythonApplication coloredlogs; + + colord-kde = libsForQt5.callPackage ../tools/misc/colord-kde {}; + + colpack = callPackage ../applications/science/math/colpack { }; + + cz-cli = callPackage ../applications/version-management/cz-cli {}; + + comma = callPackage ../tools/package-management/comma { }; + + commitizen = python3Packages.callPackage ../applications/version-management/commitizen { }; + + common-licenses = callPackage ../data/misc/common-licenses {}; + + compactor = callPackage ../applications/networking/compactor { }; + + consul = callPackage ../servers/consul { }; + + consul-alerts = callPackage ../servers/monitoring/consul-alerts { }; + + consul-template = callPackage ../tools/system/consul-template { }; + + copyright-update = callPackage ../tools/text/copyright-update { }; + + inherit (callPackage ../tools/misc/coreboot-utils { }) + msrtool + cbmem + ifdtool + intelmetool + cbfstool + nvramtool + superiotool + ectool + inteltool + amdfwtool + acpidump-all + coreboot-utils; + + corosync = callPackage ../servers/corosync { }; + + cowsay = callPackage ../tools/misc/cowsay { }; + + czkawka = callPackage ../tools/misc/czkawka { }; + + cherrytree = callPackage ../applications/misc/cherrytree { }; + + chntpw = callPackage ../tools/security/chntpw { }; + + chopchop = callPackage ../tools/security/chopchop { }; + + cliphist = callPackage ../tools/wayland/cliphist { }; + + clipman = callPackage ../tools/wayland/clipman { }; + + kanshi = callPackage ../tools/wayland/kanshi { }; + + oguri = callPackage ../tools/wayland/oguri { }; + + slurp = callPackage ../tools/wayland/slurp { }; + + swaykbdd = callPackage ../tools/wayland/swaykbdd { }; + + swaycwd = callPackage ../tools/wayland/swaycwd { }; + + swayr = callPackage ../tools/wayland/swayr { }; + + swaytools = callPackage ../tools/wayland/swaytools { }; + + wayland-utils = callPackage ../tools/wayland/wayland-utils { }; + + wayland-proxy-virtwl = callPackage ../tools/wayland/wayland-proxy-virtwl { }; + + wev = callPackage ../tools/wayland/wev { }; + + wdomirror = callPackage ../tools/wayland/wdomirror { }; + + wl-clipboard = callPackage ../tools/wayland/wl-clipboard { }; + + wl-clipboard-x11 = callPackage ../tools/wayland/wl-clipboard-x11 { }; + + wl-mirror = callPackage ../tools/wayland/wl-mirror { }; + + wlogout = callPackage ../tools/wayland/wlogout { }; + + wlr-randr = callPackage ../tools/wayland/wlr-randr { }; + + wlrctl = callPackage ../tools/wayland/wlrctl { }; + + wlsunset = callPackage ../tools/wayland/wlsunset { }; + + wl-gammactl = callPackage ../tools/wayland/wl-gammactl { }; + + wluma = callPackage ../tools/wayland/wluma { }; + + wob = callPackage ../tools/wayland/wob { }; + + wshowkeys = callPackage ../tools/wayland/wshowkeys { }; + + wtype = callPackage ../tools/wayland/wtype { }; + + ydotool = callPackage ../tools/wayland/ydotool { }; + + clipster = callPackage ../tools/misc/clipster { }; + + clockify = callPackage ../applications/office/clockify { + electron = electron_11; + }; + + contrast = callPackage ../applications/accessibility/contrast { }; + + cplex = callPackage ../applications/science/math/cplex (config.cplex or {}); + + cpulimit = callPackage ../tools/misc/cpulimit { }; + + code-minimap = callPackage ../tools/misc/code-minimap { }; + + codesearch = callPackage ../tools/text/codesearch { }; + + codec2 = callPackage ../development/libraries/codec2 { }; + + contacts = callPackage ../tools/misc/contacts { + inherit (darwin.apple_sdk.frameworks) Foundation AddressBook; + xcbuildHook = xcbuild6Hook; + }; + + colorls = callPackage ../tools/system/colorls { }; + + coloursum = callPackage ../tools/text/coloursum { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + compsize = callPackage ../os-specific/linux/compsize { }; + + cot = with python3Packages; toPythonApplication cot; + + coturn = callPackage ../servers/coturn { }; + + coursier = callPackage ../development/tools/coursier {}; + + cppclean = callPackage ../development/tools/cppclean {}; + + credhub-cli = callPackage ../tools/admin/credhub-cli {}; + + crex = callPackage ../tools/misc/crex { }; + + cri-tools = callPackage ../tools/virtualization/cri-tools {}; + + crip = callPackage ../applications/audio/crip { }; + + crosvm = callPackage ../applications/virtualization/crosvm { }; + + crunch = callPackage ../tools/security/crunch { }; + + crudini = callPackage ../tools/misc/crudini { }; + + csv2odf = callPackage ../applications/office/csv2odf { }; + + csvdiff = callPackage ../tools/text/csvdiff { }; + + csview = callPackage ../tools/text/csview { }; + + csvkit = callPackage ../tools/text/csvkit { }; + + csvtool = callPackage ../development/ocaml-modules/csv/csvtool.nix { }; + + csv2latex = callPackage ../tools/misc/csv2latex { }; + + csvs-to-sqlite = callPackage ../tools/misc/csvs-to-sqlite { }; + + cucumber = callPackage ../development/tools/cucumber {}; + + dabtools = callPackage ../applications/radio/dabtools { }; + + daemontools = callPackage ../tools/admin/daemontools { }; + + dale = callPackage ../development/compilers/dale { }; + + damon = callPackage ../tools/admin/damon { }; + + dante = callPackage ../servers/dante { }; + + dapr-cli = callPackage ../development/tools/dapr/cli {}; + + dasel = callPackage ../applications/misc/dasel { }; + + dasher = callPackage ../applications/accessibility/dasher { }; + + datamash = callPackage ../tools/misc/datamash { }; + + datasette = with python3Packages; toPythonApplication datasette; + + howard-hinnant-date = callPackage ../development/libraries/howard-hinnant-date { }; + + datefmt = callPackage ../tools/misc/datefmt { }; + + datefudge = callPackage ../tools/system/datefudge { }; + + dateutils = callPackage ../tools/misc/dateutils { }; + + datovka = libsForQt5.callPackage ../applications/networking/datovka { }; + + dave = callPackage ../servers/http/dave { }; + + dconf = callPackage ../development/libraries/dconf { }; + + dcw-gmt = callPackage ../applications/gis/gmt/dcw.nix { }; + + ddar = callPackage ../tools/backup/ddar { }; + + ddate = callPackage ../tools/misc/ddate { }; + + ddosify = callPackage ../development/tools/ddosify { }; + + dduper = callPackage ../tools/filesystems/dduper { }; + + dedup = callPackage ../tools/backup/dedup { }; + + dehydrated = callPackage ../tools/admin/dehydrated { }; + + deja-dup = callPackage ../applications/backup/deja-dup { }; + + dejsonlz4 = callPackage ../tools/compression/dejsonlz4 { }; + + desync = callPackage ../applications/networking/sync/desync { }; + + devdocs-desktop = callPackage ../applications/misc/devdocs-desktop { }; + + devmem2 = callPackage ../os-specific/linux/devmem2 { }; + + dbus-broker = callPackage ../os-specific/linux/dbus-broker { }; + + ioport = callPackage ../os-specific/linux/ioport {}; + + dgoss = callPackage ../tools/misc/dgoss { }; + + diagrams-builder = callPackage ../tools/graphics/diagrams-builder { + inherit (haskellPackages) ghcWithPackages diagrams-builder; + }; + + dialog = callPackage ../tools/misc/dialog { }; + + dialogbox = libsForQt5.callPackage ../tools/misc/dialogbox { }; + + dibbler = callPackage ../tools/networking/dibbler { }; + + diesel-cli = callPackage ../development/tools/diesel-cli { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + digitemp = callPackage ../tools/misc/digitemp { }; + + dijo = callPackage ../tools/misc/dijo { + inherit (darwin.apple_sdk.frameworks) CoreServices; + }; + + ding = callPackage ../applications/misc/ding { + aspellDicts_de = aspellDicts.de; + aspellDicts_en = aspellDicts.en; + }; + + dirb = callPackage ../tools/networking/dirb { }; + + direnv = callPackage ../tools/misc/direnv { }; + + h = callPackage ../tools/misc/h { }; + + discount = callPackage ../tools/text/discount { }; + + discourse = callPackage ../servers/web-apps/discourse { }; + + discourseAllPlugins = discourse.override { + plugins = lib.filter (p: p ? pluginName) (builtins.attrValues discourse.plugins); + }; + + discourse-mail-receiver = callPackage ../servers/web-apps/discourse/mail_receiver { }; + + discocss = callPackage ../tools/misc/discocss { }; + + disfetch = callPackage ../tools/misc/disfetch { }; + + disk-filltest = callPackage ../tools/system/disk-filltest { }; + + diskscan = callPackage ../tools/misc/diskscan { }; + + disorderfs = callPackage ../tools/filesystems/disorderfs { + asciidoc = asciidoc-full; + }; + + dislocker = callPackage ../tools/filesystems/dislocker { }; + + distgen = callPackage ../development/tools/distgen {}; + + distrobuilder = callPackage ../tools/virtualization/distrobuilder { }; + + ditaa = callPackage ../tools/graphics/ditaa { }; + + dino = callPackage ../applications/networking/instant-messengers/dino { + inherit (gst_all_1) gstreamer gst-plugins-base; + gst-plugins-good = gst_all_1.gst-plugins-good.override { gtkSupport = true; }; + }; + + djv = callPackage ../applications/graphics/djv { }; + + dlx = callPackage ../applications/emulators/dlx { }; + + dgen-sdl = callPackage ../applications/emulators/dgen-sdl { }; + + dnschef = python3Packages.callPackage ../tools/networking/dnschef { }; + + doitlive = callPackage ../tools/misc/doitlive { }; + + dokuwiki = callPackage ../servers/web-apps/dokuwiki { }; + + doppler = callPackage ../tools/security/doppler {}; + + dosage = callPackage ../applications/graphics/dosage { }; + + dotenv-linter = callPackage ../development/tools/analysis/dotenv-linter { }; + + inherit (ocamlPackages) dot-merlin-reader; + + dozenal = callPackage ../applications/misc/dozenal { }; + + dpic = callPackage ../tools/graphics/dpic { }; + + dragon-drop = callPackage ../tools/X11/dragon-drop { + gtk = gtk3; + }; + + dstp = callPackage ../development/tools/dstp { }; + + dsvpn = callPackage ../applications/networking/dsvpn { }; + + dtools = callPackage ../development/tools/dtools { }; + + dtrx = callPackage ../tools/compression/dtrx { }; + + dua = callPackage ../tools/misc/dua { + inherit (darwin.apple_sdk.frameworks) Foundation; + }; + + duf = callPackage ../tools/misc/duf { }; + + inherit (ocaml-ng.ocamlPackages_4_10) dune_1; + inherit (ocamlPackages) dune_2 dune_3 dune-release; + + duperemove = callPackage ../tools/filesystems/duperemove { }; + + dvc = callPackage ../applications/version-management/dvc { }; + + dvc-with-remotes = callPackage ../applications/version-management/dvc { + enableGoogle = true; + enableAWS = true; + enableAzure = true; + enableSSH = true; + }; + + dynamic-colors = callPackage ../tools/misc/dynamic-colors { }; + + dyncall = callPackage ../development/libraries/dyncall { }; + + dyndnsc = callPackage ../applications/networking/dyndns/dyndnsc { }; + + earthly = callPackage ../development/tools/earthly { }; + + earlybird = callPackage ../tools/security/earlybird { }; + + earlyoom = callPackage ../os-specific/linux/earlyoom { }; + + EBTKS = callPackage ../development/libraries/science/biology/EBTKS { }; + + ecasound = callPackage ../applications/audio/ecasound { }; + + edac-utils = callPackage ../os-specific/linux/edac-utils { }; + + eddy = libsForQt5.callPackage ../applications/graphics/eddy { }; + + eggdrop = callPackage ../tools/networking/eggdrop { }; + + ekam = callPackage ../development/tools/build-managers/ekam { }; + + eksctl = callPackage ../tools/admin/eksctl { }; + + electronplayer = callPackage ../applications/video/electronplayer/electronplayer.nix { }; + + electron-mail = callPackage ../applications/networking/mailreaders/electron-mail { }; + + element = callPackage ../applications/science/chemistry/element { }; + + element-desktop = callPackage ../applications/networking/instant-messengers/element/element-desktop.nix { + inherit (darwin.apple_sdk.frameworks) Security AppKit CoreServices; + electron = electron_15; + }; + element-desktop-wayland = writeScriptBin "element-desktop" '' + #!/bin/sh + NIXOS_OZONE_WL=1 exec ${element-desktop}/bin/element-desktop "$@" + ''; + + element-web = callPackage ../applications/networking/instant-messengers/element/element-web.nix { + conf = config.element-web.conf or {}; + }; + + elementary-xfce-icon-theme = callPackage ../data/icons/elementary-xfce-icon-theme { }; + + ell = callPackage ../os-specific/linux/ell { }; + + elm-github-install = callPackage ../tools/package-management/elm-github-install { }; + + elogind = callPackage ../applications/misc/elogind { }; + + elpa = callPackage ../development/libraries/elpa { }; + + enca = callPackage ../tools/text/enca { }; + + ent = callPackage ../tools/misc/ent { }; + + envconsul = callPackage ../tools/system/envconsul { }; + + envsubst = callPackage ../tools/misc/envsubst { }; + + errcheck = callPackage ../development/tools/errcheck { }; + + eschalot = callPackage ../tools/security/eschalot { }; + + espanso = callPackage ../applications/office/espanso { }; + + esphome = callPackage ../tools/misc/esphome { }; + + esptool = callPackage ../tools/misc/esptool { }; + + esptool-ck = callPackage ../tools/misc/esptool-ck { }; + + ephemeralpg = callPackage ../development/tools/database/ephemeralpg {}; + + et = callPackage ../applications/misc/et {}; + + ejson = callPackage ../development/tools/ejson {}; + + eternal-terminal = callPackage ../tools/networking/eternal-terminal {}; + + extrude = callPackage ../tools/security/extrude { }; + + f3 = callPackage ../tools/filesystems/f3 { }; + + f3d = callPackage ../applications/graphics/f3d { + inherit (darwin.apple_sdk.frameworks) Cocoa OpenGL; + }; + + fac = callPackage ../development/tools/fac { }; + + facedetect = callPackage ../tools/graphics/facedetect { }; + + findimagedupes = callPackage ../tools/graphics/findimagedupes { }; + + facter = callPackage ../tools/system/facter { }; + + fasd = callPackage ../tools/misc/fasd { }; + + fastJson = callPackage ../development/libraries/fastjson { }; + + fast-cli = nodePackages.fast-cli; + + fast-cpp-csv-parser = callPackage ../development/libraries/fast-cpp-csv-parser { }; + + fast-ssh = callPackage ../tools/networking/fast-ssh { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + faudio = callPackage ../development/libraries/faudio { }; + + fd = callPackage ../tools/misc/fd { }; + + fdroidserver = python3Packages.callPackage ../development/tools/fdroidserver { }; + + filebench = callPackage ../tools/misc/filebench { }; + + filebot = callPackage ../applications/video/filebot { }; + + fileshare = callPackage ../servers/fileshare {}; + + fileshelter = callPackage ../servers/web-apps/fileshelter { }; + + fioctl = callPackage ../tools/admin/fioctl { }; + + firecracker = callPackage ../applications/virtualization/firecracker { }; + + firectl = callPackage ../applications/virtualization/firectl { }; + + firestarter = callPackage ../applications/misc/firestarter { }; + + fits-cloudctl = callPackage ../tools/admin/fits-cloudctl { }; + + flitter = callPackage ../tools/misc/flitter { }; + + frangipanni = callPackage ../tools/text/frangipanni { }; + + fselect = callPackage ../tools/misc/fselect { }; + + fsmon = callPackage ../tools/misc/fsmon { }; + + fst = callPackage ../tools/text/fst { }; + + fsql = callPackage ../tools/misc/fsql { }; + + fop = callPackage ../tools/typesetting/fop { + jdk = openjdk8; + }; + + fondu = callPackage ../tools/misc/fondu { }; + + fpp = callPackage ../tools/misc/fpp { }; + + fsmark = callPackage ../tools/misc/fsmark { }; + + futhark = haskell.lib.compose.justStaticExecutables haskellPackages.futhark; + + inherit (nodePackages) fx; + + tllist = callPackage ../development/libraries/tllist { }; + + fcft = callPackage ../development/libraries/fcft { }; + + fuzzel = callPackage ../applications/misc/fuzzel { }; + + flashfocus = callPackage ../misc/flashfocus { }; + + qt-video-wlr = libsForQt5.callPackage ../applications/misc/qt-video-wlr { }; + + fwup = callPackage ../tools/misc/fwup { + inherit (darwin.apple_sdk.frameworks) DiskArbitration; + }; + + fx_cast_bridge = callPackage ../tools/misc/fx_cast { }; + + fzf = callPackage ../tools/misc/fzf { }; + + fzf-zsh = callPackage ../shells/zsh/fzf-zsh { }; + + fzy = callPackage ../tools/misc/fzy { }; + + g2o = libsForQt5.callPackage ../development/libraries/g2o { }; + + gb-backup = callPackage ../tools/backup/gamerbackup { }; + + gbsplay = callPackage ../applications/audio/gbsplay { }; + + gdrive = callPackage ../applications/networking/gdrive { }; + + gdu = callPackage ../tools/system/gdu { }; + + go-chromecast = callPackage ../applications/video/go-chromecast { }; + + go-containerregistry = callPackage ../development/tools/go-containerregistry { }; + inherit (go-containerregistry) crane gcrane; + + go-rice = callPackage ../tools/misc/go.rice {}; + + go-2fa = callPackage ../tools/security/2fa {}; + + go-dependency-manager = callPackage ../development/tools/gdm { }; + + go-neb = callPackage ../applications/networking/instant-messengers/go-neb { }; + + geckodriver = callPackage ../development/tools/geckodriver { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + geekbench = callPackage ../tools/misc/geekbench { }; + + gencfsm = callPackage ../tools/security/gencfsm { }; + + genromfs = callPackage ../tools/filesystems/genromfs { }; + + gh-ost = callPackage ../tools/misc/gh-ost { }; + + ghdorker = callPackage ../tools/security/ghdorker { }; + + ghidra = callPackage ../tools/security/ghidra/build.nix { }; + + ghidra-bin = callPackage ../tools/security/ghidra { }; + + gh2md = callPackage ../tools/backup/gh2md { }; + + gif-for-cli = callPackage ../tools/misc/gif-for-cli { }; + + giph = callPackage ../applications/video/giph { }; + + gir-rs = callPackage ../development/tools/gir { }; + + gist = callPackage ../tools/text/gist { }; + + gitjacker = callPackage ../tools/security/gitjacker { }; + + gixy = callPackage ../tools/admin/gixy { }; + + glpaper = callPackage ../development/tools/glpaper { }; + + gllvm = callPackage ../development/tools/gllvm { }; + + glide = callPackage ../development/tools/glide { }; + + globalarrays = callPackage ../development/libraries/globalarrays { }; + + glock = callPackage ../development/tools/glock { }; + + glslviewer = callPackage ../development/tools/glslviewer { + inherit (darwin.apple_sdk.frameworks) Cocoa; + }; + + gmic = callPackage ../tools/graphics/gmic { }; + + gmic-qt = libsForQt5.callPackage ../tools/graphics/gmic-qt { }; + + # NOTE: If overriding qt version, krita needs to use the same qt version as + # well. + gmic-qt-krita = gmic-qt.override { + variant = "krita"; + }; + + gmt = callPackage ../applications/gis/gmt { + inherit (darwin.apple_sdk.frameworks) + Accelerate CoreGraphics CoreVideo; + }; + + gpg-tui = callPackage ../tools/security/gpg-tui { + inherit (darwin.apple_sdk.frameworks) AppKit Foundation; + inherit (darwin) libobjc libresolv; + }; + + goa = callPackage ../development/tools/goa { }; + + goawk = callPackage ../tools/text/goawk { }; + + gohai = callPackage ../tools/system/gohai { }; + + gorilla-bin = callPackage ../tools/security/gorilla-bin { }; + + godu = callPackage ../tools/misc/godu { + buildGoModule = buildGo116Module; + }; + + goss = callPackage ../tools/misc/goss { }; + + gosu = callPackage ../tools/misc/gosu { }; + + gotify-cli = callPackage ../tools/misc/gotify-cli { }; + + gotify-desktop = callPackage ../tools/misc/gotify-desktop { }; + + gping = callPackage ../tools/networking/gping { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + gpu-burn = callPackage ../applications/misc/gpu-burn { }; + + greg = callPackage ../applications/audio/greg { + pythonPackages = python3Packages; + }; + + grim = callPackage ../tools/graphics/grim { }; + + gringo = callPackage ../tools/misc/gringo { }; + + grit = callPackage ../tools/misc/grit { }; + + grobi = callPackage ../tools/X11/grobi { }; + + gscan2pdf = callPackage ../applications/graphics/gscan2pdf { }; + + gsctl = callPackage ../applications/misc/gsctl { }; + + gthree = callPackage ../development/libraries/gthree { }; + + gtg = callPackage ../applications/office/gtg { }; + + gti = callPackage ../tools/misc/gti { }; + + hdate = callPackage ../applications/misc/hdate { }; + + heatseeker = callPackage ../tools/misc/heatseeker { }; + + hebcal = callPackage ../tools/misc/hebcal {}; + + hexio = callPackage ../development/tools/hexio { }; + + hexyl = callPackage ../tools/misc/hexyl { }; + + hid-listen = callPackage ../tools/misc/hid-listen { }; + + hidrd = callPackage ../tools/misc/hidrd { }; + + hiksink = callPackage ../tools/misc/hiksink { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + hocr-tools = with python3Packages; toPythonApplication hocr-tools; + + home-manager = callPackage ../tools/package-management/home-manager {}; + + hostsblock = callPackage ../tools/misc/hostsblock { }; + + hottext = callPackage ../tools/text/hottext { }; + + hopper = qt5.callPackage ../development/tools/analysis/hopper {}; + + hr = callPackage ../applications/misc/hr { }; + + humioctl = callPackage ../applications/logging/humioctl {}; + + hyx = callPackage ../tools/text/hyx { }; + + icdiff = callPackage ../tools/text/icdiff {}; + + inchi = callPackage ../development/libraries/inchi {}; + + icon-slicer = callPackage ../tools/X11/icon-slicer { }; + + ifm = callPackage ../tools/graphics/ifm {}; + + iina = callPackage ../applications/video/iina { }; + + ink = callPackage ../tools/misc/ink { }; + + inklecate = callPackage ../development/compilers/inklecate {}; + + intensity-normalization = with python3Packages; toPythonApplication intensity-normalization; + + interactsh = callPackage ../tools/misc/interactsh { }; + + interlock = callPackage ../servers/interlock {}; + + invoiceplane = callPackage ../servers/web-apps/invoiceplane { }; + + iotools = callPackage ../tools/misc/iotools { }; + + irpf = callPackage ../applications/finance/irpf { }; + + jellycli = callPackage ../applications/audio/jellycli { }; + + jellyfin = callPackage ../servers/jellyfin { }; + + jellyfin-media-player = libsForQt5.callPackage ../applications/video/jellyfin-media-player { + inherit (darwin.apple_sdk.frameworks) CoreFoundation Cocoa CoreAudio MediaPlayer; + }; + + jellyfin-mpv-shim = python3Packages.callPackage ../applications/video/jellyfin-mpv-shim { }; + + jellyfin-web = callPackage ../servers/jellyfin/web.nix { }; + + jiten = callPackage ../applications/misc/jiten { }; + + kanjidraw = callPackage ../applications/misc/kanjidraw { }; + + jotta-cli = callPackage ../applications/misc/jotta-cli { }; + + joycond = callPackage ../os-specific/linux/joycond { }; + + joystickwake = callPackage ../tools/games/joystickwake {}; + + jwt-cli = callPackage ../tools/security/jwt-cli { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + kapacitor = callPackage ../servers/monitoring/kapacitor { }; + + kaldi = callPackage ../tools/audio/kaldi { }; + + kalker = callPackage ../tools/misc/kalker { }; + + kisslicer = callPackage ../tools/misc/kisslicer { }; + + klaus = with python3Packages; toPythonApplication klaus; + + klipper = callPackage ../servers/klipper { }; + + klog = qt5.callPackage ../applications/radio/klog { }; + + krapslog = callPackage ../tools/misc/krapslog { }; + + krill = callPackage ../servers/krill { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + lcdproc = callPackage ../servers/monitoring/lcdproc { }; + + languagetool = callPackage ../tools/text/languagetool { }; + + lepton = callPackage ../tools/graphics/lepton { }; + + lepton-eda = callPackage ../applications/science/electronics/lepton-eda { }; + + lexicon = callPackage ../tools/admin/lexicon { }; + + lief = callPackage ../development/libraries/lief { + python = python3; + }; + + libnbd = callPackage ../development/libraries/libnbd { }; + + libndtypes = callPackage ../development/libraries/libndtypes { }; + + libxnd = callPackage ../development/libraries/libxnd { }; + + lifeograph = callPackage ../applications/editors/lifeograph { }; + + link-grammar = callPackage ../tools/text/link-grammar { }; + + linuxptp = callPackage ../os-specific/linux/linuxptp { }; + + lisgd = callPackage ../tools/inputmethods/lisgd { }; + + lite = callPackage ../applications/editors/lite { }; + + lite-xl = callPackage ../applications/editors/lite-xl { + inherit (darwin.apple_sdk.frameworks) Foundation; + }; + + loadwatch = callPackage ../tools/system/loadwatch { }; + + loccount = callPackage ../development/tools/misc/loccount { }; + + long-shebang = callPackage ../misc/long-shebang {}; + + lowdown = callPackage ../tools/typesetting/lowdown { }; + + numatop = callPackage ../os-specific/linux/numatop { }; + + numworks-udev-rules = callPackage ../os-specific/linux/numworks-udev-rules { }; + + num-utils = callPackage ../tools/text/num-utils { }; + + iio-sensor-proxy = callPackage ../os-specific/linux/iio-sensor-proxy { }; + + ipvsadm = callPackage ../os-specific/linux/ipvsadm { }; + + ir-standard-fonts = callPackage ../data/fonts/ir-standard-fonts { }; + + kaggle = with python3Packages; toPythonApplication kaggle; + + lynis = callPackage ../tools/security/lynis { }; + + maigret = callPackage ../tools/security/maigret { }; + + maliit-framework = libsForQt5.callPackage ../applications/misc/maliit-framework { }; + + maliit-keyboard = libsForQt5.callPackage ../applications/misc/maliit-keyboard { }; + + mandown = callPackage ../tools/misc/mandown { }; + + mapcidr = callPackage ../tools/misc/mapcidr { }; + + mapproxy = callPackage ../applications/misc/mapproxy { }; + + marl = callPackage ../development/libraries/marl {}; + + marlin-calc = callPackage ../tools/misc/marlin-calc {}; + + masscan = callPackage ../tools/security/masscan { }; + + massren = callPackage ../tools/misc/massren { }; + + mat2 = with python3.pkgs; toPythonApplication mat2; + + maxcso = callPackage ../tools/archivers/maxcso {}; + + medusa = callPackage ../tools/security/medusa { }; + + megasync = libsForQt5.callPackage ../applications/misc/megasync { + ffmpeg = ffmpeg-full; + }; + + megacmd = callPackage ../applications/misc/megacmd { }; + + merriweather = callPackage ../data/fonts/merriweather { }; + + merriweather-sans = callPackage ../data/fonts/merriweather-sans { }; + + meson = callPackage ../development/tools/build-managers/meson { }; + + meson-tools = callPackage ../misc/meson-tools { }; + + metabase = callPackage ../servers/metabase { }; + + midicsv = callPackage ../tools/audio/midicsv { }; + + miniscript = callPackage ../applications/blockchains/miniscript { }; + + miniserve = callPackage ../tools/misc/miniserve { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + mkspiffs = callPackage ../tools/filesystems/mkspiffs { }; + + mkspiffs-presets = recurseIntoAttrs (callPackages ../tools/filesystems/mkspiffs/presets.nix { }); + + mlarchive2maildir = callPackage ../applications/networking/mailreaders/mlarchive2maildir { }; + + mmctl = callPackage ../tools/misc/mmctl { }; + + molly-brown = callPackage ../servers/gemini/molly-brown { }; + + monetdb = callPackage ../servers/sql/monetdb { }; + + monado = callPackage ../applications/graphics/monado { + inherit (gst_all_1) gstreamer gst-plugins-base; + }; + + mons = callPackage ../tools/misc/mons {}; + + monsoon = callPackage ../tools/security/monsoon {}; + + moodle-dl = callPackage ../tools/networking/moodle-dl { }; + + moonraker = callPackage ../servers/moonraker { }; + + morsel = callPackage ../tools/text/morsel {}; + + mousetweaks = callPackage ../applications/accessibility/mousetweaks { + inherit (xorg) libX11 libXtst libXfixes; + }; + + mp3blaster = callPackage ../applications/audio/mp3blaster { }; + + mp3cat = callPackage ../tools/audio/mp3cat {}; + + mp3fs = callPackage ../tools/filesystems/mp3fs { }; + + mpdas = callPackage ../tools/audio/mpdas { }; + + mpdcron = callPackage ../tools/audio/mpdcron { }; + + mpdris2 = callPackage ../tools/audio/mpdris2 { }; + + mpd-discord-rpc = callPackage ../tools/audio/mpd-discord-rpc { }; + + mpd-mpris = callPackage ../tools/audio/mpd-mpris { }; + + mpris-scrobbler = callPackage ../tools/audio/mpris-scrobbler { }; + + mq-cli = callPackage ../tools/system/mq-cli { }; + + mrkd = with python3Packages; toPythonApplication mrkd; + + nautilus-open-any-terminal = callPackage ../tools/misc/nautilus-open-any-terminal { }; + + n2n = callPackage ../tools/networking/n2n { }; + + nextdns = callPackage ../applications/networking/nextdns { }; + + ngadmin = callPackage ../applications/networking/ngadmin { }; + + nfdump = callPackage ../tools/networking/nfdump { }; + + nfstrace = callPackage ../tools/networking/nfstrace { }; + + nix-direnv = callPackage ../tools/misc/nix-direnv { }; + + nix-output-monitor = haskell.lib.compose.justStaticExecutables (haskellPackages.nix-output-monitor); + + nix-template = callPackage ../tools/package-management/nix-template { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + nodepy-runtime = with python3.pkgs; toPythonApplication nodepy-runtime; + + nixpkgs-pytools = with python3.pkgs; toPythonApplication nixpkgs-pytools; + + notemap = callPackage ../tools/networking/notemap { }; + + noteshrink = callPackage ../tools/misc/noteshrink { }; + + noti = callPackage ../tools/misc/noti { + inherit (darwin.apple_sdk.frameworks) Cocoa; + }; + + notify = callPackage ../tools/misc/notify { }; + + nrsc5 = callPackage ../applications/misc/nrsc5 { }; + + nsync = callPackage ../development/libraries/nsync { }; + + nwipe = callPackage ../tools/security/nwipe { }; + + nx2elf = callPackage ../tools/compression/nx2elf { }; + + nx-libs = callPackage ../tools/X11/nx-libs { }; + + nyx = callPackage ../tools/networking/nyx { }; + + oci-cli = callPackage ../tools/admin/oci-cli { }; + + ocrmypdf = with python3.pkgs; toPythonApplication ocrmypdf; + + ocrfeeder = callPackage ../applications/graphics/ocrfeeder { }; + + onboard = callPackage ../applications/misc/onboard { }; + + oneshot = callPackage ../tools/networking/oneshot { }; + + orjail = callPackage ../tools/security/orjail { }; + + online-judge-tools = with python3.pkgs; toPythonApplication online-judge-tools; + + xkbd = callPackage ../applications/misc/xkbd { }; + + libpsm2 = callPackage ../os-specific/linux/libpsm2 { }; + + optar = callPackage ../tools/graphics/optar {}; + + oni2 = callPackage ../applications/editors/oni2 { }; + + obinskit = callPackage ../applications/misc/obinskit {}; + + odoo = callPackage ../applications/finance/odoo {}; + + odafileconverter = libsForQt5.callPackage ../applications/graphics/odafileconverter {}; + + oil-buku = callPackage ../applications/misc/oil-buku { }; + + ossutil = callPackage ../tools/admin/ossutil {}; + + pastel = callPackage ../applications/misc/pastel { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + patdiff = callPackage ../tools/misc/patdiff { }; + + patool = with python3Packages; toPythonApplication patool; + + pbgopy = callPackage ../tools/text/pbgopy { }; + + pbzx = callPackage ../tools/compression/pbzx { }; + + pcb2gcode = callPackage ../tools/misc/pcb2gcode { }; + + persepolis = python3Packages.callPackage ../tools/networking/persepolis { + wrapQtAppsHook = qt5.wrapQtAppsHook; + }; + + pev = callPackage ../development/tools/analysis/pev { }; + + phd2 = callPackage ../applications/science/astronomy/phd2 { }; + + phoronix-test-suite = callPackage ../tools/misc/phoronix-test-suite { }; + + photon = callPackage ../tools/networking/photon { }; + + piglit = callPackage ../tools/graphics/piglit { }; + + playerctl = callPackage ../tools/audio/playerctl { }; + + pn = callPackage ../tools/text/pn { }; + + pocket-casts = callPackage ../applications/audio/pocket-casts { + electron = electron_14; + }; + + poweralertd = callPackage ../tools/misc/poweralertd { }; + + ps_mem = callPackage ../tools/system/ps_mem { }; + + pscale = callPackage ../development/tools/pscale { }; + + psstop = callPackage ../tools/system/psstop { }; + + precice = callPackage ../development/libraries/precice { }; + + precice-config-visualizer = callPackage ../tools/misc/precice-config-visualizer { }; + + pueue = callPackage ../applications/misc/pueue { + inherit (darwin.apple_sdk.frameworks) SystemConfiguration; + }; + + pixiecore = callPackage ../tools/networking/pixiecore {}; + + waitron = callPackage ../tools/networking/waitron {}; + + pyCA = python3Packages.callPackage ../applications/video/pyca {}; + + pyznap = python3Packages.callPackage ../tools/backup/pyznap {}; + + procs = callPackage ../tools/admin/procs { + inherit (darwin.apple_sdk.frameworks) Security; + inherit (darwin) libiconv; + }; + + procyon = callPackage ../tools/misc/procyon { }; + + profetch = callPackage ../tools/misc/profetch { }; + + psrecord = python3Packages.callPackage ../tools/misc/psrecord {}; + + reg = callPackage ../tools/virtualization/reg { }; + + river = callPackage ../applications/window-managers/river { }; + + rivercarro = callPackage ../applications/misc/rivercarro { }; + + rmapi = callPackage ../applications/misc/remarkable/rmapi { }; + + rmview = libsForQt5.callPackage ../applications/misc/remarkable/rmview { }; + + rm-improved = callPackage ../applications/misc/rm-improved { }; + + remarkable-mouse = python3Packages.callPackage ../applications/misc/remarkable/remarkable-mouse { }; + + restream = callPackage ../applications/misc/remarkable/restream { }; + + ropgadget = with python3Packages; toPythonApplication ropgadget; + + ryujinx = callPackage ../applications/emulators/ryujinx { }; + + scour = with python3Packages; toPythonApplication scour; + + s2png = callPackage ../tools/graphics/s2png { }; + + shab = callPackage ../tools/text/shab { }; + + shell-hist = callPackage ../tools/misc/shell-hist { }; + + shellhub-agent = callPackage ../applications/networking/shellhub-agent { }; + + sheesy-cli = callPackage ../tools/security/sheesy-cli { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + simdjson = callPackage ../development/libraries/simdjson { }; + + shipyard = callPackage ../tools/virtualization/shipyard { }; + + simg2img = callPackage ../tools/filesystems/simg2img { }; + + simplenes = callPackage ../applications/emulators/simplenes { }; + + snippetpixie = callPackage ../tools/text/snippetpixie { }; + + snowcat = callPackage ../tools/security/snowcat { }; + + socklog = callPackage ../tools/system/socklog { }; + + soju = callPackage ../applications/networking/soju { }; + + spacevim = callPackage ../applications/editors/spacevim { }; + + ssmsh = callPackage ../tools/admin/ssmsh { }; + + stacs = callPackage ../tools/security/stacs { }; + + stagit = callPackage ../development/tools/stagit { }; + + starboard = callPackage ../applications/networking/cluster/starboard { }; + + statserial = callPackage ../tools/misc/statserial { }; + + steampipe = callPackage ../tools/misc/steampipe { }; + + step-ca = callPackage ../tools/security/step-ca { + inherit (darwin.apple_sdk.frameworks) PCSC; + }; + + step-cli = callPackage ../tools/security/step-cli { }; + + string-machine = callPackage ../applications/audio/string-machine { }; + + stripe-cli = callPackage ../tools/admin/stripe-cli { }; + + bash-supergenpass = callPackage ../tools/security/bash-supergenpass { }; + + swappy = callPackage ../applications/misc/swappy { gtk = gtk3; }; + + sweep-visualizer = callPackage ../tools/misc/sweep-visualizer { }; + + swego = callPackage ../servers/swego { }; + + sydbox = callPackage ../os-specific/linux/sydbox { }; + + synth = callPackage ../tools/misc/synth { + inherit (darwin.apple_sdk.frameworks) AppKit Security; + }; + + syscall_limiter = callPackage ../os-specific/linux/syscall_limiter {}; + + skeema = callPackage ../tools/system/skeema {}; + + syslogng = callPackage ../tools/system/syslog-ng { }; + + syslogng_incubator = callPackage ../tools/system/syslog-ng-incubator { }; + + svt-av1 = callPackage ../tools/video/svt-av1 { }; + + inherit (callPackages ../servers/rainloop { }) + rainloop-community + rainloop-standard; + + rav1e = callPackage ../tools/video/rav1e { }; + + razergenie = libsForQt5.callPackage ../applications/misc/razergenie { }; + + replay-sorcery = callPackage ../tools/video/replay-sorcery { }; + + ripasso-cursive = callPackage ../tools/security/ripasso/cursive.nix { + inherit (darwin.apple_sdk.frameworks) AppKit Security; + }; + + roundcube = callPackage ../servers/roundcube { }; + + roundcubePlugins = dontRecurseIntoAttrs (callPackage ../servers/roundcube/plugins { }); + + routinator = callPackage ../servers/routinator { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + rsbep = callPackage ../tools/backup/rsbep { }; + + rsyslog = callPackage ../tools/system/rsyslog { + hadoop = null; # Currently Broken + libksi = null; # Currently Broken + }; + + rsyslog-light = rsyslog.override { + libkrb5 = null; + systemd = null; + jemalloc = null; + libmysqlclient = null; + postgresql = null; + libdbi = null; + net-snmp = null; + libuuid = null; + gnutls = null; + libgcrypt = null; + liblognorm = null; + openssl = null; + librelp = null; + libksi = null; + liblogging = null; + libnet = null; + hadoop = null; + rdkafka = null; + libmongo-client = null; + czmq = null; + rabbitmq-c = null; + hiredis = null; + libmaxminddb = null; + }; + + rtrtr = callPackage ../servers/rtrtr { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + xmlbeans = callPackage ../tools/misc/xmlbeans { }; + + xmlsort = perlPackages.XMLFilterSort; + + xmousepasteblock = callPackage ../tools/X11/xmousepasteblock { }; + + mcrypt = callPackage ../tools/misc/mcrypt { }; + + mongoaudit = callPackage ../tools/security/mongoaudit { }; + + mongodb-compass = callPackage ../tools/misc/mongodb-compass { }; + + mongodb-tools = callPackage ../tools/misc/mongodb-tools { }; + + moosefs = callPackage ../tools/filesystems/moosefs { }; + + mozlz4a = callPackage ../tools/compression/mozlz4a { }; + + msr-tools = callPackage ../os-specific/linux/msr-tools { }; + + mstflint = callPackage ../tools/misc/mstflint { }; + + mslink = callPackage ../tools/misc/mslink { }; + + mceinject = callPackage ../os-specific/linux/mceinject { }; + + mcelog = callPackage ../os-specific/linux/mcelog { + util-linux = util-linuxMinimal; + }; + + sqlint = callPackage ../development/tools/sqlint { }; + + antibody = callPackage ../shells/zsh/antibody { }; + + antigen = callPackage ../shells/zsh/antigen { }; + + apparix = callPackage ../tools/misc/apparix { }; + + appleseed = callPackage ../tools/graphics/appleseed { }; + + apple-music-electron = callPackage ../applications/audio/apple-music-electron { }; + + arping = callPackage ../tools/networking/arping { }; + + arpoison = callPackage ../tools/networking/arpoison { }; + + asciidoc = callPackage ../tools/typesetting/asciidoc { + inherit (python3.pkgs) matplotlib numpy aafigure recursivePthLoader; + enableStandardFeatures = false; + }; + + asciidoc-full = asciidoc.override { + inherit (python3.pkgs) pygments; + texlive = texlive.combine { inherit (texlive) scheme-minimal dvipng; }; + w3m = w3m-batch; + enableStandardFeatures = true; + }; + + asciidoc-full-with-plugins = asciidoc.override { + inherit (python3.pkgs) pygments; + texlive = texlive.combine { inherit (texlive) scheme-minimal dvipng; }; + w3m = w3m-batch; + enableStandardFeatures = true; + enableExtraPlugins = true; + }; + + asciidoctor = callPackage ../tools/typesetting/asciidoctor { }; + + asciidoctor-with-extensions = callPackage ../tools/typesetting/asciidoctor-with-extensions { }; + + asciidoctorj = callPackage ../tools/typesetting/asciidoctorj { }; + + asunder = callPackage ../applications/audio/asunder { }; + + autossh = callPackage ../tools/networking/autossh { }; + + assh = callPackage ../tools/networking/assh { }; + + b2sum = callPackage ../tools/security/b2sum { + inherit (llvmPackages) openmp; + }; + + bacula = callPackage ../tools/backup/bacula { + inherit (darwin.apple_sdk.frameworks) CoreFoundation IOKit; + }; + + bacon = callPackage ../development/tools/bacon { + inherit (darwin.apple_sdk.frameworks) CoreServices; + }; + + bareos = callPackage ../tools/backup/bareos { }; + + bats = callPackage ../development/interpreters/bats { }; + + bbe = callPackage ../tools/misc/bbe { }; + + bdsync = callPackage ../tools/backup/bdsync { }; + + beamerpresenter = libsForQt5.callPackage ../applications/office/beamerpresenter { }; + + beanstalkd = callPackage ../servers/beanstalkd { }; + + bee = callPackage ../applications/networking/bee/bee.nix { + version = "release"; + }; + + bee-unstable = bee.override { + version = "unstable"; + }; + + bee-clef = callPackage ../applications/networking/bee/bee-clef.nix { }; + + beets = callPackage ../tools/audio/beets { + pythonPackages = python3Packages; + }; + + beetsExternalPlugins = + let + pluginArgs = { + # This is a stripped down beets for testing of the external plugins. + beets = (beets.override { + enableAlternatives = false; + enableCopyArtifacts = false; + enableExtraFiles = false; + }).overrideAttrs (lib.const { + doInstallCheck = false; + }); + pythonPackages = python3Packages; + }; + in lib.recurseIntoAttrs { + alternatives = callPackage ../tools/audio/beets/plugins/alternatives.nix pluginArgs; + copyartifacts = callPackage ../tools/audio/beets/plugins/copyartifacts.nix pluginArgs; + extrafiles = callPackage ../tools/audio/beets/plugins/extrafiles.nix pluginArgs; + }; + + bento4 = callPackage ../tools/video/bento4 { }; + + bepasty = callPackage ../tools/misc/bepasty { }; + + bettercap = callPackage ../tools/security/bettercap { }; + + bfg-repo-cleaner = callPackage ../applications/version-management/git-and-tools/bfg-repo-cleaner { }; + + bfs = callPackage ../tools/system/bfs { }; + + bgs = callPackage ../tools/X11/bgs { }; + + bibclean = callPackage ../tools/typesetting/bibclean { }; + + biber = callPackage ../tools/typesetting/biber { }; + + biblatex-check = callPackage ../tools/typesetting/biblatex-check { }; + + binlore = callPackage ../development/tools/analysis/binlore { }; + + birdfont = callPackage ../tools/misc/birdfont { }; + xmlbird = callPackage ../tools/misc/birdfont/xmlbird.nix { stdenv = gccStdenv; }; + + blahtexml = callPackage ../tools/typesetting/tex/blahtexml { }; + + blueberry = callPackage ../tools/bluetooth/blueberry { }; + + blueman = callPackage ../tools/bluetooth/blueman { }; + + bmrsa = callPackage ../tools/security/bmrsa/11.nix { }; + + bogofilter = callPackage ../tools/misc/bogofilter { }; + + bomutils = callPackage ../tools/archivers/bomutils { }; + + boofuzz= callPackage ../tools/security/boofuzz { }; + + bsdbuild = callPackage ../development/tools/misc/bsdbuild { }; + + bsdiff = callPackage ../tools/compression/bsdiff { }; + + btar = callPackage ../tools/backup/btar { }; + + bud = callPackage ../tools/networking/bud { }; + + bump2version = python3Packages.callPackage ../applications/version-management/git-and-tools/bump2version { }; + + bumpver = callPackage ../applications/version-management/bumpver { }; + + bup = callPackage ../tools/backup/bup { }; + + bupstash = callPackage ../tools/backup/bupstash { }; + + burp = callPackage ../tools/backup/burp { }; + + buku = callPackage ../applications/misc/buku { }; + + bukut = callPackage ../applications/misc/bukut { }; + + byzanz = callPackage ../applications/video/byzanz {}; + + ori = callPackage ../tools/backup/ori { }; + + anydesk = callPackage ../applications/networking/remote/anydesk { }; + + anystyle-cli = callPackage ../tools/misc/anystyle-cli { }; + + atool = callPackage ../tools/archivers/atool { }; + + bash_unit = callPackage ../tools/misc/bash_unit { }; + + boltbrowser = callPackage ../tools/misc/boltbrowser { }; + + bsc = callPackage ../tools/compression/bsc { + inherit (llvmPackages) openmp; + }; + + bzip2 = callPackage ../tools/compression/bzip2 { }; + + bzip2_1_1 = callPackage ../tools/compression/bzip2/1_1.nix { }; + + cabextract = callPackage ../tools/archivers/cabextract { }; + + cadaver = callPackage ../tools/networking/cadaver { }; + + davix = callPackage ../tools/networking/davix { }; + + davix-copy = davix.override { enableThirdPartyCopy = true; }; + + cantata = libsForQt5.callPackage ../applications/audio/cantata { }; + + cantoolz = python3Packages.callPackage ../tools/networking/cantoolz { }; + + can-utils = callPackage ../os-specific/linux/can-utils { }; + + caudec = callPackage ../applications/audio/caudec { }; + + ccd2iso = callPackage ../tools/cd-dvd/ccd2iso { }; + + ccid = callPackage ../tools/security/ccid { }; + + ccrypt = callPackage ../tools/security/ccrypt { }; + + ccze = callPackage ../tools/misc/ccze { }; + + cdecl = callPackage ../development/tools/cdecl { }; + + cdi2iso = callPackage ../tools/cd-dvd/cdi2iso { }; + + cdimgtools = callPackage ../tools/cd-dvd/cdimgtools { }; + + cdpr = callPackage ../tools/networking/cdpr { }; + + cdrdao = callPackage ../tools/cd-dvd/cdrdao { }; + + cdrkit = callPackage ../tools/cd-dvd/cdrkit { }; + + cdrtools = callPackage ../tools/cd-dvd/cdrtools { + inherit (darwin.apple_sdk.frameworks) Carbon IOKit; + }; + + cemu = qt5.callPackage ../applications/science/math/cemu { + stdenv = gcc9Stdenv; + }; + + isolyzer = callPackage ../tools/cd-dvd/isolyzer { }; + + isomd5sum = callPackage ../tools/cd-dvd/isomd5sum { }; + + mdf2iso = callPackage ../tools/cd-dvd/mdf2iso { }; + + nrg2iso = callPackage ../tools/cd-dvd/nrg2iso { }; + + ceph-csi = callPackage ../tools/filesystems/ceph-csi { }; + + libceph = ceph.lib; + inherit (callPackages ../tools/filesystems/ceph { + boost = boost175.override { enablePython = true; python = python3; }; + lua = lua5_4; + }) + ceph + ceph-client; + ceph-dev = ceph; + + inherit (callPackages ../tools/security/certmgr { }) + certmgr certmgr-selfsigned; + + cfdg = callPackage ../tools/graphics/cfdg { }; + + cglm = callPackage ../development/libraries/cglm { }; + + cgreen = callPackage ../development/libraries/cgreen { }; + + checkinstall = callPackage ../tools/package-management/checkinstall { }; + + checkmake = callPackage ../development/tools/checkmake { }; + + chit = callPackage ../development/tools/chit { }; + + chkrootkit = callPackage ../tools/security/chkrootkit { }; + + chrony = callPackage ../tools/networking/chrony { }; + + chunkfs = callPackage ../tools/filesystems/chunkfs { }; + + chunksync = callPackage ../tools/backup/chunksync { }; + + cicero-tui = callPackage ../tools/misc/cicero-tui { }; + + cilium-cli = callPackage ../applications/networking/cluster/cilium { }; + + cipherscan = callPackage ../tools/security/cipherscan { + openssl = if stdenv.hostPlatform.system == "x86_64-linux" + then openssl-chacha + else openssl; + }; + + cjdns = callPackage ../tools/networking/cjdns { }; + cjdns-tools = callPackage ../tools/admin/cjdns-tools { }; + + cjson = callPackage ../development/libraries/cjson { }; + + cksfv = callPackage ../tools/networking/cksfv { }; + + clementine = libsForQt514.callPackage ../applications/audio/clementine { + gst_plugins = + with gst_all_1; [ gst-plugins-base gst-plugins-good gst-plugins-ugly gst-libav ]; + protobuf = protobuf3_14; + }; + + clementineUnfree = clementine.unfree; + + mellowplayer = libsForQt5.callPackage ../applications/audio/mellowplayer { }; + + ciopfs = callPackage ../tools/filesystems/ciopfs { }; + + circleci-cli = callPackage ../development/tools/misc/circleci-cli { }; + + circus = callPackage ../tools/networking/circus { }; + + citrix_workspace = citrix_workspace_21_12_0; + + inherit (callPackage ../applications/networking/remote/citrix-workspace { }) + citrix_workspace_20_04_0 + citrix_workspace_20_06_0 + citrix_workspace_20_09_0 + citrix_workspace_20_10_0 + citrix_workspace_20_12_0 + citrix_workspace_21_01_0 + citrix_workspace_21_03_0 + citrix_workspace_21_06_0 + citrix_workspace_21_08_0 + citrix_workspace_21_09_0 + citrix_workspace_21_12_0 + ; + + citra = libsForQt5.callPackage ../applications/emulators/citra { }; + + cmigemo = callPackage ../tools/text/cmigemo { }; + + cmst = libsForQt5.callPackage ../tools/networking/cmst { }; + + cmt = callPackage ../applications/audio/cmt {}; + + crlfuzz = callPackage ../tools/security/crlfuzz {}; + + hedgedoc = callPackage ../servers/web-apps/hedgedoc { }; + + colord = callPackage ../tools/misc/colord { }; + + colord-gtk = callPackage ../tools/misc/colord-gtk { }; + + colord-gtk4 = colord-gtk.override { withGtk4 = true; }; + + colordiff = callPackage ../tools/text/colordiff { }; + + connect = callPackage ../tools/networking/connect { }; + + conspy = callPackage ../os-specific/linux/conspy {}; + + inherit (callPackage ../tools/networking/connman {}) + connman + connmanFull + connmanMinimal + ; + + connman-gtk = callPackage ../tools/networking/connman/connman-gtk { }; + + connman-ncurses = callPackage ../tools/networking/connman/connman-ncurses { }; + + connman-notify = callPackage ../tools/networking/connman/connman-notify { }; + + connman_dmenu = callPackage ../tools/networking/connman/connman_dmenu { }; + + convertlit = callPackage ../tools/text/convertlit { }; + + collectd = callPackage ../tools/system/collectd { + libsigrok = libsigrok_0_3; # not compatible with >= 0.4.0 yet + jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + inherit (darwin.apple_sdk.frameworks) IOKit; + }; + + collectd-data = callPackage ../tools/system/collectd/data.nix { }; + + colormake = callPackage ../development/tools/build-managers/colormake { }; + + cpuminer = callPackage ../tools/misc/cpuminer { }; + + crabz = callPackage ../tools/compression/crabz { + inherit (darwin.apple_sdk.frameworks) CoreFoundation Security; + }; + + cryptpad = callPackage ../servers/web-apps/cryptpad { + nodejs = nodejs-12_x; + }; + + ethash = callPackage ../development/libraries/ethash { }; + + ethminer = callPackage ../tools/misc/ethminer { cudaSupport = config.cudaSupport or true; }; + ethminer-cuda = ethminer.override { cudaSupport = true; }; + ethminer-free = ethminer.override { cudaSupport = false; }; + + cuetools = callPackage ../tools/cd-dvd/cuetools { }; + + u3-tool = callPackage ../tools/filesystems/u3-tool { }; + + unifdef = callPackage ../development/tools/misc/unifdef { }; + + uniffi-bindgen = callPackage ../development/tools/uniffi-bindgen { }; + + unify = with python3Packages; toPythonApplication unify; + + unionfs-fuse = callPackage ../tools/filesystems/unionfs-fuse { }; + + unparam = callPackage ../tools/misc/unparam { }; + + inherit (nodePackages) uppy-companion; + + usb-modeswitch = callPackage ../development/tools/misc/usb-modeswitch { }; + usb-modeswitch-data = callPackage ../development/tools/misc/usb-modeswitch/data.nix { }; + + usbsdmux = callPackage ../development/tools/misc/usbsdmux { }; + + usbview = callPackage ../tools/misc/usbview { }; + + uwuify = callPackage ../tools/misc/uwuify { }; + + anthy = callPackage ../tools/inputmethods/anthy { }; + + evdevremapkeys = callPackage ../tools/inputmethods/evdevremapkeys { }; + + evscript = callPackage ../tools/inputmethods/evscript { }; + + gebaar-libinput = callPackage ../tools/inputmethods/gebaar-libinput { }; + + kime = callPackage ../tools/inputmethods/kime { }; + + libpinyin = callPackage ../development/libraries/libpinyin { }; + + inherit (import ../development/libraries/libsbsms pkgs) + libsbsms + libsbsms_2_0_2 + libsbsms_2_3_0 + ; + + libskk = callPackage ../development/libraries/libskk { + inherit (gnome) gnome-common; + }; + + m17n_db = callPackage ../tools/inputmethods/m17n-db { }; + + m17n_lib = callPackage ../tools/inputmethods/m17n-lib { }; + + libotf = callPackage ../tools/inputmethods/m17n-lib/otf.nix { + inherit (xorg) libXaw; + }; + + netevent = callPackage ../tools/inputmethods/netevent { }; + + netplan = callPackage ../tools/admin/netplan { }; + + skktools = callPackage ../tools/inputmethods/skk/skktools { }; + skk-dicts = callPackage ../tools/inputmethods/skk/skk-dicts { }; + + libkkc-data = callPackage ../data/misc/libkkc-data { }; + + libkkc = callPackage ../tools/inputmethods/libkkc { }; + + ibus = callPackage ../tools/inputmethods/ibus { }; + + ibus-qt = callPackage ../tools/inputmethods/ibus/ibus-qt.nix { }; + + ibus-engines = recurseIntoAttrs { + anthy = callPackage ../tools/inputmethods/ibus-engines/ibus-anthy { }; + + bamboo = callPackage ../tools/inputmethods/ibus-engines/ibus-bamboo { }; + + hangul = callPackage ../tools/inputmethods/ibus-engines/ibus-hangul { }; + + kkc = callPackage ../tools/inputmethods/ibus-engines/ibus-kkc { }; + + libpinyin = callPackage ../tools/inputmethods/ibus-engines/ibus-libpinyin { }; + + libthai = callPackage ../tools/inputmethods/ibus-engines/ibus-libthai { }; + + m17n = callPackage ../tools/inputmethods/ibus-engines/ibus-m17n { }; + + mozc = callPackage ../tools/inputmethods/ibus-engines/ibus-mozc { + stdenv = clangStdenv; + protobuf = pkgs.protobuf3_8.overrideDerivation (_: { stdenv = clangStdenv; }); + }; + + rime = callPackage ../tools/inputmethods/ibus-engines/ibus-rime { }; + + table = callPackage ../tools/inputmethods/ibus-engines/ibus-table { }; + + table-chinese = callPackage ../tools/inputmethods/ibus-engines/ibus-table-chinese { + ibus-table = ibus-engines.table; + }; + + table-others = callPackage ../tools/inputmethods/ibus-engines/ibus-table-others { + ibus-table = ibus-engines.table; + }; + + uniemoji = callPackage ../tools/inputmethods/ibus-engines/ibus-uniemoji { }; + + typing-booster-unwrapped = callPackage ../tools/inputmethods/ibus-engines/ibus-typing-booster { }; + + typing-booster = callPackage ../tools/inputmethods/ibus-engines/ibus-typing-booster/wrapper.nix { + typing-booster = ibus-engines.typing-booster-unwrapped; + }; + }; + + ibus-with-plugins = callPackage ../tools/inputmethods/ibus/wrapper.nix { }; + + ibus-theme-tools = callPackage ../tools/misc/ibus-theme-tools { }; + + interception-tools = callPackage ../tools/inputmethods/interception-tools { }; + interception-tools-plugins = { + caps2esc = callPackage ../tools/inputmethods/interception-tools/caps2esc.nix { }; + dual-function-keys = callPackage ../tools/inputmethods/interception-tools/dual-function-keys.nix { }; + }; + + age = callPackage ../tools/security/age { }; + + agebox = callPackage ../tools/security/agebox { }; + + age-plugin-yubikey = callPackage ../tools/security/age-plugin-yubikey { + inherit (pkgs.darwin.apple_sdk.frameworks) PCSC; + }; + + artim-dark = callPackage ../data/themes/artim-dark {}; + + bore = callPackage ../tools/networking/bore { + inherit (darwin) Libsystem; + inherit (darwin.apple_sdk.frameworks) SystemConfiguration; + }; + + brotli = callPackage ../tools/compression/brotli { }; + + biodiff = callPackage ../development/tools/biodiff { }; + + biosdevname = callPackage ../tools/networking/biosdevname { }; + + bluetooth_battery = python3Packages.callPackage ../applications/misc/bluetooth_battery { }; + + calyx-vpn = libsForQt5.callPackage ../tools/networking/bitmask-vpn { + provider = "calyx"; + inherit (darwin.apple_sdk.frameworks) CoreFoundation Security; + }; + + code-browser-qt = libsForQt5.callPackage ../applications/editors/code-browser { withQt = true; }; + code-browser-gtk2 = callPackage ../applications/editors/code-browser { withGtk2 = true; }; + code-browser-gtk = callPackage ../applications/editors/code-browser { withGtk3 = true; }; + + c14 = callPackage ../applications/networking/c14 { }; + + certstrap = callPackage ../tools/security/certstrap { }; + + cfssl = callPackage ../tools/security/cfssl { }; + + chafa = callPackage ../tools/misc/chafa { + inherit (darwin.apple_sdk.frameworks) Foundation; + }; + + changetower = callPackage ../tools/networking/changetower { }; + + checkbashisms = callPackage ../development/tools/misc/checkbashisms { }; + + checkmate = callPackage ../development/tools/checkmate { }; + + circup = callPackage ../development/tools/circup { }; + + civetweb = callPackage ../development/libraries/civetweb { }; + + ckb-next = libsForQt5.callPackage ../tools/misc/ckb-next { }; + + clamav = callPackage ../tools/security/clamav { + inherit (darwin.apple_sdk.frameworks) Foundation; + }; + + clex = callPackage ../tools/misc/clex { }; + + client-ip-echo = callPackage ../servers/misc/client-ip-echo { }; + + cloc = callPackage ../tools/misc/cloc { }; + + cloog = callPackage ../development/libraries/cloog { + isl = isl_0_14; + }; + + cloog_0_18_0 = callPackage ../development/libraries/cloog/0.18.0.nix { + isl = isl_0_11; + }; + + cloogppl = callPackage ../development/libraries/cloog-ppl { }; + + cloud-utils = callPackage ../tools/misc/cloud-utils { }; + + cloudlist = callPackage ../tools/security/cloudlist { }; + + cobalt = callPackage ../applications/misc/cobalt { + inherit (darwin.apple_sdk.frameworks) CoreServices; + }; + + cobang = python3Packages.callPackage ../applications/misc/cobang { + gst-plugins-good = gst_all_1.gst-plugins-good.override { gtkSupport = true; }; + }; + + cocoapods = callPackage ../development/mobile/cocoapods { }; + + cocoapods-beta = lowPrio (callPackage ../development/mobile/cocoapods { beta = true; }); + + cocom = callPackage ../tools/networking/cocom { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + codebraid = callPackage ../tools/misc/codebraid { }; + + compass = callPackage ../development/tools/compass { }; + + cone = callPackage ../development/compilers/cone { + llvmPackages = llvmPackages_7; + }; + + conda = callPackage ../tools/package-management/conda { }; + + console-bridge = callPackage ../development/libraries/console-bridge { }; + + convbin = callPackage ../tools/misc/convbin { }; + + convimg = callPackage ../tools/misc/convimg { }; + + convfont = callPackage ../tools/misc/convfont { }; + + convmv = callPackage ../tools/misc/convmv { }; + + convoy = callPackage ../tools/filesystems/convoy { }; + + cpcfs = callPackage ../tools/filesystems/cpcfs { }; + + coreutils = callPackage ../tools/misc/coreutils { }; + coreutils-full = coreutils.override { minimal = false; }; + coreutils-prefixed = coreutils.override { withPrefix = true; singleBinary = false; }; + + corkscrew = callPackage ../tools/networking/corkscrew { }; + + cowpatty = callPackage ../tools/security/cowpatty { }; + + cpio = callPackage ../tools/archivers/cpio { }; + + cpufetch = callPackage ../tools/misc/cpufetch { }; + + crackxls = callPackage ../tools/security/crackxls { }; + + crd2pulumi = callPackage ../development/tools/crd2pulumi { }; + + create-cycle-app = nodePackages.create-cycle-app; + + createrepo_c = callPackage ../tools/package-management/createrepo_c { }; + + cromfs = callPackage ../tools/archivers/cromfs { }; + + cron = callPackage ../tools/system/cron { }; + + snooze = callPackage ../tools/system/snooze { }; + + cudaPackages = recurseIntoAttrs (callPackage ../development/compilers/cudatoolkit {}); + inherit (cudaPackages) + cudatoolkit_10 + cudatoolkit_10_0 + cudatoolkit_10_1 + cudatoolkit_10_2 + cudatoolkit_11 + cudatoolkit_11_0 + cudatoolkit_11_1 + cudatoolkit_11_2 + cudatoolkit_11_3 + cudatoolkit_11_4 + cudatoolkit_11_5 + cudatoolkit_11_6; + + cudatoolkit = cudatoolkit_10; + + cudnnPackages = callPackages ../development/libraries/science/math/cudnn { }; + inherit (cudnnPackages) + cudnn_7_4_cudatoolkit_10_0 + cudnn_7_6_cudatoolkit_10_2 + cudnn_7_6_cudatoolkit_10 + cudnn_8_1_cudatoolkit_11_0 + cudnn_8_1_cudatoolkit_11_1 + cudnn_8_1_cudatoolkit_11_2 + cudnn_8_1_cudatoolkit_11 + cudnn_8_3_cudatoolkit_11_0 + cudnn_8_3_cudatoolkit_11_1 + cudnn_8_3_cudatoolkit_11_2 + cudnn_8_3_cudatoolkit_11_3 + cudnn_8_3_cudatoolkit_11_4 + cudnn_8_3_cudatoolkit_11_5 + cudnn_8_3_cudatoolkit_11; + + cudnn = cudnn_7_6_cudatoolkit_10; + + cutensorPackages = callPackages ../development/libraries/science/math/cutensor { }; + inherit (cutensorPackages) + cutensor_cudatoolkit_10 + cutensor_cudatoolkit_10_1 + cutensor_cudatoolkit_10_2 + cutensor_cudatoolkit_11 + cutensor_cudatoolkit_11_0 + cutensor_cudatoolkit_11_1 + cutensor_cudatoolkit_11_2 + cutensor_cudatoolkit_11_3 + cutensor_cudatoolkit_11_4; + + cutensor = cutensor_cudatoolkit_10; + + curie = callPackage ../data/fonts/curie { }; + + curlFull = curl.override { + ldapSupport = true; + gsaslSupport = true; + rtmpSupport = true; + pslSupport = true; + }; + + curlHTTP3 = curl.override { + openssl = quictls; + http3Support = true; + }; + + curl = curlMinimal.override ({ + idnSupport = true; + zstdSupport = true; + } // lib.optionalAttrs (!stdenv.hostPlatform.isStatic) { + gssSupport = true; + brotliSupport = true; + }); + + curlMinimal = callPackage ../tools/networking/curl { }; + + curl_unix_socket = callPackage ../tools/networking/curl-unix-socket { }; + + curlie = callPackage ../tools/networking/curlie { }; + + cunit = callPackage ../tools/misc/cunit { }; + bcunit = callPackage ../tools/misc/bcunit { }; + + curlftpfs = callPackage ../tools/filesystems/curlftpfs { }; + + tcp-cutter = callPackage ../tools/networking/tcp-cutter { }; + + cwebbin = callPackage ../development/tools/misc/cwebbin { }; + + cve-bin-tool = python3Packages.callPackage ../tools/security/cve-bin-tool { }; + + cvs-fast-export = callPackage ../applications/version-management/cvs-fast-export { }; + + dadadodo = callPackage ../tools/text/dadadodo { }; + + daemon = callPackage ../tools/system/daemon { }; + + daemonize = callPackage ../tools/system/daemonize { }; + + danger-gitlab = callPackage ../applications/version-management/danger-gitlab { }; + + daq = callPackage ../applications/networking/ids/daq { }; + + dar = callPackage ../tools/backup/dar { }; + + darkhttpd = callPackage ../servers/http/darkhttpd { }; + + darkstat = callPackage ../tools/networking/darkstat { }; + + dav1d = callPackage ../development/libraries/dav1d { }; + + davfs2 = callPackage ../tools/filesystems/davfs2 { }; + + dbeaver = callPackage ../applications/misc/dbeaver { + jdk = jdk11; # AlgorithmId.md5WithRSAEncryption_oid was removed in jdk15 + + # TODO: remove once maven uses JDK 11 + # error: org/eclipse/tycho/core/p2/P2ArtifactRepositoryLayout has been compiled by a more recent version of the Java Runtime (class file version 55.0), this version of the Java Runtime only recognizes class file versions up to 52.0 + maven = maven.override { + jdk = jdk11; + }; + }; + + dbench = callPackage ../development/tools/misc/dbench { }; + + dclxvi = callPackage ../development/libraries/dclxvi { }; + + dconf2nix = callPackage ../development/tools/haskell/dconf2nix { }; + + dcraw = callPackage ../tools/graphics/dcraw { }; + + dcs = callPackage ../tools/text/dcs { }; + + dcfldd = callPackage ../tools/system/dcfldd { }; + + debianutils = callPackage ../tools/misc/debianutils { }; + + debian-devscripts = callPackage ../tools/misc/debian-devscripts { }; + + debootstrap = callPackage ../tools/misc/debootstrap { }; + + debugedit = callPackage ../development/tools/misc/debugedit { }; + + deer = callPackage ../shells/zsh/zsh-deer { }; + + delta = callPackage ../applications/version-management/git-and-tools/delta { + inherit (darwin.apple_sdk.frameworks) DiskArbitration Foundation Security; + }; + + deno = callPackage ../development/web/deno { + inherit (darwin) libobjc; + inherit (darwin.apple_sdk.frameworks) + Security CoreServices Metal Foundation QuartzCore; + }; + + detox = callPackage ../tools/misc/detox { }; + + devilspie2 = callPackage ../applications/misc/devilspie2 { + gtk = gtk3; + }; + + dex = callPackage ../tools/X11/dex { }; + + ddccontrol = callPackage ../tools/misc/ddccontrol { }; + + ddccontrol-db = callPackage ../data/misc/ddccontrol-db { }; + + ddcui = libsForQt5.callPackage ../applications/misc/ddcui { }; + + ddcutil = callPackage ../tools/misc/ddcutil { }; + + ddclient = callPackage ../tools/networking/ddclient { }; + + dd_rescue = callPackage ../tools/system/dd_rescue { }; + + ddrescue = callPackage ../tools/system/ddrescue { }; + + ddrescueview = callPackage ../tools/system/ddrescueview { }; + + ddrutility = callPackage ../tools/system/ddrutility { }; + + deluge-2_x = callPackage ../applications/networking/p2p/deluge { + pythonPackages = python3Packages; + libtorrent-rasterbar = libtorrent-rasterbar-1_2_x.override { python = python3; }; + }; + deluge = deluge-2_x; + + desktop-file-utils = callPackage ../tools/misc/desktop-file-utils { }; + + dfc = callPackage ../tools/system/dfc { }; + + dev86 = callPackage ../development/compilers/dev86 { }; + + diskrsync = callPackage ../tools/backup/diskrsync { }; + + djbdns = callPackage ../tools/networking/djbdns { }; + + dnscrypt-proxy2 = callPackage ../tools/networking/dnscrypt-proxy2 { }; + + dnscrypt-wrapper = callPackage ../tools/networking/dnscrypt-wrapper { }; + + dnscontrol = callPackage ../applications/networking/dnscontrol { }; + + dnsenum = callPackage ../tools/security/dnsenum { }; + + dnsmasq = callPackage ../tools/networking/dnsmasq { }; + + dnspeep = callPackage ../tools/security/dnspeep { }; + + dnsproxy = callPackage ../tools/networking/dnsproxy { }; + + dnsperf = callPackage ../tools/networking/dnsperf { }; + + dnsrecon = callPackage ../tools/security/dnsrecon { }; + + dnstop = callPackage ../tools/networking/dnstop { }; + + dnsviz = python3Packages.callPackage ../tools/networking/dnsviz { }; + + dnsx = callPackage ../tools/security/dnsx { }; + + dhcp = callPackage ../tools/networking/dhcp { }; + + dhcpdump = callPackage ../tools/networking/dhcpdump { }; + + dhcpcd = callPackage ../tools/networking/dhcpcd { }; + + dhcping = callPackage ../tools/networking/dhcping { }; + + di = callPackage ../tools/system/di { }; + + diction = callPackage ../tools/text/diction { }; + + diff-so-fancy = callPackage ../applications/version-management/git-and-tools/diff-so-fancy { }; + + diffoscopeMinimal = callPackage ../tools/misc/diffoscope { + jdk = jdk8; + }; + + diffoscope = diffoscopeMinimal.override { + enableBloat = !stdenv.isDarwin; + }; + + diffr = callPackage ../tools/text/diffr { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + diffstat = callPackage ../tools/text/diffstat { }; + + difftastic = callPackage ../tools/text/difftastic { }; + + diffutils = callPackage ../tools/text/diffutils { }; + + dir2opus = callPackage ../tools/audio/dir2opus { + inherit (python2Packages) mutagen python wrapPython; + }; + + dirdiff = callPackage ../tools/text/dirdiff { + tcl = tcl-8_5; + tk = tk-8_5; + }; + + picoscope = callPackage ../applications/science/electronics/picoscope { }; + + picotts = callPackage ../tools/audio/picotts { }; + + wgetpaste = callPackage ../tools/text/wgetpaste { }; + + dirmngr = callPackage ../tools/security/dirmngr { }; + + dismap = callPackage ../tools/security/dismap { }; + + dirvish = callPackage ../tools/backup/dirvish { }; + + disper = callPackage ../tools/misc/disper { }; + + dleyna-connector-dbus = callPackage ../development/libraries/dleyna-connector-dbus { }; + + dleyna-core = callPackage ../development/libraries/dleyna-core { }; + + dleyna-renderer = callPackage ../development/libraries/dleyna-renderer { }; + + dleyna-server = callPackage ../development/libraries/dleyna-server { }; + + dmd = callPackage ../development/compilers/dmd { + inherit (darwin.apple_sdk.frameworks) Foundation; + }; + + dmg2img = callPackage ../tools/misc/dmg2img { }; + + docbook2odf = callPackage ../tools/typesetting/docbook2odf { }; + + doas = callPackage ../tools/security/doas { }; + + docbook2x = callPackage ../tools/typesetting/docbook2x { }; + + docbook2mdoc = callPackage ../tools/misc/docbook2mdoc { }; + + docear = callPackage ../applications/office/docear { }; + + dockbarx = callPackage ../applications/misc/dockbarx { }; + + dog = callPackage ../tools/system/dog { }; + + dogdns = callPackage ../tools/networking/dogdns { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + dosfstools = callPackage ../tools/filesystems/dosfstools { }; + + dotnetfx35 = callPackage ../development/libraries/dotnetfx35 { }; + + dotnetfx40 = callPackage ../development/libraries/dotnetfx40 { }; + + dolphin-emu = callPackage ../applications/emulators/dolphin-emu { }; + dolphin-emu-beta = qt5.callPackage ../applications/emulators/dolphin-emu/master.nix { + inherit (darwin.apple_sdk.frameworks) CoreBluetooth ForceFeedback IOKit OpenGL; + }; + dolphin-emu-primehack = qt5.callPackage ../applications/emulators/dolphin-emu/primehack.nix { + inherit (darwin.apple_sdk.frameworks) CoreBluetooth ForceFeedback IOKit OpenGL; + }; + + domoticz = callPackage ../servers/domoticz { }; + + doomseeker = qt5.callPackage ../applications/misc/doomseeker { }; + + dorkscout = callPackage ../tools/security/dorkscout { }; + + downonspot = callPackage ../applications/misc/downonspot { }; + + sl1-to-photon = python3Packages.callPackage ../applications/misc/sl1-to-photon { }; + + slade = callPackage ../applications/misc/slade { + wxGTK = wxGTK30; + }; + + sladeUnstable = callPackage ../applications/misc/slade/git.nix { + wxGTK = wxGTK30; + }; + + drive = callPackage ../applications/networking/drive { }; + + driftnet = callPackage ../tools/networking/driftnet {}; + + driftctl = callPackage ../applications/networking/cluster/driftctl { }; + + drill = callPackage ../tools/networking/drill { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + drone = callPackage ../development/tools/continuous-integration/drone { }; + drone-oss = callPackage ../development/tools/continuous-integration/drone { + enableUnfree = false; + }; + + drone-cli = callPackage ../development/tools/continuous-integration/drone-cli { }; + + drone-runner-exec = callPackage ../development/tools/continuous-integration/drone-runner-exec { }; + + drone-runner-docker = callPackage ../development/tools/continuous-integration/drone-runner-docker { }; + + dropbear = callPackage ../tools/networking/dropbear { }; + + dsview = libsForQt5.callPackage ../applications/science/electronics/dsview { }; + + dtach = callPackage ../tools/misc/dtach { }; + + dtc = callPackage ../development/compilers/dtc { }; + + dt-schema = python3Packages.callPackage ../development/tools/dt-schema { }; + + dub = callPackage ../development/tools/build-managers/dub { }; + + duc = callPackage ../tools/misc/duc { }; + + duff = callPackage ../tools/filesystems/duff { + autoreconfHook = buildPackages.autoreconfHook269; + }; + + dumptorrent = callPackage ../tools/misc/dumptorrent { }; + + duo-unix = callPackage ../tools/security/duo-unix { }; + + duplicacy = callPackage ../tools/backup/duplicacy { }; + + duplicati = callPackage ../tools/backup/duplicati { }; + + duplicity = callPackage ../tools/backup/duplicity { }; + + duply = callPackage ../tools/backup/duply { }; + + dvd-vr = callPackage ../tools/cd-dvd/dvd-vr { }; + + dvdisaster = callPackage ../tools/cd-dvd/dvdisaster { }; + + dvdplusrwtools = callPackage ../tools/cd-dvd/dvd+rw-tools { }; + + dvgrab = callPackage ../tools/video/dvgrab { }; + + dvtm = callPackage ../tools/misc/dvtm { + # if you prefer a custom config, write the config.h in dvtm.config.h + # and enable + # customConfig = builtins.readFile ./dvtm.config.h; + }; + + dvtm-unstable = callPackage ../tools/misc/dvtm/unstable.nix {}; + + ecmtools = callPackage ../tools/cd-dvd/ecm-tools { }; + + e2tools = callPackage ../tools/filesystems/e2tools { }; + + e2fsprogs = callPackage ../tools/filesystems/e2fsprogs { }; + + easyrsa = callPackage ../tools/networking/easyrsa { }; + + easyrsa2 = callPackage ../tools/networking/easyrsa/2.x.nix { }; + + easysnap = callPackage ../tools/backup/easysnap { }; + + ebook_tools = callPackage ../tools/text/ebook-tools { }; + + ecryptfs = callPackage ../tools/security/ecryptfs { }; + + ecryptfs-helper = callPackage ../tools/security/ecryptfs/helper.nix { }; + + edgetpu-compiler = callPackage ../development/libraries/science/robotics/edgetpu-compiler { }; + + edid-decode = callPackage ../tools/misc/edid-decode { }; + + edid-generator = callPackage ../tools/misc/edid-generator { }; + + edir = callPackage ../tools/misc/edir { }; + + editres = callPackage ../tools/graphics/editres { }; + + edit = callPackage ../applications/editors/edit { }; + + edk2 = callPackage ../development/compilers/edk2 { }; + + eff = callPackage ../development/interpreters/eff { }; + + eflite = callPackage ../applications/audio/eflite {}; + + eid-mw = callPackage ../tools/security/eid-mw { + autoreconfHook = buildPackages.autoreconfHook269; + }; + + emote = callPackage ../tools/inputmethods/emote { }; + + engauge-digitizer = libsForQt5.callPackage ../applications/science/math/engauge-digitizer { }; + + epubcheck = callPackage ../tools/text/epubcheck { }; + + luckybackup = libsForQt5.callPackage ../tools/backup/luckybackup { + ssh = openssh; + }; + + kramdown-asciidoc = callPackage ../tools/typesetting/kramdown-asciidoc { }; + + lychee = callPackage ../tools/networking/lychee { }; + + magic-vlsi = callPackage ../applications/science/electronics/magic-vlsi { }; + + mcrcon = callPackage ../tools/networking/mcrcon {}; + + mozwire = callPackage ../tools/networking/mozwire { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + pax = callPackage ../tools/archivers/pax { + inherit (pkgs.darwin.apple_sdk.libs) utmp; + }; + + rage = callPackage ../tools/security/rage { + inherit (darwin.apple_sdk.frameworks) Foundation Security; + }; + + rar2fs = callPackage ../tools/filesystems/rar2fs { }; + + s9fes = callPackage ../development/interpreters/s9fes { }; + + s-tar = callPackage ../tools/archivers/s-tar {}; + + solo2-cli = callPackage ../tools/security/solo2-cli { + inherit (darwin.apple_sdk.frameworks) PCSC IOKit CoreFoundation AppKit; + }; + + sonota = callPackage ../tools/misc/sonota { }; + + sonobuoy = callPackage ../applications/networking/cluster/sonobuoy { }; + + soupault = callPackage ../tools/typesetting/soupault { }; + + strawberry = libsForQt5.callPackage ../applications/audio/strawberry { }; + + schildichat-desktop = callPackage ../applications/networking/instant-messengers/schildichat/schildichat-desktop.nix { + inherit (darwin.apple_sdk.frameworks) Security AppKit CoreServices; + electron = electron_15; + }; + schildichat-desktop-wayland = writeScriptBin "schildichat-desktop" '' + #!/bin/sh + NIXOS_OZONE_WL=1 exec ${schildichat-desktop}/bin/schildichat-desktop "$@" + ''; + + schildichat-web = callPackage ../applications/networking/instant-messengers/schildichat/schildichat-web.nix { + conf = config.schildichat-web.conf or {}; + }; + + tealdeer = callPackage ../tools/misc/tealdeer { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + teamocil = callPackage ../tools/misc/teamocil { }; + + the-way = callPackage ../development/tools/the-way { + inherit (darwin.apple_sdk.frameworks) AppKit Security; + }; + + timeline = callPackage ../applications/office/timeline { }; + + tsm-client = callPackage ../tools/backup/tsm-client { }; + tsm-client-withGui = callPackage ../tools/backup/tsm-client { enableGui = true; }; + + tracker = callPackage ../development/libraries/tracker { }; + + tracker-miners = callPackage ../development/libraries/tracker-miners { }; + + tracy = callPackage ../development/tools/tracy { + inherit (darwin.apple_sdk.frameworks) Carbon AppKit; + }; + + tridactyl-native = callPackage ../tools/networking/tridactyl-native { }; + + trivy = callPackage ../tools/admin/trivy { }; + + trompeloeil = callPackage ../development/libraries/trompeloeil { }; + + updog = callPackage ../tools/networking/updog { }; + + uudeview = callPackage ../tools/misc/uudeview { }; + + uusi = haskell.lib.compose.justStaticExecutables haskellPackages.uusi; + + uutils-coreutils = callPackage ../tools/misc/uutils-coreutils { + inherit (python3Packages) sphinx; + inherit (darwin.apple_sdk.frameworks) Security; + }; + + volctl = callPackage ../tools/audio/volctl { }; + + volk = callPackage ../development/libraries/volk { }; + + vorta = libsForQt5.callPackage ../applications/backup/vorta { }; + + vowpal-wabbit = callPackage ../applications/science/machine-learning/vowpal-wabbit { }; + + utahfs = callPackage ../applications/networking/utahfs { + buildGoPackage = buildGo116Package; + }; + + wakeonlan = callPackage ../tools/networking/wakeonlan { }; + + wallutils = callPackage ../tools/graphics/wallutils { }; + + worker-build = callPackage ../development/tools/worker-build { }; + + wrangler = callPackage ../development/tools/wrangler { + inherit (darwin.apple_sdk.frameworks) CoreFoundation CoreServices Security; + }; + + snowflake = callPackage ../tools/networking/snowflake { }; + + wsl-open = callPackage ../tools/misc/wsl-open { }; + + xkcdpass = with python3Packages; toPythonApplication xkcdpass; + + xjobs = callPackage ../tools/misc/xjobs { }; + + xob = callPackage ../tools/X11/xob { }; + + z-lua = callPackage ../tools/misc/z-lua { }; + + zabbix-cli = callPackage ../tools/misc/zabbix-cli { }; + + zabbixctl = callPackage ../tools/misc/zabbixctl { }; + + zeek = callPackage ../applications/networking/ids/zeek { }; + + zoekt = callPackage ../tools/text/zoekt { }; + + zoxide = callPackage ../tools/misc/zoxide { }; + + zzuf = callPackage ../tools/security/zzuf { }; + + ### DEVELOPMENT / EMSCRIPTEN + + buildEmscriptenPackage = callPackage ../development/em-modules/generic { }; + + carp = callPackage ../development/compilers/carp { }; + + cholmod-extra = callPackage ../development/libraries/science/math/cholmod-extra { }; + + choose = callPackage ../tools/text/choose { }; + + emscripten = callPackage ../development/compilers/emscripten { + llvmPackages = llvmPackages_13; + }; + + emscriptenPackages = recurseIntoAttrs (callPackage ./emscripten-packages.nix { }); + + emscriptenStdenv = stdenv // { mkDerivation = buildEmscriptenPackage; }; + + efibootmgr = callPackage ../tools/system/efibootmgr { }; + + efivar = callPackage ../tools/system/efivar { }; + + evemu = callPackage ../tools/system/evemu { }; + + # The latest version used by elasticsearch, logstash, kibana and the the beats from elastic. + # When updating make sure to update all plugins or they will break! + elk6Version = "6.8.21"; + elk7Version = "7.16.1"; + + elasticsearch6 = callPackage ../servers/search/elasticsearch/6.x.nix { + util-linux = util-linuxMinimal; + jre_headless = jre8_headless; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + elasticsearch6-oss = callPackage ../servers/search/elasticsearch/6.x.nix { + enableUnfree = false; + util-linux = util-linuxMinimal; + jre_headless = jre8_headless; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + elasticsearch7 = callPackage ../servers/search/elasticsearch/7.x.nix { + util-linux = util-linuxMinimal; + jre_headless = jdk11_headless; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + elasticsearch = elasticsearch6; + elasticsearch-oss = elasticsearch6-oss; + + elasticsearchPlugins = recurseIntoAttrs ( + callPackage ../servers/search/elasticsearch/plugins.nix { + elasticsearch = elasticsearch-oss; + } + ); + elasticsearch6Plugins = elasticsearchPlugins.override { + elasticsearch = elasticsearch6-oss; + }; + elasticsearch7Plugins = elasticsearchPlugins.override { + elasticsearch = elasticsearch7; + }; + + elasticsearch-curator = callPackage ../tools/admin/elasticsearch-curator { + python = python3; + }; + + embree = callPackage ../development/libraries/embree { }; + embree2 = callPackage ../development/libraries/embree/2.x.nix { }; + + emem = callPackage ../applications/misc/emem { }; + + empty = callPackage ../tools/misc/empty { }; + + emulsion = callPackage ../applications/graphics/emulsion { + inherit (darwin.apple_sdk.frameworks) AppKit CoreGraphics CoreServices Foundation OpenGL; + }; + + emv = callPackage ../tools/misc/emv { }; + + enblend-enfuse = callPackage ../tools/graphics/enblend-enfuse { + boost = boost172; + }; + + endlessh = callPackage ../servers/endlessh { }; + + endlessh-go = callPackage ../servers/endlessh-go { }; + + ericw-tools = callPackage ../applications/misc/ericw-tools { }; + + cryfs = callPackage ../tools/filesystems/cryfs { }; + + encfs = callPackage ../tools/filesystems/encfs { + tinyxml2 = tinyxml-2; + }; + + enscript = callPackage ../tools/text/enscript { }; + + ensemble-chorus = callPackage ../applications/audio/ensemble-chorus { stdenv = gcc8Stdenv; }; + + entr = callPackage ../tools/misc/entr { }; + + envchain = callPackage ../tools/misc/envchain { inherit (darwin.apple_sdk.frameworks) Security; }; + + eot_utilities = callPackage ../tools/misc/eot-utilities { }; + + eplot = callPackage ../tools/graphics/eplot { }; + + epstool = callPackage ../tools/graphics/epstool { }; + + epsxe = callPackage ../applications/emulators/epsxe { }; + + escrotum = callPackage ../tools/graphics/escrotum { }; + + etcher = callPackage ../tools/misc/etcher { + electron = electron_12; + }; + + ethercalc = callPackage ../servers/web-apps/ethercalc { }; + + ethtool = callPackage ../tools/misc/ethtool { }; + + ettercap = callPackage ../applications/networking/sniffers/ettercap { }; + + eventstat = callPackage ../os-specific/linux/eventstat { }; + + evillimiter = python3Packages.callPackage ../tools/networking/evillimiter { }; + + evtest = callPackage ../applications/misc/evtest { }; + + evtest-qt = libsForQt5.callPackage ../applications/misc/evtest-qt { }; + + eva = callPackage ../tools/misc/eva { }; + + exa = callPackage ../tools/misc/exa { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + exempi = callPackage ../development/libraries/exempi { + stdenv = if stdenv.isi686 then gcc6Stdenv else stdenv; + }; + + execline = skawarePackages.execline; + + executor = with python3Packages; toPythonApplication executor; + + exif = callPackage ../tools/graphics/exif { }; + + exifprobe = callPackage ../tools/graphics/exifprobe { }; + + exiftags = callPackage ../tools/graphics/exiftags { }; + + exiftool = perlPackages.ImageExifTool; + + ext4magic = callPackage ../tools/filesystems/ext4magic { }; + + extract_url = callPackage ../applications/misc/extract_url { }; + + extundelete = callPackage ../tools/filesystems/extundelete { }; + + expect = callPackage ../tools/misc/expect { }; + + expliot = callPackage ../tools/security/expliot { }; + + f2fs-tools = callPackage ../tools/filesystems/f2fs-tools { }; + + Fabric = with python3Packages; toPythonApplication Fabric; + + fail2ban = callPackage ../tools/security/fail2ban { }; + + fakeroot = callPackage ../tools/system/fakeroot { }; + + fakeroute = callPackage ../tools/networking/fakeroute { }; + + fakechroot = callPackage ../tools/system/fakechroot { }; + + fancy-motd = callPackage ../tools/system/fancy-motd { }; + + fastpbkdf2 = callPackage ../development/libraries/fastpbkdf2 { }; + + fanficfare = callPackage ../tools/text/fanficfare { }; + + fastd = callPackage ../tools/networking/fastd { }; + + fatsort = callPackage ../tools/filesystems/fatsort { }; + + fcitx = callPackage ../tools/inputmethods/fcitx { + plugins = []; + }; + + fcitx-engines = recurseIntoAttrs { + + anthy = callPackage ../tools/inputmethods/fcitx-engines/fcitx-anthy { }; + + chewing = callPackage ../tools/inputmethods/fcitx-engines/fcitx-chewing { }; + + hangul = callPackage ../tools/inputmethods/fcitx-engines/fcitx-hangul { }; + + unikey = callPackage ../tools/inputmethods/fcitx-engines/fcitx-unikey { }; + + rime = callPackage ../tools/inputmethods/fcitx-engines/fcitx-rime { }; + + m17n = callPackage ../tools/inputmethods/fcitx-engines/fcitx-m17n { }; + + mozc = callPackage ../tools/inputmethods/fcitx-engines/fcitx-mozc { + python = python2; + inherit (python2Packages) gyp; + protobuf = pkgs.protobuf3_8.overrideDerivation (_: { stdenv = clangStdenv; }); + }; + + table-extra = callPackage ../tools/inputmethods/fcitx-engines/fcitx-table-extra { }; + + table-other = callPackage ../tools/inputmethods/fcitx-engines/fcitx-table-other { }; + + cloudpinyin = callPackage ../tools/inputmethods/fcitx-engines/fcitx-cloudpinyin { }; + + libpinyin = libsForQt5.callPackage ../tools/inputmethods/fcitx-engines/fcitx-libpinyin { }; + + skk = callPackage ../tools/inputmethods/fcitx-engines/fcitx-skk { }; + }; + + fcitx-configtool = callPackage ../tools/inputmethods/fcitx/fcitx-configtool.nix { }; + + chewing-editor = libsForQt5.callPackage ../applications/misc/chewing-editor { }; + + fcitx5 = libsForQt5.callPackage ../tools/inputmethods/fcitx5 { }; + + fcitx5-with-addons = libsForQt5.callPackage ../tools/inputmethods/fcitx5/with-addons.nix { }; + + fcitx5-chinese-addons = libsForQt5.callPackage ../tools/inputmethods/fcitx5/fcitx5-chinese-addons.nix { }; + + fcitx5-mozc = libsForQt5.callPackage ../tools/inputmethods/fcitx5/fcitx5-mozc.nix { + abseil-cpp = abseil-cpp.override { + cxxStandard = "17"; + }; + }; + + fcitx5-unikey = libsForQt5.callPackage ../tools/inputmethods/fcitx5/fcitx5-unikey.nix { }; + + fcitx5-configtool = libsForQt5.callPackage ../tools/inputmethods/fcitx5/fcitx5-configtool.nix { }; + + fcitx5-chewing = callPackage ../tools/inputmethods/fcitx5/fcitx5-chewing.nix { }; + + fcitx5-lua = callPackage ../tools/inputmethods/fcitx5/fcitx5-lua.nix { }; + + fcitx5-m17n = callPackage ../tools/inputmethods/fcitx5/fcitx5-m17n.nix { }; + + fcitx5-gtk = callPackage ../tools/inputmethods/fcitx5/fcitx5-gtk.nix { }; + + fcitx5-hangul = callPackage ../tools/inputmethods/fcitx5/fcitx5-hangul.nix { }; + + fcitx5-rime = callPackage ../tools/inputmethods/fcitx5/fcitx5-rime.nix { }; + + fcitx5-table-extra = callPackage ../tools/inputmethods/fcitx5/fcitx5-table-extra.nix { }; + + fcitx5-table-other = callPackage ../tools/inputmethods/fcitx5/fcitx5-table-other.nix { }; + + fcppt = callPackage ../development/libraries/fcppt { }; + + fcrackzip = callPackage ../tools/security/fcrackzip { }; + + fcron = callPackage ../tools/system/fcron { }; + + fdm = callPackage ../tools/networking/fdm {}; + + fdtools = callPackage ../tools/misc/fdtools { }; + + featherpad = qt5.callPackage ../applications/editors/featherpad {}; + + feedreader = callPackage ../applications/networking/feedreaders/feedreader {}; + + fend = callPackage ../tools/misc/fend { }; + + ferm = callPackage ../tools/networking/ferm { }; + + ffsend = callPackage ../tools/misc/ffsend { + inherit (darwin.apple_sdk.frameworks) CoreFoundation CoreServices Security AppKit; + }; + + fgallery = callPackage ../tools/graphics/fgallery { }; + + flannel = callPackage ../tools/networking/flannel { }; + cni-plugin-flannel = callPackage ../tools/networking/flannel/plugin.nix {}; + + flashbench = callPackage ../os-specific/linux/flashbench { }; + + flatpak = callPackage ../development/libraries/flatpak { }; + + flatpak-builder = callPackage ../development/tools/flatpak-builder { + binutils = binutils-unwrapped; + }; + + fltrdr = callPackage ../tools/misc/fltrdr { + icu = icu63; + }; + + fluent-bit = callPackage ../tools/misc/fluent-bit { }; + + flux = callPackage ../development/compilers/flux { }; + + fido2luks = callPackage ../tools/security/fido2luks {}; + + fierce = callPackage ../tools/security/fierce { }; + + figlet = callPackage ../tools/misc/figlet { }; + + file = callPackage ../tools/misc/file { + inherit (windows) libgnurx; + }; + + filegive = callPackage ../tools/networking/filegive { }; + + fileschanged = callPackage ../tools/misc/fileschanged { }; + + filet = callPackage ../applications/misc/filet { }; + + findomain = callPackage ../tools/networking/findomain { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + findutils = callPackage ../tools/misc/findutils { }; + + finger_bsd = callPackage ../tools/networking/bsd-finger { }; + + iprange = callPackage ../applications/networking/firehol/iprange.nix {}; + + firehol = callPackage ../applications/networking/firehol {}; + + fio = callPackage ../tools/system/fio { }; + + firebird-emu = libsForQt5.callPackage ../applications/emulators/firebird-emu { }; + + flamerobin = callPackage ../applications/misc/flamerobin { }; + + flashrom = callPackage ../tools/misc/flashrom { }; + + flent = python3Packages.callPackage ../applications/networking/flent { }; + + flexoptix-app = callPackage ../tools/misc/flexoptix-app { }; + + flpsed = callPackage ../applications/editors/flpsed { }; + + fluentd = callPackage ../tools/misc/fluentd { }; + + flvstreamer = callPackage ../tools/networking/flvstreamer { }; + + frr = callPackage ../servers/frr { }; + + hmetis = pkgsi686Linux.callPackage ../applications/science/math/hmetis { }; + + libbsd = callPackage ../development/libraries/libbsd { }; + + libbladeRF = callPackage ../development/libraries/libbladeRF { }; + + libbtbb = callPackage ../development/libraries/libbtbb { }; + + lp_solve = callPackage ../applications/science/math/lp_solve { + inherit (darwin) cctools; + }; + + fabric-installer = callPackage ../tools/games/minecraft/fabric-installer { }; + + faraday-agent-dispatcher = callPackage ../tools/security/faraday-agent-dispatcher { }; + + faraday-cli = callPackage ../tools/security/faraday-cli { }; + + fastlane = callPackage ../tools/admin/fastlane { }; + + fatresize = callPackage ../tools/filesystems/fatresize {}; + + fdk_aac = callPackage ../development/libraries/fdk-aac { }; + + fdk-aac-encoder = callPackage ../applications/audio/fdkaac { }; + + feedgnuplot = callPackage ../tools/graphics/feedgnuplot { }; + + fbcat = callPackage ../tools/misc/fbcat { }; + + fbv = callPackage ../tools/graphics/fbv { }; + + fbvnc = callPackage ../tools/admin/fbvnc {}; + + fim = callPackage ../tools/graphics/fim { }; + + flac123 = callPackage ../applications/audio/flac123 { }; + + flamegraph = callPackage ../development/tools/flamegraph { }; + + flawfinder = callPackage ../development/tools/flawfinder { }; + + flintlock = callPackage ../applications/virtualization/flintlock { }; + + flip-link = callPackage ../development/tools/flip-link { }; + + flips = callPackage ../tools/compression/flips { }; + + flowblade = callPackage ../applications/video/flowblade { }; + + flvtool2 = callPackage ../tools/video/flvtool2 { + ruby = ruby_2_2; + }; + + fmbt = callPackage ../development/tools/fmbt { + python = python2; + }; + + fontfor = callPackage ../tools/misc/fontfor { }; + + fontforge = lowPrio (callPackage ../tools/misc/fontforge { + inherit (darwin.apple_sdk.frameworks) Carbon Cocoa; + python = python3; + }); + fontforge-gtk = fontforge.override { + withSpiro = true; + withGTK = true; + gtk3 = gtk3-x11; + inherit (darwin.apple_sdk.frameworks) Carbon Cocoa; + }; + + fontforge-fonttools = callPackage ../tools/misc/fontforge/fontforge-fonttools.nix {}; + + fontmatrix = libsForQt514.callPackage ../applications/graphics/fontmatrix {}; + + footswitch = callPackage ../tools/inputmethods/footswitch { }; + + foremost = callPackage ../tools/system/foremost { }; + + forktty = callPackage ../os-specific/linux/forktty {}; + + fortune = callPackage ../tools/misc/fortune { }; + + fox = callPackage ../development/libraries/fox { + libpng = libpng12; + inherit (darwin.apple_sdk.frameworks) CoreServices; + }; + + fox_1_6 = callPackage ../development/libraries/fox/fox-1.6.nix { + inherit (darwin.apple_sdk.frameworks) CoreServices; + }; + + fpart = callPackage ../tools/misc/fpart { }; + + fping = callPackage ../tools/networking/fping {}; + + fpm = callPackage ../tools/package-management/fpm { }; + + fprintd = callPackage ../tools/security/fprintd { }; + + fprintd-tod = callPackage ../tools/security/fprintd/tod.nix { }; + + ferdi = callPackage ../applications/networking/instant-messengers/ferdi { + mkFranzDerivation = callPackage ../applications/networking/instant-messengers/franz/generic.nix { }; + }; + + fq = callPackage ../development/tools/fq { }; + + franz = callPackage ../applications/networking/instant-messengers/franz { + mkFranzDerivation = callPackage ../applications/networking/instant-messengers/franz/generic.nix { }; + }; + + freac = callPackage ../applications/audio/freac { }; + + freebind = callPackage ../tools/networking/freebind { }; + + freeipmi = callPackage ../tools/system/freeipmi {}; + + freetalk = callPackage ../applications/networking/instant-messengers/freetalk { + guile = guile_2_0; + }; + + freetds = callPackage ../development/libraries/freetds { }; + + freetube = callPackage ../applications/video/freetube { }; + + freqtweak = callPackage ../applications/audio/freqtweak { + wxGTK = wxGTK31-gtk2; + }; + + frescobaldi = python3Packages.callPackage ../misc/frescobaldi {}; + + freshfetch = callPackage ../tools/misc/freshfetch { + inherit (darwin.apple_sdk.frameworks) AppKit CoreFoundation DiskArbitration Foundation IOKit; + }; + + frostwire = callPackage ../applications/networking/p2p/frostwire { }; + frostwire-bin = callPackage ../applications/networking/p2p/frostwire/frostwire-bin.nix { }; + + ftgl = callPackage ../development/libraries/ftgl { + inherit (darwin.apple_sdk.frameworks) OpenGL GLUT; + }; + + ftop = callPackage ../os-specific/linux/ftop { }; + + ftxui = callPackage ../development/libraries/ftxui { }; + + fsarchiver = callPackage ../tools/archivers/fsarchiver { }; + + fsfs = callPackage ../tools/filesystems/fsfs { }; + + fstl = qt5.callPackage ../applications/graphics/fstl { }; + + fswebcam = callPackage ../os-specific/linux/fswebcam { }; + + fulcio = callPackage ../tools/security/fulcio { }; + + fuseiso = callPackage ../tools/filesystems/fuseiso { }; + + fusuma = callPackage ../tools/inputmethods/fusuma {}; + + fdbPackages = dontRecurseIntoAttrs (callPackage ../servers/foundationdb { + openjdk = openjdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }); + + inherit (fdbPackages) + foundationdb51 + foundationdb52 + foundationdb60 + foundationdb61 + ; + + foundationdb = foundationdb61; + + fuse-7z-ng = callPackage ../tools/filesystems/fuse-7z-ng { }; + + fuse-overlayfs = callPackage ../tools/filesystems/fuse-overlayfs {}; + + fusee-interfacee-tk = callPackage ../applications/misc/fusee-interfacee-tk { }; + + fusee-launcher = callPackage ../development/tools/fusee-launcher { }; + + fverb = callPackage ../applications/audio/fverb { }; + + fwknop = callPackage ../tools/security/fwknop { + texinfo = texinfo6_7; # Uses @setcontentsaftertitlepage, removed in 6.8. + }; + + exfat = callPackage ../tools/filesystems/exfat { }; + + exfatprogs = callPackage ../tools/filesystems/exfatprogs { }; + + dos2unix = callPackage ../tools/text/dos2unix { }; + + uni2ascii = callPackage ../tools/text/uni2ascii { }; + + uniscribe = callPackage ../tools/text/uniscribe { }; + + galculator = callPackage ../applications/misc/galculator { + gtk = gtk3; + }; + + free42 = callPackage ../applications/misc/free42 { }; + + galen = callPackage ../development/tools/galen {}; + + gallery-dl = python3Packages.callPackage ../applications/misc/gallery-dl { }; + + gandi-cli = python3Packages.callPackage ../tools/networking/gandi-cli { }; + + gandom-fonts = callPackage ../data/fonts/gandom-fonts { }; + + gaphor = python3Packages.callPackage ../tools/misc/gaphor { }; + + garage = callPackage ../tools/filesystems/garage { }; + + garmin-plugin = callPackage ../applications/misc/garmin-plugin {}; + + garmintools = callPackage ../development/libraries/garmintools {}; + + gau = callPackage ../tools/security/gau { }; + + gauge = callPackage ../development/tools/gauge { }; + + gawk = callPackage ../tools/text/gawk { + inherit (darwin) locale; + }; + + gawk-with-extensions = callPackage ../tools/text/gawk/gawk-with-extensions.nix { + extensions = gawkextlib.full; + }; + gawkextlib = callPackage ../tools/text/gawk/gawkextlib.nix {}; + + gawkInteractive = gawk.override { interactive = true; }; + + gawp = callPackage ../tools/misc/gawp { }; + + gbdfed = callPackage ../tools/misc/gbdfed { + gtk = gtk2-x11; + }; + + gdmap = callPackage ../tools/system/gdmap { }; + + gelasio = callPackage ../data/fonts/gelasio { }; + + gemget = callPackage ../tools/networking/gemget {}; + + gen-oath-safe = callPackage ../tools/security/gen-oath-safe { }; + + genext2fs = callPackage ../tools/filesystems/genext2fs { }; + + gengetopt = callPackage ../development/tools/misc/gengetopt { }; + + genimage = callPackage ../tools/filesystems/genimage { }; + + genmap = callPackage ../applications/science/biology/genmap { }; + + geonkick = callPackage ../applications/audio/geonkick {}; + + gerrit = callPackage ../applications/version-management/gerrit { }; + + geteltorito = callPackage ../tools/misc/geteltorito { }; + + getmail6 = callPackage ../tools/networking/getmail6 { }; + + getopt = callPackage ../tools/misc/getopt { }; + + gexiv2 = callPackage ../development/libraries/gexiv2 { }; + + gftp = callPackage ../applications/networking/ftp/gftp { + gtk = gtk2; + }; + + gfs2-utils = callPackage ../tools/filesystems/gfs2-utils { }; + + gfbgraph = callPackage ../development/libraries/gfbgraph { }; + + gfold = callPackage ../applications/version-management/git-and-tools/gfold { }; + + ggobi = callPackage ../tools/graphics/ggobi { }; + + gh = callPackage ../applications/version-management/git-and-tools/gh { }; + + ghorg = callPackage ../applications/version-management/git-and-tools/ghorg { }; + + ghost = callPackage ../tools/security/ghost { }; + + ghostunnel = callPackage ../tools/networking/ghostunnel { }; + + ghq = callPackage ../applications/version-management/git-and-tools/ghq { }; + + gst = callPackage ../applications/version-management/git-and-tools/gst { }; + + ghr = callPackage ../applications/version-management/git-and-tools/ghr { }; + + ghrepo-stats = with python3Packages; toPythonApplication ghrepo-stats; + + gibberish-detector = with python3Packages; toPythonApplication gibberish-detector; + + gibo = callPackage ../tools/misc/gibo { }; + + gifsicle = callPackage ../tools/graphics/gifsicle { }; + + gifski = callPackage ../tools/graphics/gifski { }; + + git-absorb = callPackage ../applications/version-management/git-and-tools/git-absorb { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + inherit (haskellPackages) git-annex; + + git-annex-metadata-gui = libsForQt5.callPackage ../applications/version-management/git-and-tools/git-annex-metadata-gui { + inherit (python3Packages) buildPythonApplication pyqt5 git-annex-adapter; + }; + + git-annex-remote-b2 = callPackage ../applications/version-management/git-and-tools/git-annex-remote-b2 { }; + + git-annex-remote-dbx = callPackage ../applications/version-management/git-and-tools/git-annex-remote-dbx { + inherit (python3Packages) + buildPythonApplication + fetchPypi + dropbox + annexremote + humanfriendly; + }; + + git-annex-remote-googledrive = callPackage ../applications/version-management/git-and-tools/git-annex-remote-googledrive { + inherit (python3Packages) + buildPythonApplication + fetchPypi + annexremote + drivelib + GitPython + tenacity + humanfriendly; + }; + + git-annex-remote-rclone = callPackage ../applications/version-management/git-and-tools/git-annex-remote-rclone { }; + + git-annex-utils = callPackage ../applications/version-management/git-and-tools/git-annex-utils { }; + + git-appraise = callPackage ../applications/version-management/git-and-tools/git-appraise {}; + + git-backup = callPackage ../applications/version-management/git-backup { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + git-big-picture = callPackage ../applications/version-management/git-and-tools/git-big-picture { }; + + git-branchless = callPackage ../applications/version-management/git-and-tools/git-branchless { + inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration; + }; + + inherit (haskellPackages) git-brunch; + + git-bug = callPackage ../applications/version-management/git-and-tools/git-bug { }; + + git-chglog = callPackage ../applications/version-management/git-and-tools/git-chglog { }; + + git-cinnabar = callPackage ../applications/version-management/git-and-tools/git-cinnabar { }; + + git-cliff = callPackage ../applications/version-management/git-and-tools/git-cliff { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + git-codeowners = callPackage ../applications/version-management/git-and-tools/git-codeowners { }; + + git-codereview = callPackage ../applications/version-management/git-and-tools/git-codereview { }; + + git-cola = callPackage ../applications/version-management/git-and-tools/git-cola { }; + + git-credential-1password = callPackage ../applications/version-management/git-and-tools/git-credential-1password { }; + + git-crecord = callPackage ../applications/version-management/git-crecord { }; + + git-crypt = callPackage ../applications/version-management/git-and-tools/git-crypt { }; + + git-delete-merged-branches = callPackage ../applications/version-management/git-and-tools/git-delete-merged-branches { }; + + git-dit = callPackage ../applications/version-management/git-and-tools/git-dit { + inherit (darwin.apple_sdk.frameworks) CoreFoundation Security; + }; + + git-extras = callPackage ../applications/version-management/git-and-tools/git-extras { }; + + git-fame = callPackage ../applications/version-management/git-and-tools/git-fame {}; + + git-fast-export = callPackage ../applications/version-management/git-and-tools/fast-export { }; + + git-filter-repo = with python3Packages; toPythonApplication git-filter-repo; + + git-gone = callPackage ../applications/version-management/git-and-tools/git-gone { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + git-hound = callPackage ../tools/security/git-hound { }; + + git-hub = callPackage ../applications/version-management/git-and-tools/git-hub { }; + + git-ignore = callPackage ../applications/version-management/git-and-tools/git-ignore { }; + + git-imerge = python3Packages.callPackage ../applications/version-management/git-and-tools/git-imerge { }; + + git-interactive-rebase-tool = callPackage ../applications/version-management/git-and-tools/git-interactive-rebase-tool { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + git-lfs = lowPrio (callPackage ../applications/version-management/git-lfs { }); + + git-lfs1 = callPackage ../applications/version-management/git-lfs/1.nix { }; + + git-ftp = callPackage ../development/tools/git-ftp { }; + + git-machete = python3Packages.callPackage ../applications/version-management/git-and-tools/git-machete { }; + + git-my = callPackage ../applications/version-management/git-and-tools/git-my { }; + + git-octopus = callPackage ../applications/version-management/git-and-tools/git-octopus { }; + + git-open = callPackage ../applications/version-management/git-and-tools/git-open { }; + + git-quickfix = callPackage ../applications/version-management/git-and-tools/git-quickfix { + inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration; + }; + + git-radar = callPackage ../applications/version-management/git-and-tools/git-radar { }; + + git-recent = callPackage ../applications/version-management/git-and-tools/git-recent { + util-linux = if stdenv.isLinux then util-linuxMinimal else util-linux; + }; + + git-remote-codecommit = python3Packages.callPackage ../applications/version-management/git-and-tools/git-remote-codecommit { }; + + git-remote-gcrypt = callPackage ../applications/version-management/git-and-tools/git-remote-gcrypt { }; + + git-remote-hg = callPackage ../applications/version-management/git-and-tools/git-remote-hg { }; + + git-reparent = callPackage ../applications/version-management/git-and-tools/git-reparent { }; + + git-secret = callPackage ../applications/version-management/git-and-tools/git-secret { }; + + git-secrets = callPackage ../applications/version-management/git-and-tools/git-secrets { }; + + git-series = callPackage ../development/tools/git-series { }; + + git-sizer = callPackage ../applications/version-management/git-sizer { }; + + git-standup = callPackage ../applications/version-management/git-and-tools/git-standup { }; + + git-stree = callPackage ../applications/version-management/git-and-tools/git-stree { }; + + git-subrepo = callPackage ../applications/version-management/git-and-tools/git-subrepo { }; + + git-subset = callPackage ../applications/version-management/git-and-tools/git-subset { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + git-subtrac = callPackage ../applications/version-management/git-and-tools/git-subtrac { }; + + git-sync = callPackage ../applications/version-management/git-and-tools/git-sync { }; + + git-test = callPackage ../applications/version-management/git-and-tools/git-test { }; + + git-trim = callPackage ../applications/version-management/git-and-tools/git-trim { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + git-up = callPackage ../applications/version-management/git-up { + pythonPackages = python3Packages; + }; + + git-vanity-hash = callPackage ../applications/version-management/git-and-tools/git-vanity-hash { }; + + git-vendor = callPackage ../applications/version-management/git-and-tools/git-vendor { }; + + git-when-merged = callPackage ../applications/version-management/git-and-tools/git-when-merged { }; + + git-workspace = callPackage ../applications/version-management/git-and-tools/git-workspace { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + git2cl = callPackage ../applications/version-management/git-and-tools/git2cl { }; + + gita = python3Packages.callPackage ../applications/version-management/git-and-tools/gita { }; + + gitbatch = callPackage ../applications/version-management/git-and-tools/gitbatch { }; + + gitflow = callPackage ../applications/version-management/git-and-tools/gitflow { }; + + gitfs = callPackage ../tools/filesystems/gitfs { }; + + github-backup = callPackage ../tools/misc/github-backup { }; + + github-runner = callPackage ../development/tools/continuous-integration/github-runner { }; + + gitkraken = callPackage ../applications/version-management/gitkraken { }; + + gitlab = callPackage ../applications/version-management/gitlab { }; + gitlab-ee = callPackage ../applications/version-management/gitlab { + gitlabEnterprise = true; + }; + + gitlab-runner = callPackage ../development/tools/continuous-integration/gitlab-runner { }; + + gitlab-shell = callPackage ../applications/version-management/gitlab/gitlab-shell { }; + + gitlab-triage = callPackage ../applications/version-management/gitlab-triage { }; + + gitlab-workhorse = callPackage ../applications/version-management/gitlab/gitlab-workhorse { }; + + gitleaks = callPackage ../tools/security/gitleaks { }; + + gitaly = callPackage ../applications/version-management/gitlab/gitaly { }; + + gitqlient = libsForQt5.callPackage ../applications/version-management/gitqlient { }; + + gitstats = callPackage ../applications/version-management/gitstats { }; + + gitstatus = callPackage ../applications/version-management/git-and-tools/gitstatus { }; + + gitty = callPackage ../applications/version-management/git-and-tools/gitty { }; + + gitui = callPackage ../applications/version-management/git-and-tools/gitui { + inherit (darwin.apple_sdk.frameworks) Security AppKit; + }; + + gogs = callPackage ../applications/version-management/gogs { }; + + git-latexdiff = callPackage ../tools/typesetting/git-latexdiff { }; + + gitea = callPackage ../applications/version-management/gitea { }; + + gokart = callPackage ../development/tools/gokart { }; + + gl2ps = callPackage ../development/libraries/gl2ps { }; + + glab = callPackage ../applications/version-management/git-and-tools/glab { }; + + glitter = callPackage ../applications/version-management/git-and-tools/glitter { }; + + glusterfs = callPackage ../tools/filesystems/glusterfs { }; + + glmark2 = callPackage ../tools/graphics/glmark2 { }; + + glogg = libsForQt5.callPackage ../tools/text/glogg { }; + + glxinfo = callPackage ../tools/graphics/glxinfo { }; + + gmrender-resurrect = callPackage ../tools/networking/gmrender-resurrect { + inherit (gst_all_1) gstreamer gst-plugins-base gst-plugins-good gst-plugins-bad gst-plugins-ugly gst-libav; + }; + + gnirehtet = callPackage ../tools/networking/gnirehtet { }; + + gnome-2048 = callPackage ../desktops/gnome/games/gnome-2048 { }; + + gnome-builder = callPackage ../applications/editors/gnome-builder { }; + + gnome-feeds = callPackage ../applications/networking/feedreaders/gnome-feeds {}; + + gnome-keysign = callPackage ../tools/security/gnome-keysign { }; + + gnome-secrets = callPackage ../applications/misc/gnome-secrets { }; + + gnome-podcasts = callPackage ../applications/audio/gnome-podcasts { }; + + gnome-photos = callPackage ../applications/graphics/gnome-photos { }; + + gnome-randr = callPackage ../tools/wayland/gnome-randr { }; + + gnokii = callPackage ../tools/misc/gnokii { }; + + gnuapl = callPackage ../development/interpreters/gnu-apl { }; + + gnu-shepherd = callPackage ../misc/gnu-shepherd { }; + + dapl = callPackage ../development/interpreters/dzaima-apl { + buildNativeImage = false; + stdenv = stdenvNoCC; + jdk = jre; + }; + dapl-native = callPackage ../development/interpreters/dzaima-apl { + buildNativeImage = true; + jdk = graalvm11-ce; + }; + + gnucap = callPackage ../applications/science/electronics/gnucap { }; + + gnu-cobol = callPackage ../development/compilers/gnu-cobol { }; + + gnuclad = callPackage ../applications/graphics/gnuclad { }; + + gnufdisk = callPackage ../tools/system/fdisk { + guile = guile_1_8; + }; + + gnugrep = callPackage ../tools/text/gnugrep { }; + + gnulib = callPackage ../development/tools/gnulib { }; + + gnupatch = callPackage ../tools/text/gnupatch { }; + + gnupg1orig = callPackage ../tools/security/gnupg/1.nix { }; + gnupg1compat = callPackage ../tools/security/gnupg/1compat.nix { }; + gnupg1 = gnupg1compat; # use config.packageOverrides if you prefer original gnupg1 + gnupg23 = callPackage ../tools/security/gnupg/23.nix { + guiSupport = stdenv.isDarwin; + pinentry = if stdenv.isDarwin then pinentry_mac else pinentry-gtk2; + }; + gnupg = gnupg23; + + gnupg-pkcs11-scd = callPackage ../tools/security/gnupg-pkcs11-scd { }; + + gnuplot = libsForQt5.callPackage ../tools/graphics/gnuplot { }; + + gnuplot_qt = gnuplot.override { withQt = true; }; + + # must have AquaTerm installed separately + gnuplot_aquaterm = gnuplot.override { aquaterm = true; }; + + gnu-pw-mgr = callPackage ../tools/security/gnu-pw-mgr { }; + + gnused = if !stdenv.hostPlatform.isWindows + then callPackage ../tools/text/gnused { } # broken on Windows + else gnused_422; + # This is an easy work-around for [:space:] problems. + gnused_422 = callPackage ../tools/text/gnused/422.nix { }; + + gnutar = callPackage ../tools/archivers/gnutar { }; + + goaccess = callPackage ../tools/misc/goaccess { }; + + gocryptfs = callPackage ../tools/filesystems/gocryptfs { }; + + godot = callPackage ../development/tools/godot {}; + + godot-export-templates = callPackage ../development/tools/godot/export-templates.nix { }; + + godot-headless = callPackage ../development/tools/godot/headless.nix { }; + + godot-server = callPackage ../development/tools/godot/server.nix { }; + + goklp = callPackage ../tools/networking/goklp {}; + + go-mtpfs = callPackage ../tools/filesystems/go-mtpfs { }; + + goofys = callPackage ../tools/filesystems/goofys { + buildGoModule = buildGo116Module; + }; + + go-sct = callPackage ../tools/X11/go-sct { }; + + # rename to upower-notify? + go-upower-notify = callPackage ../tools/misc/upower-notify { }; + + goattracker = callPackage ../applications/audio/goattracker { }; + + goattracker-stereo = callPackage ../applications/audio/goattracker { + isStereo = true; + }; + + google-app-engine-go-sdk = callPackage ../development/tools/google-app-engine-go-sdk { }; + + google-authenticator = callPackage ../os-specific/linux/google-authenticator { }; + + google-cloud-sdk = callPackage ../tools/admin/google-cloud-sdk { + python = python3; + }; + google-cloud-sdk-gce = google-cloud-sdk.override { + python = python38; + with-gce = true; + }; + + google-fonts = callPackage ../data/fonts/google-fonts { }; + + google-clasp = nodePackages."@google/clasp"; + + google-compute-engine = with python38.pkgs; toPythonApplication google-compute-engine; + + google-guest-oslogin = callPackage ../tools/virtualization/google-guest-oslogin { }; + + google-cloud-cpp = callPackage ../development/libraries/google-cloud-cpp { }; + + google-java-format = callPackage ../development/tools/google-java-format { }; + + google-guest-agent = callPackage ../tools/virtualization/google-guest-agent { }; + + google-guest-configs = callPackage ../tools/virtualization/google-guest-configs { }; + + gdown = with python3Packages; toPythonApplication gdown; + + gopro = callPackage ../tools/video/gopro { }; + + goreleaser = callPackage ../tools/misc/goreleaser { }; + + goreplay = callPackage ../tools/networking/goreplay { }; + + gost = callPackage ../tools/networking/gost { }; + + gource = callPackage ../applications/version-management/gource { }; + + govc = callPackage ../tools/virtualization/govc { }; + + goverlay = callPackage ../tools/graphics/goverlay { + inherit (qt5) wrapQtAppsHook; + inherit (plasma5Packages) breeze-qt5; + }; + + gpart = callPackage ../tools/filesystems/gpart { }; + + gparted = callPackage ../tools/misc/gparted { }; + + gpt2tc = callPackage ../tools/text/gpt2tc { }; + + gptman = callPackage ../tools/system/gptman { }; + + ldmtool = callPackage ../tools/misc/ldmtool { }; + + gphotos-sync = callPackage ../tools/backup/gphotos-sync { }; + + gpodder = callPackage ../applications/audio/gpodder { }; + + gpp = callPackage ../development/tools/gpp { }; + + gpredict = callPackage ../applications/science/astronomy/gpredict { + hamlib = hamlib_4; + }; + + gprojector = callPackage ../applications/science/astronomy/gprojector { }; + + gptfdisk = callPackage ../tools/system/gptfdisk { }; + + grafx2 = callPackage ../applications/graphics/grafx2 {}; + + grails = callPackage ../development/web/grails { jdk = null; }; + + graylog = callPackage ../tools/misc/graylog { }; + graylogPlugins = recurseIntoAttrs ( + callPackage ../tools/misc/graylog/plugins.nix { } + ); + + graphviz = callPackage ../tools/graphics/graphviz { + inherit (darwin.apple_sdk.frameworks) ApplicationServices; + }; + + graphviz-nox = graphviz.override { + withXorg = false; + libdevil = libdevil-nox; + }; + + grin = callPackage ../tools/text/grin { }; + + igrep = callPackage ../tools/text/igrep { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + ripgrep = callPackage ../tools/text/ripgrep { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + ripgrep-all = callPackage ../tools/text/ripgrep-all { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + robodoc = callPackage ../tools/text/robodoc { }; + + ucg = callPackage ../tools/text/ucg { }; + + grive2 = callPackage ../tools/filesystems/grive2 { }; + + groff = callPackage ../tools/text/groff { + ghostscript = null; + psutils = null; + netpbm = null; + }; + + gromit-mpx = callPackage ../tools/graphics/gromit-mpx { + gtk = gtk3; + libappindicator = libappindicator-gtk3; + inherit (xorg) libXdmcp; + }; + + gron = callPackage ../development/tools/gron { }; + + groonga = callPackage ../servers/search/groonga { }; + + grpcurl = callPackage ../tools/networking/grpcurl { }; + + grpcui = callPackage ../tools/networking/grpcui { }; + + grpc-tools = callPackage ../development/tools/misc/grpc-tools { }; + + grub = pkgsi686Linux.callPackage ../tools/misc/grub ({ + stdenv = overrideCC stdenv buildPackages.pkgsi686Linux.gcc6; + } // (config.grub or {})); + + grv = callPackage ../applications/version-management/git-and-tools/grv { }; + + trustedGrub = pkgsi686Linux.callPackage ../tools/misc/grub/trusted.nix { }; + + trustedGrub-for-HP = pkgsi686Linux.callPackage ../tools/misc/grub/trusted.nix { for_HP_laptop = true; }; + + grub2 = grub2_full; + + grub2_full = callPackage ../tools/misc/grub/2.0x.nix { + # update breaks grub2 + gnulib = pkgs.gnulib.overrideAttrs (_: rec { + version = "20200223"; + src = fetchgit { + url = "https://git.savannah.gnu.org/r/gnulib.git"; + rev = "292fd5d6ff5ecce81ec3c648f353732a9ece83c0"; + sha256 = "0hkg3nql8nsll0vrqk4ifda0v4kpi67xz42r8daqsql6c4rciqnw"; + }; + }); + }; + + grub2_efi = grub2.override { + efiSupport = true; + }; + + grub2_light = grub2.override { + zfsSupport = false; + }; + + grub2_xen = grub2_full.override { + xenSupport = true; + }; + + grub2_pvgrub_image = callPackage ../tools/misc/grub/pvgrub_image { }; + + grub4dos = callPackage ../tools/misc/grub4dos { + stdenv = stdenv_32bit; + }; + + gruut = with python3.pkgs; toPythonApplication gruut; + + gruut-ipa = with python3.pkgs; toPythonApplication gruut-ipa; + + gx = callPackage ../tools/package-management/gx { }; + gx-go = callPackage ../tools/package-management/gx/go { }; + + efitools = callPackage ../tools/security/efitools { }; + + sbsigntool = callPackage ../tools/security/sbsigntool { }; + + gsmartcontrol = callPackage ../tools/misc/gsmartcontrol { }; + + gsmlib = callPackage ../development/libraries/gsmlib { + autoreconfHook = buildPackages.autoreconfHook269; + }; + + gssdp = callPackage ../development/libraries/gssdp { }; + + gssdp-tools = callPackage ../development/libraries/gssdp/tools.nix { }; + + grype = callPackage ../tools/security/grype { }; + + gt5 = callPackage ../tools/system/gt5 { }; + + gtest = callPackage ../development/libraries/gtest { }; + + gbenchmark = callPackage ../development/libraries/gbenchmark {}; + + gkraken = callPackage ../tools/system/gkraken { }; + + gtkdatabox = callPackage ../development/libraries/gtkdatabox {}; + + gtdialog = callPackage ../development/libraries/gtdialog {}; + + gtkd = callPackage ../development/libraries/gtkd { }; + + gtkgnutella = callPackage ../tools/networking/p2p/gtk-gnutella { }; + + gtkperf = callPackage ../development/tools/misc/gtkperf { }; + + gtk-frdp = callPackage ../development/libraries/gtk-frdp {}; + + gtk-vnc = callPackage ../tools/admin/gtk-vnc {}; + + gtmess = callPackage ../applications/networking/instant-messengers/gtmess { + openssl = openssl_1_0_2; + }; + + gup = callPackage ../development/tools/build-managers/gup {}; + + gupnp = callPackage ../development/libraries/gupnp { }; + + gupnp-av = callPackage ../development/libraries/gupnp-av {}; + + gupnp-dlna = callPackage ../development/libraries/gupnp-dlna {}; + + gupnp-igd = callPackage ../development/libraries/gupnp-igd {}; + + gupnp-tools = callPackage ../tools/networking/gupnp-tools {}; + + gvm-tools = with python3.pkgs; toPythonApplication gvm-tools; + + gvpe = callPackage ../tools/networking/gvpe {}; + + gvolicon = callPackage ../tools/audio/gvolicon {}; + + gvproxy = callPackage ../tools/networking/gvproxy { }; + + gzip = callPackage ../tools/compression/gzip { }; + + gzrt = callPackage ../tools/compression/gzrt { }; + + httplab = callPackage ../tools/networking/httplab { }; + + lucky-cli = callPackage ../development/web/lucky-cli { }; + + partclone = callPackage ../tools/backup/partclone { }; + + partimage = callPackage ../tools/backup/partimage { }; + + pgf_graphics = callPackage ../tools/graphics/pgf { }; + + pgformatter = callPackage ../development/tools/pgformatter { }; + + pgloader = callPackage ../development/tools/pgloader { }; + + pgtop = callPackage ../development/tools/pgtop { }; + + pigz = callPackage ../tools/compression/pigz { }; + + pixz = callPackage ../tools/compression/pixz { }; + + plplot = callPackage ../development/libraries/plplot { + inherit (xorg) libX11; + }; + + pxattr = callPackage ../tools/archivers/pxattr { }; + + pxz = callPackage ../tools/compression/pxz { }; + + hans = callPackage ../tools/networking/hans { }; + + h2 = callPackage ../servers/h2 { }; + + h5utils = callPackage ../tools/misc/h5utils { + libmatheval = null; + hdf4 = null; + }; + + haproxy = callPackage ../tools/networking/haproxy { }; + + hackertyper = callPackage ../tools/misc/hackertyper { }; + + haveged = callPackage ../tools/security/haveged { }; + + habitat = callPackage ../applications/networking/cluster/habitat { }; + + hardlink = callPackage ../tools/system/hardlink { }; + + hashcash = callPackage ../tools/security/hashcash { }; + + hashcat = callPackage ../tools/security/hashcat { }; + + hashcat-utils = callPackage ../tools/security/hashcat-utils { }; + + hash_extender = callPackage ../tools/security/hash_extender { }; + + hash-identifier = callPackage ../tools/security/hash-identifier { }; + + hash-slinger = callPackage ../tools/security/hash-slinger { }; + + haskell-language-server = callPackage ../development/tools/haskell/haskell-language-server/withWrapper.nix { }; + + hasmail = callPackage ../applications/networking/mailreaders/hasmail { }; + + haste-client = callPackage ../tools/misc/haste-client { }; + + hal-hardware-analyzer = libsForQt5.callPackage ../applications/science/electronics/hal-hardware-analyzer { }; + + half = callPackage ../development/libraries/half { }; + + halibut = callPackage ../tools/typesetting/halibut { }; + + halide = callPackage ../development/compilers/halide { + llvmPackages = llvmPackages_9; + }; + + ham = pkgs.perlPackages.ham; + + hardinfo = callPackage ../tools/system/hardinfo { }; + + hcl2json = callPackage ../applications/misc/hcl2json { }; + + hcxtools = callPackage ../tools/security/hcxtools { }; + + hcxdumptool = callPackage ../tools/security/hcxdumptool { }; + + hdapsd = callPackage ../os-specific/linux/hdapsd { }; + + hdaps-gl = callPackage ../tools/misc/hdaps-gl { }; + + hddtemp = callPackage ../tools/misc/hddtemp { }; + + hdf4 = callPackage ../tools/misc/hdf4 { }; + + hdf5 = callPackage ../tools/misc/hdf5 { + fortranSupport = false; + fortran = gfortran; + }; + + hdf5_1_10 = callPackage ../tools/misc/hdf5/1.10.nix { }; + + hdf5-mpi = hdf5.override { mpiSupport = true; }; + + hdf5-cpp = hdf5.override { cppSupport = true; }; + + hdf5-fortran = hdf5.override { fortranSupport = true; }; + + hdf5-threadsafe = hdf5.override { threadsafe = true; }; + + hdf5-blosc = callPackage ../development/libraries/hdf5-blosc { }; + + hdfview = callPackage ../tools/misc/hdfview { + hdf5 = hdf5_1_10; + }; + + hecate = callPackage ../applications/editors/hecate { }; + + heaptrack = libsForQt5.callPackage ../development/tools/profiling/heaptrack {}; + + heimdall = libsForQt5.callPackage ../tools/misc/heimdall { }; + + heimdall-gui = heimdall.override { enableGUI = true; }; + + headscale = callPackage ../servers/headscale { }; + + heisenbridge = callPackage ../servers/heisenbridge { }; + + helio-workstation = callPackage ../applications/audio/helio-workstation { }; + + hevea = callPackage ../tools/typesetting/hevea { }; + + hexd = callPackage ../tools/misc/hexd { }; + pixd = callPackage ../tools/misc/pixd { }; + + hey = callPackage ../tools/networking/hey { }; + + hhpc = callPackage ../tools/misc/hhpc { }; + + hiera-eyaml = callPackage ../tools/system/hiera-eyaml { }; + + hivemind = callPackage ../applications/misc/hivemind { }; + + hobbits = libsForQt5.callPackage ../tools/graphics/hobbits { }; + + hfsprogs = callPackage ../tools/filesystems/hfsprogs { }; + + highlight = callPackage ../tools/text/highlight ({ + lua = lua5; + }); + + hockeypuck = callPackage ../servers/hockeypuck/server.nix { }; + + hockeypuck-web = callPackage ../servers/hockeypuck/web.nix { }; + + homesick = callPackage ../tools/misc/homesick { }; + + honcho = callPackage ../tools/system/honcho { }; + + horst = callPackage ../tools/networking/horst { }; + + host = bind.host; + + hostess = callPackage ../development/tools/hostess {}; + + hotpatch = callPackage ../development/libraries/hotpatch { }; + + hotspot = libsForQt5.callPackage ../development/tools/analysis/hotspot { }; + + hping = callPackage ../tools/networking/hping { }; + + hqplayer-desktop = libsForQt5.callPackage ../applications/audio/hqplayer-desktop { }; + + html-proofer = callPackage ../tools/misc/html-proofer { }; + + htmlq = callPackage ../development/tools/htmlq { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + htpdate = callPackage ../tools/networking/htpdate { }; + + http-prompt = callPackage ../tools/networking/http-prompt { }; + + http-getter = callPackage ../applications/networking/flent/http-getter.nix { }; + + httpdirfs = callPackage ../tools/filesystems/httpdirfs { }; + + httpdump = callPackage ../tools/security/httpdump { }; + + httpie = callPackage ../tools/networking/httpie { }; + + httping = callPackage ../tools/networking/httping {}; + + httplz = callPackage ../tools/networking/httplz { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + httpfs2 = callPackage ../tools/filesystems/httpfs { }; + + httpstat = callPackage ../tools/networking/httpstat { }; + + httptunnel = callPackage ../tools/networking/httptunnel { }; + + httpx = callPackage ../tools/security/httpx { }; + + hurl = callPackage ../tools/networking/hurl { }; + + hub = callPackage ../applications/version-management/git-and-tools/hub { }; + + hubicfuse = callPackage ../tools/filesystems/hubicfuse { }; + + humanfriendly = with python3Packages; toPythonApplication humanfriendly; + + hwinfo = callPackage ../tools/system/hwinfo { }; + + hybridreverb2 = callPackage ../applications/audio/hybridreverb2 { + stdenv = gcc8Stdenv; + }; + + hylafaxplus = callPackage ../servers/hylafaxplus { }; + + hyphen = callPackage ../development/libraries/hyphen { }; + + i2c-tools = callPackage ../os-specific/linux/i2c-tools { }; + + i2p = callPackage ../tools/networking/i2p { + jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + + i2pd = callPackage ../tools/networking/i2pd { }; + + iannix = libsForQt5.callPackage ../applications/audio/iannix { }; + + jamulus = libsForQt5.callPackage ../applications/audio/jamulus { }; + + ibm-sw-tpm2 = callPackage ../tools/security/ibm-sw-tpm2 { }; + + ibniz = callPackage ../tools/graphics/ibniz { }; + + icecast = callPackage ../servers/icecast { }; + + icemon = libsForQt5.callPackage ../applications/networking/icemon { }; + + icepeak = haskell.lib.compose.justStaticExecutables haskellPackages.icepeak; + + iceshelf = callPackage ../tools/backup/iceshelf { }; + + darkice = callPackage ../tools/audio/darkice { }; + + deco = callPackage ../applications/misc/deco { }; + + icoutils = callPackage ../tools/graphics/icoutils { }; + + idutils = callPackage ../tools/misc/idutils { }; + + idle3tools = callPackage ../tools/system/idle3tools { }; + + ifcopenshell = with python3Packages; toPythonApplication ifcopenshell; + + iftop = callPackage ../tools/networking/iftop { }; + + ifuse = callPackage ../tools/filesystems/ifuse { }; + ideviceinstaller = callPackage ../tools/misc/ideviceinstaller { }; + idevicerestore = callPackage ../tools/misc/idevicerestore { + inherit (darwin) IOKit; + }; + + inherit (callPackages ../tools/filesystems/irods rec { + stdenv = llvmPackages.libcxxStdenv; + libcxx = llvmPackages.libcxx; + boost = boost17x.override { inherit stdenv; }; + fmt = fmt_8.override { inherit stdenv; }; + nanodbc_llvm = nanodbc.override { inherit stdenv; }; + avro-cpp_llvm = avro-cpp.override { inherit stdenv boost; }; + }) + irods + irods-icommands; + + ignite = callPackage ../applications/virtualization/ignite { }; + + igmpproxy = callPackage ../tools/networking/igmpproxy { }; + + ihaskell = callPackage ../development/tools/haskell/ihaskell/wrapper.nix { + inherit (haskellPackages) ghcWithPackages; + + jupyter = python3.withPackages (ps: [ ps.jupyter ps.notebook ]); + + packages = config.ihaskell.packages or (_: []); + }; + + ijq = callPackage ../development/tools/ijq { }; + + iruby = callPackage ../applications/editors/jupyter-kernels/iruby { }; + + ike-scan = callPackage ../tools/security/ike-scan { }; + + imapsync = callPackage ../tools/networking/imapsync { }; + + imgur-screenshot = callPackage ../tools/graphics/imgur-screenshot { }; + + imgurbash2 = callPackage ../tools/graphics/imgurbash2 { }; + + in-formant = callPackage ../applications/audio/in-formant { }; + + inadyn = callPackage ../tools/networking/inadyn { }; + + incron = callPackage ../tools/system/incron { }; + + industrializer = callPackage ../applications/audio/industrializer { }; + + inetutils = callPackage ../tools/networking/inetutils { }; + + inferno = callPackage ../development/tools/inferno { }; + + inform6 = callPackage ../development/compilers/inform6 { }; + + inform7 = callPackage ../development/compilers/inform7 { }; + + infamousPlugins = callPackage ../applications/audio/infamousPlugins { }; + + innernet = callPackage ../tools/networking/innernet { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + innoextract = callPackage ../tools/archivers/innoextract { }; + + input-remapper = python3Packages.callPackage ../tools/inputmethods/input-remapper { }; + + input-utils = callPackage ../os-specific/linux/input-utils { }; + + inql = callPackage ../tools/security/inql { }; + + intecture-agent = callPackage ../tools/admin/intecture/agent.nix { }; + + intecture-auth = callPackage ../tools/admin/intecture/auth.nix { }; + + intecture-cli = callPackage ../tools/admin/intecture/cli.nix { + openssl = openssl_1_0_2; + }; + + intel-media-sdk = callPackage ../development/libraries/intel-media-sdk { }; + + intermodal = callPackage ../tools/misc/intermodal { }; + + internetarchive = with python3Packages; toPythonApplication internetarchive; + + invidious = callPackage ../servers/invidious { + # needs a specific version of lsquic + lsquic = callPackage ../servers/invidious/lsquic.nix { }; + }; + + invoice2data = callPackage ../tools/text/invoice2data { }; + + inxi = callPackage ../tools/system/inxi { }; + + iodine = callPackage ../tools/networking/iodine { }; + + ioccheck = callPackage ../tools/security/ioccheck { }; + + ioping = callPackage ../tools/system/ioping { }; + + ior = callPackage ../tools/system/ior { }; + + iouyap = callPackage ../tools/networking/iouyap { }; + + ioztat = callPackage ../tools/filesystems/ioztat { }; + + ip2location = callPackage ../tools/networking/ip2location { }; + + ip2unix = callPackage ../tools/networking/ip2unix { }; + + ipad_charge = callPackage ../tools/misc/ipad_charge { }; + + iperf2 = callPackage ../tools/networking/iperf/2.nix { }; + iperf3 = callPackage ../tools/networking/iperf/3.nix { }; + iperf = iperf3; + + ipfs = callPackage ../applications/networking/ipfs { + buildGoModule = buildGo116Module; + }; + ipfs-cluster = callPackage ../applications/networking/ipfs-cluster { }; + + ipfs-migrator-all-fs-repo-migrations = callPackage ../applications/networking/ipfs-migrator/all-migrations.nix { + buildGoModule = buildGo116Module; + }; + ipfs-migrator-unwrapped = callPackage ../applications/networking/ipfs-migrator/unwrapped.nix { }; + ipfs-migrator = callPackage ../applications/networking/ipfs-migrator { }; + + ipget = callPackage ../applications/networking/ipget { }; + + i-pi = with python3Packages; toPythonApplication i-pi; + + iptsd = callPackage ../applications/misc/iptsd { }; + + ipmitool = callPackage ../tools/system/ipmitool {}; + + ipmiutil = callPackage ../tools/system/ipmiutil {}; + + ipmicfg = callPackage ../applications/misc/ipmicfg {}; + + ipmiview = callPackage ../applications/misc/ipmiview {}; + + ipcalc = callPackage ../tools/networking/ipcalc {}; + + netmask = callPackage ../tools/networking/netmask {}; + + netifd = callPackage ../tools/networking/netifd {}; + + ipinfo = callPackage ../tools/networking/ipinfo {}; + + ipscan = callPackage ../tools/security/ipscan { }; + + ipv6calc = callPackage ../tools/networking/ipv6calc {}; + + ipxe = callPackage ../tools/misc/ipxe { }; + + irker = callPackage ../servers/irker { }; + + ised = callPackage ../tools/misc/ised {}; + + isl = isl_0_20; + isl_0_11 = callPackage ../development/libraries/isl/0.11.1.nix { }; + isl_0_14 = callPackage ../development/libraries/isl/0.14.1.nix { }; + isl_0_17 = callPackage ../development/libraries/isl/0.17.1.nix { }; + isl_0_20 = callPackage ../development/libraries/isl/0.20.0.nix { }; + isl_0_24 = callPackage ../development/libraries/isl/0.24.0.nix { }; + + ispike = callPackage ../development/libraries/science/robotics/ispike { + boost = boost16x; + }; + + isrcsubmit = callPackage ../tools/audio/isrcsubmit { }; + + isync = callPackage ../tools/networking/isync { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + itm-tools = callPackage ../development/tools/misc/itm-tools { }; + + ite-backlight = callPackage ../misc/ite-backlight { }; + + iwgtk = callPackage ../tools/networking/iwgtk { }; + + ix = callPackage ../tools/misc/ix { }; + + jaaa = callPackage ../applications/audio/jaaa { }; + + jackett = callPackage ../servers/jackett { }; + + jade = callPackage ../tools/text/sgml/jade { }; + + jadx = callPackage ../tools/security/jadx { }; + + jamesdsp = libsForQt5.callPackage ../applications/audio/jamesdsp { }; + + jazzy = callPackage ../development/tools/jazzy { }; + + jc = with python3Packages; toPythonApplication jc; + + jd = callPackage ../development/tools/jd { }; + + jd-diff-patch = callPackage ../development/tools/jd-diff-patch { }; + + jd-gui = callPackage ../tools/security/jd-gui { }; + + jdiskreport = callPackage ../tools/misc/jdiskreport { }; + + jekyll = callPackage ../applications/misc/jekyll { }; + + jet = callPackage ../development/tools/jet { }; + + jfmt = callPackage ../development/tools/jfmt { }; + + jfsutils = callPackage ../tools/filesystems/jfsutils { }; + + jhead = callPackage ../tools/graphics/jhead { }; + + jid = callPackage ../development/tools/jid { }; + + jing = res.jing-trang; + jing-trang = callPackage ../tools/text/xml/jing-trang { + jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + + jira-cli = callPackage ../development/tools/jira_cli { }; + + jirafeau = callPackage ../servers/web-apps/jirafeau { }; + + jitterentropy = callPackage ../development/libraries/jitterentropy { }; + + jl = haskellPackages.callPackage ../development/tools/jl { }; + + jless = callPackage ../development/tools/jless { + inherit (darwin.apple_sdk.frameworks) AppKit; + }; + + jmespath = callPackage ../development/tools/jmespath { }; + + jmtpfs = callPackage ../tools/filesystems/jmtpfs { }; + + jnettop = callPackage ../tools/networking/jnettop { }; + + jsvc = callPackage ../tools/system/jsvc { }; + + junkie = callPackage ../tools/networking/junkie { }; + + just = callPackage ../development/tools/just { }; + + go-jira = callPackage ../applications/misc/go-jira { }; + + john = callPackage ../tools/security/john { }; + + joplin = nodePackages.joplin; + + joplin-desktop = callPackage ../applications/misc/joplin-desktop { }; + + journaldriver = callPackage ../tools/misc/journaldriver { }; + + jp = callPackage ../development/tools/jp { }; + + jp2a = callPackage ../applications/misc/jp2a { }; + + jpeg-archive = callPackage ../applications/graphics/jpeg-archive { }; + + jpegexiforient = callPackage ../tools/graphics/jpegexiforient { }; + + jpeginfo = callPackage ../applications/graphics/jpeginfo { }; + + jpegoptim = callPackage ../applications/graphics/jpegoptim { }; + + jpegrescan = callPackage ../applications/graphics/jpegrescan { }; + + jpylyzer = with python3Packages; toPythonApplication jpylyzer; + + jq = callPackage ../development/tools/jq { }; + + jiq = callPackage ../development/tools/misc/jiq { }; + + jql = callPackage ../development/tools/jql { }; + + jo = callPackage ../development/tools/jo { }; + + joshuto = callPackage ../applications/misc/joshuto { + inherit (darwin.apple_sdk.frameworks) SystemConfiguration; + }; + + jrnl = callPackage ../applications/misc/jrnl { }; + + jsawk = callPackage ../tools/text/jsawk { }; + + jscoverage = callPackage ../development/tools/misc/jscoverage { }; + + jsduck = callPackage ../development/tools/jsduck { }; + + json-schema-for-humans = with python3Packages; toPythonApplication json-schema-for-humans; + + jsonwatch = callPackage ../tools/misc/jsonwatch { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + jtc = callPackage ../development/tools/jtc { }; + + jumpapp = callPackage ../tools/X11/jumpapp {}; + + jove = callPackage ../applications/editors/jove {}; + + jucipp = callPackage ../applications/editors/jucipp { }; + + jugglinglab = callPackage ../tools/misc/jugglinglab { }; + + jupp = callPackage ../applications/editors/jupp { }; + + jupyter = callPackage ../applications/editors/jupyter { }; + + jupyter-kernel = callPackage ../applications/editors/jupyter/kernel.nix { }; + + jwhois = callPackage ../tools/networking/jwhois { }; + + k2pdfopt = callPackage ../applications/misc/k2pdfopt { }; + + kargo = callPackage ../tools/misc/kargo { }; + + kazam = callPackage ../applications/video/kazam { }; + + kalibrate-rtl = callPackage ../applications/radio/kalibrate-rtl { }; + + kalibrate-hackrf = callPackage ../applications/radio/kalibrate-hackrf { }; + + wrapKakoune = kakoune: attrs: callPackage ../applications/editors/kakoune/wrapper.nix (attrs // { inherit kakoune; }); + kakounePlugins = recurseIntoAttrs (callPackage ../applications/editors/kakoune/plugins { }); + + kakoune-unwrapped = callPackage ../applications/editors/kakoune { }; + kakoune = wrapKakoune kakoune-unwrapped { + plugins = [ ]; # override with the list of desired plugins + }; + kakouneUtils = callPackage ../applications/editors/kakoune/plugins/kakoune-utils.nix { }; + + kaffeine = libsForQt5.callPackage ../applications/video/kaffeine { }; + + kak-lsp = callPackage ../tools/misc/kak-lsp { + inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration; + }; + + kakoune-cr = callPackage ../tools/misc/kakoune-cr { }; + + kbdd = callPackage ../applications/window-managers/kbdd { }; + + kbs2 = callPackage ../tools/security/kbs2 { + inherit (darwin.apple_sdk.frameworks) AppKit; + }; + + kdbplus = pkgsi686Linux.callPackage ../applications/misc/kdbplus { }; + + keepalived = callPackage ../tools/networking/keepalived { }; + + kexec-tools = callPackage ../os-specific/linux/kexec-tools { }; + + keepkey_agent = with python3Packages; toPythonApplication keepkey_agent; + + kexpand = callPackage ../development/tools/kexpand { }; + + kent = callPackage ../applications/science/biology/kent { }; + + keybase = callPackage ../tools/security/keybase { + # Reasoning for the inherited apple_sdk.frameworks: + # 1. specific compiler errors about: AVFoundation, AudioToolbox, MediaToolbox + # 2. the rest are added from here: https://github.com/keybase/client/blob/68bb8c893c5214040d86ea36f2f86fbb7fac8d39/go/chat/attachments/preview_darwin.go#L7 + # #cgo LDFLAGS: -framework AVFoundation -framework CoreFoundation -framework ImageIO -framework CoreMedia -framework Foundation -framework CoreGraphics -lobjc + # with the exception of CoreFoundation, due to the warning in https://github.com/NixOS/nixpkgs/blob/master/pkgs/os-specific/darwin/apple-sdk/frameworks.nix#L25 + inherit (darwin.apple_sdk.frameworks) AVFoundation AudioToolbox ImageIO CoreMedia Foundation CoreGraphics MediaToolbox; + }; + + kbfs = callPackage ../tools/security/keybase/kbfs.nix { }; + + keybase-gui = callPackage ../tools/security/keybase/gui.nix { }; + + keychain = callPackage ../tools/misc/keychain { }; + + keyfuzz = callPackage ../tools/inputmethods/keyfuzz { }; + + keyscope = callPackage ../tools/security/keyscope { + inherit (darwin.apple_sdk.frameworks) DiskArbitration Foundation IOKit Security; + }; + + keystore-explorer = callPackage ../applications/misc/keystore-explorer { + jdk = jdk11; + }; + + kfctl = callPackage ../applications/networking/cluster/kfctl { }; + + kibana6 = callPackage ../development/tools/misc/kibana/6.x.nix { }; + kibana6-oss = callPackage ../development/tools/misc/kibana/6.x.nix { + enableUnfree = false; + }; + kibana7 = callPackage ../development/tools/misc/kibana/7.x.nix { }; + kibana = kibana6; + kibana-oss = kibana6-oss; + + kibi = callPackage ../applications/editors/kibi { }; + + kio-fuse = libsForQt5.callPackage ../tools/filesystems/kio-fuse { }; + + kismet = callPackage ../applications/networking/sniffers/kismet { }; + + kiterunner = callPackage ../tools/security/kiterunner { }; + + klick = callPackage ../applications/audio/klick { }; + + klystrack = callPackage ../applications/audio/klystrack { }; + + knockpy = callPackage ../tools/security/knockpy { }; + + kore = callPackage ../development/web/kore { }; + + krakenx = callPackage ../tools/system/krakenx { }; + + partition-manager = libsForQt5.callPackage ../tools/misc/partition-manager { }; + + kpcli = callPackage ../tools/security/kpcli { }; + + kratos = callPackage ../applications/misc/kratos { }; + + krename = libsForQt5.callPackage ../applications/misc/krename { }; + + krunner-pass = libsForQt5.callPackage ../tools/security/krunner-pass { }; + + kronometer = libsForQt5.callPackage ../tools/misc/kronometer { }; + + krop = callPackage ../applications/graphics/krop { }; + + kdiff3 = libsForQt5.callPackage ../tools/text/kdiff3 { }; + + kube-router = callPackage ../applications/networking/cluster/kube-router { }; + + kubepug = callPackage ../development/tools/kubepug { }; + + kubergrunt = callPackage ../applications/networking/cluster/kubergrunt { }; + + kwalletcli = libsForQt5.callPackage ../tools/security/kwalletcli { }; + + peruse = libsForQt5.callPackage ../tools/misc/peruse { }; + + ksmoothdock = libsForQt5.callPackage ../applications/misc/ksmoothdock { }; + + kstars = libsForQt5.callPackage ../applications/science/astronomy/kstars { }; + + kytea = callPackage ../tools/text/kytea { }; + + k6 = callPackage ../development/tools/k6 { }; + + l2md = callPackage ../tools/text/l2md { }; + + lab = callPackage ../applications/version-management/git-and-tools/lab { }; + + lalezar-fonts = callPackage ../data/fonts/lalezar-fonts { }; + + last-resort = callPackage ../data/fonts/last-resort {}; + + ldc = callPackage ../development/compilers/ldc { }; + + ligo = callPackage ../development/compilers/ligo { + coq = coq_8_14; + }; + + ldgallery = callPackage ../tools/graphics/ldgallery { + inherit (darwin.apple_sdk.frameworks) CoreServices; + }; + + lefthook = callPackage ../applications/version-management/git-and-tools/lefthook { }; + + lego = callPackage ../tools/admin/lego { }; + + leocad = libsForQt5.callPackage ../applications/graphics/leocad { }; + + less = callPackage ../tools/misc/less { }; + + lf = callPackage ../tools/misc/lf {}; + + lha = callPackage ../tools/archivers/lha { }; + + lhasa = callPackage ../tools/compression/lhasa {}; + + libcpuid = callPackage ../tools/misc/libcpuid { }; + + libcsptr = callPackage ../development/libraries/libcsptr { }; + + libgovirt = callPackage ../applications/virtualization/libgovirt { }; + + libscrypt = callPackage ../development/libraries/libscrypt { }; + + libcloudproviders = callPackage ../development/libraries/libcloudproviders { }; + + libcoap = callPackage ../applications/networking/libcoap { + autoconf = buildPackages.autoconf269; + }; + + libcryptui = callPackage ../development/libraries/libcryptui { + autoreconfHook = buildPackages.autoreconfHook269; + gtk3 = if stdenv.isDarwin then gtk3-x11 else gtk3; + }; + + libshumate = callPackage ../development/libraries/libshumate { }; + + libsmartcols = callPackage ../development/libraries/libsmartcols { }; + + libsmi = callPackage ../development/libraries/libsmi { }; + + libgen-cli = callPackage ../tools/misc/libgen-cli { }; + + licensor = callPackage ../tools/misc/licensor { }; + + lesspipe = callPackage ../tools/misc/lesspipe { }; + + liquidsoap = callPackage ../tools/audio/liquidsoap/full.nix { + ffmpeg = ffmpeg-full; + }; + + lfs = callPackage ../tools/filesystems/lfs { }; + + lksctp-tools = callPackage ../os-specific/linux/lksctp-tools { }; + + lldpd = callPackage ../tools/networking/lldpd { }; + + lnav = callPackage ../tools/misc/lnav { }; + + lnch = callPackage ../tools/misc/lnch { }; + + loadlibrary = callPackage ../tools/misc/loadlibrary { }; + + loc = callPackage ../development/misc/loc { }; + + lockfileProgs = callPackage ../tools/misc/lockfile-progs { }; + + logstash6 = callPackage ../tools/misc/logstash/6.x.nix { + # https://www.elastic.co/support/matrix#logstash-and-jvm + jre = jdk11_headless; + }; + logstash6-oss = callPackage ../tools/misc/logstash/6.x.nix { + enableUnfree = false; + # https://www.elastic.co/support/matrix#logstash-and-jvm + jre = jdk11_headless; + }; + logstash7 = callPackage ../tools/misc/logstash/7.x.nix { + # https://www.elastic.co/support/matrix#logstash-and-jvm + jre = jdk11_headless; + }; + logstash7-oss = callPackage ../tools/misc/logstash/7.x.nix { + enableUnfree = false; + # https://www.elastic.co/support/matrix#logstash-and-jvm + jre = jdk11_headless; + }; + logstash = logstash6; + + logstash-contrib = callPackage ../tools/misc/logstash/contrib.nix { }; + + lolcat = callPackage ../tools/misc/lolcat { }; + + lottieconverter = callPackage ../tools/misc/lottieconverter { }; + + lpcnetfreedv = callPackage ../development/libraries/lpcnetfreedv { }; + + lsd = callPackage ../tools/misc/lsd { }; + + lsdvd = callPackage ../tools/cd-dvd/lsdvd {}; + + lsyncd = callPackage ../applications/networking/sync/lsyncd { + lua = lua5_2_compat; + }; + + ltwheelconf = callPackage ../applications/misc/ltwheelconf { }; + + lvmsync = callPackage ../tools/backup/lvmsync { }; + + kapp = callPackage ../tools/networking/kapp {}; + + kdbg = libsForQt5.callPackage ../development/tools/misc/kdbg { }; + + kristall = libsForQt5.callPackage ../applications/networking/browsers/kristall { }; + + lagrange = callPackage ../applications/networking/browsers/lagrange { + inherit (darwin.apple_sdk.frameworks) AppKit; + }; + + kzipmix = pkgsi686Linux.callPackage ../tools/compression/kzipmix { }; + + ma1sd = callPackage ../servers/ma1sd { }; + + mailcatcher = callPackage ../development/web/mailcatcher { }; + + makebootfat = callPackage ../tools/misc/makebootfat { }; + + mani = callPackage ../development/tools/mani { }; + + mapcache = callPackage ../servers/mapcache { }; + + mapserver = callPackage ../servers/mapserver { }; + + martin = callPackage ../servers/martin { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + mask = callPackage ../development/tools/mask { }; + + mathpix-snipping-tool = callPackage ../tools/misc/mathpix-snipping-tool { }; + + matrix-conduit = callPackage ../servers/matrix-conduit { }; + + /* Python 3.8 is currently broken with matrix-synapse since `python38Packages.bleach` fails + (https://github.com/NixOS/nixpkgs/issues/76093) */ + matrix-synapse = callPackage ../servers/matrix-synapse { /*python3 = python38;*/ }; + + matrix-synapse-plugins = recurseIntoAttrs matrix-synapse.plugins; + + matrix-synapse-tools = recurseIntoAttrs matrix-synapse.tools; + + matrix-appservice-irc = callPackage ../servers/matrix-synapse/matrix-appservice-irc { }; + + matrix-appservice-slack = callPackage ../servers/matrix-synapse/matrix-appservice-slack {}; + + matrix-appservice-discord = callPackage ../servers/matrix-appservice-discord { }; + + matrix-corporal = callPackage ../servers/matrix-corporal { }; + + mautrix-facebook = callPackage ../servers/mautrix-facebook { }; + + mautrix-signal = recurseIntoAttrs (callPackage ../servers/mautrix-signal { }); + + mautrix-telegram = recurseIntoAttrs (callPackage ../servers/mautrix-telegram { }); + + mautrix-whatsapp = callPackage ../servers/mautrix-whatsapp { }; + + mcfly = callPackage ../tools/misc/mcfly { }; + + m2r = python3Packages.callPackage ../tools/text/m2r { }; + + md2gemini = with python3.pkgs; toPythonApplication md2gemini; + + mdbook = callPackage ../tools/text/mdbook { + inherit (darwin.apple_sdk.frameworks) CoreServices; + }; + + mdbook-graphviz = callPackage ../tools/text/mdbook-graphviz { + inherit (darwin.apple_sdk.frameworks) CoreServices; + }; + + mdbook-katex = callPackage ../tools/text/mdbook-katex { + inherit (darwin.apple_sdk.frameworks) CoreServices; + }; + + mdbook-linkcheck = callPackage ../tools/text/mdbook-linkcheck { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + mdbook-mermaid = callPackage ../tools/text/mdbook-mermaid { + inherit (darwin.apple_sdk.frameworks) CoreServices; + }; + + mdbook-plantuml = callPackage ../tools/text/mdbook-plantuml { + inherit (darwin.apple_sdk.frameworks) CoreServices; + }; + + mdcat = callPackage ../tools/text/mdcat { + inherit (darwin.apple_sdk.frameworks) Security; + inherit (python3Packages) ansi2html; + }; + + medfile = callPackage ../development/libraries/medfile { + hdf5 = hdf5.override { usev110Api = true; }; + }; + + meilisearch = callPackage ../servers/search/meilisearch { + inherit (darwin.apple_sdk.frameworks) Security DiskArbitration Foundation; + }; + + memtester = callPackage ../tools/system/memtester { }; + + mesa-demos = callPackage ../tools/graphics/mesa-demos { }; + + mftrace = callPackage ../tools/typesetting/tex/mftrace { }; + + mhonarc = perlPackages.MHonArc; + + minica = callPackage ../tools/security/minica { }; + + minidlna = callPackage ../tools/networking/minidlna { }; + + minipro = callPackage ../tools/misc/minipro { }; + + minisign = callPackage ../tools/security/minisign { }; + + ministat = callPackage ../tools/misc/ministat { }; + + mjolnir = callPackage ../servers/mjolnir { }; + + mmv = callPackage ../tools/misc/mmv { }; + + mmv-go = callPackage ../tools/misc/mmv-go { }; + + mob = callPackage ../applications/misc/mob { }; + + most = callPackage ../tools/misc/most { }; + + motion = callPackage ../applications/video/motion { }; + + moz-phab = python3Packages.callPackage ../applications/misc/moz-phab { }; + + mtail = callPackage ../servers/monitoring/mtail { }; + + multitail = callPackage ../tools/misc/multitail { }; + + mx-puppet-discord = callPackage ../servers/mx-puppet-discord { }; + + mxt-app = callPackage ../misc/mxt-app { }; + + naabu = callPackage ../tools/security/naabu { }; + + nagstamon = callPackage ../tools/misc/nagstamon { + pythonPackages = python3Packages; + }; + + nats-top = callPackage ../tools/system/nats-top { }; + + natscli = callPackage ../tools/system/natscli { }; + + nbench = callPackage ../tools/misc/nbench { }; + + nbtscanner = callPackage ../tools/security/nbtscanner { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + ncrack = callPackage ../tools/security/ncrack { }; + + nerdctl = callPackage ../applications/networking/cluster/nerdctl { }; + + netdata = callPackage ../tools/system/netdata { + inherit (darwin.apple_sdk.frameworks) CoreFoundation IOKit; + }; + + netsurf = recurseIntoAttrs (callPackage ../applications/networking/browsers/netsurf { }); + netsurf-browser = netsurf.browser; + + netperf = callPackage ../applications/networking/netperf { }; + + netsniff-ng = callPackage ../tools/networking/netsniff-ng { }; + + nkeys = callPackage ../tools/system/nkeys { }; + + nyxt = callPackage ../applications/networking/browsers/nyxt { }; + + nfpm = callPackage ../tools/package-management/nfpm { }; + + nginx-config-formatter = callPackage ../tools/misc/nginx-config-formatter { }; + + ninka = callPackage ../development/tools/misc/ninka { }; + + nixnote2 = libsForQt514.callPackage ../applications/misc/nixnote2 { }; + + nodenv = callPackage ../development/tools/nodenv { }; + + nodejs = hiPrio nodejs-16_x; + + nodejs-slim = nodejs-slim-16_x; + + + nodejs-10_x = callPackage ../development/web/nodejs/v10.nix { + icu = icu67; + }; + nodejs-slim-10_x = callPackage ../development/web/nodejs/v10.nix { + enableNpm = false; + icu = icu67; + }; + nodejs-12_x = callPackage ../development/web/nodejs/v12.nix { }; + nodejs-slim-12_x = callPackage ../development/web/nodejs/v12.nix { + enableNpm = false; + }; + nodejs-14_x = callPackage ../development/web/nodejs/v14.nix { }; + nodejs-slim-14_x = callPackage ../development/web/nodejs/v14.nix { + enableNpm = false; + }; + nodejs-16_x = callPackage ../development/web/nodejs/v16.nix { }; + nodejs-slim-16_x = callPackage ../development/web/nodejs/v16.nix { + enableNpm = false; + }; + nodejs-17_x = callPackage ../development/web/nodejs/v17.nix { }; + nodejs-slim-17_x = callPackage ../development/web/nodejs/v17.nix { + enableNpm = false; + }; + # Update this when adding the newest nodejs major version! + # Do not set to nodejs-17_x because it requires 10.13 SDK on Darwin + nodejs_latest = nodejs-16_x; + nodejs-slim_latest = nodejs-slim-16_x; + + nodePackages_latest = dontRecurseIntoAttrs nodejs_latest.pkgs; + + nodePackages = (dontRecurseIntoAttrs nodejs.pkgs).override { + # It does not work on 16.x: https://github.com/NixOS/nixpkgs/issues/132456 + nodejs = nodejs-14_x; + }; + + np2kai = callPackage ../applications/emulators/np2kai { }; + + openipmi = callPackage ../tools/system/openipmi { }; + + ox = callPackage ../applications/editors/ox { }; + + file-rename = callPackage ../tools/filesystems/file-rename { }; + + kcollectd = libsForQt5.callPackage ../tools/misc/kcollectd {}; + + kea = callPackage ../tools/networking/kea { }; + + ispell = callPackage ../tools/text/ispell {}; + + iodash = callPackage ../development/libraries/iodash { }; + + jbofihe = callPackage ../tools/text/jbofihe {}; + + jumanpp = callPackage ../tools/text/jumanpp {}; + + jump = callPackage ../tools/system/jump {}; + + latex2html = callPackage ../tools/misc/latex2html { }; + + latexrun = callPackage ../tools/typesetting/tex/latexrun { }; + + lcdf-typetools = callPackage ../tools/misc/lcdf-typetools { }; + + ldapvi = callPackage ../tools/misc/ldapvi { }; + + ldeep = python3Packages.callPackage ../tools/security/ldeep { }; + + ldns = callPackage ../development/libraries/ldns { }; + + leafpad = callPackage ../applications/editors/leafpad { }; + + leatherman = callPackage ../development/libraries/leatherman { }; + + ledit = callPackage ../tools/misc/ledit { + inherit (ocaml-ng.ocamlPackages_4_12) ocaml camlp5; + }; + + ledmon = callPackage ../tools/system/ledmon { }; + + leela = callPackage ../tools/graphics/leela { }; + + lethe = callPackage ../tools/security/lethe { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + lftp = callPackage ../tools/networking/lftp { }; + + libck = callPackage ../development/libraries/libck { }; + + libcork = callPackage ../development/libraries/libcork { }; + + libconfig = callPackage ../development/libraries/libconfig { }; + + libcmis = callPackage ../development/libraries/libcmis { }; + + libee = callPackage ../development/libraries/libee { }; + + libepc = callPackage ../development/libraries/libepc { }; + + liberfa = callPackage ../development/libraries/liberfa { }; + + libestr = callPackage ../development/libraries/libestr { }; + + libevdev = callPackage ../development/libraries/libevdev { }; + + liberio = callPackage ../development/libraries/liberio { }; + + libevdevplus = callPackage ../development/libraries/libevdevplus { }; + + libfann = callPackage ../development/libraries/libfann { }; + + libfsm = callPackage ../development/libraries/libfsm { }; + + libgaminggear = callPackage ../development/libraries/libgaminggear { }; + + libhandy = callPackage ../development/libraries/libhandy { }; + + # Needed for apps that still depend on the unstable verison of the library (not libhandy-1) + libhandy_0 = callPackage ../development/libraries/libhandy/0.x.nix { }; + + libgmpris = callPackage ../development/libraries/libgmpris { }; + + libgumath = callPackage ../development/libraries/libgumath { }; + + libinsane = callPackage ../development/libraries/libinsane { }; + + libint = callPackage ../development/libraries/libint {}; + + libipfix = callPackage ../development/libraries/libipfix { }; + + libircclient = callPackage ../development/libraries/libircclient { }; + + libiscsi = callPackage ../development/libraries/libiscsi { }; + + libisds = callPackage ../development/libraries/libisds { }; + + libite = callPackage ../development/libraries/libite { }; + + liblangtag = callPackage ../development/libraries/liblangtag { + inherit (gnome) gnome-common; + }; + + liblouis = callPackage ../development/libraries/liblouis { }; + + liboauth = callPackage ../development/libraries/liboauth { }; + + libr3 = callPackage ../development/libraries/libr3 { }; + + libraspberrypi = callPackage ../development/libraries/libraspberrypi { }; + + libsidplayfp = callPackage ../development/libraries/libsidplayfp { }; + + libspf2 = callPackage ../development/libraries/libspf2 { }; + + libsrs2 = callPackage ../development/libraries/libsrs2 { }; + + libtermkey = callPackage ../development/libraries/libtermkey { }; + + libtelnet = callPackage ../development/libraries/libtelnet { }; + + libtirpc = callPackage ../development/libraries/ti-rpc { }; + + libtins = callPackage ../development/libraries/libtins { }; + + libtree = callPackage ../development/tools/misc/libtree { }; + + libshout = callPackage ../development/libraries/libshout { }; + + libqb = callPackage ../development/libraries/libqb { }; + + libqmi = callPackage ../development/libraries/libqmi { }; + + libqrtr-glib = callPackage ../development/libraries/libqrtr-glib { }; + + libmbim = callPackage ../development/libraries/libmbim { }; + + libmongo-client = callPackage ../development/libraries/libmongo-client { }; + + libmesode = callPackage ../development/libraries/libmesode {}; + + libmsym = callPackage ../development/libraries/science/chemistry/libmsym { }; + + libnabo = callPackage ../development/libraries/libnabo { }; + + libngspice = callPackage ../development/libraries/libngspice { }; + + libnixxml = callPackage ../development/libraries/libnixxml { }; + + libplctag = callPackage ../development/libraries/libplctag { }; + + libpointmatcher = callPackage ../development/libraries/libpointmatcher { }; + + libportal = callPackage ../development/libraries/libportal { }; + libportal-gtk3 = libportal.override { variant = "gtk3"; }; + libportal-gtk4 = libportal.override { variant = "gtk4"; }; + libportal-qt5 = libportal.override { variant = "qt5"; }; + + libmicrodns = callPackage ../development/libraries/libmicrodns { }; + + libnids = callPackage ../tools/networking/libnids { }; + + rakshasa-rtorrent = recurseIntoAttrs + (callPackage ../tools/networking/p2p/rakshasa-rtorrent { + callPackage = newScope pkgs.rakshasa-rtorrent; + }); + + rtorrent = rakshasa-rtorrent.rtorrent; + libtorrent = rakshasa-rtorrent.libtorrent; + + jesec-rtorrent = recurseIntoAttrs + (callPackage ../tools/networking/p2p/jesec-rtorrent { + callPackage = newScope pkgs.jesec-rtorrent; + }); + + rtorrent-jesec = jesec-rtorrent.rtorrent; + libtorrent-jesec = jesec-rtorrent.libtorrent; + + libmpack = callPackage ../development/libraries/libmpack { }; + + libiberty = callPackage ../development/libraries/libiberty { }; + + libucl = callPackage ../development/libraries/libucl { }; + + libxc = callPackage ../development/libraries/libxc { }; + + libxcomp = callPackage ../development/libraries/libxcomp { }; + + libxl = callPackage ../development/libraries/libxl {}; + + libx86emu = callPackage ../development/libraries/libx86emu { }; + + libzim = callPackage ../development/libraries/libzim {}; + + + libzmf = callPackage ../development/libraries/libzmf {}; + + libreddit = callPackage ../servers/libreddit { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + librespeed-cli = callPackage ../tools/misc/librespeed-cli { }; + + libreswan = callPackage ../tools/networking/libreswan { }; + + librest = callPackage ../development/libraries/librest { }; + + inherit (callPackages ../development/libraries/libwebsockets { }) + libwebsockets_3_1 + libwebsockets_3_2 + libwebsockets_4_2 + libwebsockets_4_3; + libwebsockets = libwebsockets_4_3; + + licensee = callPackage ../tools/package-management/licensee { }; + + lidarr = callPackage ../servers/lidarr { }; + + limesuite = callPackage ../applications/radio/limesuite { }; + + limesurvey = callPackage ../servers/limesurvey { }; + + linuxquota = callPackage ../tools/misc/linuxquota { }; + + liquidctl = with python3Packages; toPythonApplication liquidctl; + + lmp = callPackage ../tools/security/lmp { }; + + localtime = callPackage ../tools/system/localtime { }; + + log4j-detect = callPackage ../tools/security/log4j-detect { }; + + log4j-scan = callPackage ../tools/security/log4j-scan { }; + + log4j-sniffer = callPackage ../tools/security/log4j-sniffer { }; + + log4j-vuln-scanner = callPackage ../tools/security/log4j-vuln-scanner { }; + + log4jcheck = callPackage ../tools/security/log4jcheck { }; + + log4shell-detector = callPackage ../tools/security/log4shell-detector { }; + + logcheck = callPackage ../tools/system/logcheck { }; + + logmap = callPackage ../tools/security/logmap { }; + + logmein-hamachi = callPackage ../tools/networking/logmein-hamachi { }; + + logkeys = callPackage ../tools/security/logkeys { }; + + logrotate = callPackage ../tools/system/logrotate { }; + + logstalgia = callPackage ../tools/graphics/logstalgia {}; + + lokalise2-cli = callPackage ../tools/misc/lokalise2-cli { }; + + loki = callPackage ../development/libraries/loki { }; + + longview = callPackage ../servers/monitoring/longview { }; + + lout = callPackage ../tools/typesetting/lout { }; + + lr = callPackage ../tools/system/lr { }; + + lrzip = callPackage ../tools/compression/lrzip { }; + + lsb-release = callPackage ../os-specific/linux/lsb-release { }; + + # lsh installs `bin/nettle-lfib-stream' and so does Nettle. Give the + # former a lower priority than Nettle. + lsh = lowPrio (callPackage ../tools/networking/lsh { }); + + lshw = callPackage ../tools/system/lshw { }; + + lunatic = callPackage ../development/interpreters/lunatic { }; + + lv = callPackage ../tools/text/lv { }; + + lxc = callPackage ../os-specific/linux/lxc { + autoreconfHook = buildPackages.autoreconfHook269; + }; + lxcfs = callPackage ../os-specific/linux/lxcfs { }; + lxd = callPackage ../tools/admin/lxd { }; + + lxd-image-server = callPackage ../tools/virtualization/lxd-image-server { }; + + lzfse = callPackage ../tools/compression/lzfse { }; + + lzham = callPackage ../tools/compression/lzham { }; + + lzip = callPackage ../tools/compression/lzip { }; + + lziprecover = callPackage ../tools/compression/lziprecover { }; + + luxcorerender = callPackage ../tools/graphics/luxcorerender { + openimagedenoise = openimagedenoise_1_2_x; + }; + + xz = callPackage ../tools/compression/xz { }; + + lz4 = callPackage ../tools/compression/lz4 { }; + + lzbench = callPackage ../tools/compression/lzbench { }; + + lzop = callPackage ../tools/compression/lzop { }; + + lzwolf = callPackage ../games/lzwolf { }; + + macchanger = callPackage ../os-specific/linux/macchanger { }; + + macchina = callPackage ../tools/misc/macchina { + inherit (darwin.apple_sdk.frameworks) Foundation; + }; + + madlang = haskell.lib.compose.justStaticExecutables haskellPackages.madlang; + + maeparser = callPackage ../development/libraries/maeparser { }; + + mailcheck = callPackage ../applications/networking/mailreaders/mailcheck { }; + + maildrop = callPackage ../tools/networking/maildrop { }; + + mailhog = callPackage ../servers/mail/mailhog {}; + + mailnag = callPackage ../applications/networking/mailreaders/mailnag { + availablePlugins = { + # More are listed here: https://github.com/pulb/mailnag/#desktop-integration + # Use the attributes here as arguments to `plugins` list + goa = callPackage ../applications/networking/mailreaders/mailnag/goa-plugin.nix { }; + }; + }; + mailnagWithPlugins = mailnag.withPlugins( + builtins.attrValues mailnag.availablePlugins + ); + bubblemail = callPackage ../applications/networking/mailreaders/bubblemail { }; + + mailsend = callPackage ../tools/networking/mailsend { }; + + mailutils = callPackage ../tools/networking/mailutils { + sasl = gsasl; + }; + + email = callPackage ../tools/networking/email { }; + + maim = callPackage ../tools/graphics/maim {}; + + mairix = callPackage ../tools/text/mairix { }; + + makemkv = libsForQt5.callPackage ../applications/video/makemkv { }; + + makerpm = callPackage ../development/tools/makerpm { }; + + makefile2graph = callPackage ../development/tools/analysis/makefile2graph { }; + + man = man-db; + + man-db = callPackage ../tools/misc/man-db { }; + + mandoc = callPackage ../tools/misc/mandoc { }; + + mangohud = callPackage ../tools/graphics/mangohud { + libXNVCtrl = linuxPackages.nvidia_x11.settings.libXNVCtrl; + mangohud32 = pkgsi686Linux.mangohud; + }; + + manix = callPackage ../tools/nix/manix { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + marktext = callPackage ../applications/misc/marktext { }; + + mars-mips = callPackage ../development/tools/mars-mips { }; + + mawk = callPackage ../tools/text/mawk { }; + + mb2md = callPackage ../tools/text/mb2md { }; + + mbox = callPackage ../tools/security/mbox { }; + + mbuffer = callPackage ../tools/misc/mbuffer { }; + + mdsh = callPackage ../development/tools/documentation/mdsh { }; + + mecab = + let + mecab-nodic = callPackage ../tools/text/mecab/nodic.nix { }; + in + callPackage ../tools/text/mecab { + mecab-ipadic = callPackage ../tools/text/mecab/ipadic.nix { + inherit mecab-nodic; + }; + }; + + mediawiki = callPackage ../servers/web-apps/mediawiki { }; + + memtier-benchmark = callPackage ../tools/networking/memtier-benchmark { }; + + memtest86-efi = callPackage ../tools/misc/memtest86-efi { }; + + memtest86plus = callPackage ../tools/misc/memtest86+ { }; + + meo = callPackage ../tools/security/meo { + boost = boost155; + }; + + mbutil = python3Packages.callPackage ../applications/misc/mbutil { }; + + mc = callPackage ../tools/misc/mc { + inherit (darwin) autoSignDarwinBinariesHook; + }; + + mcabber = callPackage ../applications/networking/instant-messengers/mcabber { }; + + mcron = callPackage ../tools/system/mcron { + guile = guile_1_8; + }; + + mcstatus = with python3Packages; toPythonApplication mcstatus; + + mdbtools = callPackage ../tools/misc/mdbtools { }; + + mdk = callPackage ../development/tools/mdk { }; + + mdk4 = callPackage ../tools/networking/mdk4 { }; + + mdp = callPackage ../applications/misc/mdp { }; + + mednafen = callPackage ../applications/emulators/mednafen { + inherit (darwin) libiconv; + }; + + mednafen-server = callPackage ../applications/emulators/mednafen/server.nix { }; + + mednaffe = callPackage ../applications/emulators/mednaffe { }; + + megacli = callPackage ../tools/misc/megacli { }; + + megatools = callPackage ../tools/networking/megatools { }; + + memo = callPackage ../applications/misc/memo { }; + + mencal = callPackage ../applications/misc/mencal { } ; + + metar = callPackage ../applications/misc/metar { }; + + mfcuk = callPackage ../tools/security/mfcuk { }; + + mfoc = callPackage ../tools/security/mfoc { }; + + mgba = libsForQt5.callPackage ../applications/emulators/mgba { }; + + microdnf = callPackage ../tools/package-management/microdnf { }; + + microplane = callPackage ../tools/misc/microplane { }; + + microserver = callPackage ../servers/microserver { }; + + midisheetmusic = callPackage ../applications/audio/midisheetmusic { }; + + mikutter = callPackage ../applications/networking/instant-messengers/mikutter { }; + + mimeo = callPackage ../tools/misc/mimeo { }; + + mimetic = callPackage ../development/libraries/mimetic { }; + + minio-client = callPackage ../tools/networking/minio-client { }; + + minio-certgen = callPackage ../tools/security/minio-certgen { }; + + minissdpd = callPackage ../tools/networking/minissdpd { }; + + inherit (callPackage ../tools/networking/miniupnpc + { inherit (darwin) cctools; }) + miniupnpc_1 miniupnpc_2; + miniupnpc = miniupnpc_1; + + miniupnpd = callPackage ../tools/networking/miniupnpd { }; + + miniball = callPackage ../development/libraries/miniball { }; + + minijail = callPackage ../tools/system/minijail { }; + + minijail-tools = python3.pkgs.callPackage ../tools/system/minijail/tools.nix { }; + + minixml = callPackage ../development/libraries/minixml { }; + + mir-qualia = callPackage ../tools/text/mir-qualia { + pythonPackages = python3Packages; + }; + + mirakurun = callPackage ../applications/video/mirakurun { }; + + miredo = callPackage ../tools/networking/miredo { }; + + mirrorbits = callPackage ../servers/mirrorbits { }; + + mitmproxy = with python3Packages; toPythonApplication mitmproxy; + + mjpegtools = callPackage ../tools/video/mjpegtools { }; + + mjpegtoolsFull = mjpegtools.override { + withMinimal = false; + }; + + mkclean = callPackage ../applications/video/mkclean {}; + + mkcue = callPackage ../tools/cd-dvd/mkcue { }; + + mkp224o = callPackage ../tools/security/mkp224o { }; + + mkpasswd = hiPrio (callPackage ../tools/security/mkpasswd { }); + + mkrand = callPackage ../tools/security/mkrand { }; + + mktemp = callPackage ../tools/security/mktemp { }; + + mktorrent = callPackage ../tools/misc/mktorrent { }; + + mmake = callPackage ../tools/misc/mmake { }; + + mmixware = callPackage ../development/tools/mmixware { }; + + modemmanager = callPackage ../tools/networking/modemmanager {}; + + modem-manager-gui = callPackage ../applications/networking/modem-manager-gui {}; + + modsecurity_standalone = callPackage ../tools/security/modsecurity { }; + + modsecurity-crs = callPackage ../tools/security/modsecurity-crs { }; + + molly-guard = callPackage ../os-specific/linux/molly-guard { }; + + molotov = callPackage ../applications/video/molotov {}; + + moneyplex = callPackage ../applications/office/moneyplex { }; + + monit = callPackage ../tools/system/monit { }; + + monolith = callPackage ../tools/backup/monolith { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + moreutils = callPackage ../tools/misc/moreutils { + docbook-xsl = docbook_xsl; + }; + + mole = callPackage ../tools/networking/mole { }; + + morgen = callPackage ../applications/office/morgen { + electron = electron_15; + }; + + mosh = callPackage ../tools/networking/mosh { }; + + mpage = callPackage ../tools/text/mpage { }; + + mprime = callPackage ../tools/misc/mprime { }; + + mpw = callPackage ../tools/security/mpw { }; + + mr = callPackage ../applications/version-management/mr { }; + + mrsh = callPackage ../shells/mrsh { }; + + mrtg = callPackage ../tools/misc/mrtg { }; + + mscgen = callPackage ../tools/graphics/mscgen { }; + + metabigor = callPackage ../tools/security/metabigor { }; + + metasploit = callPackage ../tools/security/metasploit { }; + + mhost = callPackage ../applications/networking/mhost { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + ms-sys = callPackage ../tools/misc/ms-sys { }; + + mtdutils = callPackage ../tools/filesystems/mtdutils { }; + + mtools = callPackage ../tools/filesystems/mtools { }; + + mtr = callPackage ../tools/networking/mtr {}; + + mtr-exporter = callPackage ../tools/networking/mtr-exporter {}; + + mtr-gui = callPackage ../tools/networking/mtr { withGtk = true; }; + + mtx = callPackage ../tools/backup/mtx {}; + + mt-st = callPackage ../tools/backup/mt-st {}; + + mubeng = callPackage ../tools/networking/mubeng { }; + + multitime = callPackage ../tools/misc/multitime { }; + + sta = callPackage ../tools/misc/sta {}; + + multitran = recurseIntoAttrs (let callPackage = newScope pkgs.multitran; in { + multitrandata = callPackage ../tools/text/multitran/data { }; + + libbtree = callPackage ../tools/text/multitran/libbtree { }; + + libmtsupport = callPackage ../tools/text/multitran/libmtsupport { }; + + libfacet = callPackage ../tools/text/multitran/libfacet { }; + + libmtquery = callPackage ../tools/text/multitran/libmtquery { }; + + mtutils = callPackage ../tools/text/multitran/mtutils { }; + }); + + munge = callPackage ../tools/security/munge { }; + + mutagen = callPackage ../tools/misc/mutagen { }; + + mycli = callPackage ../tools/admin/mycli { }; + + mycrypto = callPackage ../applications/blockchains/mycrypto { }; + + mydumper = callPackage ../tools/backup/mydumper { }; + + mylvmbackup = callPackage ../tools/backup/mylvmbackup { }; + + mysql2pgsql = callPackage ../tools/misc/mysql2pgsql { }; + + mysqltuner = callPackage ../tools/misc/mysqltuner { }; + + mytetra = libsForQt5.callPackage ../applications/office/mytetra { }; + + nabi = callPackage ../tools/inputmethods/nabi { }; + + nahid-fonts = callPackage ../data/fonts/nahid-fonts { }; + + namazu = callPackage ../tools/text/namazu { }; + + nasty = callPackage ../tools/security/nasty { }; + + nat-traverse = callPackage ../tools/networking/nat-traverse { }; + + navi = callPackage ../applications/misc/navi { }; + + navilu-font = callPackage ../data/fonts/navilu { stdenv = stdenvNoCC; }; + + nawk = callPackage ../tools/text/nawk { }; + + nbd = callPackage ../tools/networking/nbd { }; + xnbd = callPackage ../tools/networking/xnbd { }; + + nccl = callPackage ../development/libraries/science/math/nccl { }; + nccl_cudatoolkit_10 = nccl.override { cudatoolkit = cudatoolkit_10; }; + nccl_cudatoolkit_11 = nccl.override { cudatoolkit = cudatoolkit_11; }; + + ndjbdns = callPackage ../tools/networking/ndjbdns { }; + + ndppd = callPackage ../applications/networking/ndppd { }; + + nebula = callPackage ../tools/networking/nebula { }; + + nemiver = callPackage ../development/tools/nemiver { }; + + neo-cowsay = callPackage ../tools/misc/neo-cowsay { }; + + neochat = libsForQt5.callPackage ../applications/networking/instant-messengers/neochat { }; + + neofetch = callPackage ../tools/misc/neofetch { }; + + nerdfonts = callPackage ../data/fonts/nerdfonts { }; + + nestopia = callPackage ../applications/emulators/nestopia { }; + + netatalk = callPackage ../tools/filesystems/netatalk { }; + + netavark = callPackage ../tools/networking/netavark { }; + + netcdf = callPackage ../development/libraries/netcdf { + hdf5 = hdf5.override { usev110Api = true; }; + }; + + netcdf-mpi = netcdf.override { + hdf5 = hdf5-mpi.override { usev110Api = true; }; + }; + + netcdfcxx4 = callPackage ../development/libraries/netcdf-cxx4 { }; + + netcdffortran = callPackage ../development/libraries/netcdf-fortran { + inherit (darwin.apple_sdk.frameworks) CoreFoundation; + }; + + networking-ts-cxx = callPackage ../development/libraries/networking-ts-cxx { }; + + nco = callPackage ../development/libraries/nco { }; + + ncftp = callPackage ../tools/networking/ncftp { }; + + ncgopher = callPackage ../applications/networking/ncgopher { }; + + ncompress = callPackage ../tools/compression/ncompress { }; + + ndisc6 = callPackage ../tools/networking/ndisc6 { }; + + neopg = callPackage ../tools/security/neopg { }; + + netboot = callPackage ../tools/networking/netboot {}; + + netbootxyz-efi = callPackage ../tools/misc/netbootxyz-efi { }; + + netcat = libressl.nc; + + netcat-gnu = callPackage ../tools/networking/netcat { }; + + netdiscover = callPackage ../tools/networking/netdiscover { }; + + nethogs = callPackage ../tools/networking/nethogs { }; + + netkittftp = callPackage ../tools/networking/netkit/tftp { }; + + netlify-cli = callPackage ../development/web/netlify-cli { }; + + netpbm = callPackage ../tools/graphics/netpbm { }; + + netrw = callPackage ../tools/networking/netrw { }; + + netselect = callPackage ../tools/networking/netselect { }; + + nettee = callPackage ../tools/networking/nettee { + inherit (skawarePackages) cleanPackaging; + }; + + networkmanager = callPackage ../tools/networking/networkmanager { }; + + networkmanager-iodine = callPackage ../tools/networking/networkmanager/iodine { }; + + networkmanager-openvpn = callPackage ../tools/networking/networkmanager/openvpn { }; + + networkmanager-l2tp = callPackage ../tools/networking/networkmanager/l2tp { }; + + networkmanager-vpnc = callPackage ../tools/networking/networkmanager/vpnc { }; + + networkmanager-openconnect = callPackage ../tools/networking/networkmanager/openconnect { }; + + networkmanager-fortisslvpn = callPackage ../tools/networking/networkmanager/fortisslvpn { }; + + networkmanager_strongswan = callPackage ../tools/networking/networkmanager/strongswan { }; + + networkmanager-sstp = callPackage ../tools/networking/networkmanager/sstp { }; + + networkmanagerapplet = callPackage ../tools/networking/networkmanager/applet { }; + + libnma = callPackage ../tools/networking/networkmanager/libnma { }; + + libnma-gtk4 = libnma.override { withGtk4 = true; }; + + networkmanager_dmenu = callPackage ../tools/networking/networkmanager/dmenu { }; + + nm-tray = libsForQt5.callPackage ../tools/networking/networkmanager/tray.nix { }; + + newsboat = callPackage ../applications/networking/feedreaders/newsboat { + inherit (darwin.apple_sdk.frameworks) Security Foundation; + }; + + grocy = callPackage ../servers/grocy { }; + + inherit (callPackage ../servers/nextcloud {}) + nextcloud20 nextcloud21 nextcloud22 nextcloud23; + + nextcloud-client = libsForQt5.callPackage ../applications/networking/nextcloud-client { }; + + nextcloud-news-updater = callPackage ../servers/nextcloud/news-updater.nix { }; + + ndstool = callPackage ../tools/archivers/ndstool { }; + + nfs-ganesha = callPackage ../servers/nfs-ganesha { }; + + ngrep = callPackage ../tools/networking/ngrep { }; + + neuron-notes = haskell.lib.compose.justStaticExecutables (haskell.lib.compose.generateOptparseApplicativeCompletion "neuron" haskellPackages.neuron); + + ngrok = ngrok-2; + + ngrok-2 = callPackage ../tools/networking/ngrok-2 { }; + + ngrok-1 = callPackage ../tools/networking/ngrok-1 { }; + + nitter = callPackage ../servers/nitter { }; + + noice = callPackage ../applications/misc/noice { }; + + noip = callPackage ../tools/networking/noip { }; + + nomad = nomad_1_2; + + # Nomad never updates major go versions within a release series and is unsupported + # on Go versions that it did not ship with. Due to historic bugs when compiled + # with different versions we pin Go for all versions. + # Upstream partially documents used Go versions here + # https://github.com/hashicorp/nomad/blob/master/contributing/golang.md + nomad_1_1 = callPackage ../applications/networking/cluster/nomad/1.1.nix { + buildGoModule = buildGo116Module; + inherit (linuxPackages) nvidia_x11; + nvidiaGpuSupport = config.cudaSupport or false; + }; + nomad_1_2 = callPackage ../applications/networking/cluster/nomad/1.2.nix { + buildGoModule = buildGo117Module; + inherit (linuxPackages) nvidia_x11; + nvidiaGpuSupport = config.cudaSupport or false; + }; + + nomad-autoscaler = callPackage ../applications/networking/cluster/nomad-autoscaler { }; + + nomad-driver-podman = callPackage ../applications/networking/cluster/nomad-driver-podman { }; + + nomad-pack = callPackage ../applications/networking/cluster/nomad-pack { }; + + nomino = callPackage ../tools/misc/nomino { }; + + notable = callPackage ../applications/misc/notable { }; + + ntlmrecon = callPackage ../tools/security/ntlmrecon { }; + + numberstation = callPackage ../applications/misc/numberstation { }; + + nvchecker = with python3Packages; toPythonApplication nvchecker; + + nvfetcher = haskell.lib.compose.justStaticExecutables haskellPackages.nvfetcher; + + miller = callPackage ../tools/text/miller { }; + + milu = callPackage ../applications/misc/milu { }; + + mkgmap = callPackage ../applications/misc/mkgmap { }; + + mkgmap-splitter = callPackage ../applications/misc/mkgmap/splitter { }; + + mpack = callPackage ../tools/networking/mpack { }; + + mtm = callPackage ../tools/misc/mtm { }; + + pa_applet = callPackage ../tools/audio/pa-applet { }; + + pandoc-acro = python3Packages.callPackage ../tools/misc/pandoc-acro { }; + + pandoc-imagine = python3Packages.callPackage ../tools/misc/pandoc-imagine { }; + + pandoc-drawio-filter = python3Packages.callPackage ../tools/misc/pandoc-drawio-filter { }; + + pandoc-plantuml-filter = python3Packages.callPackage ../tools/misc/pandoc-plantuml-filter { }; + + panicparse = callPackage ../tools/misc/panicparse { }; + + patray = callPackage ../tools/audio/patray { }; + + pasystray = callPackage ../tools/audio/pasystray { }; + + pcmsolver = callPackage ../development/libraries/pcmsolver { }; + + pgbadger = perlPackages.callPackage ../tools/misc/pgbadger { }; + + phash = callPackage ../development/libraries/phash { }; + + pnmixer = callPackage ../tools/audio/pnmixer { }; + + pulsemixer = callPackage ../tools/audio/pulsemixer { }; + + pwsafe = callPackage ../applications/misc/pwsafe { }; + + neil = callPackage ../development/tools/neil { }; + + niff = callPackage ../tools/package-management/niff { }; + + nifskope = libsForQt5.callPackage ../tools/graphics/nifskope { }; + + nilfs-utils = callPackage ../tools/filesystems/nilfs-utils {}; + + nitrogen = callPackage ../tools/X11/nitrogen {}; + + nms = callPackage ../tools/misc/nms { }; + + nomachine-client = callPackage ../tools/admin/nomachine-client { }; + + notify-desktop = callPackage ../tools/misc/notify-desktop {}; + + nkf = callPackage ../tools/text/nkf {}; + + nlopt = callPackage ../development/libraries/nlopt { octave = null; }; + + npapi_sdk = callPackage ../development/libraries/npapi-sdk {}; + + npiet = callPackage ../development/interpreters/npiet { }; + + npth = callPackage ../development/libraries/npth {}; + + nmap = callPackage ../tools/security/nmap { }; + + nmap-graphical = nmap.override { + graphicalSupport = true; + }; + + nmap-formatter = callPackage ../tools/security/nmap-formatter { }; + + nmapsi4 = libsForQt514.callPackage ../tools/security/nmap/qt.nix { }; + + nnn = callPackage ../applications/misc/nnn { }; + + sfm = callPackage ../applications/misc/sfm { }; + + shfm = callPackage ../applications/misc/shfm { }; + + noise-repellent = callPackage ../applications/audio/noise-repellent { }; + + noisetorch = callPackage ../applications/audio/noisetorch { }; + + notary = callPackage ../tools/security/notary { }; + + notify-osd = callPackage ../applications/misc/notify-osd { }; + + notes-up = callPackage ../applications/office/notes-up { }; + + notify-osd-customizable = callPackage ../applications/misc/notify-osd-customizable { }; + + nox = callPackage ../tools/package-management/nox { }; + + nq = callPackage ../tools/system/nq { }; + + nsjail = callPackage ../tools/security/nsjail {}; + + nss_pam_ldapd = callPackage ../tools/networking/nss-pam-ldapd {}; + + ntfs3g = callPackage ../tools/filesystems/ntfs-3g { + inherit (darwin.apple_sdk.frameworks) DiskArbitration; + }; + + # ntfsprogs are merged into ntfs-3g + ntfsprogs = pkgs.ntfs3g; + + ntfy = callPackage ../tools/misc/ntfy {}; + + ntirpc = callPackage ../development/libraries/ntirpc { }; + + ntopng = callPackage ../tools/networking/ntopng { }; + + ntp = callPackage ../tools/networking/ntp { }; + + numdiff = callPackage ../tools/text/numdiff { }; + + numlockx = callPackage ../tools/X11/numlockx { }; + + nttcp = callPackage ../tools/networking/nttcp { }; + + ntttcp = callPackage ../tools/networking/ntttcp { }; + + nuttcp = callPackage ../tools/networking/nuttcp { }; + + nssmdns = callPackage ../tools/networking/nss-mdns { }; + + nvfancontrol = callPackage ../tools/misc/nvfancontrol { + libXNVCtrl = linuxPackages.nvidia_x11.settings.libXNVCtrl; + }; + + nvimpager = callPackage ../tools/misc/nvimpager { }; + + nwdiag = with python3Packages; toPythonApplication nwdiag; + + nxdomain = python3.pkgs.callPackage ../tools/networking/nxdomain { }; + + nxpmicro-mfgtools = callPackage ../development/tools/misc/nxpmicro-mfgtools { }; + + nyancat = callPackage ../tools/misc/nyancat { }; + + nylon = callPackage ../tools/networking/nylon { }; + + nym = callPackage ../applications/networking/nym { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + nzbget = callPackage ../tools/networking/nzbget { }; + + nzbhydra2 = callPackage ../servers/nzbhydra2 { + # You need Java (at least 8, at most 15) + # https://github.com/theotherp/nzbhydra2/issues/697 + # https://github.com/theotherp/nzbhydra2/#how-to-run + jre = openjdk11; + }; + + oapi-codegen = callPackage ../tools/networking/oapi-codegen { }; + + oathToolkit = callPackage ../tools/security/oath-toolkit { }; + + oatpp = callPackage ../development/libraries/oatpp { }; + + obex_data_server = callPackage ../tools/bluetooth/obex-data-server { }; + + obexd = callPackage ../tools/bluetooth/obexd { }; + + obfs4 = callPackage ../tools/networking/obfs4 { + buildGoModule = buildGo116Module; + }; + + oci-image-tool = callPackage ../tools/misc/oci-image-tool { }; + + ocproxy = callPackage ../tools/networking/ocproxy { }; + + ocserv = callPackage ../tools/networking/ocserv { }; + + octofetch = callPackage ../tools/misc/octofetch { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + oha = callPackage ../tools/networking/oha { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + opencorsairlink = callPackage ../tools/misc/opencorsairlink { }; + + openfpgaloader = callPackage ../development/embedded/fpga/openfpgaloader { }; + + openfortivpn = callPackage ../tools/networking/openfortivpn { }; + + opensnitch = callPackage ../tools/networking/opensnitch/daemon.nix { }; + + opensnitch-ui = libsForQt5.callPackage ../tools/networking/opensnitch/ui.nix { }; + + obexfs = callPackage ../tools/bluetooth/obexfs { }; + + obexftp = callPackage ../tools/bluetooth/obexftp { }; + + objconv = callPackage ../development/tools/misc/objconv {}; + + odpdown = callPackage ../tools/typesetting/odpdown { }; + + odpic = callPackage ../development/libraries/odpic { }; + + odt2txt = callPackage ../tools/text/odt2txt { }; + + odyssey = callPackage ../tools/misc/odyssey { }; + + offlineimap = callPackage ../tools/networking/offlineimap { }; + + ofono-phonesim = libsForQt5.callPackage ../development/tools/ofono-phonesim { }; + + ogdf = callPackage ../development/libraries/ogdf { }; + + oh-my-zsh = callPackage ../shells/zsh/oh-my-zsh { }; + + ola = callPackage ../applications/misc/ola { }; + + olive-editor = libsForQt514.callPackage ../applications/video/olive-editor { + inherit (darwin.apple_sdk.frameworks) CoreFoundation; + }; + + ombi = callPackage ../servers/ombi { }; + + omping = callPackage ../applications/networking/omping { }; + + onefetch = callPackage ../tools/misc/onefetch { + inherit (darwin) libresolv; + inherit (darwin.apple_sdk.frameworks) CoreFoundation Security; + }; + + onioncircuits = callPackage ../tools/security/onioncircuits { }; + + onlykey-agent = callPackage ../tools/security/onlykey-agent { }; + + onlykey-cli = callPackage ../tools/security/onlykey-cli { }; + + onlykey = callPackage ../tools/security/onlykey { node_webkit = nwjs; }; + + openapi-generator-cli = callPackage ../tools/networking/openapi-generator-cli { jre = pkgs.jre_headless; }; + openapi-generator-cli-unstable = callPackage ../tools/networking/openapi-generator-cli/unstable.nix { jre = pkgs.jre_headless; }; + + openboard = libsForQt5.callPackage ../applications/graphics/openboard { }; + + opencc = callPackage ../tools/text/opencc { }; + + opencl-info = callPackage ../tools/system/opencl-info { }; + + opencryptoki = callPackage ../tools/security/opencryptoki { }; + + opendbx = callPackage ../development/libraries/opendbx { }; + + opendht = callPackage ../development/libraries/opendht { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + opendkim = callPackage ../development/libraries/opendkim { }; + + opendylan = callPackage ../development/compilers/opendylan { + opendylan-bootstrap = opendylan_bin; + }; + + openfec = callPackage ../development/libraries/openfec { }; + + ophis = python3Packages.callPackage ../development/compilers/ophis { }; + + opendylan_bin = callPackage ../development/compilers/opendylan/bin.nix { }; + + open-ecard = callPackage ../tools/security/open-ecard { }; + + openjade = callPackage ../tools/text/sgml/openjade { }; + + openhantek6022 = libsForQt5.callPackage ../applications/science/electronics/openhantek6022 { }; + + openimagedenoise = callPackage ../development/libraries/openimagedenoise { }; + + openimagedenoise_1_2_x = callPackage ../development/libraries/openimagedenoise/1_2_x.nix { }; + + openmvg = callPackage ../applications/science/misc/openmvg { }; + + openmvs = callPackage ../applications/science/misc/openmvs { }; + + openntpd = callPackage ../tools/networking/openntpd { }; + + openntpd_nixos = openntpd.override { + privsepUser = "ntp"; + privsepPath = "/var/empty"; + }; + + openobex = callPackage ../tools/bluetooth/openobex { }; + + openresolv = callPackage ../tools/networking/openresolv { }; + + openrgb = libsForQt5.callPackage ../applications/misc/openrgb { }; + + openrussian-cli = callPackage ../misc/openrussian-cli { + luaPackages = lua53Packages; + }; + + opensbi = callPackage ../misc/opensbi { }; + + opensc = callPackage ../tools/security/opensc { + inherit (darwin.apple_sdk.frameworks) Carbon PCSC; + }; + + openseachest = callPackage ../tools/system/openseachest { }; + + opensm = callPackage ../tools/networking/opensm { }; + + tinyssh = callPackage ../tools/networking/tinyssh { }; + + opensshPackages = dontRecurseIntoAttrs (callPackage ../tools/networking/openssh {}); + + openssh = opensshPackages.openssh.override { + etcDir = "/etc/ssh"; + }; + + openssh_hpn = opensshPackages.openssh_hpn.override { + etcDir = "/etc/ssh"; + }; + + openssh_gssapi = opensshPackages.openssh_gssapi.override { + etcDir = "/etc/ssh"; + }; + + ssh-copy-id = callPackage ../tools/networking/openssh/copyid.nix { }; + + opensp = callPackage ../tools/text/sgml/opensp { }; + + opentrack = libsForQt5.callPackage ../applications/misc/opentrack { }; + + opentracker = callPackage ../applications/networking/p2p/opentracker { }; + + alttpr-opentracker = callPackage ../tools/games/opentracker { }; + + opentsdb = callPackage ../tools/misc/opentsdb {}; + + inherit (callPackages ../tools/networking/openvpn {}) + openvpn_24 + openvpn; + + openvpn_learnaddress = callPackage ../tools/networking/openvpn/openvpn_learnaddress.nix { }; + + openvpn-auth-ldap = callPackage ../tools/networking/openvpn/openvpn-auth-ldap.nix { + stdenv = clangStdenv; + }; + + oq = callPackage ../development/tools/oq { }; + + out-of-tree = callPackage ../development/tools/out-of-tree { }; + + oppai-ng = callPackage ../tools/misc/oppai-ng { }; + + operator-sdk = callPackage ../development/tools/operator-sdk { }; + + owncast = callPackage ../servers/owncast { }; + + update-dotdee = with python3Packages; toPythonApplication update-dotdee; + + update-nix-fetchgit = haskell.lib.compose.justStaticExecutables haskellPackages.update-nix-fetchgit; + + update-resolv-conf = callPackage ../tools/networking/openvpn/update-resolv-conf.nix { }; + + update-systemd-resolved = callPackage ../tools/networking/openvpn/update-systemd-resolved.nix { }; + + opae = callPackage ../development/libraries/opae { }; + + opentelemetry-collector = callPackage ../tools/misc/opentelemetry-collector { }; + opentelemetry-collector-contrib = callPackage ../tools/misc/opentelemetry-collector/contrib.nix { }; + + opentracing-cpp = callPackage ../development/libraries/opentracing-cpp { }; + + openvswitch = callPackage ../os-specific/linux/openvswitch { }; + + openvswitch-lts = callPackage ../os-specific/linux/openvswitch/lts.nix { }; + + optifinePackages = callPackage ../tools/games/minecraft/optifine { }; + + optifine = optifinePackages.optifine-latest; + + optipng = callPackage ../tools/graphics/optipng { + libpng = libpng12; + }; + + olsrd = callPackage ../tools/networking/olsrd { }; + + oonf-olsrd2 = callPackage ../tools/networking/oonf-olsrd2 { }; + + opl3bankeditor = libsForQt5.callPackage ../tools/audio/opl3bankeditor { }; + opn2bankeditor = libsForQt5.callPackage ../tools/audio/opl3bankeditor/opn2bankeditor.nix { }; + + orangefs = callPackage ../tools/filesystems/orangefs { + autoreconfHook = buildPackages.autoreconfHook269; + }; + + os-prober = callPackage ../tools/misc/os-prober {}; + + oshka = callPackage ../development/tools/oshka {}; + + osl = callPackage ../development/compilers/osl { }; + + osqp = callPackage ../development/libraries/science/math/osqp { }; + + ossec = callPackage ../tools/security/ossec {}; + + osslsigncode = callPackage ../development/tools/osslsigncode {}; + + ostree = callPackage ../tools/misc/ostree { }; + + otfcc = callPackage ../tools/misc/otfcc { }; + + otpclient = callPackage ../applications/misc/otpclient { }; + + otpw = callPackage ../os-specific/linux/otpw { }; + + ovftool = callPackage ../tools/virtualization/ovftool { }; + + overcommit = callPackage ../development/tools/overcommit { }; + + overmind = callPackage ../applications/misc/overmind { }; + + ovh-ttyrec = callPackage ../tools/misc/ovh-ttyrec { }; + + ovito = libsForQt5.callPackage ../applications/graphics/ovito { + inherit (darwin.apple_sdk.frameworks) VideoDecodeAcceleration; + }; + + owncloud-client = libsForQt5.callPackage ../applications/networking/owncloud-client { }; + + oxefmsynth = callPackage ../applications/audio/oxefmsynth { }; + + oxidized = callPackage ../tools/admin/oxidized { }; + + oxipng = callPackage ../tools/graphics/oxipng { }; + + p2pvc = callPackage ../applications/video/p2pvc {}; + + p3x-onenote = callPackage ../applications/office/p3x-onenote { }; + + p7zip = callPackage ../tools/archivers/p7zip { }; + + packagekit = callPackage ../tools/package-management/packagekit { nix = nixVersions.nix_2_6; }; + + packetdrill = callPackage ../tools/networking/packetdrill { }; + + pacman = callPackage ../tools/package-management/pacman { }; + + paco = callPackage ../development/compilers/paco { }; + + padthv1 = libsForQt5.callPackage ../applications/audio/padthv1 { }; + + page = callPackage ../tools/misc/page { }; + + PageEdit = libsForQt5.callPackage ../applications/office/PageEdit { }; + + pagmo2 = callPackage ../development/libraries/pagmo2 { }; + + pakcs = callPackage ../development/compilers/pakcs { }; + + pal = callPackage ../tools/misc/pal { }; + + pandoc = callPackage ../development/tools/pandoc { }; + + pandoc-lua-filters = callPackage ../tools/misc/pandoc-lua-filters { }; + + pamtester = callPackage ../tools/security/pamtester { }; + + pantheon-tweaks = callPackage ../desktops/pantheon/third-party/pantheon-tweaks { }; + + paperless-ng = callPackage ../applications/office/paperless-ng { }; + + paperwork = callPackage ../applications/office/paperwork/paperwork-gtk.nix { }; + + papertrail = callPackage ../tools/text/papertrail { }; + + pappl = callPackage ../applications/printing/pappl { }; + + par2cmdline = callPackage ../tools/networking/par2cmdline { }; + + parallel = callPackage ../tools/misc/parallel { }; + + parallel-full = callPackage ../tools/misc/parallel/wrapper.nix { }; + + parastoo-fonts = callPackage ../data/fonts/parastoo-fonts { }; + + parcellite = callPackage ../tools/misc/parcellite { + autoreconfHook = buildPackages.autoreconfHook269; + }; + + patchutils = callPackage ../tools/text/patchutils { }; + + patchutils_0_3_3 = callPackage ../tools/text/patchutils/0.3.3.nix { }; + + patchutils_0_4_2 = callPackage ../tools/text/patchutils/0.4.2.nix { }; + + parted = callPackage ../tools/misc/parted { }; + + passh = callPackage ../tools/networking/passh { }; + + paulstretch = callPackage ../applications/audio/paulstretch { }; + + pazi = callPackage ../tools/misc/pazi { }; + + peep = callPackage ../tools/misc/peep { }; + + pell = callPackage ../applications/misc/pell { }; + + pepper = callPackage ../tools/admin/salt/pepper { }; + + perceptualdiff = callPackage ../tools/graphics/perceptualdiff { }; + + percona-xtrabackup = percona-xtrabackup_8_0; + percona-xtrabackup_2_4 = callPackage ../tools/backup/percona-xtrabackup/2_4.nix { + boost = boost159; + }; + percona-xtrabackup_8_0 = callPackage ../tools/backup/percona-xtrabackup/8_0.nix { + boost = boost170; + }; + + pick = callPackage ../tools/misc/pick { }; + + pipe-rename = callPackage ../tools/misc/pipe-rename { }; + + pipectl = callPackage ../tools/misc/pipectl { }; + + pitivi = callPackage ../applications/video/pitivi { }; + + prism = callPackage ../applications/video/prism { }; + + pulumi-bin = callPackage ../tools/admin/pulumi { }; + + p0f = callPackage ../tools/security/p0f { }; + + pngout = callPackage ../tools/graphics/pngout { }; + + patch = gnupatch; + + patchage = callPackage ../applications/audio/patchage { }; + + pcapfix = callPackage ../tools/networking/pcapfix { }; + + pbzip2 = callPackage ../tools/compression/pbzip2 { }; + + pcimem = callPackage ../os-specific/linux/pcimem { }; + + pciutils = callPackage ../tools/system/pciutils { + inherit (darwin.apple_sdk.frameworks) IOKit; + }; + + otpauth = callPackage ../tools/security/otpauth { }; + + pcsclite = callPackage ../tools/security/pcsclite { + inherit (darwin.apple_sdk.frameworks) IOKit; + }; + + pcsctools = callPackage ../tools/security/pcsctools { }; + + pcsc-cyberjack = callPackage ../tools/security/pcsc-cyberjack { }; + + pcsc-safenet = callPackage ../tools/security/pcsc-safenet { }; + + pcsc-scm-scl011 = callPackage ../tools/security/pcsc-scm-scl011 { }; + ifdnfc = callPackage ../tools/security/ifdnfc { }; + + pdd = python3Packages.callPackage ../tools/misc/pdd { }; + + pdf2djvu = callPackage ../tools/typesetting/pdf2djvu { }; + + pdf2odt = callPackage ../tools/typesetting/pdf2odt { }; + + pdfcrack = callPackage ../tools/security/pdfcrack { }; + + pdfsandwich = callPackage ../tools/typesetting/pdfsandwich { }; + + pdftag = callPackage ../tools/graphics/pdftag { }; + + pdf2svg = callPackage ../tools/graphics/pdf2svg { }; + + pdftoipe = callPackage ../tools/graphics/pdftoipe { }; + + pdfminer = with python3Packages; toPythonApplication pdfminer; + + pdf-quench = callPackage ../applications/misc/pdf-quench { }; + + jbig2enc = callPackage ../tools/graphics/jbig2enc { }; + + pdfarranger = callPackage ../applications/misc/pdfarranger { }; + + briss = callPackage ../tools/graphics/briss { }; + + brickd = callPackage ../servers/brickd { }; + + bully = callPackage ../tools/networking/bully { }; + + pcapc = callPackage ../tools/networking/pcapc { }; + + pdm = callPackage ../tools/package-management/pdm { }; + + pdnsd = callPackage ../tools/networking/pdnsd { }; + + peco = callPackage ../tools/text/peco { }; + + pg_activity = callPackage ../development/tools/database/pg_activity { }; + + pg_checksums = callPackage ../development/tools/database/pg_checksums { }; + + pg_flame = callPackage ../tools/misc/pg_flame { }; + + pg_top = callPackage ../tools/misc/pg_top { }; + + pgcenter = callPackage ../tools/misc/pgcenter { }; + + pgmetrics = callPackage ../tools/misc/pgmetrics { }; + + pgsync = callPackage ../development/tools/database/pgsync { }; + + pdsh = callPackage ../tools/networking/pdsh { + rsh = true; # enable internal rsh implementation + ssh = openssh; + }; + + pfetch = callPackage ../tools/misc/pfetch { }; + + pfstools = libsForQt5.callPackage ../tools/graphics/pfstools { }; + + philter = callPackage ../tools/networking/philter { }; + + phoc = callPackage ../applications/misc/phoc { + wlroots = wlroots_0_14; + }; + + phodav = callPackage ../tools/networking/phodav { }; + + photon-rss = callPackage ../applications/networking/feedreaders/photon { }; + + pim6sd = callPackage ../servers/pim6sd { }; + + phosh = callPackage ../applications/window-managers/phosh { }; + + pinentry = libsForQt5.callPackage ../tools/security/pinentry { }; + + pinentry-curses = (lib.getOutput "curses" pinentry); + pinentry-emacs = (lib.getOutput "emacs" pinentry); + pinentry-gtk2 = (lib.getOutput "gtk2" pinentry); + pinentry-qt = (lib.getOutput "qt" pinentry); + pinentry-gnome = (lib.getOutput "gnome3" pinentry); + + pinentry_mac = callPackage ../tools/security/pinentry/mac.nix { + inherit (darwin.apple_sdk.frameworks) Cocoa; + xcbuildHook = if stdenv.targetPlatform.isAarch64 then xcbuildHook else xcbuild6Hook; + }; + + pinentry-bemenu = callPackage ../tools/security/pinentry-bemenu { }; + + pingtcp = callPackage ../tools/networking/pingtcp { }; + + pinnwand = callPackage ../servers/pinnwand { }; + + pinsel = callPackage ../tools/misc/pinsel { }; + + piping-server-rust = callPackage ../servers/piping-server-rust { + inherit (darwin.apple_sdk.frameworks) CoreServices Security; + }; + + pirate-get = callPackage ../tools/networking/pirate-get { }; + + pipr = callPackage ../applications/misc/pipr { }; + + pipreqs = callPackage ../tools/misc/pipreqs { }; + + pius = callPackage ../tools/security/pius { }; + + pixiewps = callPackage ../tools/networking/pixiewps {}; + + pinyin-tool = callPackage ../tools/text/pinyin-tool { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + pk2cmd = callPackage ../tools/misc/pk2cmd { }; + + plantuml = callPackage ../tools/misc/plantuml { }; + + plantuml-server = callPackage ../tools/misc/plantuml-server { }; + + plan9port = callPackage ../tools/system/plan9port { }; + + platformioPackages = dontRecurseIntoAttrs (callPackage ../development/embedded/platformio { }); + platformio = platformioPackages.platformio-chrootenv; + + platinum-searcher = callPackage ../tools/text/platinum-searcher { }; + + playbar2 = libsForQt5.callPackage ../applications/audio/playbar2 { }; + + plujain-ramp = callPackage ../applications/audio/plujain-ramp { }; + + inherit (callPackage ../servers/plik { }) + plik plikd; + + plex = callPackage ../servers/plex { }; + plexRaw = callPackage ../servers/plex/raw.nix { }; + + psitransfer = callPackage ../servers/psitransfer { }; + + tab = callPackage ../tools/text/tab { }; + + tabview = with python3Packages; toPythonApplication tabview; + + tautulli = python3Packages.callPackage ../servers/tautulli { }; + + pleroma = callPackage ../servers/pleroma { }; + + ploticus = callPackage ../tools/graphics/ploticus { + libpng = libpng12; + }; + + plotinus = callPackage ../tools/misc/plotinus { }; + + plotutils = callPackage ../tools/graphics/plotutils { }; + + plowshare = callPackage ../tools/misc/plowshare { }; + + pm2 = nodePackages.pm2; + + pngcheck = callPackage ../tools/graphics/pngcheck { + zlib = zlib.override { + static = true; + }; + }; + + pngcrush = callPackage ../tools/graphics/pngcrush { }; + + pngnq = callPackage ../tools/graphics/pngnq { }; + + pngoptimizer = callPackage ../tools/graphics/pngoptimizer { }; + + pngtoico = callPackage ../tools/graphics/pngtoico { + libpng = libpng12; + }; + + pngpp = callPackage ../development/libraries/png++ { }; + + pngquant = callPackage ../tools/graphics/pngquant { }; + + podiff = callPackage ../tools/text/podiff { }; + + podman = callPackage ../applications/virtualization/podman/wrapper.nix { }; + podman-unwrapped = callPackage ../applications/virtualization/podman { }; + + podman-compose = python3Packages.callPackage ../applications/virtualization/podman-compose {}; + + podman-tui = callPackage ../applications/virtualization/podman-tui { }; + + pod2mdoc = callPackage ../tools/misc/pod2mdoc { }; + + poedit = callPackage ../tools/text/poedit { + wxGTK31-gtk3 = wxGTK31-gtk3.override { withWebKit = true; }; + }; + + polipo = callPackage ../servers/polipo { }; + + polkit_gnome = callPackage ../tools/security/polkit-gnome { }; + + poly2tri-c = callPackage ../development/libraries/poly2tri-c { }; + + ponysay = callPackage ../tools/misc/ponysay { }; + + popfile = callPackage ../tools/text/popfile { }; + + poretools = callPackage ../applications/science/biology/poretools { }; + + postscript-lexmark = callPackage ../misc/drivers/postscript-lexmark { }; + + povray = callPackage ../tools/graphics/povray { + boost = boost175; + }; + + power-profiles-daemon = callPackage ../os-specific/linux/power-profiles-daemon { }; + + ppl = callPackage ../development/libraries/ppl { }; + + pplatex = callPackage ../tools/typesetting/tex/pplatex { }; + + ppp = callPackage ../tools/networking/ppp { }; + + pptp = callPackage ../tools/networking/pptp {}; + + pptpd = callPackage ../tools/networking/pptpd {}; + + pre-commit = callPackage ../tools/misc/pre-commit { }; + + pretty-simple = callPackage ../development/tools/pretty-simple { }; + + prettyping = callPackage ../tools/networking/prettyping { }; + + pritunl-ssh = callPackage ../tools/networking/pritunl-ssh { }; + + profile-cleaner = callPackage ../tools/misc/profile-cleaner { }; + + profile-sync-daemon = callPackage ../tools/misc/profile-sync-daemon { }; + + projectlibre = callPackage ../applications/misc/projectlibre { + jre = jre8; + jdk = jdk8; + }; + + projectm = libsForQt5.callPackage ../applications/audio/projectm { }; + + proot = callPackage ../tools/system/proot { }; + + prototypejs = callPackage ../development/libraries/prototypejs { }; + + inherit (callPackages ../tools/security/proxmark3 { gcc-arm-embedded = gcc-arm-embedded-8; }) + proxmark3 proxmark3-unstable; + + proxmark3-rrg = libsForQt5.callPackage ../tools/security/proxmark3/proxmark3-rrg.nix { }; + + proxychains = callPackage ../tools/networking/proxychains { }; + + proxychains-ng = callPackage ../tools/networking/proxychains-ng { }; + + proxify = callPackage ../tools/networking/proxify { }; + + proxysql = callPackage ../servers/sql/proxysql { }; + + proxytunnel = callPackage ../tools/misc/proxytunnel { + openssl = openssl_1_0_2; + }; + + prs = callPackage ../tools/security/prs { }; + + psw = callPackage ../tools/misc/psw { }; + + pws = callPackage ../tools/misc/pws { }; + + cntlm = callPackage ../tools/networking/cntlm { }; + + cnping = callPackage ../tools/networking/cnping { }; + + past-time = python3Packages.callPackage ../tools/misc/past-time { }; + + pastebinit = callPackage ../tools/misc/pastebinit { }; + + pmacct = callPackage ../tools/networking/pmacct { }; + + pmix = callPackage ../development/libraries/pmix { }; + + polygraph = callPackage ../tools/networking/polygraph { }; + + pr-tracker = callPackage ../servers/pr-tracker { }; + + progress = callPackage ../tools/misc/progress { }; + + ps3netsrv = callPackage ../servers/ps3netsrv { }; + + pscircle = callPackage ../os-specific/linux/pscircle { }; + + psmisc = callPackage ../os-specific/linux/psmisc { }; + + pssh = callPackage ../tools/networking/pssh { }; + + pspg = callPackage ../tools/misc/pspg { }; + + pstoedit = callPackage ../tools/graphics/pstoedit { }; + + psutils = callPackage ../tools/typesetting/psutils { }; + + psensor = callPackage ../tools/system/psensor { + libXNVCtrl = linuxPackages.nvidia_x11.settings.libXNVCtrl; + }; + + pubs = callPackage ../tools/misc/pubs {}; + + pulumictl = callPackage ../development/tools/pulumictl { }; + + pure-prompt = callPackage ../shells/zsh/pure-prompt { }; + + pv = callPackage ../tools/misc/pv { }; + + pwgen = callPackage ../tools/security/pwgen { }; + + pwgen-secure = callPackage ../tools/security/pwgen-secure { }; + + pwnat = callPackage ../tools/networking/pwnat { }; + + pwndbg = callPackage ../development/tools/misc/pwndbg { }; + + pycflow2dot = with python3.pkgs; toPythonApplication pycflow2dot; + + pydb = callPackage ../development/tools/pydb { }; + + pydf = callPackage ../applications/misc/pydf { }; + + pympress = callPackage ../applications/office/pympress { }; + + pyspread = libsForQt5.callPackage ../applications/office/pyspread { }; + + teapot = callPackage ../applications/office/teapot { }; + + pyditz = callPackage ../applications/misc/pyditz { + pythonPackages = python27Packages; + }; + + py-spy = callPackage ../development/tools/py-spy { }; + + pytrainer = callPackage ../applications/misc/pytrainer { }; + + pywal = with python3Packages; toPythonApplication pywal; + + pystring = callPackage ../development/libraries/pystring {}; + + rbw = callPackage ../tools/security/rbw { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + remarshal = with python3Packages; toPythonApplication remarshal; + + rehex = callPackage ../applications/editors/rehex { + inherit (darwin.apple_sdk.frameworks) Carbon Cocoa IOKit; + }; + + rig = callPackage ../tools/misc/rig { }; + + riseup-vpn = libsForQt5.callPackage ../tools/networking/bitmask-vpn { + provider = "riseup"; + inherit (darwin.apple_sdk.frameworks) CoreFoundation Security; + }; + + rocket = libsForQt5.callPackage ../tools/graphics/rocket { }; + + rtabmap = libsForQt5.callPackage ../applications/video/rtabmap/default.nix { }; + + rtaudio = callPackage ../development/libraries/audio/rtaudio { + jack = libjack2; + inherit (darwin.apple_sdk.frameworks) CoreAudio; + }; + + rtmidi = callPackage ../development/libraries/audio/rtmidi { + jack = libjack2; + inherit (darwin.apple_sdk.frameworks) CoreMIDI CoreAudio CoreServices; + }; + + openmpi = callPackage ../development/libraries/openmpi { }; + + ouch = callPackage ../tools/compression/ouch { }; + + mpi = openmpi; # this attribute should used to build MPI applications + + ucx = callPackage ../development/libraries/ucx {}; + + openmodelica = recurseIntoAttrs (callPackage ../applications/science/misc/openmodelica {}); + + prowlarr = callPackage ../servers/prowlarr { }; + + qarte = libsForQt5.callPackage ../applications/video/qarte { }; + + qlcplus = libsForQt5.callPackage ../applications/misc/qlcplus { }; + + qnial = callPackage ../development/interpreters/qnial { }; + + quickbms = pkgsi686Linux.callPackage ../tools/archivers/quickbms { }; + + q-text-as-data = callPackage ../tools/misc/q-text-as-data { }; + + qalculate-gtk = callPackage ../applications/science/math/qalculate-gtk { }; + + qastools = libsForQt5.callPackage ../tools/audio/qastools { }; + + qdigidoc = libsForQt5.callPackage ../tools/security/qdigidoc { } ; + + qgit = qt5.callPackage ../applications/version-management/git-and-tools/qgit { }; + + qgrep = callPackage ../tools/text/qgrep { + inherit (darwin.apple_sdk.frameworks) CoreServices CoreFoundation; + }; + + qhull = callPackage ../development/libraries/qhull { }; + + qjournalctl = libsForQt5.callPackage ../applications/system/qjournalctl { }; + + qjoypad = callPackage ../tools/misc/qjoypad { }; + + qmk = callPackage ../tools/misc/qmk { }; + + qodem = callPackage ../tools/networking/qodem { }; + + qosmic = libsForQt5.callPackage ../applications/graphics/qosmic { }; + + qownnotes = libsForQt514.callPackage ../applications/office/qownnotes { }; + + qpdf = callPackage ../development/libraries/qpdf { }; + + qprint = callPackage ../tools/text/qprint { }; + + qscintilla = libsForQt5.callPackage ../development/libraries/qscintilla { }; + + qscintilla-qt4 = callPackage ../development/libraries/qscintilla-qt4 { }; + + qshowdiff = callPackage ../tools/text/qshowdiff { }; + + qrcp = callPackage ../tools/networking/qrcp { }; + + qtikz = libsForQt5.callPackage ../applications/graphics/ktikz { }; + + qtspim = libsForQt5.callPackage ../development/tools/misc/qtspim { }; + + quadrafuzz = callPackage ../applications/audio/quadrafuzz { }; + + quickfix = callPackage ../development/libraries/quickfix { }; + + quickjs = callPackage ../development/interpreters/quickjs { }; + + quickserve = callPackage ../tools/networking/quickserve { }; + + quictls = callPackage ../development/libraries/quictls { }; + + quicktun = callPackage ../tools/networking/quicktun { }; + + quilt = callPackage ../development/tools/quilt { }; + + quota = if stdenv.isLinux then linuxquota else unixtools.quota; + + qvge = libsForQt5.callPackage ../applications/graphics/qvge { }; + + qview = libsForQt5.callPackage ../applications/graphics/qview {}; + + wayback_machine_downloader = callPackage ../applications/networking/wayback_machine_downloader { }; + + wiggle = callPackage ../development/tools/wiggle { }; + + radamsa = callPackage ../tools/security/radamsa { }; + + radarr = callPackage ../servers/radarr { }; + + radeon-profile = libsForQt5.callPackage ../tools/misc/radeon-profile { }; + + radsecproxy = callPackage ../tools/networking/radsecproxy { }; + + radvd = callPackage ../tools/networking/radvd { }; + + rainbowstream = with python3.pkgs; toPythonApplication rainbowstream; + + rambox = callPackage ../applications/networking/instant-messengers/rambox { }; + + rambox-pro = callPackage ../applications/networking/instant-messengers/rambox/pro.nix { }; + + ranger = callPackage ../applications/misc/ranger { }; + + rar = callPackage ../tools/archivers/rar { }; + + rarcrack = callPackage ../tools/security/rarcrack { }; + + rarian = callPackage ../development/libraries/rarian { }; + + ratman = callPackage ../tools/networking/ratman { }; + + ratools = callPackage ../tools/networking/ratools { }; + + ratt = callPackage ../applications/misc/ratt { }; + + rc = callPackage ../shells/rc { }; + + rcon = callPackage ../tools/networking/rcon { }; + + rdap = callPackage ../tools/networking/rdap { }; + + rdbtools = callPackage ../development/tools/rdbtools { python = python3; }; + + rdma-core = callPackage ../os-specific/linux/rdma-core { }; + + rdrview = callPackage ../tools/networking/rdrview {}; + + real_time_config_quick_scan = callPackage ../applications/audio/real_time_config_quick_scan { }; + + realesrgan-ncnn-vulkan = callPackage ../tools/graphics/realesrgan-ncnn-vulkan { }; + + react-native-debugger = callPackage ../development/tools/react-native-debugger { }; + + read-edid = callPackage ../os-specific/linux/read-edid { }; + + redir = callPackage ../tools/networking/redir { }; + + redmine = callPackage ../applications/version-management/redmine { }; + + redsocks = callPackage ../tools/networking/redsocks { }; + + rep = callPackage ../development/tools/rep { }; + + repseek = callPackage ../applications/science/biology/repseek { }; + + reicast = callPackage ../applications/emulators/reicast { }; + + reredirect = callPackage ../tools/misc/reredirect { }; + + retext = libsForQt5.callPackage ../applications/editors/retext { }; + + inherit (callPackage ../tools/security/rekor { }) + rekor-cli + rekor-server; + + richgo = callPackage ../development/tools/richgo { }; + + rs = callPackage ../tools/text/rs { }; + + rst2html5 = callPackage ../tools/text/rst2html5 { }; + + rt = callPackage ../servers/rt { }; + + rtmpdump = callPackage ../tools/video/rtmpdump { }; + rtmpdump_gnutls = rtmpdump.override { gnutlsSupport = true; opensslSupport = false; }; + + rtptools = callPackage ../tools/networking/rtptools { }; + + rtss = callPackage ../development/tools/misc/rtss { }; + + realvnc-vnc-viewer = callPackage ../tools/admin/realvnc-vnc-viewer {}; + + reaverwps = callPackage ../tools/networking/reaver-wps {}; + + reaverwps-t6x = callPackage ../tools/networking/reaver-wps-t6x {}; + + rx = callPackage ../applications/graphics/rx { }; + + qt-box-editor = libsForQt5.callPackage ../applications/misc/qt-box-editor { }; + + recutils = callPackage ../tools/misc/recutils { }; + + recoll = libsForQt5.callPackage ../applications/search/recoll { }; + + redoc-cli = nodePackages.redoc-cli; + + reflex = callPackage ../development/tools/reflex { }; + + reiser4progs = callPackage ../tools/filesystems/reiser4progs { }; + + reiserfsprogs = callPackage ../tools/filesystems/reiserfsprogs { }; + + remarkjs = callPackage ../development/web/remarkjs { }; + + alarm-clock-applet = callPackage ../tools/misc/alarm-clock-applet { }; + + remind = callPackage ../tools/misc/remind { }; + + remmina = callPackage ../applications/networking/remote/remmina { }; + + rename = callPackage ../tools/misc/rename { }; + + renameutils = callPackage ../tools/misc/renameutils { }; + + renderdoc = libsForQt5.callPackage ../applications/graphics/renderdoc { }; + + replace = callPackage ../tools/text/replace { }; + + resvg = callPackage ../tools/graphics/resvg { }; + + reckon = callPackage ../tools/text/reckon { }; + + recoverjpeg = callPackage ../tools/misc/recoverjpeg { }; + + reftools = callPackage ../development/tools/reftools { }; + + remote-touchpad = callPackage ../tools/inputmethods/remote-touchpad { }; + + reposurgeon = callPackage ../applications/version-management/reposurgeon { }; + + reptyr = callPackage ../os-specific/linux/reptyr {}; + + rescuetime = libsForQt5.callPackage ../applications/misc/rescuetime { }; + + inherit (callPackage ../development/misc/resholve { }) + resholve resholvePackage resholveScript resholveScriptBin; + + restool = callPackage ../os-specific/linux/restool {}; + + reuse = callPackage ../tools/package-management/reuse { }; + + inherit (nodePackages) reveal-md; + + rewritefs = callPackage ../os-specific/linux/rewritefs { }; + + rdiff-backup = callPackage ../tools/backup/rdiff-backup { }; + + rdfind = callPackage ../tools/filesystems/rdfind { }; + + rhash = callPackage ../tools/security/rhash { }; + + riemann_c_client = callPackage ../tools/misc/riemann-c-client { }; + riemann-tools = callPackage ../tools/misc/riemann-tools { }; + + ripmime = callPackage ../tools/networking/ripmime {}; + + rkflashtool = callPackage ../tools/misc/rkflashtool { }; + + rkrlv2 = callPackage ../applications/audio/rkrlv2 {}; + + rmlint = callPackage ../tools/misc/rmlint { + inherit (python3Packages) sphinx; + }; + + rng-tools = callPackage ../tools/security/rng-tools { }; + + rnnoise = callPackage ../development/libraries/rnnoise { }; + + rnnoise-plugin = callPackage ../development/libraries/rnnoise-plugin {}; + + rnote = callPackage ../applications/graphics/rnote { + inherit (gst_all_1) gstreamer; + }; + + rnp = callPackage ../tools/security/rnp { }; + + rnv = callPackage ../tools/text/xml/rnv { }; + + rosie = callPackage ../tools/text/rosie { }; + + rounded-mgenplus = callPackage ../data/fonts/rounded-mgenplus { }; + + roundup = callPackage ../tools/misc/roundup { }; + + routino = callPackage ../tools/misc/routino { }; + + rq = callPackage ../development/tools/rq { }; + + rs-git-fsmonitor = callPackage ../applications/version-management/git-and-tools/rs-git-fsmonitor { }; + + rsnapshot = callPackage ../tools/backup/rsnapshot { }; + + rlwrap = callPackage ../tools/misc/rlwrap { }; + + rmtrash = callPackage ../tools/misc/rmtrash { }; + + roc-toolkit = callPackage ../development/libraries/audio/roc-toolkit { }; + + rockbox_utility = libsForQt5.callPackage ../tools/misc/rockbox-utility { }; + + rosegarden = libsForQt514.callPackage ../applications/audio/rosegarden { }; + + rowhammer-test = callPackage ../tools/system/rowhammer-test { }; + + rpPPPoE = callPackage ../tools/networking/rp-pppoe { }; + + rpi-imager = libsForQt5.callPackage ../tools/misc/rpi-imager { }; + + rpiboot = callPackage ../development/misc/rpiboot { }; + + rpm = callPackage ../tools/package-management/rpm { + python = python3; + lua = lua5_4; + }; + + rpm-ostree = callPackage ../tools/misc/rpm-ostree { + gperf = gperf_3_0; + }; + + rpm2targz = callPackage ../tools/archivers/rpm2targz { }; + + rpmextract = callPackage ../tools/archivers/rpmextract { }; + + rrdtool = callPackage ../tools/misc/rrdtool { }; + + rset = callPackage ../tools/admin/rset { }; + + rshijack = callPackage ../tools/networking/rshijack { }; + + rsibreak = libsForQt5.callPackage ../applications/misc/rsibreak { }; + + rslint = callPackage ../development/tools/rslint { }; + + rss-bridge-cli = callPackage ../applications/misc/rss-bridge-cli { }; + + rss2email = callPackage ../applications/networking/feedreaders/rss2email { + pythonPackages = python3Packages; + }; + + rsstail = callPackage ../applications/networking/feedreaders/rsstail { }; + + rubber = callPackage ../tools/typesetting/rubber { }; + + rubocop = rubyPackages.rubocop; + + ruffle = callPackage ../applications/emulators/ruffle { }; + + runningx = callPackage ../tools/X11/runningx { }; + + rund = callPackage ../development/tools/rund { }; + + runzip = callPackage ../tools/archivers/runzip { }; + + unzoo = callPackage ../tools/archivers/unzoo { }; + + ruplacer = callPackage ../tools/text/ruplacer { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + rust-code-analysis = callPackage ../development/tools/rust-code-analysis { }; + + rust-motd = callPackage ../tools/misc/rust-motd { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + rust-petname = callPackage ../tools/text/rust-petname { }; + + rustcat = callPackage ../tools/networking/rustcat { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + rustdesk = callPackage ../applications/networking/remote/rustdesk { }; + + rustscan = callPackage ../tools/security/rustscan { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + rw = callPackage ../tools/misc/rw { }; + + rxp = callPackage ../tools/text/xml/rxp { }; + + rzip = callPackage ../tools/compression/rzip { }; + + s-tui = callPackage ../tools/system/s-tui { }; + + s3backer = callPackage ../tools/filesystems/s3backer { }; + + s3bro = callPackage ../tools/admin/s3bro { }; + + s3fs = callPackage ../tools/filesystems/s3fs { }; + + s3cmd = python3Packages.callPackage ../tools/networking/s3cmd { }; + + s3rs = callPackage ../tools/networking/s3rs { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + s4cmd = callPackage ../tools/networking/s4cmd { }; + + s5cmd = callPackage ../tools/networking/s5cmd { }; + + s3gof3r = callPackage ../tools/networking/s3gof3r { }; + + s6-dns = skawarePackages.s6-dns; + + s6-linux-init = skawarePackages.s6-linux-init; + + s6-linux-utils = skawarePackages.s6-linux-utils; + + s6-networking = skawarePackages.s6-networking; + + s6-portable-utils = skawarePackages.s6-portable-utils; + + sacad = callPackage ../tools/misc/sacad { }; + + sad = callPackage ../tools/text/sad { }; + + safecopy = callPackage ../tools/system/safecopy { }; + + sacd = callPackage ../tools/cd-dvd/sacd { }; + + safe = callPackage ../tools/security/safe { }; + + safety-cli = with python3.pkgs; toPythonApplication safety; + + safe-rm = callPackage ../tools/system/safe-rm { }; + + safeeyes = callPackage ../applications/misc/safeeyes { }; + + sahel-fonts = callPackage ../data/fonts/sahel-fonts { }; + + saldl = callPackage ../tools/networking/saldl { }; + + salt = callPackage ../tools/admin/salt {}; + + salut_a_toi = callPackage ../applications/networking/instant-messengers/salut-a-toi {}; + + samim-fonts = callPackage ../data/fonts/samim-fonts {}; + + saml2aws = callPackage ../tools/security/saml2aws { + inherit (darwin.apple_sdk.frameworks) AppKit; + }; + + sammler = callPackage ../tools/security/sammler {}; + + samplicator = callPackage ../tools/networking/samplicator { }; + + sanctity = callPackage ../tools/misc/sanctity { }; + + sandboxfs = callPackage ../tools/filesystems/sandboxfs { }; + + sasquatch = callPackage ../tools/filesystems/sasquatch { }; + + sasview = libsForQt5.callPackage ../applications/science/misc/sasview {}; + + scanbd = callPackage ../tools/graphics/scanbd { }; + + scdoc = callPackage ../tools/typesetting/scdoc { }; + + scmpuff = callPackage ../applications/version-management/git-and-tools/scmpuff { }; + + scorecard = callPackage ../tools/security/scorecard { }; + + scream = callPackage ../applications/audio/scream { }; + + scimark = callPackage ../misc/scimark { }; + + screen = callPackage ../tools/misc/screen { + inherit (darwin.apple_sdk.libs) utmp; + }; + + scrcpy = callPackage ../misc/scrcpy { + inherit (androidenv.androidPkgs_9_0) platform-tools; + }; + + screen-message = callPackage ../tools/X11/screen-message { }; + + screencloud = libsForQt5.callPackage ../applications/graphics/screencloud { }; + + screenkey = callPackage ../applications/video/screenkey { }; + + scrub = callPackage ../tools/misc/scrub { }; + + scfbuild = python3.pkgs.callPackage ../tools/misc/scfbuild { }; + + scriptaculous = callPackage ../development/libraries/scriptaculous { }; + + scrot = callPackage ../tools/graphics/scrot { }; + + scrypt = callPackage ../tools/security/scrypt { }; + + sd = callPackage ../tools/text/sd { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + sd-mux-ctrl = callPackage ../tools/misc/sd-mux-ctrl { }; + + sd-switch = callPackage ../os-specific/linux/sd-switch { }; + + sdate = callPackage ../tools/misc/sdate { }; + + sdat2img = callPackage ../tools/filesystems/sdat2img { }; + + sdcv = callPackage ../applications/misc/sdcv { }; + + sdl-jstest = callPackage ../tools/misc/sdl-jstest { }; + + senpai = callPackage ../applications/networking/irc/senpai { }; + + skim = callPackage ../tools/misc/skim { }; + + seaweedfs = callPackage ../applications/networking/seaweedfs { }; + + sec = callPackage ../tools/admin/sec { }; + + seccure = callPackage ../tools/security/seccure { }; + + secp256k1 = callPackage ../tools/security/secp256k1 { }; + + securefs = callPackage ../tools/filesystems/securefs { }; + + seexpr = callPackage ../development/compilers/seexpr { }; + + setroot = callPackage ../tools/X11/setroot { }; + + setserial = callPackage ../tools/system/setserial { }; + + setzer = callPackage ../applications/editors/setzer { }; + + seqdiag = with python3Packages; toPythonApplication seqdiag; + + sequoia = callPackage ../tools/security/sequoia { + pythonPackages = python3Packages; + }; + + servefile = python2.pkgs.callPackage ../tools/networking/servefile { }; + + sewer = callPackage ../tools/admin/sewer { }; + + sfeed = callPackage ../tools/misc/sfeed { }; + + sftpman = callPackage ../tools/filesystems/sftpman { }; + + screenfetch = callPackage ../tools/misc/screenfetch { }; + + sg3_utils = callPackage ../tools/system/sg3_utils { }; + + sha1collisiondetection = callPackage ../tools/security/sha1collisiondetection { }; + + shadowsocks-libev = callPackage ../tools/networking/shadowsocks-libev { }; + + shadered = callPackage ../development/tools/shadered { }; + + go-shadowsocks2 = callPackage ../tools/networking/go-shadowsocks2 { }; + + shabnam-fonts = callPackage ../data/fonts/shabnam-fonts { }; + + shadowsocks-rust = callPackage ../tools/networking/shadowsocks-rust { + inherit (darwin.apple_sdk.frameworks) CoreServices; + }; + + shadowsocks-v2ray-plugin = callPackage ../tools/networking/shadowsocks-v2ray-plugin { }; + + sharutils = callPackage ../tools/archivers/sharutils { }; + + shelldap = callPackage ../tools/misc/shelldap { }; + + shellspec = callPackage ../tools/misc/shellspec { }; + + schema2ldif = callPackage ../tools/text/schema2ldif { }; + + sharedown = callPackage ../tools/misc/sharedown { }; + + shen-sbcl = callPackage ../development/interpreters/shen-sbcl { }; + + shen-sources = callPackage ../development/interpreters/shen-sources { }; + + shocco = callPackage ../tools/text/shocco { }; + + shopify-themekit = callPackage ../development/web/shopify-themekit { }; + + shorewall = callPackage ../tools/networking/shorewall { }; + + shotwell = callPackage ../applications/graphics/shotwell { }; + + shout = nodePackages.shout; + + shrikhand = callPackage ../data/fonts/shrikhand { }; + + shunit2 = callPackage ../tools/misc/shunit2 { }; + + sic = callPackage ../applications/networking/irc/sic { }; + + siege = callPackage ../tools/networking/siege {}; + + sieve-connect = callPackage ../applications/networking/sieve-connect {}; + + sigal = callPackage ../applications/misc/sigal { }; + + sigi = callPackage ../applications/misc/sigi { }; + + sigil = libsForQt5.callPackage ../applications/editors/sigil { }; + + signalbackup-tools = callPackage ../applications/networking/instant-messengers/signalbackup-tools { }; + + signald = callPackage ../applications/networking/instant-messengers/signald { }; + + signal-cli = callPackage ../applications/networking/instant-messengers/signal-cli { }; + + signal-desktop = callPackage ../applications/networking/instant-messengers/signal-desktop { }; + + slither-analyzer = with python3Packages; toPythonApplication slither-analyzer; + + sigma-cli = callPackage ../tools/security/sigma-cli { }; + + signify = callPackage ../tools/security/signify { }; + + # aka., pgp-tools + signing-party = callPackage ../tools/security/signing-party { }; + + signumone-ks = callPackage ../applications/misc/signumone-ks { }; + + silc_client = callPackage ../applications/networking/instant-messengers/silc-client { }; + + silc_server = callPackage ../servers/silc-server { }; + + sile = callPackage ../tools/typesetting/sile { }; + + silver-searcher = callPackage ../tools/text/silver-searcher { }; + + simpleproxy = callPackage ../tools/networking/simpleproxy { }; + + simplescreenrecorder = libsForQt5.callPackage ../applications/video/simplescreenrecorder { }; + + sipsak = callPackage ../tools/networking/sipsak { }; + + sipvicious = python3Packages.callPackage ../tools/security/sipvicious { }; + + siril = callPackage ../applications/science/astronomy/siril { }; + + sisco.lv2 = callPackage ../applications/audio/sisco.lv2 { }; + + sit = callPackage ../applications/version-management/sit { + inherit (darwin.apple_sdk.frameworks) CoreFoundation Security; + }; + + sixpair = callPackage ../tools/misc/sixpair {}; + + sketchybar = callPackage ../os-specific/darwin/sketchybar { + inherit (darwin.apple_sdk.frameworks) Carbon Cocoa SkyLight; + }; + + skippy-xd = callPackage ../tools/X11/skippy-xd {}; + + sks = callPackage ../servers/sks { + ocamlPackages = ocaml-ng.ocamlPackages_4_12; + }; + + skydns = callPackage ../servers/skydns { }; + + sipcalc = callPackage ../tools/networking/sipcalc { }; + + skribilo = callPackage ../tools/typesetting/skribilo { + tex = texlive.combined.scheme-small; + }; + + skytemple = callPackage ../applications/misc/skytemple {}; + + sleuthkit = callPackage ../tools/system/sleuthkit {}; + + # Not updated upstream since 2018, doesn't support qt newer than 5.12 + sleepyhead = libsForQt512.callPackage ../applications/misc/sleepyhead {}; + + slides = callPackage ../applications/misc/slides { }; + + slirp4netns = callPackage ../tools/networking/slirp4netns { }; + + slowlorust = callPackage ../tools/networking/slowlorust { }; + + slsnif = callPackage ../tools/misc/slsnif { }; + + slstatus = callPackage ../applications/misc/slstatus { + conf = config.slstatus.conf or null; + }; + + smartdns = callPackage ../tools/networking/smartdns { }; + + smartmontools = callPackage ../tools/system/smartmontools { + inherit (darwin.apple_sdk.frameworks) IOKit ApplicationServices; + }; + + smarty3 = callPackage ../development/libraries/smarty3 { }; + smarty3-i18n = callPackage ../development/libraries/smarty3-i18n { }; + + smbnetfs = callPackage ../tools/filesystems/smbnetfs {}; + + smenu = callPackage ../tools/misc/smenu { }; + + smesh = callPackage ../development/libraries/smesh { + inherit (darwin.apple_sdk.frameworks) Cocoa; + }; + + smu = callPackage ../tools/text/smu { }; + + smug = callPackage ../tools/misc/smug { }; + + smpq = callPackage ../applications/misc/smpq { }; + + sn0int = callPackage ../tools/security/sn0int { }; + + snabb = callPackage ../tools/networking/snabb { }; + + snallygaster = callPackage ../tools/security/snallygaster { }; + + snapcast = callPackage ../applications/audio/snapcast { + pulseaudioSupport = config.pulseaudio or stdenv.isLinux; + }; + + snapdragon-profiler = callPackage ../tools/graphics/snapdragon-profiler { }; + + snet = callPackage ../tools/networking/snet { }; + + sng = callPackage ../tools/graphics/sng { + libpng = libpng12; + }; + + snmpcheck = callPackage ../tools/networking/snmpcheck {}; + + sniffglue = callPackage ../tools/networking/sniffglue { }; + + snort = callPackage ../applications/networking/ids/snort { }; + + so = callPackage ../development/tools/so { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + soapui = callPackage ../applications/networking/soapui { + jdk = jdk11; + }; + + spglib = callPackage ../development/libraries/spglib { }; + + spicy = callPackage ../development/tools/spicy { }; + + spire = callPackage ../tools/security/spire { }; + # to match naming of other package repositories + spire-agent = spire.agent; + spire-server = spire.server; + + spoof-mac = python3Packages.callPackage ../tools/networking/spoof-mac { }; + + ssh-askpass-fullscreen = callPackage ../tools/networking/ssh-askpass-fullscreen { }; + + sshguard = callPackage ../tools/security/sshguard {}; + + sshping = callPackage ../tools/networking/sshping {}; + + ssh-chat = callPackage ../applications/networking/instant-messengers/ssh-chat { }; + + ssh-to-age = callPackage ../tools/security/ssh-to-age { }; + + ssh-to-pgp = callPackage ../tools/security/ssh-to-pgp { }; + + suricata = callPackage ../applications/networking/ids/suricata { + python = python3; + }; + + sof-firmware = callPackage ../os-specific/linux/firmware/sof-firmware { }; + + softhsm = callPackage ../tools/security/softhsm { + inherit (darwin) libobjc; + inherit (darwin.apple_sdk.frameworks) Security; + }; + + sonar-scanner-cli = callPackage ../tools/security/sonar-scanner-cli { }; + + solr = callPackage ../servers/search/solr { }; + + solvespace = callPackage ../applications/graphics/solvespace { }; + + sonarr = callPackage ../servers/sonarr { }; + + sonata = callPackage ../applications/audio/sonata { }; + + sony-headphones-client = callPackage ../applications/audio/sony-headphones-client { }; + + soundconverter = callPackage ../applications/audio/soundconverter { }; + + soundkonverter = libsForQt5.soundkonverter; + + soundwireserver = callPackage ../applications/audio/soundwireserver { }; + + sozu = callPackage ../servers/sozu { }; + + sparsehash = callPackage ../development/libraries/sparsehash { }; + + spectre-meltdown-checker = callPackage ../tools/security/spectre-meltdown-checker { }; + + spigot = callPackage ../tools/misc/spigot { }; + + spiped = callPackage ../tools/networking/spiped { }; + + sqliteman = callPackage ../applications/misc/sqliteman { }; + + sqls = callPackage ../applications/misc/sqls { }; + + stdman = callPackage ../data/documentation/stdman { }; + + stderred = callPackage ../tools/misc/stderred { }; + + steck = callPackage ../servers/pinnwand/steck.nix { }; + + stenc = callPackage ../tools/backup/stenc { }; + + stm32loader = with python3Packages; toPythonApplication stm32loader; + + stremio = qt5.callPackage ../applications/video/stremio { }; + + sunwait = callPackage ../applications/misc/sunwait { }; + + surface-control = callPackage ../applications/misc/surface-control { }; + + syntex = callPackage ../tools/graphics/syntex {}; + + synapse-admin = callPackage ../tools/admin/synapse-admin {}; + + sl = callPackage ../tools/misc/sl { }; + + socat = callPackage ../tools/networking/socat { }; + + sockperf = callPackage ../tools/networking/sockperf { }; + + solaar = callPackage ../applications/misc/solaar {}; + + solanum = callPackage ../servers/irc/solanum { + autoreconfHook = buildPackages.autoreconfHook269; + }; + + solc-select = with python3Packages; toPythonApplication solc-select; + + sourceHighlight = callPackage ../tools/text/source-highlight { }; + + spacebar = callPackage ../os-specific/darwin/spacebar { + inherit (darwin.apple_sdk.frameworks) + Carbon Cocoa ScriptingBridge SkyLight; + }; + + spaceFM = callPackage ../applications/misc/spacefm { }; + + speech-denoiser = callPackage ../applications/audio/speech-denoiser {}; + + splot = haskell.lib.compose.justStaticExecutables haskellPackages.splot; + + spotdl = callPackage ../tools/audio/spotdl { }; + + squashfsTools = callPackage ../tools/filesystems/squashfs { }; + + squashfs-tools-ng = callPackage ../tools/filesystems/squashfs-tools-ng { }; + + squashfuse = callPackage ../tools/filesystems/squashfuse { }; + + srcml = callPackage ../applications/version-management/srcml { }; + + srt-live-server = callPackage ../applications/video/srt-live-server { }; + + srt-to-vtt-cl = callPackage ../tools/cd-dvd/srt-to-vtt-cl { }; + + srtrelay = callPackage ../applications/video/srtrelay { }; + + sourcehut = callPackage ../applications/version-management/sourcehut { }; + + sshfs-fuse = callPackage ../tools/filesystems/sshfs-fuse { }; + sshfs = sshfs-fuse; # added 2017-08-14 + + sshlatex = callPackage ../tools/typesetting/sshlatex { }; + + sshuttle = callPackage ../tools/security/sshuttle { }; + + ssldump = callPackage ../tools/networking/ssldump { }; + + sslsplit = callPackage ../tools/networking/sslsplit { }; + + sstp = callPackage ../tools/networking/sstp {}; + + stgit = callPackage ../applications/version-management/git-and-tools/stgit { }; + + strip-nondeterminism = perlPackages.strip-nondeterminism; + + structure-synth = callPackage ../tools/graphics/structure-synth { }; + + su-exec = callPackage ../tools/security/su-exec {}; + + subberthehut = callPackage ../tools/misc/subberthehut { }; + + subgit = callPackage ../applications/version-management/git-and-tools/subgit { }; + + subsurface = libsForQt514.callPackage ../applications/misc/subsurface { }; + + sudo = callPackage ../tools/security/sudo { }; + + suidChroot = callPackage ../tools/system/suid-chroot { }; + + sundtek = callPackage ../misc/drivers/sundtek { }; + + sunxi-tools = callPackage ../development/tools/sunxi-tools { }; + + sumorobot-manager = python3Packages.callPackage ../applications/science/robotics/sumorobot-manager { }; + + super = callPackage ../tools/security/super { }; + + supertag = callPackage ../tools/filesystems/supertag { }; + + supertux-editor = callPackage ../applications/editors/supertux-editor { }; + + svgbob = callPackage ../tools/graphics/svgbob { }; + + ssb = callPackage ../tools/security/ssb { }; + + ssb-patchwork = callPackage ../applications/networking/ssb-patchwork { }; + + ssdeep = callPackage ../tools/security/ssdeep { }; + + ssh-ident = callPackage ../tools/networking/ssh-ident { }; + + sshpass = callPackage ../tools/networking/sshpass { }; + + sslscan = callPackage ../tools/security/sslscan { }; + + sslmate = callPackage ../development/tools/sslmate { }; + + sshoogr = callPackage ../tools/networking/sshoogr { }; + + ssmtp = callPackage ../tools/networking/ssmtp { }; + + ssocr = callPackage ../applications/misc/ssocr { }; + + ssss = callPackage ../tools/security/ssss { }; + + stabber = callPackage ../misc/stabber { }; + + staticjinja = with python3.pkgs; toPythonApplication staticjinja; + + stevenblack-blocklist = callPackage ../tools/networking/stevenblack-blocklist { }; + + stress = callPackage ../tools/system/stress { }; + + stress-ng = callPackage ../tools/system/stress-ng { }; + + stressapptest = callPackage ../tools/system/stressapptest { }; + + stoken = callPackage ../tools/security/stoken (config.stoken or {}); + + storeBackup = callPackage ../tools/backup/store-backup { }; + + stow = callPackage ../tools/misc/stow { }; + xstow = callPackage ../tools/misc/xstow { }; + + stun = callPackage ../tools/networking/stun { }; + + stunnel = callPackage ../tools/networking/stunnel { }; + + stuntman = callPackage ../tools/networking/stuntman { }; + + stutter = haskell.lib.compose.justStaticExecutables haskellPackages.stutter; + + strongswan = callPackage ../tools/networking/strongswan { }; + strongswanTNC = strongswan.override { enableTNC = true; }; + strongswanNM = strongswan.override { enableNetworkManager = true; }; + + stylish-haskell = haskell.lib.compose.justStaticExecutables haskellPackages.stylish-haskell; + + su = shadow.su; + + subjs = callPackage ../tools/security/subjs { }; + + subsonic = callPackage ../servers/misc/subsonic { }; + + subfinder = callPackage ../tools/networking/subfinder { }; + + subzerod = with python3Packages; toPythonApplication subzerod; + + suckit = callPackage ../tools/networking/suckit { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + surfraw = callPackage ../tools/networking/surfraw { }; + + swagger-codegen = callPackage ../tools/networking/swagger-codegen { }; + + swagger-codegen3 = callPackage ../tools/networking/swagger-codegen3 { }; + + swapview = callPackage ../os-specific/linux/swapview { }; + + swtpm = callPackage ../tools/security/swtpm { }; + + svn2git = callPackage ../applications/version-management/git-and-tools/svn2git { + git = gitSVN; + }; + + svnfs = callPackage ../tools/filesystems/svnfs { }; + + svn-all-fast-export = libsForQt5.callPackage ../applications/version-management/git-and-tools/svn-all-fast-export { }; + + svtplay-dl = callPackage ../tools/misc/svtplay-dl { }; + + sycl-info = callPackage ../development/libraries/sycl-info { }; + + symengine = callPackage ../development/libraries/symengine { }; + + sysbench = callPackage ../development/tools/misc/sysbench {}; + + system-config-printer = callPackage ../tools/misc/system-config-printer { + autoreconfHook = buildPackages.autoreconfHook269; + libxml2 = libxml2Python; + }; + + systembus-notify = callPackage ../applications/misc/systembus-notify { }; + + stricat = callPackage ../tools/security/stricat { }; + + staruml = callPackage ../tools/misc/staruml { }; + + stone-phaser = callPackage ../applications/audio/stone-phaser { }; + + systrayhelper = callPackage ../tools/misc/systrayhelper {}; + + syft = callPackage ../tools/admin/syft { }; + + Sylk = callPackage ../applications/networking/Sylk {}; + + privoxy = callPackage ../tools/networking/privoxy { + w3m = w3m-batch; + }; + + swaks = callPackage ../tools/networking/swaks { }; + + swiften = callPackage ../development/libraries/swiften { }; + + squeekboard = callPackage ../applications/accessibility/squeekboard { }; + + sx = callPackage ../tools/X11/sx { + inherit (xorg) xauth xorgserver; + }; + + systemdgenie = libsForQt5.callPackage ../applications/system/systemdgenie { }; + + t = callPackage ../tools/misc/t { }; + + tabnine = callPackage ../development/tools/tabnine { }; + + tab-rs = callPackage ../tools/misc/tab-rs { + inherit (darwin.apple_sdk.frameworks) IOKit; + }; + + tagtime = callPackage ../applications/misc/tagtime { }; + + inherit (callPackages ../applications/networking/taler { }) + taler-exchange taler-merchant; + + tangram = callPackage ../applications/networking/instant-messengers/tangram { }; + + t1utils = callPackage ../tools/misc/t1utils { }; + + talkfilters = callPackage ../misc/talkfilters {}; + + znapzend = callPackage ../tools/backup/znapzend { }; + + tar2ext4 = callPackage ../tools/filesystems/tar2ext4 { }; + + targetcli = callPackage ../os-specific/linux/targetcli { }; + + target-isns = callPackage ../os-specific/linux/target-isns { }; + + tarlz = callPackage ../tools/archivers/tarlz { }; + + tarsnap = callPackage ../tools/backup/tarsnap { }; + + tarsnapper = callPackage ../tools/backup/tarsnapper { }; + + tarssh = callPackage ../servers/tarssh { }; + + tartan = callPackage ../development/tools/analysis/tartan {}; + + tartube = callPackage ../applications/video/tartube { }; + + tartube-yt-dlp = callPackage ../applications/video/tartube { + youtube-dl = yt-dlp; + }; + + tayga = callPackage ../tools/networking/tayga { }; + + tcpcrypt = callPackage ../tools/security/tcpcrypt { }; + + tcptraceroute = callPackage ../tools/networking/tcptraceroute { }; + + tboot = callPackage ../tools/security/tboot { }; + + tagutil = callPackage ../applications/audio/tagutil { }; + + tcpdump = callPackage ../tools/networking/tcpdump { }; + + tcpflow = callPackage ../tools/networking/tcpflow { }; + + tcpkali = callPackage ../applications/networking/tcpkali { }; + + tcpreplay = callPackage ../tools/networking/tcpreplay { + inherit (darwin.apple_sdk.frameworks) Carbon CoreServices; + }; + + tdns-cli = callPackage ../tools/networking/tdns-cli { }; + + tea = callPackage ../tools/misc/tea { }; + + inherit (nodePackages) teck-programmer; + + ted = callPackage ../tools/typesetting/ted { }; + + teamviewer = libsForQt515.callPackage ../applications/networking/remote/teamviewer { }; + + teleconsole = callPackage ../tools/misc/teleconsole { }; + + telegraf = callPackage ../servers/monitoring/telegraf { }; + + teleport = callPackage ../servers/teleport {}; + + telepresence = callPackage ../tools/networking/telepresence { + pythonPackages = python3Packages; + }; + + telepresence2 = callPackage ../tools/networking/telepresence2 { }; + + teler = callPackage ../tools/security/teler { }; + + telescope = callPackage ../applications/networking/browsers/telescope { }; + + termcolor = callPackage ../development/libraries/termcolor { }; + + termscp = callPackage ../tools/networking/termscp { + inherit (darwin.apple_sdk.frameworks) Foundation Security; + }; + + termius = callPackage ../applications/networking/termius { }; + + termplay = callPackage ../tools/misc/termplay { }; + + testEqualDerivation = callPackage ../build-support/test-equal-derivation.nix { }; + + tetrd = callPackage ../applications/networking/tetrd { }; + + tewisay = callPackage ../tools/misc/tewisay { }; + + texmacs = if stdenv.isDarwin + then callPackage ../applications/editors/texmacs/darwin.nix { + inherit (darwin.apple_sdk.frameworks) CoreFoundation Cocoa; + tex = texlive.combined.scheme-small; + extraFonts = true; + } else libsForQt5.callPackage ../applications/editors/texmacs { + tex = texlive.combined.scheme-small; + extraFonts = true; + }; + + texmaker = libsForQt5.callPackage ../applications/editors/texmaker { }; + + texstudio = libsForQt5.callPackage ../applications/editors/texstudio { }; + + textadept = callPackage ../applications/editors/textadept/10 { }; + + textadept11 = callPackage ../applications/editors/textadept/11 { }; + + texworks = libsForQt5.callPackage ../applications/editors/texworks { }; + + tex-match = callPackage ../tools/typesetting/tex/tex-match { }; + + tf2pulumi = callPackage ../development/tools/tf2pulumi { }; + + thc-hydra = callPackage ../tools/security/thc-hydra { }; + + thc-ipv6 = callPackage ../tools/security/thc-ipv6 { }; + + thedesk = callPackage ../applications/misc/thedesk { + electron = electron_14; + }; + + theharvester = callPackage ../tools/security/theharvester { }; + + inherit (nodePackages) thelounge; + + theLoungePlugins = with lib; let + pkgs = filterAttrs (name: _: hasPrefix "thelounge-" name) nodePackages; + getPackagesWithPrefix = prefix: mapAttrs' (name: pkg: nameValuePair (removePrefix ("thelounge-" + prefix + "-") name) pkg) + (filterAttrs (name: _: hasPrefix ("thelounge-" + prefix + "-") name) pkgs); + in + recurseIntoAttrs { + plugins = recurseIntoAttrs (getPackagesWithPrefix "plugin"); + themes = recurseIntoAttrs (getPackagesWithPrefix "theme"); + }; + + thefuck = python3Packages.callPackage ../tools/misc/thefuck { }; + + thicket = callPackage ../applications/version-management/git-and-tools/thicket { }; + + thiefmd = callPackage ../applications/editors/thiefmd { }; + + thin-provisioning-tools = callPackage ../tools/misc/thin-provisioning-tools { }; + + thinkpad-scripts = python3.pkgs.callPackage ../tools/misc/thinkpad-scripts { }; + + threema-desktop = callPackage ../applications/networking/instant-messengers/threema-desktop { }; + + tidy-viewer = callPackage ../tools/text/tidy-viewer { }; + + tile38 = callPackage ../servers/tile38 { }; + + tiled = libsForQt5.callPackage ../applications/editors/tiled { }; + + tiledb = callPackage ../development/libraries/tiledb { }; + + tilem = callPackage ../applications/emulators/tilem { }; + + timemachine = callPackage ../applications/audio/timemachine { }; + + timelapse-deflicker = callPackage ../applications/graphics/timelapse-deflicker { }; + + timetrap = callPackage ../applications/office/timetrap { }; + + timetagger = callPackage ../servers/timetagger { }; + + timezonemap = callPackage ../development/libraries/timezonemap { }; + + tzupdate = callPackage ../applications/misc/tzupdate { }; + + tinc = callPackage ../tools/networking/tinc { }; + + tie = callPackage ../development/tools/misc/tie { }; + + tikzit = libsForQt5.callPackage ../tools/typesetting/tikzit { }; + + tinc_pre = callPackage ../tools/networking/tinc/pre.nix { }; + + tinycbor = callPackage ../development/libraries/tinycbor { }; + + tiny8086 = callPackage ../applications/emulators/tiny8086 { }; + + tinyemu = callPackage ../applications/emulators/tinyemu { }; + + tinyfecvpn = callPackage ../tools/networking/tinyfecvpn { }; + + tinyobjloader = callPackage ../development/libraries/tinyobjloader { }; + + tinyprog = callPackage ../development/embedded/fpga/tinyprog { }; + + tinyproxy = callPackage ../tools/networking/tinyproxy { }; + + time-decode = callPackage ../tools/misc/time-decode { }; + + tio = callPackage ../tools/misc/tio { }; + + tiv = callPackage ../applications/misc/tiv { }; + + tldr = callPackage ../tools/misc/tldr { }; + + tldr-hs = haskellPackages.tldr; + + tlspool = callPackage ../tools/networking/tlspool { }; + + tmate = callPackage ../tools/misc/tmate { }; + + tmate-ssh-server = callPackage ../servers/tmate-ssh-server { }; + + tmpwatch = callPackage ../tools/misc/tmpwatch { }; + + tmpmail = callPackage ../applications/networking/tmpmail { }; + + tmux = callPackage ../tools/misc/tmux { }; + + tmux-cssh = callPackage ../tools/misc/tmux-cssh { }; + + tmuxp = callPackage ../tools/misc/tmuxp { }; + + tmuxinator = callPackage ../tools/misc/tmuxinator { }; + + tmux-mem-cpu-load = callPackage ../tools/misc/tmux-mem-cpu-load { }; + + tmux-xpanes = callPackage ../tools/misc/tmux-xpanes { }; + + tmuxPlugins = recurseIntoAttrs (callPackage ../misc/tmux-plugins { }); + + tmsu = callPackage ../tools/filesystems/tmsu { }; + + toilet = callPackage ../tools/misc/toilet { }; + + tokei = callPackage ../development/tools/misc/tokei { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + tokio-console = callPackage ../development/tools/tokio-console { }; + + toml2nix = (callPackage ../tools/toml2nix { }).toml2nix { }; + + topgrade = callPackage ../tools/misc/topgrade { + inherit (darwin.apple_sdk.frameworks) Foundation; + }; + + top-git = callPackage ../applications/version-management/git-and-tools/topgit { }; + + tor = callPackage ../tools/security/tor { }; + + tor-browser-bundle-bin = callPackage ../applications/networking/browsers/tor-browser-bundle-bin { }; + + touchegg = callPackage ../tools/inputmethods/touchegg { }; + + torrent7z = callPackage ../tools/archivers/torrent7z { }; + + torsocks = callPackage ../tools/security/tor/torsocks.nix { }; + + toss = callPackage ../tools/networking/toss { }; + + tox-node = callPackage ../tools/networking/tox-node { }; + + toxvpn = callPackage ../tools/networking/toxvpn { }; + + toybox = callPackage ../tools/misc/toybox { }; + + tpmmanager = callPackage ../applications/misc/tpmmanager { }; + + tpm-quote-tools = callPackage ../tools/security/tpm-quote-tools { }; + + tpm-tools = callPackage ../tools/security/tpm-tools { }; + + tpm-luks = callPackage ../tools/security/tpm-luks { }; + + tpm2-abrmd = callPackage ../tools/security/tpm2-abrmd { }; + + tpm2-pkcs11 = callPackage ../misc/tpm2-pkcs11 { }; + + tpm2-tools = callPackage ../tools/security/tpm2-tools { }; + + trezor-udev-rules = callPackage ../os-specific/linux/trezor-udev-rules {}; + + trezorctl = with python3Packages; toPythonApplication trezor; + + trezord = callPackage ../servers/trezord { + inherit (darwin.apple_sdk.frameworks) AppKit; + }; + + trezor_agent = with python3Packages; toPythonApplication trezor_agent; + + trezor-suite = callPackage ../applications/blockchains/trezor-suite { }; + + trunk = callPackage ../development/tools/trunk { + inherit (darwin.apple_sdk.frameworks) CoreServices Security; + }; + + tthsum = callPackage ../applications/misc/tthsum { }; + + ttp = with python3.pkgs; toPythonApplication ttp; + + chaps = callPackage ../tools/security/chaps { }; + + trace-cmd = callPackage ../os-specific/linux/trace-cmd { }; + + kernelshark = libsForQt5.callPackage ../os-specific/linux/trace-cmd/kernelshark.nix { }; + + traceroute = callPackage ../tools/networking/traceroute { }; + + tracebox = callPackage ../tools/networking/tracebox { }; + + tracefilegen = callPackage ../development/tools/analysis/garcosim/tracefilegen { }; + + tracefilesim = callPackage ../development/tools/analysis/garcosim/tracefilesim { }; + + transcrypt = callPackage ../applications/version-management/git-and-tools/transcrypt { }; + + transifex-client = python3.pkgs.callPackage ../tools/text/transifex-client { }; + + translate-shell = callPackage ../applications/misc/translate-shell { }; + + translatepy = with python3.pkgs; toPythonApplication translatepy; + + trash-cli = callPackage ../tools/misc/trash-cli { }; + + trenchbroom = libsForQt5.callPackage ../applications/misc/trenchbroom { + inherit (xorg) libXxf86vm; + }; + + trickle = callPackage ../tools/networking/trickle {}; + + inherit (nodePackages) triton; + + triggerhappy = callPackage ../tools/inputmethods/triggerhappy {}; + + inherit (callPackage ../applications/office/trilium {}) + trilium-desktop + trilium-server + ; + + trousers = callPackage ../tools/security/trousers { }; + + trx = callPackage ../tools/audio/trx { }; + + tryton = callPackage ../applications/office/tryton { }; + + trytond = with python3Packages; toPythonApplication trytond; + + tuntox = callPackage ../tools/networking/tuntox { }; + + omapd = callPackage ../tools/security/omapd { }; + + ttf2pt1 = callPackage ../tools/misc/ttf2pt1 { }; + + ttfautohint = libsForQt5.callPackage ../tools/misc/ttfautohint { + autoreconfHook = buildPackages.autoreconfHook269; + }; + ttfautohint-nox = ttfautohint.override { enableGUI = false; }; + + tty-clock = callPackage ../tools/misc/tty-clock { }; + + tty-share = callPackage ../applications/misc/tty-share { }; + + ttyplot = callPackage ../tools/misc/ttyplot { }; + + ttygif = callPackage ../tools/misc/ttygif { }; + + ttylog = callPackage ../tools/misc/ttylog { }; + + ipbt = callPackage ../tools/misc/ipbt { }; + + tuhi = callPackage ../applications/misc/tuhi { }; + + tuir = callPackage ../applications/misc/tuir { }; + + tunnelto = callPackage ../tools/networking/tunnelto { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + tuptime = callPackage ../tools/system/tuptime { }; + + turses = callPackage ../applications/networking/instant-messengers/turses { }; + + tutanota-desktop = callPackage ../applications/networking/mailreaders/tutanota-desktop { }; + + tv = callPackage ../tools/text/tv { }; + + tvm = callPackage ../development/compilers/tvm { }; + + oysttyer = callPackage ../applications/networking/instant-messengers/oysttyer { }; + + twilight = callPackage ../tools/graphics/twilight { + libX11 = xorg.libX11; + }; + + twitch-chat-downloader = python3Packages.callPackage ../applications/misc/twitch-chat-downloader { }; + + twitterBootstrap = callPackage ../development/web/twitter-bootstrap {}; + + twtxt = python3Packages.callPackage ../applications/networking/twtxt { }; + + twurl = callPackage ../tools/misc/twurl { }; + + txr = callPackage ../tools/misc/txr { inherit (llvmPackages_latest) stdenv; }; + + txt2man = callPackage ../tools/misc/txt2man { }; + + txt2tags = callPackage ../tools/text/txt2tags { }; + + txtw = callPackage ../tools/misc/txtw { }; + + tydra = callPackage ../tools/misc/tydra { }; + + typos = callPackage ../development/tools/typos { }; + + tz = callPackage ../tools/misc/tz { }; + + u9fs = callPackage ../servers/u9fs { }; + + ua = callPackage ../tools/networking/ua { }; + + ubidump = python3Packages.callPackage ../tools/filesystems/ubidump { }; + + ubridge = callPackage ../tools/networking/ubridge { }; + + ubertooth = callPackage ../applications/radio/ubertooth { }; + + ucarp = callPackage ../servers/ucarp { }; + + ucl = callPackage ../development/libraries/ucl { }; + + ucspi-tcp = callPackage ../tools/networking/ucspi-tcp { }; + + udftools = callPackage ../tools/filesystems/udftools {}; + + udpt = callPackage ../servers/udpt { }; + + udptunnel = callPackage ../tools/networking/udptunnel { }; + + uftrace = callPackage ../development/tools/uftrace { }; + + uget = callPackage ../tools/networking/uget { }; + + uget-integrator = callPackage ../tools/networking/uget-integrator { }; + + ugrep = callPackage ../tools/text/ugrep { }; + + uif2iso = callPackage ../tools/cd-dvd/uif2iso { }; + + uivonim = callPackage ../applications/editors/uivonim { }; + + umlet = callPackage ../tools/misc/umlet { }; + + unetbootin = libsForQt5.callPackage ../tools/cd-dvd/unetbootin { }; + + unfs3 = callPackage ../servers/unfs3 { }; + + unoconv = callPackage ../tools/text/unoconv { }; + + unrtf = callPackage ../tools/text/unrtf { }; + + unrpa = with python38Packages; toPythonApplication unrpa; + + untex = callPackage ../tools/text/untex { }; + + untrunc-anthwlock = callPackage ../tools/video/untrunc-anthwlock { }; + + up = callPackage ../tools/misc/up { }; + + upterm = callPackage ../tools/misc/upterm { }; + + upx = callPackage ../tools/compression/upx { }; + + uq = callPackage ../misc/uq { }; + + uqmi = callPackage ../tools/networking/uqmi { }; + + urdfdom = callPackage ../development/libraries/urdfdom {}; + + urdfdom-headers = callPackage ../development/libraries/urdfdom-headers {}; + + uriparser = callPackage ../development/libraries/uriparser {}; + + urlscan = callPackage ../applications/misc/urlscan { }; + + urlview = callPackage ../applications/misc/urlview {}; + + urn-timer = callPackage ../tools/misc/urn-timer { }; + + ursadb = callPackage ../servers/ursadb {}; + + usbmuxd = callPackage ../tools/misc/usbmuxd {}; + + ustreamer = callPackage ../applications/video/ustreamer { }; + + usync = callPackage ../applications/misc/usync { }; + + uwc = callPackage ../tools/text/uwc { }; + + uwsgi = callPackage ../servers/uwsgi { }; + + uwufetch = callPackage ../tools/misc/uwufetch { }; + + v2ray = callPackage ../tools/networking/v2ray { }; + + v2ray-domain-list-community = callPackage ../data/misc/v2ray-domain-list-community { }; + + v2ray-geoip = callPackage ../data/misc/v2ray-geoip { }; + + vacuum = callPackage ../applications/networking/instant-messengers/vacuum {}; + + vampire = callPackage ../applications/science/logic/vampire {}; + + variety = callPackage ../applications/misc/variety {}; + + vdmfec = callPackage ../applications/backup/vdmfec {}; + + vk-cli = callPackage ../applications/networking/instant-messengers/vk-cli { }; + + vk-messenger = callPackage ../applications/networking/instant-messengers/vk-messenger {}; + + volatility = callPackage ../tools/security/volatility { }; + + volatility3 = callPackage ../tools/security/volatility3 { }; + + vbetool = callPackage ../tools/system/vbetool { }; + + vcsi = callPackage ../tools/video/vcsi { }; + + vde2 = callPackage ../tools/networking/vde2 { }; + + vboot_reference = callPackage ../tools/system/vboot_reference {}; + + vcftools = callPackage ../applications/science/biology/vcftools { }; + + vcsh = callPackage ../applications/version-management/vcsh { }; + + vcs_query = callPackage ../tools/misc/vcs_query { }; + + vcstool = callPackage ../development/tools/vcstool { }; + + vend = callPackage ../development/tools/vend { }; + + verco = callPackage ../applications/version-management/verco { }; + + verilator = callPackage ../applications/science/electronics/verilator {}; + + verilog = callPackage ../applications/science/electronics/verilog { + autoconf = buildPackages.autoconf269; + }; + + versus = callPackage ../applications/networking/versus { }; + + vgrep = callPackage ../tools/text/vgrep { }; + + vhd2vl = callPackage ../applications/science/electronics/vhd2vl { }; + + video2midi = callPackage ../tools/audio/video2midi { + pythonPackages = python3Packages; + }; + + vifm = callPackage ../applications/misc/vifm { }; + + vifm-full = callPackage ../applications/misc/vifm { + mediaSupport = true; + inherit lib udisks2 python3; + }; + + via = callPackage ../tools/misc/via {}; + + vial = callPackage ../tools/misc/vial {}; + + viking = callPackage ../applications/misc/viking { }; + + vim-vint = callPackage ../development/tools/vim-vint { }; + + vimer = callPackage ../tools/misc/vimer { }; + + vimpager = callPackage ../tools/misc/vimpager { }; + vimpager-latest = callPackage ../tools/misc/vimpager/latest.nix { }; + + vimwiki-markdown = python3Packages.callPackage ../tools/misc/vimwiki-markdown { }; + + visidata = (newScope python3Packages) ../applications/misc/visidata { + }; + + vit = callPackage ../applications/misc/vit { }; + + viu = callPackage ../tools/graphics/viu { }; + + vix = callPackage ../tools/misc/vix { }; + + vkBasalt = callPackage ../tools/graphics/vkBasalt { + vkBasalt32 = pkgsi686Linux.vkBasalt; + }; + + vnc2flv = callPackage ../tools/video/vnc2flv {}; + + vncrec = callPackage ../tools/video/vncrec { }; + + vo-amrwbenc = callPackage ../development/libraries/vo-amrwbenc { }; + + vo-aacenc = callPackage ../development/libraries/vo-aacenc { }; + + vobcopy = callPackage ../tools/cd-dvd/vobcopy { }; + + vobsub2srt = callPackage ../tools/cd-dvd/vobsub2srt { }; + + void = callPackage ../tools/misc/void { }; + + volume_key = callPackage ../development/libraries/volume-key { }; + + vorbisgain = callPackage ../tools/misc/vorbisgain { }; + + vpnc = callPackage ../tools/networking/vpnc { }; + + vpnc-scripts = callPackage ../tools/networking/vpnc-scripts { }; + + vpn-slice = python3Packages.callPackage ../tools/networking/vpn-slice { }; + + vp = callPackage ../applications/misc/vp { + # Enable next line for console graphics. Note that + # it requires `sixel` enabled terminals such as mlterm + # or xterm -ti 340 + SDL = SDL_sixel; + }; + + vtm = callPackage ../tools/misc/vtm { }; + + witness = callPackage ../tools/security/witness { }; + + openconnect = openconnect_gnutls; + + openconnect_openssl = callPackage ../tools/networking/openconnect { + inherit (darwin.apple_sdk.frameworks) PCSC; + gnutls = null; + }; + + openconnect_gnutls = callPackage ../tools/networking/openconnect { + inherit (darwin.apple_sdk.frameworks) PCSC; + openssl = null; + }; + + openconnect_head = callPackage ../tools/networking/openconnect { + inherit (darwin.apple_sdk.frameworks) PCSC; + head = true; + openssl = null; + }; + + globalprotect-openconnect = libsForQt5.callPackage ../tools/networking/globalprotect-openconnect { }; + + ding-libs = callPackage ../tools/misc/ding-libs { }; + + sssd = callPackage ../os-specific/linux/sssd { + inherit (perlPackages) Po4a; + }; + + sentry-cli = callPackage ../development/tools/sentry-cli { + inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration; + }; + + sentry-native = callPackage ../development/libraries/sentry-native { }; + + waifu2x-converter-cpp = callPackage ../tools/graphics/waifu2x-converter-cpp { + inherit (darwin.apple_sdk.frameworks) OpenCL; + }; + + wakatime = python2Packages.callPackage ../tools/misc/wakatime { }; + + weather = callPackage ../applications/misc/weather { }; + + wego = callPackage ../applications/misc/wego { }; + + wal_e = callPackage ../tools/backup/wal-e { }; + + watchexec = callPackage ../tools/misc/watchexec { + inherit (darwin.apple_sdk.frameworks) CoreServices Foundation; + }; + + watchman = callPackage ../development/tools/watchman { + inherit (darwin.apple_sdk.frameworks) CoreServices; + autoconf = buildPackages.autoconf269; + }; + + wavefunctioncollapse = callPackage ../tools/graphics/wavefunctioncollapse {}; + + wbox = callPackage ../tools/networking/wbox {}; + + webassemblyjs-cli = nodePackages."@webassemblyjs/cli"; + webassemblyjs-repl = nodePackages."@webassemblyjs/repl"; + wasm-strip = nodePackages."@webassemblyjs/wasm-strip"; + wasm-text-gen = nodePackages."@webassemblyjs/wasm-text-gen"; + wast-refmt = nodePackages."@webassemblyjs/wast-refmt"; + + wasm-bindgen-cli = callPackage ../development/tools/wasm-bindgen-cli { + inherit (darwin.apple_sdk.frameworks) Security; + nodejs = nodejs_latest; + }; + + welkin = callPackage ../tools/graphics/welkin {}; + + wemux = callPackage ../tools/misc/wemux { }; + + wf-recorder = callPackage ../applications/video/wf-recorder { }; + + whipper = callPackage ../applications/audio/whipper { }; + + whitebophir = callPackage ../servers/web-apps/whitebophir { }; + + whois = callPackage ../tools/networking/whois { }; + + wifish = callPackage ../tools/networking/wifish { }; + + wifite2 = callPackage ../tools/networking/wifite2 { }; + + wimboot = callPackage ../tools/misc/wimboot { }; + + wire = callPackage ../development/tools/wire { }; + + wireguard-tools = callPackage ../tools/networking/wireguard-tools { }; + + wg-friendly-peer-names = callPackage ../tools/networking/wg-friendly-peer-names { }; + + wg-netmanager = callPackage ../tools/networking/wg-netmanager { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + woff2 = callPackage ../development/web/woff2 { }; + + woof = callPackage ../tools/misc/woof { }; + + wootility = callPackage ../tools/misc/wootility { + inherit (xorg) libxkbfile; + }; + + wormhole-william = callPackage ../tools/networking/wormhole-william { }; + + wpscan = callPackage ../tools/security/wpscan { }; + + wsmancli = callPackage ../tools/system/wsmancli {}; + + wstunnel = haskell.lib.compose.justStaticExecutables haskellPackages.wstunnel; + + wolfebin = callPackage ../tools/networking/wolfebin { + python = python2; + }; + + xautoclick = callPackage ../applications/misc/xautoclick {}; + + xl2tpd = callPackage ../tools/networking/xl2tpd { }; + + xe = callPackage ../tools/system/xe { }; + + xplr = callPackage ../applications/misc/xplr {}; + + testdisk = libsForQt5.callPackage ../tools/system/testdisk { }; + + testdisk-qt = testdisk.override { enableQt = true; }; + + textql = callPackage ../development/tools/textql { + buildGoPackage = buildGo116Package; + }; + + html2text = callPackage ../tools/text/html2text { }; + + html-tidy = callPackage ../tools/text/html-tidy { }; + + html-xml-utils = callPackage ../tools/text/xml/html-xml-utils { }; + + htmldoc = callPackage ../tools/typesetting/htmldoc { + inherit (darwin.apple_sdk.frameworks) SystemConfiguration Foundation; + }; + + htmltest = callPackage ../development/tools/htmltest { }; + + rcm = callPackage ../tools/misc/rcm {}; + + td = callPackage ../tools/misc/td { }; + + tegola = callPackage ../servers/tegola {}; + + tftp-hpa = callPackage ../tools/networking/tftp-hpa {}; + + tigervnc = callPackage ../tools/admin/tigervnc {}; + + tightvnc = callPackage ../tools/admin/tightvnc { + fontDirectories = [ xorg.fontadobe75dpi xorg.fontmiscmisc xorg.fontcursormisc + xorg.fontbhlucidatypewriter75dpi ]; + }; + + time = callPackage ../tools/misc/time { }; + + tweet-hs = haskell.lib.compose.justStaticExecutables haskellPackages.tweet-hs; + + tweeny = callPackage ../development/libraries/tweeny { }; + + qfsm = callPackage ../applications/science/electronics/qfsm { }; + + tkgate = callPackage ../applications/science/electronics/tkgate/1.x.nix { }; + + tm = callPackage ../tools/system/tm { }; + + tradcpp = callPackage ../development/tools/tradcpp { }; + + traitor = callPackage ../tools/security/traitor { }; + + tre = callPackage ../development/libraries/tre { }; + + tremor-rs = callPackage ../tools/misc/tremor-rs { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + truecrack = callPackage ../tools/security/truecrack { }; + truecrack-cuda = truecrack.override { cudaSupport = true; }; + + ts = callPackage ../tools/system/ts { }; + + ttmkfdir = callPackage ../tools/misc/ttmkfdir { }; + + ttwatch = callPackage ../tools/misc/ttwatch { }; + + turbovnc = callPackage ../tools/admin/turbovnc { + # fontDirectories = [ xorg.fontadobe75dpi xorg.fontmiscmisc xorg.fontcursormisc xorg.fontbhlucidatypewriter75dpi ]; + libjpeg_turbo = libjpeg_turbo.override { enableJava = true; }; + }; + + udunits = callPackage ../development/libraries/udunits { }; + + uftp = callPackage ../servers/uftp {}; + + uhttpmock = callPackage ../development/libraries/uhttpmock { }; + + uim = callPackage ../tools/inputmethods/uim { + autoconf = buildPackages.autoconf269; + }; + + uhub = callPackage ../servers/uhub { }; + + unclutter = callPackage ../tools/misc/unclutter { }; + + unclutter-xfixes = callPackage ../tools/misc/unclutter-xfixes { }; + + unbound = callPackage ../tools/networking/unbound {}; + + unbound-with-systemd = unbound.override { + withSystemd = true; + }; + + unbound-full = unbound.override { + withSystemd = true; + withDoH = true; + withECS = true; + withDNSCrypt = true; + withDNSTAP = true; + withTFO = true; + withRedis = true; + }; + + unicorn = callPackage ../development/libraries/unicorn { + inherit (darwin.apple_sdk.frameworks) IOKit; + }; + + units = callPackage ../tools/misc/units { + enableCurrenciesUpdater = true; + pythonPackages = python3Packages; + }; + + unittest-cpp = callPackage ../development/libraries/unittest-cpp { }; + + unrar = callPackage ../tools/archivers/unrar { }; + + unrar-wrapper = python3Packages.callPackage ../tools/archivers/unrar-wrapper { }; + + vul = callPackage ../applications/misc/vul { }; + + xar = callPackage ../tools/compression/xar { }; + + xarchive = callPackage ../tools/archivers/xarchive { }; + + xarchiver = callPackage ../tools/archivers/xarchiver { }; + + xbanish = callPackage ../tools/X11/xbanish { }; + + xbrightness = callPackage ../tools/X11/xbrightness { }; + + xdg-launch = callPackage ../applications/misc/xdg-launch { }; + + xkbvalidate = callPackage ../tools/X11/xkbvalidate { }; + + xkeysnail = callPackage ../tools/X11/xkeysnail { }; + + xfstests = callPackage ../tools/misc/xfstests { }; + + xprintidle-ng = callPackage ../tools/X11/xprintidle-ng {}; + + xscast = callPackage ../applications/video/xscast { }; + + xsettingsd = callPackage ../tools/X11/xsettingsd { }; + + xsensors = callPackage ../os-specific/linux/xsensors { }; + + xspim = callPackage ../development/tools/misc/xspim { }; + + xcruiser = callPackage ../applications/misc/xcruiser { }; + + xwallpaper = callPackage ../tools/X11/xwallpaper { }; + + gxkb = callPackage ../applications/misc/gxkb { }; + + xxkb = callPackage ../applications/misc/xxkb { }; + + ugarit = callPackage ../tools/backup/ugarit { + inherit (chickenPackages_4) eggDerivation fetchegg; + }; + + ugarit-manifest-maker = callPackage ../tools/backup/ugarit-manifest-maker { + inherit (chickenPackages_4) eggDerivation fetchegg; + }; + + unar = callPackage ../tools/archivers/unar { + inherit (darwin.apple_sdk.frameworks) Foundation AppKit; + stdenv = clangStdenv; + }; + + unp = callPackage ../tools/archivers/unp { }; + + unshield = callPackage ../tools/archivers/unshield { }; + + unzip = callPackage ../tools/archivers/unzip { }; + + unzipNLS = lowPrio (unzip.override { enableNLS = true; }); + + undmg = callPackage ../tools/archivers/undmg { }; + + uptimed = callPackage ../tools/system/uptimed { }; + + upwork = callPackage ../applications/misc/upwork { }; + + urjtag = callPackage ../tools/misc/urjtag { }; + + urlhunter = callPackage ../tools/security/urlhunter { }; + + urlwatch = callPackage ../tools/networking/urlwatch { }; + + valum = callPackage ../development/web/valum { }; + + inherit (callPackages ../servers/varnish { }) + varnish60 varnish70; + inherit (callPackages ../servers/varnish/packages.nix { }) + varnish60Packages varnish70Packages; + + varnishPackages = varnish70Packages; + varnish = varnishPackages.varnish; + + hitch = callPackage ../servers/hitch { }; + + veracrypt = callPackage ../applications/misc/veracrypt { + wxGTK = wxGTK30; + }; + + vlan = callPackage ../tools/networking/vlan { }; + + vmtouch = callPackage ../tools/misc/vmtouch { }; + + vncdo = with python3Packages; toPythonApplication vncdo; + + volumeicon = callPackage ../tools/audio/volumeicon { }; + + waf = callPackage ../development/tools/build-managers/waf { }; + wafHook = callPackage ../development/tools/build-managers/wafHook { }; + + wagyu = callPackage ../tools/misc/wagyu { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + wakelan = callPackage ../tools/networking/wakelan { }; + + wavemon = callPackage ../tools/networking/wavemon { }; + + wdfs = callPackage ../tools/filesystems/wdfs { }; + + wdiff = callPackage ../tools/text/wdiff { }; + + wdisplays = callPackage ../tools/graphics/wdisplays { }; + + webalizer = callPackage ../tools/networking/webalizer { }; + + weighttp = callPackage ../tools/networking/weighttp { }; + + wget = callPackage ../tools/networking/wget { + libpsl = null; + }; + + wget2 = callPackage ../tools/networking/wget2 { + # update breaks grub2 + gnulib = pkgs.gnulib.overrideAttrs (_: rec { + version = "20210208"; + src = fetchgit { + url = "https://git.savannah.gnu.org/r/gnulib.git"; + rev = "0b38e1d69f03d3977d7ae7926c1efeb461a8a971"; + sha256 = "06bj9y8wcfh35h653yk8j044k7h5g82d2j3z3ib69rg0gy1xagzp"; + }; + }); + }; + + wgpu-utils = callPackage ../tools/graphics/wgpu-utils { }; + + wg-bond = callPackage ../applications/networking/wg-bond { }; + + which = callPackage ../tools/system/which { }; + + whsniff = callPackage ../applications/networking/sniffers/whsniff { }; + + wiiuse = callPackage ../development/libraries/wiiuse { + inherit (darwin) libobjc; + inherit (darwin.apple_sdk.frameworks) Foundation IOBluetooth; + }; + + woeusb = callPackage ../tools/misc/woeusb { }; + + woeusb-ng = callPackage ../tools/misc/woeusb-ng { }; + + wslu = callPackage ../tools/system/wslu { }; + + chase = callPackage ../tools/system/chase { }; + + wingpanel-indicator-ayatana = callPackage ../desktops/pantheon/third-party/wingpanel-indicator-ayatana { }; + + wimlib = callPackage ../tools/archivers/wimlib { }; + + wipe = callPackage ../tools/security/wipe { }; + + wireguard-go = callPackage ../tools/networking/wireguard-go { }; + + wkhtmltopdf = libsForQt514.callPackage ../tools/graphics/wkhtmltopdf { }; + + wml = callPackage ../development/web/wml { }; + + wmc-mpris = callPackage ../applications/misc/web-media-controller { }; + + wol = callPackage ../tools/networking/wol { }; + + wolf-shaper = callPackage ../applications/audio/wolf-shaper { }; + + wpgtk = callPackage ../tools/X11/wpgtk { }; + + wrap = callPackage ../tools/text/wrap { }; + + wring = nodePackages.wring; + + wrk = callPackage ../tools/networking/wrk { }; + + wrk2 = callPackage ../tools/networking/wrk2 { }; + + wuzz = callPackage ../tools/networking/wuzz { }; + + wv = callPackage ../tools/misc/wv { }; + + wv2 = callPackage ../tools/misc/wv2 { }; + + wyrd = callPackage ../tools/misc/wyrd { + ocamlPackages = ocaml-ng.ocamlPackages_4_05; + }; + + x86info = callPackage ../os-specific/linux/x86info { }; + + x11_ssh_askpass = callPackage ../tools/networking/x11-ssh-askpass { }; + + xbursttools = callPackage ../tools/misc/xburst-tools { + # It needs a cross compiler for mipsel to build the firmware it will + # load into the Ben Nanonote + gccCross = pkgsCross.ben-nanonote.buildPackages.gccCrossStageStatic; + autoconf = buildPackages.autoconf269; + }; + + clipnotify = callPackage ../tools/misc/clipnotify { }; + + clipbuzz = callPackage ../tools/misc/clipbuzz { }; + + xclip = callPackage ../tools/misc/xclip { }; + + xcur2png = callPackage ../tools/graphics/xcur2png { }; + + xcwd = callPackage ../tools/X11/xcwd { }; + + xtitle = callPackage ../tools/misc/xtitle { }; + + xdelta = callPackage ../tools/compression/xdelta { }; + xdeltaUnstable = callPackage ../tools/compression/xdelta/unstable.nix { }; + + xdot = with python3Packages; toPythonApplication xdot; + + xdummy = callPackage ../tools/misc/xdummy { }; + + xdxf2slob = callPackage ../tools/misc/xdxf2slob { }; + + xe-guest-utilities = callPackage ../tools/virtualization/xe-guest-utilities { }; + + xflux = callPackage ../tools/misc/xflux { }; + xflux-gui = python3Packages.callPackage ../tools/misc/xflux/gui.nix { }; + + xfsprogs = callPackage ../tools/filesystems/xfsprogs { }; + libxfs = xfsprogs.dev; + + xml2 = callPackage ../tools/text/xml/xml2 { }; + + xmldiff = python3Packages.callPackage ../tools/text/xml/xmldiff { }; + + xmlformat = callPackage ../tools/text/xml/xmlformat { }; + + xmlroff = callPackage ../tools/typesetting/xmlroff { }; + + xmloscopy = callPackage ../tools/text/xml/xmloscopy { }; + + xmlstarlet = callPackage ../tools/text/xml/xmlstarlet { }; + + xmlto = callPackage ../tools/typesetting/xmlto { + w3m = w3m-batch; + }; + + xiccd = callPackage ../tools/misc/xiccd { }; + + xidlehook = callPackage ../tools/X11/xidlehook { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + xorriso = callPackage ../tools/cd-dvd/xorriso { }; + + xprite-editor = callPackage ../tools/misc/xprite-editor { + inherit (darwin.apple_sdk.frameworks) AppKit; + }; + + xpf = callPackage ../tools/text/xml/xpf { + libxml2 = libxml2Python; + }; + + xsecurelock = callPackage ../tools/X11/xsecurelock { }; + + xsel = callPackage ../tools/misc/xsel { }; + + xsv = callPackage ../tools/text/xsv { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + xtreemfs = callPackage ../tools/filesystems/xtreemfs { + boost = boost165; + jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + + xurls = callPackage ../tools/text/xurls {}; + + xxv = callPackage ../tools/misc/xxv {}; + + xvfb-run = callPackage ../tools/misc/xvfb-run { inherit (texFunctions) fontsConf; }; + + xvkbd = callPackage ../tools/X11/xvkbd {}; + + xwinmosaic = callPackage ../tools/X11/xwinmosaic {}; + + xwinwrap = callPackage ../tools/X11/xwinwrap {}; + + yafaray-core = callPackage ../tools/graphics/yafaray-core { }; + + yajsv = callPackage ../tools/misc/yajsv { + buildGoModule = buildGo116Module; + }; + + yallback = callPackage ../development/tools/analysis/yallback { }; + + yapf = with python3Packages; toPythonApplication yapf; + + yarn = callPackage ../development/tools/yarn { }; + + yarn2nix-moretea = callPackage ../development/tools/yarn2nix-moretea/yarn2nix { }; + + inherit (yarn2nix-moretea) + yarn2nix + mkYarnPackage + mkYarnModules + fixup_yarn_lock; + + yascreen = callPackage ../development/libraries/yascreen { }; + + yasr = callPackage ../applications/audio/yasr { }; + + yank = callPackage ../tools/misc/yank { }; + + yamlfix = with python3Packages; toPythonApplication yamlfix; + + yamllint = with python3Packages; toPythonApplication yamllint; + + yaml-merge = callPackage ../tools/text/yaml-merge { }; + + yeshup = callPackage ../tools/system/yeshup { }; + + ytfzf = callPackage ../tools/misc/ytfzf { }; + + ytree = callPackage ../tools/misc/ytree { }; + + yggdrasil = callPackage ../tools/networking/yggdrasil { }; + + # To expose more packages for Yi, override the extraPackages arg. + yi = callPackage ../applications/editors/yi/wrapper.nix { }; + + yj = callPackage ../development/tools/yj { }; + + zprint = callPackage ../development/tools/zprint { }; + + yle-dl = callPackage ../tools/misc/yle-dl {}; + + you-get = python3Packages.callPackage ../tools/misc/you-get { }; + + zasm = callPackage ../development/compilers/zasm {}; + + zbackup = callPackage ../tools/backup/zbackup {}; + + zbar = libsForQt5.callPackage ../tools/graphics/zbar { + autoreconfHook = buildPackages.autoreconfHook269; + }; + + zdelta = callPackage ../tools/compression/zdelta { }; + + zellij = callPackage ../tools/misc/zellij { + inherit (darwin.apple_sdk.frameworks) DiskArbitration Foundation; + }; + + zenith = callPackage ../tools/system/zenith { + inherit (darwin.apple_sdk.frameworks) IOKit; + }; + + # Nvidia support does not require any propietary libraries, so CI can build it. + # Note that when enabling this unconditionally, non-nvidia users will always have an empty "GPU" section. + zenith-nvidia = callPackage ../tools/system/zenith { + inherit (darwin.apple_sdk.frameworks) IOKit; + nvidiaSupport = true; + }; + + zerotierone = callPackage ../tools/networking/zerotierone { }; + + zerofree = callPackage ../tools/filesystems/zerofree { }; + + zfs-autobackup = callPackage ../tools/backup/zfs-autobackup { }; + + zfsbackup = callPackage ../tools/backup/zfsbackup { }; + + zfstools = callPackage ../tools/filesystems/zfstools { }; + + zfsnap = callPackage ../tools/backup/zfsnap { }; + + zile = callPackage ../applications/editors/zile { }; + + zinnia = callPackage ../tools/inputmethods/zinnia { }; + tegaki-zinnia-japanese = callPackage ../tools/inputmethods/tegaki-zinnia-japanese { }; + + zimwriterfs = callPackage ../tools/text/zimwriterfs { }; + + par = callPackage ../tools/text/par { }; + + zip = callPackage ../tools/archivers/zip { }; + + zkfuse = callPackage ../tools/filesystems/zkfuse { }; + + zpaq = callPackage ../tools/archivers/zpaq { }; + zpaqd = callPackage ../tools/archivers/zpaq/zpaqd.nix { }; + + zplug = callPackage ../shells/zsh/zplug { }; + + zinit = callPackage ../shells/zsh/zinit {} ; + + zs-apc-spdu-ctl = callPackage ../tools/networking/zs-apc-spdu-ctl { }; + + zs-wait4host = callPackage ../tools/networking/zs-wait4host { }; + + zstxtns-utils = callPackage ../tools/text/zstxtns-utils { }; + + zsh-autoenv = callPackage ../tools/misc/zsh-autoenv { }; + + zsh-autopair = callPackage ../shells/zsh/zsh-autopair { }; + + zsh-bd = callPackage ../shells/zsh/zsh-bd { }; + + zsh-better-npm-completion = callPackage ../shells/zsh/zsh-better-npm-completion { }; + + zsh-clipboard = callPackage ../shells/zsh/zsh-clipboard { }; + + zsh-git-prompt = callPackage ../shells/zsh/zsh-git-prompt { }; + + zsh-history = callPackage ../shells/zsh/zsh-history { }; + + zsh-history-search-multi-word = callPackage ../shells/zsh/zsh-history-search-multi-word { }; + + zsh-history-substring-search = callPackage ../shells/zsh/zsh-history-substring-search { }; + + zsh-navigation-tools = callPackage ../tools/misc/zsh-navigation-tools { }; + + zsh-nix-shell = callPackage ../shells/zsh/zsh-nix-shell { }; + + zsh-syntax-highlighting = callPackage ../shells/zsh/zsh-syntax-highlighting { }; + + zsh-system-clipboard = callPackage ../shells/zsh/zsh-system-clipboard { }; + + zsh-fast-syntax-highlighting = callPackage ../shells/zsh/zsh-fast-syntax-highlighting { }; + + zsh-fzf-tab = callPackage ../shells/zsh/zsh-fzf-tab { }; + + zsh-autocomplete = callPackage ../shells/zsh/zsh-autocomplete { }; + + zsh-autosuggestions = callPackage ../shells/zsh/zsh-autosuggestions { }; + + zsh-powerlevel10k = callPackage ../shells/zsh/zsh-powerlevel10k { }; + + zsh-powerlevel9k = callPackage ../shells/zsh/zsh-powerlevel9k { }; + + zsh-command-time = callPackage ../shells/zsh/zsh-command-time { }; + + zsh-vi-mode = callPackage ../shells/zsh/zsh-vi-mode {}; + + zsh-you-should-use = callPackage ../shells/zsh/zsh-you-should-use { }; + + zsh-z = callPackage ../shells/zsh/zsh-z { }; + + zssh = callPackage ../tools/networking/zssh { }; + + zstd = callPackage ../tools/compression/zstd { + cmake = buildPackages.cmakeMinimal; + }; + + zsync = callPackage ../tools/compression/zsync { }; + + zxing = callPackage ../tools/graphics/zxing {}; + + zmap = callPackage ../tools/security/zmap { }; + + zpool-iostat-viz = callPackage ../tools/filesystems/zpool-iostat-viz { }; + + + ### SHELLS + + runtimeShell = "${runtimeShellPackage}${runtimeShellPackage.shellPath}"; + runtimeShellPackage = bash; + + any-nix-shell = callPackage ../shells/any-nix-shell { }; + + bash = lowPrio (callPackage ../shells/bash/5.1.nix { + binutils = stdenv.cc.bintools; + }); + # WARNING: this attribute is used by nix-shell so it shouldn't be removed/renamed + bashInteractive = callPackage ../shells/bash/5.1.nix { + binutils = stdenv.cc.bintools; + interactive = true; + withDocs = true; + }; + bashInteractiveFHS = callPackage ../shells/bash/5.1.nix { + binutils = stdenv.cc.bintools; + interactive = true; + withDocs = true; + forFHSEnv = true; + }; + + bash-completion = callPackage ../shells/bash/bash-completion { }; + + gradle-completion = callPackage ../shells/zsh/gradle-completion { }; + + nix-bash-completions = callPackage ../shells/bash/nix-bash-completions { }; + + yarn-bash-completion = callPackage ../shells/bash/yarn-completion { }; + + undistract-me = callPackage ../shells/bash/undistract-me { }; + + dash = callPackage ../shells/dash { }; + + dasht = callPackage ../tools/misc/dasht { }; + + dashing = callPackage ../tools/misc/dashing { }; + + es = callPackage ../shells/es { }; + + fish = callPackage ../shells/fish { }; + + oh-my-fish = callPackage ../shells/fish/oh-my-fish { }; + + wrapFish = callPackage ../shells/fish/wrapper.nix { }; + + fishPlugins = recurseIntoAttrs (callPackage ../shells/fish/plugins { }); + + ion = callPackage ../shells/ion { + inherit (darwin) Security; + }; + + jush = callPackage ../shells/jush { }; + + ksh = callPackage ../shells/ksh { }; + + liquidprompt = callPackage ../shells/liquidprompt { }; + + mksh = callPackage ../shells/mksh { }; + + oh = callPackage ../shells/oh { }; + + oil = callPackage ../shells/oil { }; + + oksh = callPackage ../shells/oksh { }; + + loksh = callPackage ../shells/loksh { }; + + pash = callPackage ../shells/pash { }; + + scponly = callPackage ../shells/scponly { }; + + tcsh = callPackage ../shells/tcsh { }; + + rush = callPackage ../shells/rush { }; + + xonsh = callPackage ../shells/xonsh { }; + + zsh = callPackage ../shells/zsh { }; + + nix-zsh-completions = callPackage ../shells/zsh/nix-zsh-completions { }; + + zsh-completions = callPackage ../shells/zsh/zsh-completions { }; + + zsh-prezto = callPackage ../shells/zsh/zsh-prezto { }; + + yash = callPackage ../shells/yash { }; + + grml-zsh-config = callPackage ../shells/zsh/grml-zsh-config { }; + + powerline = with python3Packages; toPythonApplication powerline; + + ### DEVELOPMENT / COMPILERS + + _4th = callPackage ../development/compilers/4th { }; + + abcl = callPackage ../development/compilers/abcl { + jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + + adoptopenjdk-bin-16-packages-linux = import ../development/compilers/adoptopenjdk-bin/jdk16-linux.nix { inherit lib; }; + adoptopenjdk-bin-16-packages-darwin = import ../development/compilers/adoptopenjdk-bin/jdk16-darwin.nix { inherit lib; }; + + adoptopenjdk-hotspot-bin-16 = if stdenv.isLinux + then callPackage adoptopenjdk-bin-16-packages-linux.jdk-hotspot {} + else callPackage adoptopenjdk-bin-16-packages-darwin.jdk-hotspot {}; + adoptopenjdk-jre-hotspot-bin-16 = if stdenv.isLinux + then callPackage adoptopenjdk-bin-16-packages-linux.jre-hotspot {} + else callPackage adoptopenjdk-bin-16-packages-darwin.jre-hotspot {}; + + adoptopenjdk-openj9-bin-16 = if stdenv.isLinux + then callPackage adoptopenjdk-bin-16-packages-linux.jdk-openj9 {} + else callPackage adoptopenjdk-bin-16-packages-darwin.jdk-openj9 {}; + + adoptopenjdk-jre-openj9-bin-16 = if stdenv.isLinux + then callPackage adoptopenjdk-bin-16-packages-linux.jre-openj9 {} + else callPackage adoptopenjdk-bin-16-packages-darwin.jre-openj9 {}; + + adoptopenjdk-bin-15-packages-linux = import ../development/compilers/adoptopenjdk-bin/jdk15-linux.nix { inherit lib; }; + adoptopenjdk-bin-15-packages-darwin = import ../development/compilers/adoptopenjdk-bin/jdk15-darwin.nix { inherit lib; }; + + adoptopenjdk-hotspot-bin-15 = if stdenv.isLinux + then callPackage adoptopenjdk-bin-15-packages-linux.jdk-hotspot {} + else callPackage adoptopenjdk-bin-15-packages-darwin.jdk-hotspot {}; + adoptopenjdk-jre-hotspot-bin-15 = if stdenv.isLinux + then callPackage adoptopenjdk-bin-15-packages-linux.jre-hotspot {} + else callPackage adoptopenjdk-bin-15-packages-darwin.jre-hotspot {}; + + adoptopenjdk-openj9-bin-15 = if stdenv.isLinux + then callPackage adoptopenjdk-bin-15-packages-linux.jdk-openj9 {} + else callPackage adoptopenjdk-bin-15-packages-darwin.jdk-openj9 {}; + + adoptopenjdk-jre-openj9-bin-15 = if stdenv.isLinux + then callPackage adoptopenjdk-bin-15-packages-linux.jre-openj9 {} + else callPackage adoptopenjdk-bin-15-packages-darwin.jre-openj9 {}; + + adoptopenjdk-bin-14-packages-linux = import ../development/compilers/adoptopenjdk-bin/jdk14-linux.nix { inherit lib; }; + adoptopenjdk-bin-14-packages-darwin = import ../development/compilers/adoptopenjdk-bin/jdk14-darwin.nix { inherit lib; }; + + adoptopenjdk-hotspot-bin-14 = if stdenv.isLinux + then callPackage adoptopenjdk-bin-14-packages-linux.jdk-hotspot {} + else callPackage adoptopenjdk-bin-14-packages-darwin.jdk-hotspot {}; + adoptopenjdk-jre-hotspot-bin-14 = if stdenv.isLinux + then callPackage adoptopenjdk-bin-14-packages-linux.jre-hotspot {} + else callPackage adoptopenjdk-bin-14-packages-darwin.jre-hotspot {}; + + adoptopenjdk-openj9-bin-14 = if stdenv.isLinux + then callPackage adoptopenjdk-bin-14-packages-linux.jdk-openj9 {} + else callPackage adoptopenjdk-bin-14-packages-darwin.jdk-openj9 {}; + + adoptopenjdk-jre-openj9-bin-14 = if stdenv.isLinux + then callPackage adoptopenjdk-bin-14-packages-linux.jre-openj9 {} + else callPackage adoptopenjdk-bin-14-packages-darwin.jre-openj9 {}; + + adoptopenjdk-bin-13-packages-linux = import ../development/compilers/adoptopenjdk-bin/jdk13-linux.nix { inherit lib; }; + adoptopenjdk-bin-13-packages-darwin = import ../development/compilers/adoptopenjdk-bin/jdk13-darwin.nix { inherit lib; }; + + adoptopenjdk-hotspot-bin-13 = if stdenv.isLinux + then callPackage adoptopenjdk-bin-13-packages-linux.jdk-hotspot {} + else callPackage adoptopenjdk-bin-13-packages-darwin.jdk-hotspot {}; + adoptopenjdk-jre-hotspot-bin-13 = if stdenv.isLinux + then callPackage adoptopenjdk-bin-13-packages-linux.jre-hotspot {} + else callPackage adoptopenjdk-bin-13-packages-darwin.jre-hotspot {}; + + adoptopenjdk-openj9-bin-13 = if stdenv.isLinux + then callPackage adoptopenjdk-bin-13-packages-linux.jdk-openj9 {} + else callPackage adoptopenjdk-bin-13-packages-darwin.jdk-openj9 {}; + + adoptopenjdk-jre-openj9-bin-13 = if stdenv.isLinux + then callPackage adoptopenjdk-bin-13-packages-linux.jre-openj9 {} + else callPackage adoptopenjdk-bin-13-packages-darwin.jre-openj9 {}; + + adoptopenjdk-bin-11-packages-linux = import ../development/compilers/adoptopenjdk-bin/jdk11-linux.nix { inherit lib; }; + adoptopenjdk-bin-11-packages-darwin = import ../development/compilers/adoptopenjdk-bin/jdk11-darwin.nix { inherit lib; }; + + adoptopenjdk-hotspot-bin-11 = if stdenv.isLinux + then callPackage adoptopenjdk-bin-11-packages-linux.jdk-hotspot {} + else callPackage adoptopenjdk-bin-11-packages-darwin.jdk-hotspot {}; + adoptopenjdk-jre-hotspot-bin-11 = if stdenv.isLinux + then callPackage adoptopenjdk-bin-11-packages-linux.jre-hotspot {} + else callPackage adoptopenjdk-bin-11-packages-darwin.jre-hotspot {}; + + adoptopenjdk-openj9-bin-11 = if stdenv.isLinux + then callPackage adoptopenjdk-bin-11-packages-linux.jdk-openj9 {} + else callPackage adoptopenjdk-bin-11-packages-darwin.jdk-openj9 {}; + + adoptopenjdk-jre-openj9-bin-11 = if stdenv.isLinux + then callPackage adoptopenjdk-bin-11-packages-linux.jre-openj9 {} + else callPackage adoptopenjdk-bin-11-packages-darwin.jre-openj9 {}; + + adoptopenjdk-bin-8-packages-linux = import ../development/compilers/adoptopenjdk-bin/jdk8-linux.nix { inherit lib; }; + adoptopenjdk-bin-8-packages-darwin = import ../development/compilers/adoptopenjdk-bin/jdk8-darwin.nix { inherit lib; }; + + adoptopenjdk-hotspot-bin-8 = if stdenv.isLinux + then callPackage adoptopenjdk-bin-8-packages-linux.jdk-hotspot {} + else callPackage adoptopenjdk-bin-8-packages-darwin.jdk-hotspot {}; + adoptopenjdk-jre-hotspot-bin-8 = if stdenv.isLinux + then callPackage adoptopenjdk-bin-8-packages-linux.jre-hotspot {} + else callPackage adoptopenjdk-bin-8-packages-darwin.jre-hotspot {}; + + adoptopenjdk-openj9-bin-8 = if stdenv.isLinux + then callPackage adoptopenjdk-bin-8-packages-linux.jdk-openj9 {} + else callPackage adoptopenjdk-bin-8-packages-darwin.jdk-openj9 {}; + + adoptopenjdk-jre-openj9-bin-8 = if stdenv.isLinux + then callPackage adoptopenjdk-bin-8-packages-linux.jre-openj9 {} + else callPackage adoptopenjdk-bin-8-packages-darwin.jre-openj9 {}; + + adoptopenjdk-bin = adoptopenjdk-hotspot-bin-11; + adoptopenjdk-jre-bin = adoptopenjdk-jre-hotspot-bin-11; + + adoptopenjdk-icedtea-web = callPackage ../development/compilers/adoptopenjdk-icedtea-web { + jdk = jdk8; + }; + + aldor = callPackage ../development/compilers/aldor { }; + + algol68g = callPackage ../development/compilers/algol68g { }; + + aliceml = callPackage ../development/compilers/aliceml { }; + + armips = callPackage ../development/compilers/armips { }; + + arachne-pnr = callPackage ../development/compilers/arachne-pnr { }; + + asciigraph = callPackage ../tools/text/asciigraph { }; + + as31 = callPackage ../development/compilers/as31 { }; + + asl = callPackage ../development/compilers/asl { + tex = texlive.combined.scheme-medium; + }; + + aspectj = callPackage ../development/compilers/aspectj { }; + + atasm = callPackage ../development/compilers/atasm { }; + + ats = callPackage ../development/compilers/ats { }; + ats2 = callPackage ../development/compilers/ats2 { }; + + ats-acc = callPackage ../development/tools/ats-acc { }; + + avra = callPackage ../development/compilers/avra { }; + + beekeeper-studio = callPackage ../development/tools/database/beekeeper-studio { }; + + bigloo = callPackage ../development/compilers/bigloo { }; + + binaryen = callPackage ../development/compilers/binaryen { }; + + bluespec = callPackage ../development/compilers/bluespec { + gmp-static = gmp.override { withStatic = true; }; + tex = texlive.combined.scheme-full; + }; + + cakelisp = callPackage ../development/compilers/cakelisp { }; + + ciao = callPackage ../development/compilers/ciao { }; + + colm = callPackage ../development/compilers/colm { }; + + colmap = libsForQt514.callPackage ../applications/science/misc/colmap { }; + colmapWithCuda = colmap.override { cudaSupport = true; cudatoolkit = cudatoolkit_11; }; + + chickenPackages_4 = callPackage ../development/compilers/chicken/4 { }; + chickenPackages_5 = callPackage ../development/compilers/chicken/5 { }; + chickenPackages = chickenPackages_5; + + inherit (chickenPackages) + fetchegg + eggDerivation + chicken + egg2nix; + + cc65 = callPackage ../development/compilers/cc65 { }; + + ccl = callPackage ../development/compilers/ccl { + inherit (buildPackages.darwin) bootstrap_cmds; + }; + + cdb = callPackage ../development/tools/database/cdb { + stdenv = gccStdenv; + }; + + chez = callPackage ../development/compilers/chez { + inherit (darwin) cctools; + }; + + chez-racket = callPackage ../development/compilers/chez-racket {}; + + chez-srfi = callPackage ../development/chez-modules/chez-srfi { }; + + chez-mit = callPackage ../development/chez-modules/chez-mit { }; + + chez-scmutils = callPackage ../development/chez-modules/chez-scmutils { }; + + chez-matchable = callPackage ../development/chez-modules/chez-matchable { }; + + clang = llvmPackages.clang; + libclang = llvmPackages.libclang; + clang-manpages = llvmPackages.clang-manpages; + + clang-sierraHack = clang.override { + name = "clang-wrapper-with-reexport-hack"; + bintools = darwin.binutils.override { + useMacosReexportHack = true; + }; + }; + + clang_14 = llvmPackages_14.clang; + clang_13 = llvmPackages_13.clang; + clang_12 = llvmPackages_12.clang; + clang_11 = llvmPackages_11.clang; + clang_10 = llvmPackages_10.clang; + clang_9 = llvmPackages_9.clang; + clang_8 = llvmPackages_8.clang; + clang_7 = llvmPackages_7.clang; + clang_6 = llvmPackages_6.clang; + clang_5 = llvmPackages_5.clang; + + clang-tools = callPackage ../development/tools/clang-tools { + llvmPackages = llvmPackages_latest; + }; + + clang-analyzer = callPackage ../development/tools/analysis/clang-analyzer { + llvmPackages = llvmPackages_latest; + inherit (llvmPackages_latest) clang; + }; + + #Use this instead of stdenv to build with clang + clangStdenv = if stdenv.cc.isClang then stdenv else lowPrio llvmPackages.stdenv; + clang-sierraHack-stdenv = overrideCC stdenv buildPackages.clang-sierraHack; + libcxxStdenv = if stdenv.isDarwin then stdenv else lowPrio llvmPackages.libcxxStdenv; + + clasp-common-lisp = callPackage ../development/compilers/clasp { + llvmPackages = llvmPackages_6; + stdenv = llvmPackages_6.stdenv; + }; + + clean = callPackage ../development/compilers/clean { }; + + closurecompiler = callPackage ../development/compilers/closure { }; + + cmdstan = callPackage ../development/compilers/cmdstan { }; + + cmucl_binary = pkgsi686Linux.callPackage ../development/compilers/cmucl/binary.nix { }; + + comby = callPackage ../development/tools/comby { }; + + compcert = coqPackages.compcert.override { version = "3.9"; }; + + computecpp-unwrapped = callPackage ../development/compilers/computecpp {}; + computecpp = wrapCCWith rec { + cc = computecpp-unwrapped; + extraPackages = [ + llvmPackages.compiler-rt + ]; + extraBuildCommands = '' + wrap compute $wrapper $ccPath/compute + wrap compute++ $wrapper $ccPath/compute++ + export named_cc=compute + export named_cxx=compute++ + + rsrc="$out/resource-root" + mkdir -p "$rsrc/lib" + ln -s "${cc}/lib" "$rsrc/include" + echo "-resource-dir=$rsrc" >> $out/nix-support/cc-cflags + ''; + }; + + copper = callPackage ../development/compilers/copper {}; + + inherit (callPackages ../development/compilers/crystal { + llvmPackages = if stdenv.system == "aarch64-darwin" then llvmPackages_11 else llvmPackages_10; + }) + crystal_1_0 + crystal_1_1 + crystal_1_2 + crystal; + + crystal2nix = callPackage ../development/compilers/crystal2nix { }; + + icr = callPackage ../development/tools/icr { }; + + scry = callPackage ../development/tools/scry { }; + + dasm = callPackage ../development/compilers/dasm { }; + + dbmate = callPackage ../development/tools/database/dbmate { }; + + devpi-client = python3Packages.callPackage ../development/tools/devpi-client {}; + + devpi-server = callPackage ../development/tools/devpi-server {}; + + dictu = callPackage ../development/compilers/dictu { }; + + dotty = callPackage ../development/compilers/scala/dotty.nix { }; + + ecl = callPackage ../development/compilers/ecl { }; + ecl_16_1_2 = callPackage ../development/compilers/ecl/16.1.2.nix { }; + + eli = callPackage ../development/compilers/eli { }; + + eql = callPackage ../development/compilers/eql {}; + + elm2nix = haskell.lib.compose.justStaticExecutables haskellPackages.elm2nix; + + elmPackages = recurseIntoAttrs (callPackage ../development/compilers/elm { }); + + apache-flex-sdk = callPackage ../development/compilers/apache-flex-sdk { }; + + fasm = pkgsi686Linux.callPackage ../development/compilers/fasm { + inherit (stdenv) isx86_64; + }; + fasm-bin = callPackage ../development/compilers/fasm/bin.nix { }; + + fasmg = callPackage ../development/compilers/fasmg { }; + + fennel = callPackage ../development/compilers/fennel { }; + + flasm = callPackage ../development/compilers/flasm { }; + + flyctl = callPackage ../development/web/flyctl { }; + + fluidd = callPackage ../applications/misc/fluidd { }; + + flutterPackages = + recurseIntoAttrs (callPackage ../development/compilers/flutter { }); + flutter = flutterPackages.stable; + + fnm = callPackage ../development/tools/fnm { + inherit (darwin.apple_sdk.frameworks) DiskArbitration Foundation Security; + }; + + fnlfmt = callPackage ../development/tools/fnlfmt { }; + + fpc = callPackage ../development/compilers/fpc { }; + + g203-led = callPackage ../tools/misc/g203-led { }; + + gambit = callPackage ../development/compilers/gambit { }; + gambit-unstable = callPackage ../development/compilers/gambit/unstable.nix { }; + gambit-support = callPackage ../development/compilers/gambit/gambit-support.nix { }; + gerbil = callPackage ../development/compilers/gerbil { }; + gerbil-unstable = callPackage ../development/compilers/gerbil/unstable.nix { }; + gerbil-support = callPackage ../development/compilers/gerbil/gerbil-support.nix { }; + gerbilPackages-unstable = gerbil-support.gerbilPackages-unstable; # NB: don't recurseIntoAttrs for (unstable!) libraries + + inherit (let + num = + if (with stdenv.targetPlatform; isVc4 || libc == "relibc") then 6 + else if (stdenv.targetPlatform.isAarch64 && stdenv.isDarwin) then 11 + else if stdenv.targetPlatform.isAarch64 then 9 + else 10; + numS = toString num; + in { + gcc = pkgs.${"gcc${numS}"}; + gccFun = callPackage (../development/compilers/gcc + "/${numS}"); + }) gcc gccFun; + gcc-unwrapped = gcc.cc; + + wrapNonDeterministicGcc = stdenv: ccWrapper: + if ccWrapper.isGNU then ccWrapper.overrideAttrs(old: { + cc = old.cc.override { + reproducibleBuild = false; + profiledCompiler = with stdenv; (!isDarwin && hostPlatform.isx86); + }; + }) else ccWrapper; + + gccStdenv = + if stdenv.cc.isGNU + then stdenv + else stdenv.override { + cc = buildPackages.gcc; + allowedRequisites = null; + # Remove libcxx/libcxxabi, and add clang for AS if on darwin (it uses + # clang's internal assembler). + extraBuildInputs = lib.optional stdenv.hostPlatform.isDarwin clang.cc; + }; + + gcc49Stdenv = overrideCC gccStdenv buildPackages.gcc49; + gcc6Stdenv = overrideCC gccStdenv buildPackages.gcc6; + gcc7Stdenv = overrideCC gccStdenv buildPackages.gcc7; + gcc8Stdenv = overrideCC gccStdenv buildPackages.gcc8; + gcc9Stdenv = overrideCC gccStdenv buildPackages.gcc9; + gcc10Stdenv = overrideCC gccStdenv buildPackages.gcc10; + gcc11Stdenv = overrideCC gccStdenv buildPackages.gcc11; + + # This is not intended for use in nixpkgs but for providing a faster-running + # compiler to nixpkgs users by building gcc with reproducibility-breaking + # profile-guided optimizations + fastStdenv = overrideCC gccStdenv (wrapNonDeterministicGcc gccStdenv buildPackages.gcc10); + + wrapCCMulti = cc: + if stdenv.targetPlatform.system == "x86_64-linux" then let + # Binutils with glibc multi + bintools = cc.bintools.override { + libc = glibc_multi; + }; + in lowPrio (wrapCCWith { + cc = cc.cc.override { + stdenv = overrideCC stdenv (wrapCCWith { + cc = cc.cc; + inherit bintools; + libc = glibc_multi; + }); + profiledCompiler = false; + enableMultilib = true; + }; + libc = glibc_multi; + inherit bintools; + extraBuildCommands = '' + echo "dontMoveLib64=1" >> $out/nix-support/setup-hook + ''; + }) else throw "Multilib ${cc.name} not supported for ‘${stdenv.targetPlatform.system}’"; + + wrapClangMulti = clang: + if stdenv.targetPlatform.system == "x86_64-linux" then + callPackage ../development/compilers/llvm/multi.nix { + inherit clang; + gcc32 = pkgsi686Linux.gcc; + gcc64 = pkgs.gcc; + } + else throw "Multilib ${clang.cc.name} not supported for '${stdenv.targetPlatform.system}'"; + + gcc_multi = wrapCCMulti gcc; + clang_multi = wrapClangMulti clang; + + gccMultiStdenv = overrideCC stdenv buildPackages.gcc_multi; + clangMultiStdenv = overrideCC stdenv buildPackages.clang_multi; + multiStdenv = if stdenv.cc.isClang then clangMultiStdenv else gccMultiStdenv; + + gcc_debug = lowPrio (wrapCC (gcc.cc.override { + stripped = false; + })); + + gccCrossLibcStdenv = overrideCC stdenv buildPackages.gccCrossStageStatic; + + crossLibcStdenv = + if stdenv.hostPlatform.useLLVM or false || stdenv.hostPlatform.isDarwin + then overrideCC stdenv buildPackages.llvmPackages.clangNoLibc + else gccCrossLibcStdenv; + + # The GCC used to build libc for the target platform. Normal gccs will be + # built with, and use, that cross-compiled libc. + gccCrossStageStatic = assert stdenv.targetPlatform != stdenv.hostPlatform; let + libcCross1 = binutilsNoLibc.libc; + in wrapCCWith { + cc = gccFun { + # copy-pasted + inherit noSysDirs; + + reproducibleBuild = true; + profiledCompiler = false; + + isl = if !stdenv.isDarwin then isl_0_20 else null; + + # just for stage static + crossStageStatic = true; + langCC = false; + libcCross = libcCross1; + targetPackages.stdenv.cc.bintools = binutilsNoLibc; + enableShared = false; + }; + bintools = binutilsNoLibc; + libc = libcCross1; + extraPackages = []; + }; + + gcc48 = lowPrio (wrapCC (callPackage ../development/compilers/gcc/4.8 { + inherit noSysDirs; + + reproducibleBuild = true; + profiledCompiler = false; + + libcCross = if stdenv.targetPlatform != stdenv.buildPlatform then libcCross else null; + threadsCross = if stdenv.targetPlatform != stdenv.buildPlatform then threadsCross else null; + + isl = if !stdenv.isDarwin then isl_0_14 else null; + cloog = if !stdenv.isDarwin then cloog else null; + texinfo = texinfo5; # doesn't validate since 6.1 -> 6.3 bump + })); + + gcc49 = lowPrio (wrapCC (callPackage ../development/compilers/gcc/4.9 { + inherit noSysDirs; + + reproducibleBuild = true; + profiledCompiler = false; + + libcCross = if stdenv.targetPlatform != stdenv.buildPlatform then libcCross else null; + threadsCross = if stdenv.targetPlatform != stdenv.buildPlatform then threadsCross else null; + + isl = if !stdenv.isDarwin then isl_0_11 else null; + + cloog = if !stdenv.isDarwin then cloog_0_18_0 else null; + })); + + gcc6 = lowPrio (wrapCC (callPackage ../development/compilers/gcc/6 { + inherit noSysDirs; + + reproducibleBuild = true; + profiledCompiler = false; + + libcCross = if stdenv.targetPlatform != stdenv.buildPlatform then libcCross else null; + threadsCross = if stdenv.targetPlatform != stdenv.buildPlatform then threadsCross else null; + + # gcc 10 is too strict to cross compile gcc <= 8 + stdenv = if (stdenv.targetPlatform != stdenv.buildPlatform) && stdenv.cc.isGNU then gcc7Stdenv else stdenv; + + isl = if stdenv.isDarwin + then null + else if stdenv.targetPlatform.isRedox + then isl_0_17 + else isl_0_14; + })); + + gcc7 = lowPrio (wrapCC (callPackage ../development/compilers/gcc/7 { + inherit noSysDirs; + + reproducibleBuild = true; + profiledCompiler = false; + + libcCross = if stdenv.targetPlatform != stdenv.buildPlatform then libcCross else null; + threadsCross = if stdenv.targetPlatform != stdenv.buildPlatform then threadsCross else null; + + # gcc 10 is too strict to cross compile gcc <= 8 + stdenv = if (stdenv.targetPlatform != stdenv.buildPlatform) && stdenv.cc.isGNU then gcc7Stdenv else stdenv; + + isl = if !stdenv.isDarwin then isl_0_17 else null; + })); + + gcc8 = lowPrio (wrapCC (callPackage ../development/compilers/gcc/8 { + inherit noSysDirs; + + reproducibleBuild = true; + profiledCompiler = false; + + libcCross = if stdenv.targetPlatform != stdenv.buildPlatform then libcCross else null; + threadsCross = if stdenv.targetPlatform != stdenv.buildPlatform then threadsCross else null; + + # gcc 10 is too strict to cross compile gcc <= 8 + stdenv = if (stdenv.targetPlatform != stdenv.buildPlatform) && stdenv.cc.isGNU then gcc7Stdenv else stdenv; + + isl = if !stdenv.isDarwin then isl_0_17 else null; + })); + + gcc9 = lowPrio (wrapCC (callPackage ../development/compilers/gcc/9 { + inherit noSysDirs; + + reproducibleBuild = true; + profiledCompiler = false; + + libcCross = if stdenv.targetPlatform != stdenv.buildPlatform then libcCross else null; + threadsCross = if stdenv.targetPlatform != stdenv.buildPlatform then threadsCross else null; + + isl = if !stdenv.isDarwin then isl_0_20 else null; + })); + + gcc10 = lowPrio (wrapCC (callPackage ../development/compilers/gcc/10 { + inherit noSysDirs; + + reproducibleBuild = true; + profiledCompiler = false; + + libcCross = if stdenv.targetPlatform != stdenv.buildPlatform then libcCross else null; + threadsCross = if stdenv.targetPlatform != stdenv.buildPlatform then threadsCross else null; + + isl = if !stdenv.isDarwin then isl_0_20 else null; + })); + + gcc11 = lowPrio (wrapCC (callPackage ../development/compilers/gcc/11 { + inherit noSysDirs; + + reproducibleBuild = true; + profiledCompiler = false; + + libcCross = if stdenv.targetPlatform != stdenv.buildPlatform then libcCross else null; + threadsCross = if stdenv.targetPlatform != stdenv.buildPlatform then threadsCross else null; + + isl = if !stdenv.isDarwin then isl_0_20 else null; + })); + + gcc_latest = gcc11; + + # aarch64-darwin doesn't support earlier gcc + gfortran = if (stdenv.isDarwin && stdenv.isAarch64) then gfortran11 else gfortran9; + + gfortran48 = wrapCC (gcc48.cc.override { + name = "gfortran"; + langFortran = true; + langCC = false; + langC = false; + profiledCompiler = false; + }); + + gfortran49 = wrapCC (gcc49.cc.override { + name = "gfortran"; + langFortran = true; + langCC = false; + langC = false; + profiledCompiler = false; + }); + + gfortran6 = wrapCC (gcc6.cc.override { + name = "gfortran"; + langFortran = true; + langCC = false; + langC = false; + profiledCompiler = false; + }); + + gfortran7 = wrapCC (gcc7.cc.override { + name = "gfortran"; + langFortran = true; + langCC = false; + langC = false; + profiledCompiler = false; + }); + + gfortran8 = wrapCC (gcc8.cc.override { + name = "gfortran"; + langFortran = true; + langCC = false; + langC = false; + profiledCompiler = false; + }); + + gfortran9 = wrapCC (gcc9.cc.override { + name = "gfortran"; + langFortran = true; + langCC = false; + langC = false; + profiledCompiler = false; + }); + + gfortran10 = wrapCC (gcc10.cc.override { + name = "gfortran"; + langFortran = true; + langCC = false; + langC = false; + profiledCompiler = false; + }); + + gfortran11 = wrapCC (gcc11.cc.override { + name = "gfortran"; + langFortran = true; + langCC = false; + langC = false; + profiledCompiler = false; + }); + + libgccjit = gcc.cc.override { + name = "libgccjit"; + langFortran = false; + langCC = false; + langC = false; + profiledCompiler = false; + langJit = true; + enableLTO = false; + }; + + gcj = gcj6; + gcj6 = wrapCC (gcc6.cc.override { + name = "gcj"; + langJava = true; + langFortran = false; + langCC = false; + langC = false; + profiledCompiler = false; + inherit zip unzip zlib boehmgc gettext pkg-config perl; + inherit (gnome2) libart_lgpl; + }); + + gnat = gnat11; + + gnat6 = wrapCC (gcc6.cc.override { + name = "gnat"; + langC = true; + langCC = false; + langAda = true; + profiledCompiler = false; + # As per upstream instructions building a cross compiler + # should be done with a (native) compiler of the same version. + # If we are cross-compiling GNAT, we may as well go the same + # route (especially as gnatboot can't cross-compile). + gnatboot = + if stdenv.hostPlatform == stdenv.targetPlatform + && stdenv.buildPlatform == stdenv.hostPlatform + then buildPackages.gnatboot + else buildPackages.gnat6; + }); + + gnat9 = wrapCC (gcc9.cc.override { + name = "gnat"; + langC = true; + langCC = false; + langAda = true; + profiledCompiler = false; + # As per upstream instructions building a cross compiler + # should be done with a (native) compiler of the same version. + # If we are cross-compiling GNAT, we may as well do the same. + gnatboot = + if stdenv.hostPlatform == stdenv.targetPlatform + && stdenv.buildPlatform == stdenv.hostPlatform + then buildPackages.gnat6 + else buildPackages.gnat9; + }); + + gnat10 = wrapCC (gcc10.cc.override { + name = "gnat"; + langC = true; + langCC = false; + langAda = true; + profiledCompiler = false; + # As per upstream instructions building a cross compiler + # should be done with a (native) compiler of the same version. + # If we are cross-compiling GNAT, we may as well do the same. + gnatboot = + if stdenv.hostPlatform == stdenv.targetPlatform + && stdenv.buildPlatform == stdenv.hostPlatform + then buildPackages.gnat6 + else buildPackages.gnat10; + }); + + gnat11 = wrapCC (gcc11.cc.override { + name = "gnat"; + langC = true; + langCC = false; + langAda = true; + profiledCompiler = false; + # As per upstream instructions building a cross compiler + # should be done with a (native) compiler of the same version. + # If we are cross-compiling GNAT, we may as well do the same. + gnatboot = + if stdenv.hostPlatform == stdenv.targetPlatform + && stdenv.buildPlatform == stdenv.hostPlatform + then buildPackages.gnat6 + else buildPackages.gnat11; + }); + + gnatboot = wrapCC (callPackage ../development/compilers/gnatboot { }); + + gnu-smalltalk = callPackage ../development/compilers/gnu-smalltalk { }; + + gccgo = gccgo6; + gccgo6 = wrapCC (gcc6.cc.override { + name = "gccgo6"; + langCC = true; #required for go. + langC = true; + langGo = true; + profiledCompiler = false; + }); + + ghdl = ghdl-mcode; + + ghdl-mcode = callPackage ../development/compilers/ghdl { + backend = "mcode"; + }; + + ghdl-llvm = callPackage ../development/compilers/ghdl { + backend = "llvm"; + }; + + gcl = callPackage ../development/compilers/gcl { + gmp = gmp4; + }; + + gcl_2_6_13_pre = callPackage ../development/compilers/gcl/2.6.13-pre.nix { }; + + gcc-arm-embedded-6 = callPackage ../development/compilers/gcc-arm-embedded/6 {}; + gcc-arm-embedded-7 = callPackage ../development/compilers/gcc-arm-embedded/7 {}; + gcc-arm-embedded-8 = callPackage ../development/compilers/gcc-arm-embedded/8 {}; + gcc-arm-embedded-9 = callPackage ../development/compilers/gcc-arm-embedded/9 {}; + gcc-arm-embedded-10 = callPackage ../development/compilers/gcc-arm-embedded/10 {}; + gcc-arm-embedded = gcc-arm-embedded-10; + + gdc = gdc9; + gdc9 = wrapCC (gcc9.cc.override { + name = "gdc"; + langCC = false; + langC = false; + langD = true; + profiledCompiler = false; + }); + + gforth = callPackage ../development/compilers/gforth {}; + + gleam = callPackage ../development/compilers/gleam { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + gtk-server = callPackage ../development/interpreters/gtk-server {}; + + # Haskell and GHC + + haskell = callPackage ./haskell-packages.nix { }; + + # Please update doc/languages-frameworks/haskell.section.md, “Our + # current default compiler is”, if you bump this: + haskellPackages = dontRecurseIntoAttrs haskell.packages.ghc8107; + + # haskellPackages.ghc is build->host (it exposes the compiler used to build the + # set, similarly to stdenv.cc), but pkgs.ghc should be host->target to be more + # consistent with the gcc, gnat, clang etc. derivations + # + # We use targetPackages.haskellPackages.ghc if available since this also has + # the withPackages wrapper available. In the final cross-compiled package set + # however, targetPackages won't be populated, so we need to fall back to the + # plain, cross-compiled compiler (which is only theoretical at the moment). + ghc = targetPackages.haskellPackages.ghc or haskell.compiler.ghc8107; + + cabal-install = haskell.lib.compose.justStaticExecutables haskellPackages.cabal-install; + + stack = haskell.lib.compose.justStaticExecutables haskellPackages.stack; + hlint = haskell.lib.compose.justStaticExecutables haskellPackages.hlint; + + krank = haskell.lib.compose.justStaticExecutables haskellPackages.krank; + + stylish-cabal = haskell.lib.compose.justStaticExecutables haskellPackages.stylish-cabal; + + all-cabal-hashes = callPackage ../data/misc/hackage { }; + + purescript = callPackage ../development/compilers/purescript/purescript { }; + + psc-package = callPackage ../development/compilers/purescript/psc-package { }; + + purescript-psa = nodePackages.purescript-psa; + + purenix = haskell.lib.compose.justStaticExecutables haskellPackages.purenix; + + spago = callPackage ../development/tools/purescript/spago { }; + + pulp = nodePackages.pulp; + + pscid = nodePackages.pscid; + + coreboot-toolchain = recurseIntoAttrs (callPackage ../development/tools/misc/coreboot-toolchain { }); + + remarkable-toolchain = callPackage ../development/tools/misc/remarkable/remarkable-toolchain { }; + + remarkable2-toolchain = callPackage ../development/tools/misc/remarkable/remarkable2-toolchain { }; + + t-rex = callPackage ../servers/t-rex { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + tacacsplus = callPackage ../servers/tacacsplus { }; + + tamarin-prover = + (haskellPackages.callPackage ../applications/science/logic/tamarin-prover { + # NOTE: do not use the haskell packages 'graphviz' and 'maude' + inherit maude which; + graphviz = graphviz-nox; + }); + + inherit (callPackage ../development/compilers/haxe { + inherit (darwin.apple_sdk.frameworks) Security; + }) + haxe_4_2 + haxe_4_1 + haxe_4_0 + haxe_3_4 + haxe_3_2 + ; + + haxe = haxe_4_2; + haxePackages = recurseIntoAttrs (callPackage ./haxe-packages.nix { }); + inherit (haxePackages) hxcpp; + + hhvm = callPackage ../development/compilers/hhvm { }; + + hop = callPackage ../development/compilers/hop { }; + + falcon = callPackage ../development/interpreters/falcon { }; + + fsharp = callPackage ../development/compilers/fsharp { }; + + fstar = callPackage ../development/compilers/fstar { }; + + dotnetPackages = recurseIntoAttrs (callPackage ./dotnet-packages.nix {}); + + glslang = callPackage ../development/compilers/glslang { }; + + go_1_16 = callPackage ../development/compilers/go/1.16.nix ({ + inherit (darwin.apple_sdk.frameworks) Security Foundation; + } // lib.optionalAttrs (stdenv.cc.isGNU && stdenv.isAarch64) { + stdenv = gcc8Stdenv; + buildPackages = buildPackages // { stdenv = buildPackages.gcc8Stdenv; }; + }); + + go_1_17 = callPackage ../development/compilers/go/1.17.nix ({ + inherit (darwin.apple_sdk.frameworks) Security Foundation; + } // lib.optionalAttrs (stdenv.cc.isGNU && stdenv.isAarch64) { + stdenv = gcc8Stdenv; + buildPackages = buildPackages // { stdenv = buildPackages.gcc8Stdenv; }; + }); + + go_1_18 = callPackage ../development/compilers/go/1.18.nix ({ + inherit (darwin.apple_sdk.frameworks) Security Foundation; + } // lib.optionalAttrs (stdenv.cc.isGNU && stdenv.isAarch64) { + stdenv = gcc8Stdenv; + buildPackages = buildPackages // { stdenv = buildPackages.gcc8Stdenv; }; + }); + + go_2-dev = callPackage ../development/compilers/go/2-dev.nix ({ + inherit (darwin.apple_sdk.frameworks) Security Foundation; + } // lib.optionalAttrs (stdenv.cc.isGNU && stdenv.isAarch64) { + stdenv = gcc8Stdenv; + buildPackages = buildPackages // { stdenv = buildPackages.gcc8Stdenv; }; + }); + + go = go_1_17; + + go-repo-root = callPackage ../development/tools/go-repo-root { }; + + go-junit-report = callPackage ../development/tools/go-junit-report { }; + + gobang = callPackage ../development/tools/database/gobang { + inherit (darwin.apple_sdk.frameworks) CoreFoundation Security SystemConfiguration; + }; + + gogetdoc = callPackage ../development/tools/gogetdoc { }; + + gox = callPackage ../development/tools/gox { }; + + gprolog = callPackage ../development/compilers/gprolog { }; + + gwe = callPackage ../tools/misc/gwe { + nvidia_x11 = linuxPackages.nvidia_x11; + }; + + gwt240 = callPackage ../development/compilers/gwt/2.4.0.nix { }; + + idrisPackages = dontRecurseIntoAttrs (callPackage ../development/idris-modules { + idris-no-deps = haskellPackages.idris; + }); + + idris = idrisPackages.with-packages [ idrisPackages.base ] ; + + idris2 = callPackage ../development/compilers/idris2 { }; + + inherit (callPackage ../development/tools/database/indradb { }) + indradb-server + indradb-client; + + intel-graphics-compiler = callPackage ../development/compilers/intel-graphics-compiler { }; + + intercal = callPackage ../development/compilers/intercal { }; + + irony-server = callPackage ../development/tools/irony-server { + # The repository of irony to use -- must match the version of the employed emacs + # package. Wishing we could merge it into one irony package, to avoid this issue, + # but its emacs-side expression is autogenerated, and we can't hook into it (other + # than peek into its version). + inherit (emacs.pkgs.melpaStablePackages) irony; + }; + + holo-build = callPackage ../tools/package-management/holo-build { }; + + hugs = callPackage ../development/interpreters/hugs { }; + + inherit (javaPackages) openjfx11 openjfx15 openjfx17; + openjfx = openjfx17; + + openjdk8-bootstrap = javaPackages.compiler.openjdk8-bootstrap; + openjdk8 = javaPackages.compiler.openjdk8; + openjdk8_headless = javaPackages.compiler.openjdk8.headless; + jdk8 = openjdk8; + jdk8_headless = openjdk8_headless; + jre8 = openjdk8.jre; + jre8_headless = openjdk8_headless.jre; + + openjdk11-bootstrap = javaPackages.compiler.openjdk11-bootstrap; + openjdk11 = javaPackages.compiler.openjdk11; + openjdk11_headless = javaPackages.compiler.openjdk11.headless; + jdk11 = openjdk11; + jdk11_headless = openjdk11_headless; + + openjdk17-bootstrap = javaPackages.compiler.openjdk17-bootstrap; + openjdk17 = javaPackages.compiler.openjdk17; + openjdk17_headless = javaPackages.compiler.openjdk17.headless; + jdk17 = openjdk17; + jdk17_headless = openjdk17_headless; + + openjdk16-bootstrap = javaPackages.compiler.openjdk16-bootstrap; + + /* default JDK */ + jdk = jdk17; + + # Since the introduction of the Java Platform Module System in Java 9, Java + # no longer ships a separate JRE package. + # + # If you are building a 'minimal' system/image, you are encouraged to use + # 'jre_minimal' to build a bespoke JRE containing only the modules you need. + # + # For a general-purpose system, 'jre' defaults to the full JDK: + jre = jdk17; + jre_headless = jdk17_headless; + + jre_minimal = callPackage ../development/compilers/openjdk/jre.nix { }; + + openjdk = openjdk17; + openjdk_headless = openjdk17_headless; + + graalvmCEPackages = + recurseIntoAttrs (callPackage ../development/compilers/graalvm/community-edition { + inherit (darwin.apple_sdk.frameworks) Foundation; + }); + graalvm11-ce = graalvmCEPackages.graalvm11-ce; + graalvm17-ce = graalvmCEPackages.graalvm17-ce; + buildGraalvmNativeImage = callPackage ../build-support/build-graalvm-native-image { }; + + inherit (callPackages ../development/compilers/graalvm/enterprise-edition.nix { }) + graalvm8-ee + graalvm11-ee; + + openshot-qt = libsForQt5.callPackage ../applications/video/openshot-qt { }; + + lingua-franca = callPackage ../development/compilers/lingua-franca { }; + + openspin = callPackage ../development/compilers/openspin { }; + + oraclejdk = jdkdistro true false; + + oraclejdk8 = oraclejdk8distro true false; + + oraclejre = lowPrio (jdkdistro false false); + + oraclejre8 = lowPrio (oraclejdk8distro false false); + + jrePlugin = jre8Plugin; + + jre8Plugin = lowPrio (oraclejdk8distro false true); + + jdkdistro = oraclejdk8distro; + + oraclejdk8distro = installjdk: pluginSupport: + (callPackage ../development/compilers/oraclejdk/jdk8-linux.nix { + inherit installjdk pluginSupport; + }); + + oraclejdk11 = callPackage ../development/compilers/oraclejdk/jdk11-linux.nix { }; + + oraclejdk14 = callPackage ../development/compilers/oraclejdk/jdk14-linux.nix { }; + + jasmin = callPackage ../development/compilers/jasmin { }; + + java-service-wrapper = callPackage ../tools/system/java-service-wrapper { + jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + + javacard-devkit = pkgsi686Linux.callPackage ../development/compilers/javacard-devkit { }; + + juniper = callPackage ../development/compilers/juniper { }; + + julia_10 = callPackage ../development/compilers/julia/1.0.nix { + gmp = gmp6; + inherit (darwin.apple_sdk.frameworks) ApplicationServices CoreServices; + libgit2 = libgit2.overrideAttrs (_: rec { + version = "0.27.10"; + src = fetchFromGitHub { + owner = "libgit2"; + repo = "libgit2"; + rev = "v${version}"; + sha256 = "09jz2fzv0zl5058s0g1cpnw87a2rgg8wnjwlygi18i2n9nn6m0ad"; + }; + patches = []; + meta.knownVulnerabilities = [ + "CVE-2020-12278" + "CVE-2020-12279" + ]; + }); + }; + + julia_15 = callPackage ../development/compilers/julia/1.5.nix { + inherit (darwin.apple_sdk.frameworks) ApplicationServices CoreServices; + }; + + julia-lts = julia_10; + julia-stable = julia_15; + julia = julia-stable; + + julia_16-bin = callPackage ../development/compilers/julia/1.6-bin.nix { }; + julia_17-bin = callPackage ../development/compilers/julia/1.7-bin.nix { }; + + julia-lts-bin = julia_16-bin; + julia-stable-bin = julia_17-bin; + julia-bin = julia-stable-bin; + + jwasm = callPackage ../development/compilers/jwasm { }; + + knightos-genkfs = callPackage ../development/tools/knightos/genkfs { }; + + regenkfs = callPackage ../development/tools/knightos/regenkfs { }; + + knightos-kcc = callPackage ../development/tools/knightos/kcc { }; + + knightos-kimg = callPackage ../development/tools/knightos/kimg { }; + + knightos-kpack = callPackage ../development/tools/knightos/kpack { }; + + knightos-mkrom = callPackage ../development/tools/knightos/mkrom { }; + + remkrom = callPackage ../development/tools/knightos/remkrom { }; + + knightos-patchrom = callPackage ../development/tools/knightos/patchrom { }; + + knightos-mktiupgrade = callPackage ../development/tools/knightos/mktiupgrade { }; + + knightos-scas = callPackage ../development/tools/knightos/scas { }; + + knightos-z80e = callPackage ../development/tools/knightos/z80e { }; + + koka = haskell.lib.compose.justStaticExecutables (haskellPackages.callPackage ../development/compilers/koka { }); + + kotlin = callPackage ../development/compilers/kotlin { }; + kotlin-native = callPackage ../development/compilers/kotlin/native.nix { }; + + kotlin-language-server = callPackage ../development/tools/kotlin-language-server {}; + + lazarus = callPackage ../development/compilers/fpc/lazarus.nix { + fpc = fpc; + }; + + lazarus-qt = libsForQt5.callPackage ../development/compilers/fpc/lazarus.nix { + fpc = fpc; + withQt = true; + }; + + lessc = nodePackages.less; + + liquibase = callPackage ../development/tools/database/liquibase { }; + + lizardfs = callPackage ../tools/filesystems/lizardfs { }; + + lobster = callPackage ../development/compilers/lobster { + inherit (darwin) cf-private; + inherit (darwin.apple_sdk.frameworks) + Cocoa AudioToolbox OpenGL Foundation ForceFeedback; + }; + + lld = llvmPackages.lld; + lld_5 = llvmPackages_5.lld; + lld_6 = llvmPackages_6.lld; + lld_7 = llvmPackages_7.lld; + lld_8 = llvmPackages_8.lld; + lld_9 = llvmPackages_9.lld; + lld_10 = llvmPackages_10.lld; + lld_11 = llvmPackages_11.lld; + lld_12 = llvmPackages_12.lld; + lld_13 = llvmPackages_13.lld; + lld_14 = llvmPackages_14.lld; + + lldb = llvmPackages_latest.lldb; + lldb_5 = llvmPackages_5.lldb; + lldb_6 = llvmPackages_6.lldb; + lldb_7 = llvmPackages_7.lldb; + lldb_8 = llvmPackages_8.lldb; + lldb_9 = llvmPackages_9.lldb; + lldb_10 = llvmPackages_10.lldb; + lldb_11 = llvmPackages_11.lldb; + lldb_12 = llvmPackages_12.lldb; + lldb_13 = llvmPackages_13.lldb; + lldb_14 = llvmPackages_14.lldb; + + llvm = llvmPackages.llvm; + libllvm = llvmPackages.libllvm; + llvm-manpages = llvmPackages.llvm-manpages; + + llvm_14 = llvmPackages_14.llvm; + llvm_13 = llvmPackages_13.llvm; + llvm_12 = llvmPackages_12.llvm; + llvm_11 = llvmPackages_11.llvm; + llvm_10 = llvmPackages_10.llvm; + llvm_9 = llvmPackages_9.llvm; + llvm_8 = llvmPackages_8.llvm; + llvm_7 = llvmPackages_7.llvm; + llvm_6 = llvmPackages_6.llvm; + llvm_5 = llvmPackages_5.llvm; + + llvmPackages = let + latest_version = lib.toInt + (lib.versions.major llvmPackages_latest.llvm.version); + # This returns the minimum supported version for the platform. The + # assumption is that or any later version is good. + choose = platform: + /**/ if platform.isDarwin then 11 + else if platform.isFreeBSD then 7 + else if platform.isAndroid then 12 + else if platform.isLinux then 11 + else if platform.isWasm then 12 + else latest_version; + # We take the "max of the mins". Why? Since those are lower bounds of the + # supported version set, this is like intersecting those sets and then + # taking the min bound of that. + minSupported = toString (lib.trivial.max (choose stdenv.hostPlatform) (choose + stdenv.targetPlatform)); + in pkgs.${"llvmPackages_${minSupported}"}; + + llvmPackages_5 = recurseIntoAttrs (callPackage ../development/compilers/llvm/5 { + inherit (stdenvAdapters) overrideCC; + buildLlvmTools = buildPackages.llvmPackages_5.tools; + targetLlvmLibraries = targetPackages.llvmPackages_5.libraries or llvmPackages_5.libraries; + }); + + llvmPackages_6 = recurseIntoAttrs (callPackage ../development/compilers/llvm/6 { + inherit (stdenvAdapters) overrideCC; + buildLlvmTools = buildPackages.llvmPackages_6.tools; + targetLlvmLibraries = targetPackages.llvmPackages_6.libraries or llvmPackages_6.libraries; + }); + + llvmPackages_7 = recurseIntoAttrs (callPackage ../development/compilers/llvm/7 { + inherit (stdenvAdapters) overrideCC; + buildLlvmTools = buildPackages.llvmPackages_7.tools; + targetLlvmLibraries = targetPackages.llvmPackages_7.libraries or llvmPackages_7.libraries; + }); + + llvmPackages_8 = recurseIntoAttrs (callPackage ../development/compilers/llvm/8 { + inherit (stdenvAdapters) overrideCC; + buildLlvmTools = buildPackages.llvmPackages_8.tools; + targetLlvmLibraries = targetPackages.llvmPackages_8.libraries or llvmPackages_8.libraries; + }); + + llvmPackages_9 = recurseIntoAttrs (callPackage ../development/compilers/llvm/9 { + inherit (stdenvAdapters) overrideCC; + buildLlvmTools = buildPackages.llvmPackages_9.tools; + targetLlvmLibraries = targetPackages.llvmPackages_9.libraries or llvmPackages_9.libraries; + }); + + llvmPackages_10 = recurseIntoAttrs (callPackage ../development/compilers/llvm/10 { + inherit (stdenvAdapters) overrideCC; + buildLlvmTools = buildPackages.llvmPackages_10.tools; + targetLlvmLibraries = targetPackages.llvmPackages_10.libraries or llvmPackages_10.libraries; + }); + + llvmPackages_11 = recurseIntoAttrs (callPackage ../development/compilers/llvm/11 ({ + inherit (stdenvAdapters) overrideCC; + buildLlvmTools = buildPackages.llvmPackages_11.tools; + targetLlvmLibraries = targetPackages.llvmPackages_11.libraries or llvmPackages_11.libraries; + } // lib.optionalAttrs (stdenv.hostPlatform.isi686 && buildPackages.stdenv.cc.isGNU) { + stdenv = gcc7Stdenv; + })); + + llvmPackages_12 = recurseIntoAttrs (callPackage ../development/compilers/llvm/12 ({ + inherit (stdenvAdapters) overrideCC; + buildLlvmTools = buildPackages.llvmPackages_12.tools; + targetLlvmLibraries = targetPackages.llvmPackages_12.libraries or llvmPackages_12.libraries; + } // lib.optionalAttrs (stdenv.hostPlatform.isi686 && buildPackages.stdenv.cc.isGNU) { + stdenv = gcc7Stdenv; + })); + + llvmPackages_13 = recurseIntoAttrs (callPackage ../development/compilers/llvm/13 ({ + inherit (stdenvAdapters) overrideCC; + buildLlvmTools = buildPackages.llvmPackages_13.tools; + targetLlvmLibraries = targetPackages.llvmPackages_13.libraries or llvmPackages_13.libraries; + } // lib.optionalAttrs (stdenv.hostPlatform.isi686 && buildPackages.stdenv.cc.isGNU) { + stdenv = gcc7Stdenv; + })); + + llvmPackages_14 = recurseIntoAttrs (callPackage ../development/compilers/llvm/14 ({ + inherit (stdenvAdapters) overrideCC; + buildLlvmTools = buildPackages.llvmPackages_14.tools; + targetLlvmLibraries = targetPackages.llvmPackages_14.libraries or llvmPackages_14.libraries; + } // lib.optionalAttrs (stdenv.hostPlatform.isi686 && buildPackages.stdenv.cc.isGNU) { + stdenv = gcc7Stdenv; + })); + + llvmPackages_latest = llvmPackages_13; + + llvmPackages_rocm = recurseIntoAttrs (callPackage ../development/compilers/llvm/rocm { }); + + lorri = callPackage ../tools/misc/lorri { + inherit (darwin.apple_sdk.frameworks) CoreServices Security; + }; + + manticore = callPackage ../development/compilers/manticore { }; + + marst = callPackage ../development/compilers/marst { }; + + mercury = callPackage ../development/compilers/mercury { + jdk = openjdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + + microscheme = callPackage ../development/compilers/microscheme { }; + + mint = callPackage ../development/compilers/mint { }; + + mitscheme = callPackage ../development/compilers/mit-scheme { + texLive = texlive.combine { inherit (texlive) scheme-small epsf texinfo; }; + }; + + mitschemeX11 = mitscheme.override { + enableX11 = true; + }; + + miranda = callPackage ../development/compilers/miranda {}; + + mkcl = callPackage ../development/compilers/mkcl {}; + + mlkit = callPackage ../development/compilers/mlkit {}; + + inherit (callPackage ../development/compilers/mlton {}) + mlton20130715 + mlton20180207Binary + mlton20180207 + mltonHEAD; + + mlton = mlton20180207; + + mono = mono6; + + mono4 = lowPrio (callPackage ../development/compilers/mono/4.nix { + inherit (darwin) libobjc; + inherit (darwin.apple_sdk.frameworks) Foundation; + }); + + mono5 = callPackage ../development/compilers/mono/5.nix { + inherit (darwin) libobjc; + inherit (darwin.apple_sdk.frameworks) Foundation; + }; + + mono6 = callPackage ../development/compilers/mono/6.nix { + inherit (darwin) libobjc; + inherit (darwin.apple_sdk.frameworks) Foundation; + }; + + monoDLLFixer = callPackage ../build-support/mono-dll-fixer { }; + + roslyn = callPackage ../development/compilers/roslyn { }; + + msbuild = callPackage ../development/tools/build-managers/msbuild { }; + + mosml = callPackage ../development/compilers/mosml { }; + + mozart2 = callPackage ../development/compilers/mozart { + emacs = emacs-nox; + jre_headless = jre8_headless; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + + mozart2-binary = callPackage ../development/compilers/mozart/binary.nix { }; + + muon = callPackage ../development/compilers/muon { }; + + inherit (callPackages ../development/compilers/nim { }) + nim-unwrapped nimble-unwrapped nim; + nimPackages = recurseIntoAttrs nim.pkgs; + + nrpl = callPackage ../development/tools/nrpl { }; + + nimlsp = callPackage ../development/tools/misc/nimlsp { }; + + neko = callPackage ../development/compilers/neko { }; + + nextpnr = callPackage ../development/compilers/nextpnr { }; + + nextpnrWithGui = libsForQt5.callPackage ../development/compilers/nextpnr { + enableGui = true; + inherit (darwin.apple_sdk.frameworks) OpenGL; + }; + + acme = callPackage ../development/compilers/acme { }; + + nasm = callPackage ../development/compilers/nasm { }; + + nvidia_cg_toolkit = callPackage ../development/compilers/nvidia-cg-toolkit { }; + + obliv-c = callPackage ../development/compilers/obliv-c { + ocamlPackages = ocaml-ng.ocamlPackages_4_05; + }; + + ocaml-ng = callPackage ./ocaml-packages.nix { }; + ocaml = ocamlPackages.ocaml; + + ocamlPackages = recurseIntoAttrs ocaml-ng.ocamlPackages; + + ocaml-crunch = ocamlPackages.crunch.bin; + + inherit (callPackage ../development/tools/ocaml/ocamlformat { }) + ocamlformat # latest version + ocamlformat_0_11_0 ocamlformat_0_12 ocamlformat_0_13_0 ocamlformat_0_14_0 + ocamlformat_0_14_1 ocamlformat_0_14_2 ocamlformat_0_14_3 ocamlformat_0_15_0 + ocamlformat_0_15_1 ocamlformat_0_16_0 ocamlformat_0_17_0 ocamlformat_0_18_0 + ocamlformat_0_19_0 ocamlformat_0_20_0 ocamlformat_0_20_1; + + orc = callPackage ../development/compilers/orc { }; + + orocos-kdl = callPackage ../development/libraries/orocos-kdl { }; + + metaocaml_3_09 = callPackage ../development/compilers/ocaml/metaocaml-3.09.nix { }; + + ber_metaocaml = callPackage ../development/compilers/ocaml/ber-metaocaml.nix { }; + + ocaml_make = callPackage ../development/ocaml-modules/ocamlmake { }; + + ocaml-top = callPackage ../development/tools/ocaml/ocaml-top { }; + + ocsigen-i18n = callPackage ../development/tools/ocaml/ocsigen-i18n { }; + + opa = callPackage ../development/compilers/opa { + ocamlPackages = ocaml-ng.ocamlPackages_4_04; + }; + + opaline = callPackage ../development/tools/ocaml/opaline { }; + + opam = callPackage ../development/tools/ocaml/opam { }; + opam_1_2 = callPackage ../development/tools/ocaml/opam/1.2.2.nix { + inherit (ocaml-ng.ocamlPackages_4_05) ocaml; + }; + + opam-installer = callPackage ../development/tools/ocaml/opam/installer.nix { }; + + wrapWatcom = callPackage ../development/compilers/open-watcom/wrapper.nix { }; + open-watcom-v2-unwrapped = callPackage ../development/compilers/open-watcom/v2.nix { }; + open-watcom-v2 = wrapWatcom open-watcom-v2-unwrapped { }; + open-watcom-bin-unwrapped = callPackage ../development/compilers/open-watcom/bin.nix { }; + open-watcom-bin = wrapWatcom open-watcom-bin-unwrapped { }; + + passerine = callPackage ../development/compilers/passerine { }; + + pforth = callPackage ../development/compilers/pforth {}; + + picat = callPackage ../development/compilers/picat { }; + + ponyc = callPackage ../development/compilers/ponyc { + # Upstream pony has dropped support for versions compiled with gcc. + stdenv = llvmPackages_9.stdenv; + }; + + pony-corral = callPackage ../development/compilers/ponyc/pony-corral.nix { }; + + qbe = callPackage ../development/compilers/qbe { }; + + rasm = callPackage ../development/compilers/rasm { }; + + rgbds = callPackage ../development/compilers/rgbds { }; + + rgxg = callPackage ../tools/text/rgxg { }; + + rocclr = callPackage ../development/libraries/rocclr { }; + + hip = callPackage ../development/compilers/hip { + inherit (llvmPackages_rocm) clang clang-unwrapped compiler-rt lld llvm; + }; + + rocm-cmake = callPackage ../development/tools/build-managers/rocm-cmake { }; + + rocm-comgr = callPackage ../development/libraries/rocm-comgr { + inherit (llvmPackages_rocm) clang lld llvm; + }; + + rocm-device-libs = callPackage ../development/libraries/rocm-device-libs { + inherit (llvmPackages_rocm) clang clang-unwrapped lld llvm; + }; + + rocm-opencl-icd = callPackage ../development/libraries/rocm-opencl-icd { }; + + rocm-opencl-runtime = callPackage ../development/libraries/rocm-opencl-runtime { + inherit (llvmPackages_rocm) clang clang-unwrapped lld llvm; + }; + + rocm-runtime = callPackage ../development/libraries/rocm-runtime { + inherit (llvmPackages_rocm) clang-unwrapped llvm; + }; + + rocm-smi = python3Packages.callPackage ../tools/system/rocm-smi { }; + + rocm-thunk = callPackage ../development/libraries/rocm-thunk { }; + + rocminfo = callPackage ../development/tools/rocminfo { }; + + rtags = callPackage ../development/tools/rtags { + inherit (darwin) apple_sdk; + }; + + rust_1_58 = callPackage ../development/compilers/rust/1_58.nix { + inherit (darwin.apple_sdk.frameworks) CoreFoundation Security SystemConfiguration; + llvm_13 = llvmPackages_13.libllvm; + }; + rust = rust_1_58; + + mrustc = callPackage ../development/compilers/mrustc { }; + mrustc-minicargo = callPackage ../development/compilers/mrustc/minicargo.nix { }; + mrustc-bootstrap = callPackage ../development/compilers/mrustc/bootstrap.nix { }; + + rustPackages_1_58 = rust_1_58.packages.stable; + rustPackages = rustPackages_1_58; + + inherit (rustPackages) cargo clippy rustc rustPlatform; + + makeRustPlatform = callPackage ../development/compilers/rust/make-rust-platform.nix {}; + + buildRustCrate = callPackage ../build-support/rust/build-rust-crate { }; + buildRustCrateHelpers = callPackage ../build-support/rust/build-rust-crate/helpers.nix { }; + cratesIO = callPackage ../build-support/rust/crates-io.nix { }; + + cargo-web = callPackage ../development/tools/cargo-web { + inherit (darwin.apple_sdk.frameworks) CoreServices Security; + }; + + cargo-flamegraph = callPackage ../development/tools/cargo-flamegraph { + inherit (darwin.apple_sdk.frameworks) Security; + inherit (linuxPackages) perf; + }; + + carnix = (callPackage ../build-support/rust/carnix.nix { }).carnix { }; + + defaultCrateOverrides = callPackage ../build-support/rust/default-crate-overrides.nix { }; + + cargo-about = callPackage ../tools/package-management/cargo-about { }; + cargo-all-features = callPackage ../development/tools/rust/cargo-all-features { }; + cargo-audit = callPackage ../tools/package-management/cargo-audit { + inherit (darwin.apple_sdk.frameworks) Security; + }; + cargo-bisect-rustc = callPackage ../development/tools/rust/cargo-bisect-rustc { + inherit (darwin.apple_sdk.frameworks) Security; + }; + cargo-bitbake = callPackage ../development/tools/rust/cargo-bitbake { }; + cargo-c = callPackage ../development/tools/rust/cargo-c { + inherit (darwin.apple_sdk.frameworks) CoreFoundation Security; + }; + cargo-criterion = callPackage ../development/tools/rust/cargo-criterion { }; + cargo-deadlinks = callPackage ../development/tools/rust/cargo-deadlinks { + inherit (darwin.apple_sdk.frameworks) Security; + }; + cargo-deb = callPackage ../tools/package-management/cargo-deb { + inherit (darwin.apple_sdk.frameworks) Security; + }; + cargo-deps = callPackage ../tools/package-management/cargo-deps { }; + cargo-download = callPackage ../tools/package-management/cargo-download { }; + cargo-edit = callPackage ../tools/package-management/cargo-edit { + inherit (darwin.apple_sdk.frameworks) Security; + }; + cargo-kcov = callPackage ../tools/package-management/cargo-kcov { }; + cargo-graph = callPackage ../tools/package-management/cargo-graph { }; + cargo-license = callPackage ../tools/package-management/cargo-license { }; + cargo-llvm-lines = callPackage ../development/tools/rust/cargo-llvm-lines { }; + cargo-outdated = callPackage ../tools/package-management/cargo-outdated { + inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration; + }; + cargo-release = callPackage ../tools/package-management/cargo-release { + inherit (darwin.apple_sdk.frameworks) Security; + }; + cargo-rr = callPackage ../development/tools/rust/cargo-rr { }; + cargo-tarpaulin = callPackage ../development/tools/analysis/cargo-tarpaulin { + inherit (darwin.apple_sdk.frameworks) Security; + }; + cargo-update = callPackage ../tools/package-management/cargo-update { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + cargo-asm = callPackage ../development/tools/rust/cargo-asm { + inherit (darwin.apple_sdk.frameworks) Security; + }; + cargo-binutils = callPackage ../development/tools/rust/cargo-binutils { }; + cargo-bloat = callPackage ../development/tools/rust/cargo-bloat { }; + cargo-cache = callPackage ../development/tools/rust/cargo-cache { + inherit (darwin.apple_sdk.frameworks) Security; + }; + cargo-crev = callPackage ../development/tools/rust/cargo-crev { + inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration; + }; + cargo-cross = callPackage ../development/tools/rust/cargo-cross { }; + cargo-deny = callPackage ../development/tools/rust/cargo-deny { + inherit (darwin.apple_sdk.frameworks) Security; + }; + cargo-depgraph = callPackage ../development/tools/rust/cargo-depgraph { }; + cargo-dephell = callPackage ../development/tools/rust/cargo-dephell { + inherit (darwin.apple_sdk.frameworks) Security; + }; + cargo-diet = callPackage ../development/tools/rust/cargo-diet { }; + cargo-embed = callPackage ../development/tools/rust/cargo-embed { + inherit (darwin.apple_sdk.frameworks) AppKit; + }; + cargo-expand = callPackage ../development/tools/rust/cargo-expand { }; + cargo-feature = callPackage ../development/tools/rust/cargo-feature { }; + cargo-flash = callPackage ../development/tools/rust/cargo-flash { + inherit (darwin.apple_sdk.frameworks) AppKit; + }; + cargo-fund = callPackage ../development/tools/rust/cargo-fund { + inherit (darwin.apple_sdk.frameworks) Security; + }; + cargo-fuzz = callPackage ../development/tools/rust/cargo-fuzz { }; + cargo-geiger = callPackage ../development/tools/rust/cargo-geiger { + inherit (darwin) libiconv; + inherit (darwin.apple_sdk.frameworks) Security CoreFoundation; + }; + cargo-inspect = callPackage ../development/tools/rust/cargo-inspect { + inherit (darwin.apple_sdk.frameworks) Security; + }; + cargo-insta = callPackage ../development/tools/rust/cargo-insta { }; + cargo-limit = callPackage ../development/tools/rust/cargo-limit { }; + cargo-make = callPackage ../development/tools/rust/cargo-make { + inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration; + }; + cargo-modules = callPackage ../development/tools/rust/cargo-modules { + inherit (darwin.apple_sdk.frameworks) CoreFoundation CoreServices; + }; + cargo-msrv = callPackage ../development/tools/rust/cargo-msrv { + inherit (darwin.apple_sdk.frameworks) Security; + }; + cargo-play = callPackage ../development/tools/rust/cargo-play { }; + cargo-raze = callPackage ../development/tools/rust/cargo-raze { + inherit (darwin.apple_sdk.frameworks) Security; + }; + cargo-readme = callPackage ../development/tools/rust/cargo-readme {}; + cargo-sort = callPackage ../development/tools/rust/cargo-sort { }; + cargo-spellcheck = callPackage ../development/tools/rust/cargo-spellcheck { + inherit (darwin.apple_sdk.frameworks) Security; + }; + cargo-supply-chain = callPackage ../development/tools/rust/cargo-supply-chain { + inherit (darwin.apple_sdk.frameworks) Security; + }; + cargo-sweep = callPackage ../development/tools/rust/cargo-sweep { }; + cargo-sync-readme = callPackage ../development/tools/rust/cargo-sync-readme {}; + cargo-tally = callPackage ../development/tools/rust/cargo-tally { + inherit (darwin.apple_sdk.frameworks) DiskArbitration Foundation IOKit; + }; + cargo-udeps = callPackage ../development/tools/rust/cargo-udeps { + inherit (darwin.apple_sdk.frameworks) CoreServices Security SystemConfiguration; + }; + cargo-valgrind = callPackage ../development/tools/rust/cargo-valgrind { }; + cargo-watch = callPackage ../development/tools/rust/cargo-watch { + inherit (darwin.apple_sdk.frameworks) CoreServices Foundation; + }; + cargo-wipe = callPackage ../development/tools/rust/cargo-wipe { }; + cargo-xbuild = callPackage ../development/tools/rust/cargo-xbuild { }; + cargo-generate = callPackage ../development/tools/rust/cargo-generate { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + cargo-whatfeatures = callPackage ../development/tools/rust/cargo-whatfeatures { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + crate2nix = callPackage ../development/tools/rust/crate2nix { }; + + convco = callPackage ../development/tools/convco { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + devserver = callPackage ../development/tools/rust/devserver { + inherit (darwin.apple_sdk.frameworks) CoreServices; + }; + + maturin = callPackage ../development/tools/rust/maturin { + inherit (darwin.apple_sdk.frameworks) Security; + }; + panamax = callPackage ../development/tools/rust/panamax { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + rhack = callPackage ../development/tools/rust/rhack { }; + inherit (rustPackages) rls; + roogle = callPackage ../development/tools/rust/roogle { }; + rustfmt = rustPackages.rustfmt; + rustracer = callPackage ../development/tools/rust/racer { + inherit (darwin.apple_sdk.frameworks) Security; + }; + rust-analyzer-unwrapped = callPackage ../development/tools/rust/rust-analyzer { + inherit (darwin.apple_sdk.frameworks) CoreServices; + }; + rust-analyzer = callPackage ../development/tools/rust/rust-analyzer/wrapper.nix { }; + rust-bindgen-unwrapped = callPackage ../development/tools/rust/bindgen/unwrapped.nix { }; + rust-bindgen = callPackage ../development/tools/rust/bindgen { }; + rust-cbindgen = callPackage ../development/tools/rust/cbindgen { + inherit (darwin.apple_sdk.frameworks) Security; + }; + rust-script = callPackage ../development/tools/rust/rust-script { }; + rustup = callPackage ../development/tools/rust/rustup { + inherit (darwin.apple_sdk.frameworks) CoreServices Security; + }; + rustup-toolchain-install-master = callPackage ../development/tools/rust/rustup-toolchain-install-master { + inherit (darwin.apple_sdk.frameworks) Security; + }; + rusty-man = callPackage ../development/tools/rust/rusty-man { }; + + sagittarius-scheme = callPackage ../development/compilers/sagittarius-scheme {}; + + sbclBootstrap = callPackage ../development/compilers/sbcl/bootstrap.nix {}; + sbcl_2_0_8 = callPackage ../development/compilers/sbcl/2.0.8.nix {}; + sbcl_2_0_9 = callPackage ../development/compilers/sbcl/2.0.9.nix {}; + sbcl_2_1_1 = callPackage ../development/compilers/sbcl/2.1.1.nix {}; + sbcl_2_1_2 = callPackage ../development/compilers/sbcl/2.1.2.nix {}; + sbcl_2_1_9 = callPackage ../development/compilers/sbcl/2.1.9.nix {}; + sbcl_2_1_10 = callPackage ../development/compilers/sbcl/2.1.10.nix {}; + sbcl_2_1_11 = callPackage ../development/compilers/sbcl/2.1.11.nix {}; + sbcl = sbcl_2_1_11; + + roswell = callPackage ../development/tools/roswell { }; + + scala_2_10 = callPackage ../development/compilers/scala/2.x.nix { majorVersion = "2.10"; jre = jdk8; }; + scala_2_11 = callPackage ../development/compilers/scala/2.x.nix { majorVersion = "2.11"; jre = jdk8; }; + scala_2_12 = callPackage ../development/compilers/scala/2.x.nix { majorVersion = "2.12"; }; + scala_2_13 = callPackage ../development/compilers/scala/2.x.nix { majorVersion = "2.13"; }; + + scala = scala_2_13; + scala-runners = callPackage ../development/compilers/scala-runners { + coursier = coursier.override { jre = jdk8; }; + }; + + metal = callPackage ../development/libraries/metal { }; + metals = callPackage ../development/tools/metals { }; + scalafix = callPackage ../development/tools/scalafix { + jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + scalafmt = callPackage ../development/tools/scalafmt { }; + + scryer-prolog = callPackage ../development/compilers/scryer-prolog { }; + + sdcc = callPackage ../development/compilers/sdcc { + gputils = null; + }; + + seren = callPackage ../applications/networking/instant-messengers/seren { }; + + serialdv = callPackage ../development/libraries/serialdv { }; + + serpent = callPackage ../development/compilers/serpent { }; + + shmig = callPackage ../development/tools/database/shmig { }; + + # smlnjBootstrap should be redundant, now that smlnj works on Darwin natively + smlnjBootstrap = callPackage ../development/compilers/smlnj/bootstrap.nix { }; + smlnj = callPackage ../development/compilers/smlnj { + inherit (darwin) Libsystem; + }; + + smlpkg = callPackage ../tools/package-management/smlpkg { }; + + solc = callPackage ../development/compilers/solc { + boost = boost172; + }; + + souffle = callPackage ../development/compilers/souffle { + autoreconfHook = buildPackages.autoreconfHook269; + }; + + spasm-ng = callPackage ../development/compilers/spasm-ng { }; + + spirv-llvm-translator = callPackage ../development/compilers/spirv-llvm-translator { }; + + sqldeveloper = callPackage ../development/tools/database/sqldeveloper { + jdk = oraclejdk; + }; + + sqlfluff = callPackage ../development/tools/database/sqlfluff { }; + + sqlx-cli = callPackage ../development/tools/rust/sqlx-cli { + inherit (darwin.apple_sdk.frameworks) SystemConfiguration CoreFoundation Security; + }; + + squeak = callPackage ../development/compilers/squeak { }; + + squirrel-sql = callPackage ../development/tools/database/squirrel-sql { + drivers = [ jtds_jdbc mssql_jdbc mysql_jdbc postgresql_jdbc ]; + }; + + stalin = callPackage ../development/compilers/stalin { }; + + metaBuildEnv = callPackage ../development/compilers/meta-environment/meta-build-env { }; + + svd2rust = callPackage ../development/tools/rust/svd2rust { }; + + svdtools = with python3Packages; toPythonApplication svdtools; + + swift = callPackage ../development/compilers/swift { }; + + swiProlog = callPackage ../development/compilers/swi-prolog { + inherit (darwin.apple_sdk.frameworks) Security; + jdk = openjdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + swiPrologWithGui = swiProlog.override { withGui = true; }; + + tbb = callPackage ../development/libraries/tbb { }; + + terra = callPackage ../development/compilers/terra { + llvmPackages = llvmPackages_10; + }; + + teyjus = callPackage ../development/compilers/teyjus ( + with ocaml-ng.ocamlPackages_4_02; { + inherit ocaml; + omake = omake_rc1; + }); + + thrust = callPackage ../development/tools/thrust { + gconf = gnome2.GConf; + }; + + tinycc = callPackage ../development/compilers/tinycc { }; + + tinygo = callPackage ../development/compilers/tinygo { + inherit (llvmPackages_10) llvm clang-unwrapped lld; + avrgcc = pkgsCross.avr.buildPackages.gcc; + }; + + tinyscheme = callPackage ../development/interpreters/tinyscheme { + stdenv = gccStdenv; + }; + + bupc = callPackage ../development/compilers/bupc { }; + + uasm = callPackage ../development/compilers/uasm { }; + + urn = callPackage ../development/compilers/urn { }; + + urweb = callPackage ../development/compilers/urweb { + icu = icu67; + }; + + urbackup-client = callPackage ../applications/backup/urbackup-client { }; + + vlang = callPackage ../development/compilers/vlang { }; + + vala-lint = callPackage ../development/tools/vala-lint { }; + + inherit (callPackage ../development/compilers/vala { }) + vala_0_48 + vala_0_54 + vala; + + vyper = with python3Packages; toPythonApplication vyper; + + wcc = callPackage ../development/compilers/wcc { }; + + wla-dx = callPackage ../development/compilers/wla-dx { }; + + wrapCCWith = + { cc + , # This should be the only bintools runtime dep with this sort of logic. The + # Others should instead delegate to the next stage's choice with + # `targetPackages.stdenv.cc.bintools`. This one is different just to + # provide the default choice, avoiding infinite recursion. + # See the bintools attribute for the logic and reasoning. We need to provide + # a default here, since eval will hit this function when bootstrapping + # stdenv where the bintools attribute doesn't exist, but will never actually + # be evaluated -- callPackage ends up being too eager. + bintools ? pkgs.bintools + , libc ? bintools.libc + , # libc++ from the default LLVM version is bound at the top level, but we + # want the C++ library to be explicitly chosen by the caller, and null by + # default. + libcxx ? null + , extraPackages ? lib.optional (cc.isGNU or false && stdenv.targetPlatform.isMinGW) threadsCross + , ... + } @ extraArgs: + callPackage ../build-support/cc-wrapper (let self = { + nativeTools = stdenv.targetPlatform == stdenv.hostPlatform && stdenv.cc.nativeTools or false; + nativeLibc = stdenv.targetPlatform == stdenv.hostPlatform && stdenv.cc.nativeLibc or false; + nativePrefix = stdenv.cc.nativePrefix or ""; + noLibc = !self.nativeLibc && (self.libc == null); + + isGNU = cc.isGNU or false; + isClang = cc.isClang or false; + + inherit cc bintools libc libcxx extraPackages zlib; + } // extraArgs; in self); + + wrapCC = cc: wrapCCWith { + inherit cc; + }; + + wrapBintoolsWith = + { bintools + , libc ? if stdenv.targetPlatform != stdenv.hostPlatform then libcCross else stdenv.cc.libc + , ... + } @ extraArgs: + callPackage ../build-support/bintools-wrapper (let self = { + nativeTools = stdenv.targetPlatform == stdenv.hostPlatform && stdenv.cc.nativeTools or false; + nativeLibc = stdenv.targetPlatform == stdenv.hostPlatform && stdenv.cc.nativeLibc or false; + nativePrefix = stdenv.cc.nativePrefix or ""; + + noLibc = (self.libc == null); + + inherit bintools libc; + inherit (darwin) postLinkSignHook signingUtils; + } // extraArgs; in self); + + yaml-language-server = nodePackages.yaml-language-server; + + # prolog + yap = callPackage ../development/compilers/yap { }; + + yasm = callPackage ../development/compilers/yasm { }; + + yosys = callPackage ../development/compilers/yosys { }; + yosys-bluespec = callPackage ../development/compilers/yosys/plugins/bluespec.nix { }; + yosys-ghdl = callPackage ../development/compilers/yosys/plugins/ghdl.nix { }; + yosys-symbiflow = callPackage ../development/compilers/yosys/plugins/symbiflow.nix { }; + + z88dk = callPackage ../development/compilers/z88dk { }; + + zulip = callPackage ../applications/networking/instant-messengers/zulip { + # Bubblewrap breaks zulip, see https://github.com/NixOS/nixpkgs/pull/97264#issuecomment-704454645 + appimageTools = pkgs.appimageTools.override { + buildFHSUserEnv = pkgs.buildFHSUserEnv; + }; + }; + + zulip-term = callPackage ../applications/networking/instant-messengers/zulip-term { }; + + zulu8 = callPackage ../development/compilers/zulu/8.nix { }; + zulu = callPackage ../development/compilers/zulu { }; + + ### DEVELOPMENT / INTERPRETERS + + acl2 = callPackage ../development/interpreters/acl2 { }; + acl2-minimal = callPackage ../development/interpreters/acl2 { certifyBooks = false; }; + + angelscript = callPackage ../development/interpreters/angelscript {}; + + angelscript_2_22 = callPackage ../development/interpreters/angelscript/2.22.nix {}; + + babashka = callPackage ../development/interpreters/clojure/babashka.nix { }; + + # BQN interpreters and compilers + + mbqn = callPackage ../development/interpreters/bqn/mlochbaum-bqn { }; + + cbqn = cbqn-bootstrap.phase2; + cbqn-standalone = cbqn-bootstrap.phase0; + + # Below, the classic self-bootstrapping process + cbqn-bootstrap = lib.dontRecurseIntoAttrs { + mbqn-source = buildPackages.mbqn.src; + + phase0 = callPackage ../development/interpreters/bqn/cbqn { + genBytecode = false; + bqn-path = null; + mbqn-source = null; + }; + + phase1 = callPackage ../development/interpreters/bqn/cbqn { + inherit (cbqn-bootstrap) mbqn-source; + genBytecode = true; + bqn-path = "${buildPackages.cbqn-bootstrap.phase0}/bin/cbqn"; + }; + + phase2 = callPackage ../development/interpreters/bqn/cbqn { + inherit (cbqn-bootstrap) mbqn-source; + genBytecode = true; + bqn-path = "${buildPackages.cbqn-bootstrap.phase1}/bin/cbqn"; + }; + }; + + dbqn = callPackage ../development/interpreters/bqn/dzaima-bqn { + buildNativeImage = false; + stdenv = stdenvNoCC; + jdk = jre; + }; + dbqn-native = callPackage ../development/interpreters/bqn/dzaima-bqn { + buildNativeImage = true; + jdk = graalvm11-ce; + }; + + chibi = callPackage ../development/interpreters/chibi { }; + + ceptre = callPackage ../development/interpreters/ceptre { }; + + cling = callPackage ../development/interpreters/cling { }; + + clips = callPackage ../development/interpreters/clips { }; + + cliscord = callPackage ../misc/cliscord { }; + + clisp = callPackage ../development/interpreters/clisp { }; + clisp-tip = callPackage ../development/interpreters/clisp/hg.nix { }; + + clojupyter = callPackage ../applications/editors/jupyter-kernels/clojupyter { + jre = jre8; + }; + + clojure = callPackage ../development/interpreters/clojure { + # set this to an LTS version of java + jdk = jdk11; + }; + + clojure-lsp = callPackage ../development/tools/misc/clojure-lsp { }; + + clooj = callPackage ../development/interpreters/clojure/clooj.nix { }; + + dhall = haskell.lib.compose.justStaticExecutables haskellPackages.dhall; + + dhall-bash = haskell.lib.compose.justStaticExecutables haskellPackages.dhall-bash; + + dhall-docs = haskell.lib.compose.justStaticExecutables haskellPackages.dhall-docs; + + dhall-lsp-server = haskell.lib.compose.justStaticExecutables haskellPackages.dhall-lsp-server; + + dhall-json = haskell.lib.compose.justStaticExecutables haskellPackages.dhall-json; + + dhall-nix = haskell.lib.compose.justStaticExecutables haskellPackages.dhall-nix; + + dhall-nixpkgs = haskell.lib.compose.justStaticExecutables haskellPackages.dhall-nixpkgs; + + dhall-text = haskell.lib.compose.justStaticExecutables haskellPackages.dhall-text; + + dhallPackages = recurseIntoAttrs (callPackage ./dhall-packages.nix { }); + + duktape = callPackage ../development/interpreters/duktape { }; + + duckscript = callPackage ../development/tools/rust/duckscript { + inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration; + }; + + evcxr = callPackage ../development/interpreters/evcxr { + inherit (darwin.apple_sdk.frameworks) CoreServices Security; + }; + + beam = callPackage ./beam-packages.nix { }; + beam_nox = callPackage ./beam-packages.nix { beam = beam_nox; wxSupport = false; }; + beam_minimal = callPackage ./beam-packages.nix { + beam = beam_minimal; + wxSupport = false; + systemdSupport = false; + }; + + inherit (beam.interpreters) + erlang erlangR24 erlangR23 erlangR22 erlangR21 + erlang_odbc erlang_javac erlang_odbc_javac erlang_basho_R16B02 + elixir elixir_1_13 elixir_1_12 elixir_1_11 elixir_1_10 elixir_1_9 + elixir_ls; + + erlang_nox = beam_nox.interpreters.erlang; + + inherit (beam.packages.erlang) + erlang-ls erlfmt elvis-erlang + rebar rebar3 rebar3WithPlugins + fetchHex beamPackages; + + inherit (beam.packages.erlangR21) lfe lfe_1_3; + + gnudatalanguage = callPackage ../development/interpreters/gnudatalanguage { + inherit (llvmPackages) openmp; + # MPICH currently build on Darwin + mpi = mpich; + }; + + graphql-client = callPackage ../development/tools/graphql-client { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + groovy = callPackage ../development/interpreters/groovy { }; + + inherit (callPackages ../applications/networking/cluster/hadoop { }) + hadoop_3_3 + hadoop_3_2 + hadoop2; + hadoop3 = hadoop_3_3; + hadoop = hadoop3; + + io = callPackage ../development/interpreters/io { }; + + ivy = callPackage ../development/interpreters/ivy { }; + + j = callPackage ../development/interpreters/j { + stdenv = clangStdenv; + }; + + jacinda = haskell.lib.compose.justStaticExecutables haskell.packages.ghc921.jacinda; + + janet = callPackage ../development/interpreters/janet {}; + + jpm = callPackage ../development/interpreters/janet/jpm.nix {}; + + jelly = callPackage ../development/interpreters/jelly {}; + + jimtcl = callPackage ../development/interpreters/jimtcl {}; + + jmeter = callPackage ../applications/networking/jmeter {}; + + joker = callPackage ../development/interpreters/joker {}; + + davmail = callPackage ../applications/networking/davmail {}; + + kanif = callPackage ../applications/networking/cluster/kanif { }; + + lumo = callPackage ../development/interpreters/clojurescript/lumo { + nodejs = nodejs_latest; + }; + + lxappearance = callPackage ../desktops/lxde/core/lxappearance { }; + + lxappearance-gtk2 = callPackage ../desktops/lxde/core/lxappearance { + gtk2 = gtk2-x11; + withGtk3 = false; + }; + + lxmenu-data = callPackage ../desktops/lxde/core/lxmenu-data.nix { }; + + lxpanel = callPackage ../desktops/lxde/core/lxpanel { + gtk2 = gtk2-x11; + }; + + lxtask = callPackage ../desktops/lxde/core/lxtask { }; + + lxrandr = callPackage ../desktops/lxde/core/lxrandr { }; + + lxsession = callPackage ../desktops/lxde/core/lxsession { }; + + kona = callPackage ../development/interpreters/kona {}; + + lolcode = callPackage ../development/interpreters/lolcode { }; + + love_0_10 = callPackage ../development/interpreters/love/0.10.nix { }; + love_11 = callPackage ../development/interpreters/love/11.nix { }; + love = love_0_10; + + wabt = callPackage ../development/tools/wabt { }; + + ### LUA interpreters + luaInterpreters = callPackage ./../development/interpreters/lua-5 {}; + inherit (luaInterpreters) lua5_1 lua5_2 lua5_2_compat lua5_3 lua5_3_compat lua5_4 lua5_4_compat luajit_2_1 luajit_2_0; + + lua5 = lua5_2_compat; + lua = lua5; + + lua51Packages = recurseIntoAttrs lua5_1.pkgs; + lua52Packages = recurseIntoAttrs lua5_2.pkgs; + lua53Packages = recurseIntoAttrs lua5_3.pkgs; + luajitPackages = recurseIntoAttrs luajit.pkgs; + + luaPackages = lua52Packages; + + luajit = luajit_2_1; + + luarocks = luaPackages.luarocks; + luarocks-nix = luaPackages.luarocks-nix; + + toluapp = callPackage ../development/tools/toluapp { + lua = lua5_1; # doesn't work with any other :( + }; + + ### END OF LUA + + ### CuboCore + CuboCore = recurseIntoAttrs (import ./cubocore-packages.nix { + inherit newScope lxqt lib libsForQt5; + }); + + ### End of CuboCore + + maude = callPackage ../development/interpreters/maude { + stdenv = if stdenv.cc.isClang then llvmPackages_5.stdenv else stdenv; + }; + + me_cleaner = callPackage ../tools/misc/me_cleaner { }; + + mesos-dns = callPackage ../servers/mesos-dns { }; + + metamath = callPackage ../development/interpreters/metamath { }; + + minder = callPackage ../applications/misc/minder { }; + + mujs = callPackage ../development/interpreters/mujs { }; + + nextflow = callPackage ../development/interpreters/nextflow { }; + + ngn-k = callPackage ../development/interpreters/ngn-k { }; + + obb = callPackage ../development/interpreters/clojure/obb.nix { }; + + octave = callPackage ../development/interpreters/octave { + python = python3; + mkDerivation = stdenv.mkDerivation; + }; + octave-jit = callPackage ../development/interpreters/octave { + python = python3; + enableJIT = true; + mkDerivation = stdenv.mkDerivation; + }; + octaveFull = libsForQt5.callPackage ../development/interpreters/octave { + python = python3; + enableQt = true; + overridePlatforms = ["x86_64-linux" "x86_64-darwin"]; + }; + + octave-kernel = callPackage ../applications/editors/jupyter-kernels/octave { }; + + octavePackages = recurseIntoAttrs octave.pkgs; + + ocropus = callPackage ../applications/misc/ocropus { }; + + pachyderm = callPackage ../applications/networking/cluster/pachyderm { }; + + + # PHP interpreters, packages and extensions. + # + # Set default PHP interpreter, extensions and packages + php = php80; + phpExtensions = php.extensions; + phpPackages = php.packages; + + # Import PHP81 interpreter, extensions and packages + php81 = callPackage ../development/interpreters/php/8.1.nix { + stdenv = if stdenv.cc.isClang then llvmPackages.stdenv else stdenv; + }; + php81Extensions = recurseIntoAttrs php81.extensions; + php81Packages = recurseIntoAttrs php81.packages; + + # Import PHP80 interpreter, extensions and packages + php80 = callPackage ../development/interpreters/php/8.0.nix { + stdenv = if stdenv.cc.isClang then llvmPackages.stdenv else stdenv; + }; + php80Extensions = recurseIntoAttrs php80.extensions; + php80Packages = recurseIntoAttrs php80.packages; + + # Import PHP74 interpreter, extensions and packages + php74 = callPackage ../development/interpreters/php/7.4.nix { + stdenv = if stdenv.cc.isClang then llvmPackages.stdenv else stdenv; + }; + php74Extensions = recurseIntoAttrs php74.extensions; + php74Packages = recurseIntoAttrs php74.packages; + + + picoc = callPackage ../development/interpreters/picoc {}; + + picolisp = callPackage ../development/interpreters/picolisp {}; + + polyml = callPackage ../development/compilers/polyml { }; + polyml56 = callPackage ../development/compilers/polyml/5.6.nix { }; + polyml57 = callPackage ../development/compilers/polyml/5.7.nix { }; + + pure = callPackage ../development/interpreters/pure { + /*llvm = llvm_35;*/ + }; + purePackages = recurseIntoAttrs (callPackage ./pure-packages.nix {}); + + # Python interpreters. All standard library modules are included except for tkinter, which is + # available as `pythonPackages.tkinter` and can be used as any other Python package. + # When switching these sets, please update docs at ../../doc/languages-frameworks/python.md + python2 = python27; + python3 = python39; + pypy = pypy2; + pypy2 = pypy27; + pypy3 = pypy38; + + # Python interpreter that is build with all modules, including tkinter. + # These are for compatibility and should not be used inside Nixpkgs. + python2Full = python2.override { + self = python2Full; + pythonAttr = "python2Full"; + x11Support = true; + }; + python27Full = python27.override { + self = python27Full; + pythonAttr = "python27Full"; + x11Support = true; + }; + python3Full = python3.override { + self = python3Full; + pythonAttr = "python3Full"; + bluezSupport = true; + x11Support = true; + }; + python37Full = python37.override { + self = python37Full; + pythonAttr = "python37Full"; + bluezSupport = true; + x11Support = true; + }; + python38Full = python38.override { + self = python38Full; + pythonAttr = "python38Full"; + bluezSupport = true; + x11Support = true; + }; + python39Full = python39.override { + self = python39Full; + pythonAttr = "python39Full"; + bluezSupport = true; + x11Support = true; + }; + + # pythonPackages further below, but assigned here because they need to be in sync + python2Packages = python2.pkgs; + python3Packages = python3.pkgs; + + pythonInterpreters = callPackage ./../development/interpreters/python { }; + inherit (pythonInterpreters) python27 python37 python38 python39 python310 python311 python3Minimal pypy27 pypy38 pypy37 rustpython; + + # Python package sets. + python27Packages = python27.pkgs; + python37Packages = python37.pkgs; + python38Packages = python38.pkgs; + python39Packages = recurseIntoAttrs python39.pkgs; + python310Packages = recurseIntoAttrs python310.pkgs; + python311Packages = python311.pkgs; + pypyPackages = pypy.pkgs; + pypy2Packages = pypy2.pkgs; + pypy27Packages = pypy27.pkgs; + pypy3Packages = pypy3.pkgs; + pypy37Packages = pypy37.pkgs; + pypy38Packages = pypy38.pkgs; + + py3c = callPackage ../development/libraries/py3c { }; + + pythonManylinuxPackages = callPackage ./../development/interpreters/python/manylinux { }; + + pythonCondaPackages = callPackage ./../development/interpreters/python/conda { }; + + update-python-libraries = callPackage ../development/interpreters/python/update-python-libraries { }; + + # Should eventually be moved inside Python interpreters. + python-setup-hook = callPackage ../development/interpreters/python/setup-hook.nix { }; + + pythonDocs = recurseIntoAttrs (callPackage ../development/interpreters/python/cpython/docs {}); + + pypi2nix = callPackage ../development/tools/pypi2nix {}; + + pypi-mirror = callPackage ../development/tools/pypi-mirror {}; + + setupcfg2nix = python3Packages.callPackage ../development/tools/setupcfg2nix {}; + + # These pyside tools do not provide any Python modules and are meant to be here. + # See ../development/python-modules/pyside for details. + pysideApiextractor = callPackage ../development/python-modules/pyside/apiextractor.nix { }; + pysideGeneratorrunner = callPackage ../development/python-modules/pyside/generatorrunner.nix { }; + + svg2tikz = python27Packages.svg2tikz; + + pew = callPackage ../development/tools/pew {}; + + poetry = callPackage ../development/tools/poetry2nix/poetry2nix/pkgs/poetry { + python = python3; + }; + poetry2nix = callPackage ../development/tools/poetry2nix/poetry2nix { + inherit pkgs lib; + }; + + poetry2conda = python3Packages.callPackage ../development/python-modules/poetry2conda { }; + + pipenv = callPackage ../development/tools/pipenv {}; + + pipewire = callPackage ../development/libraries/pipewire {}; + pipewire-media-session = callPackage ../development/libraries/pipewire/media-session.nix {}; + pipewire_0_2 = callPackage ../development/libraries/pipewire/0.2.nix {}; + wireplumber = callPackage ../development/libraries/pipewire/wireplumber.nix {}; + + pyradio = callPackage ../applications/audio/pyradio {}; + + racket = callPackage ../development/interpreters/racket { + # racket 6.11 doesn't build with gcc6 + recent glibc: + # https://github.com/racket/racket/pull/1886 + # https://github.com/NixOS/nixpkgs/pull/31017#issuecomment-343574769 + stdenv = if stdenv.isDarwin then stdenv else gcc7Stdenv; + inherit (darwin.apple_sdk.frameworks) CoreFoundation; + }; + racket_7_9 = callPackage ../development/interpreters/racket/racket_7_9.nix { + stdenv = if stdenv.isDarwin then stdenv else gcc7Stdenv; + inherit (darwin.apple_sdk.frameworks) CoreFoundation; + }; + racket-minimal = callPackage ../development/interpreters/racket/minimal.nix { }; + + rakudo = callPackage ../development/interpreters/rakudo {}; + moarvm = callPackage ../development/interpreters/rakudo/moarvm.nix { + inherit (darwin.apple_sdk.frameworks) CoreServices ApplicationServices; + }; + nqp = callPackage ../development/interpreters/rakudo/nqp.nix { }; + zef = callPackage ../development/interpreters/rakudo/zef.nix { }; + + rascal = callPackage ../development/interpreters/rascal { }; + + red = callPackage ../development/interpreters/red { }; + + regexploit = callPackage ../tools/security/regexploit { }; + + regextester = callPackage ../applications/misc/regextester { }; + + regina = callPackage ../development/interpreters/regina { }; + + inherit (ocamlPackages) reason; + + pixie = callPackage ../development/interpreters/pixie { }; + dust = callPackage ../development/interpreters/pixie/dust.nix { }; + + buildRubyGem = callPackage ../development/ruby-modules/gem { }; + defaultGemConfig = callPackage ../development/ruby-modules/gem-config { + inherit (darwin) DarwinTools cctools; + inherit (darwin.apple_sdk.frameworks) CoreServices; + }; + bundix = callPackage ../development/ruby-modules/bundix { }; + bundler = callPackage ../development/ruby-modules/bundler { }; + bundlerEnv = callPackage ../development/ruby-modules/bundler-env { }; + bundlerApp = callPackage ../development/ruby-modules/bundler-app { }; + bundlerUpdateScript = callPackage ../development/ruby-modules/bundler-update-script { }; + + bundler-audit = callPackage ../tools/security/bundler-audit { }; + + solargraph = rubyPackages.solargraph; + + rbenv = callPackage ../development/ruby-modules/rbenv { }; + + inherit (callPackage ../development/interpreters/ruby { + inherit (darwin) libiconv libobjc libunwind; + inherit (darwin.apple_sdk.frameworks) Foundation; + }) + ruby_1_9 + ruby_2_0 + ruby_2_1 + ruby_2_2 + ruby_2_3 + ruby_2_4 + ruby_2_5 + ruby_2_6 + ruby_2_7 + ruby_3_0 + ruby_3_1; + + ruby = ruby_2_7; + rubyPackages = rubyPackages_2_7; + + rubyPackages_1_9 = recurseIntoAttrs ruby_1_9.gems; + rubyPackages_2_0 = recurseIntoAttrs ruby_2_0.gems; + rubyPackages_2_1 = recurseIntoAttrs ruby_2_1.gems; + rubyPackages_2_2 = recurseIntoAttrs ruby_2_2.gems; + rubyPackages_2_3 = recurseIntoAttrs ruby_2_2.gems; + rubyPackages_2_4 = recurseIntoAttrs ruby_2_4.gems; + rubyPackages_2_5 = recurseIntoAttrs ruby_2_5.gems; + rubyPackages_2_6 = recurseIntoAttrs ruby_2_6.gems; + rubyPackages_2_7 = recurseIntoAttrs ruby_2_7.gems; + rubyPackages_3_0 = recurseIntoAttrs ruby_3_0.gems; + rubyPackages_3_1 = recurseIntoAttrs ruby_3_1.gems; + + ruby_1_9-gems = recurseIntoAttrs ruby_1_9.gems; + ruby_2_0-gems = recurseIntoAttrs ruby_2_0.gems; + ruby_2_1-gems = recurseIntoAttrs ruby_2_1.gems; + ruby_2_2-gems = recurseIntoAttrs ruby_2_2.gems; + ruby_2_3-gems = recurseIntoAttrs ruby_2_3.gems; + ruby_2_4-gems = recurseIntoAttrs ruby_2_4.gems; + ruby_2_5-gems = recurseIntoAttrs ruby_2_5.gems; + ruby_2_6-gems = recurseIntoAttrs ruby_2_6.gems; + + mruby = callPackage ../development/compilers/mruby { }; + + scsh = callPackage ../development/interpreters/scsh { }; + + scheme48 = callPackage ../development/interpreters/scheme48 { }; + + scheme-bytestructures = callPackage ../development/scheme-modules/scheme-bytestructures { }; + + self = pkgsi686Linux.callPackage ../development/interpreters/self { }; + + inherit (callPackages ../applications/networking/cluster/spark { }) + spark3 + spark2; + spark = spark3; + + sparkleshare = callPackage ../applications/version-management/sparkleshare { }; + + spidermonkey_78 = callPackage ../development/interpreters/spidermonkey/78.nix { }; + spidermonkey_91 = callPackage ../development/interpreters/spidermonkey/91.nix { }; + + ssm-agent = callPackage ../applications/networking/cluster/ssm-agent { }; + ssm-session-manager-plugin = callPackage ../applications/networking/cluster/ssm-session-manager-plugin { }; + + supercollider = libsForQt5.callPackage ../development/interpreters/supercollider { + fftw = fftwSinglePrec; + }; + + supercollider_scel = supercollider.override { useSCEL = true; }; + + taktuk = callPackage ../applications/networking/cluster/taktuk { }; + + tcl = tcl-8_6; + tcl-8_5 = callPackage ../development/interpreters/tcl/8.5.nix { }; + tcl-8_6 = callPackage ../development/interpreters/tcl/8.6.nix { }; + + tclreadline = callPackage ../development/interpreters/tclreadline { }; + + trealla = callPackage ../development/interpreters/trealla { }; + + wasm = ocamlPackages.wasm; + + wasm3 = callPackage ../development/interpreters/wasm3 { }; + + yex-lang = callPackage ../development/interpreters/yex-lang { }; + + ### DEVELOPMENT / MISC + + h3 = callPackage ../development/misc/h3 { }; + + amtk = callPackage ../development/libraries/amtk { }; + + avrlibc = callPackage ../development/misc/avr/libc {}; + avrlibcCross = callPackage ../development/misc/avr/libc { + stdenv = crossLibcStdenv; + }; + + avr8burnomat = callPackage ../development/misc/avr8-burn-omat { }; + + betaflight = callPackage ../development/embedded/stm32/betaflight { + gcc-arm-embedded = pkgsCross.arm-embedded.buildPackages.gcc; + binutils-arm-embedded = pkgsCross.arm-embedded.buildPackages.binutils; + }; + + sourceFromHead = callPackage ../build-support/source-from-head-fun.nix {}; + + jruby = callPackage ../development/interpreters/jruby { }; + + jython = callPackage ../development/interpreters/jython {}; + + gImageReader = callPackage ../applications/misc/gImageReader { }; + + guile_1_8 = callPackage ../development/interpreters/guile/1.8.nix { }; + + # Needed for autogen + guile_2_0 = callPackage ../development/interpreters/guile/2.0.nix { }; + + guile_2_2 = callPackage ../development/interpreters/guile/2.2.nix { }; + + guile_3_0 = callPackage ../development/interpreters/guile/3.0.nix { }; + + guile = guile_2_2; + + guile-cairo = callPackage ../development/guile-modules/guile-cairo { }; + + guile-commonmark = callPackage ../development/guile-modules/guile-commonmark { }; + + guile-fibers = callPackage ../development/guile-modules/guile-fibers { }; + + guile-gcrypt = callPackage ../development/guile-modules/guile-gcrypt { }; + + guile-git = callPackage ../development/guile-modules/guile-git { }; + + guile-json = callPackage ../development/guile-modules/guile-json { }; + + guile-lib = callPackage ../development/guile-modules/guile-lib { }; + + guile-ncurses = callPackage ../development/guile-modules/guile-ncurses { }; + + guile-opengl = callPackage ../development/guile-modules/guile-opengl { }; + + guile-reader = callPackage ../development/guile-modules/guile-reader { }; + + guile-sdl = callPackage ../development/guile-modules/guile-sdl { }; + + guile-sdl2 = callPackage ../development/guile-modules/guile-sdl2 { }; + + guile-ssh = callPackage ../development/guile-modules/guile-ssh { }; + + guile-xcb = callPackage ../development/guile-modules/guile-xcb { + guile = guile_2_0; + }; + + inav = callPackage ../development/embedded/stm32/inav { + gcc-arm-embedded = pkgsCross.arm-embedded.buildPackages.gcc; + binutils-arm-embedded = pkgsCross.arm-embedded.buildPackages.binutils; + }; + + inav-blackbox-tools = callPackage ../tools/misc/inav-blackbox-tools { }; + + infracost = callPackage ../tools/misc/infracost { }; + + msp430GccSupport = callPackage ../development/misc/msp430/gcc-support.nix { }; + + msp430Newlib = callPackage ../development/misc/msp430/newlib.nix { }; + msp430NewlibCross = callPackage ../development/misc/msp430/newlib.nix { + inherit (buildPackages.xorg) lndir; + newlib = newlibCross; + }; + + mspds = callPackage ../development/misc/msp430/mspds { }; + mspds-bin = callPackage ../development/misc/msp430/mspds/binary.nix { }; + + mspdebug = callPackage ../development/misc/msp430/mspdebug.nix { }; + + vc4-newlib = callPackage ../development/misc/vc4/newlib.nix {}; + resim = callPackage ../applications/emulators/resim {}; + + or1k-newlib = callPackage ../development/misc/or1k/newlib.nix {}; + + rappel = callPackage ../development/misc/rappel { }; + + pharo-vms = callPackage ../development/pharo/vm { }; + pharo = pharo-vms.multi-vm-wrapper; + pharo-cog32 = pharo-vms.cog32; + pharo-spur32 = pharo-vms.spur32; + pharo-spur64 = assert stdenv.is64bit; pharo-vms.spur64; + pharo-launcher = callPackage ../development/pharo/launcher { }; + + protege-distribution = callPackage ../development/web/protege-distribution { }; + + umr = callPackage ../development/misc/umr { + llvmPackages = llvmPackages_latest; + }; + + srandrd = callPackage ../tools/X11/srandrd { }; + + srecord = callPackage ../development/tools/misc/srecord { }; + + srelay = callPackage ../tools/networking/srelay { }; + + xidel = callPackage ../tools/text/xidel { }; + + asdf-vm = callPackage ../tools/misc/asdf-vm { }; + + ### DEVELOPMENT / TOOLS + + abi-compliance-checker = callPackage ../development/tools/misc/abi-compliance-checker { }; + + abi-dumper = callPackage ../development/tools/misc/abi-dumper { }; + + abuild = callPackage ../development/tools/abuild { }; + + actionlint = callPackage ../development/tools/analysis/actionlint { }; + + adtool = callPackage ../tools/admin/adtool { }; + + inherit (callPackage ../development/tools/alloy { + jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }) + alloy5 + alloy6 + alloy; + + altair = callPackage ../development/tools/altair-graphql-client { }; + + ameba = callPackage ../development/tools/ameba { }; + + anybadge = with python3Packages; toPythonApplication anybadge; + + augeas = callPackage ../tools/system/augeas { }; + + inherit (callPackage ../tools/admin/ansible { }) + ansible + ansible_2_8 + ansible_2_9 + ansible_2_10 + ansible_2_11; + + ansible-lint = with python3.pkgs; toPythonApplication ansible-lint; + + antlr2 = callPackage ../development/tools/parsing/antlr/2.7.7.nix { + jdk = jdk8; # todo: remove override https://github.com/nixos/nixpkgs/pull/89731 + }; + + antlr3_4 = callPackage ../development/tools/parsing/antlr/3.4.nix { + jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + antlr3_5 = callPackage ../development/tools/parsing/antlr/3.5.nix { + jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + antlr3 = antlr3_5; + + antlr4_8 = callPackage ../development/tools/parsing/antlr/4.8.nix { + jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + + antlr4_9 = callPackage ../development/tools/parsing/antlr/4.9.nix { }; + + antlr4 = antlr4_8; + + antlr = antlr4; + + apacheAnt = callPackage ../development/tools/build-managers/apache-ant { }; + apacheAnt_1_9 = callPackage ../development/tools/build-managers/apache-ant/1.9.nix { }; + ant = apacheAnt; + + apacheKafka = apacheKafka_2_8; + apacheKafka_2_7 = callPackage ../servers/apache-kafka { majorVersion = "2.7"; }; + apacheKafka_2_8 = callPackage ../servers/apache-kafka { majorVersion = "2.8"; }; + + kt = callPackage ../tools/misc/kt {}; + + argbash = callPackage ../development/tools/misc/argbash {}; + + arpa2cm = callPackage ../development/tools/build-managers/arpa2cm { }; + + arpa2common = callPackage ../development/libraries/arpa2common { }; + + asn2quickder = python2Packages.callPackage ../development/tools/asn2quickder {}; + + astyle = callPackage ../development/tools/misc/astyle { }; + + automaticcomponenttoolkit = callPackage ../development/tools/misc/automaticcomponenttoolkit { }; + + aviator = callPackage ../development/tools/misc/aviator { }; + + awf = callPackage ../development/tools/misc/awf { }; + + aws-adfs = with python3Packages; toPythonApplication aws-adfs; + + inherit (callPackages ../development/tools/electron { }) + electron + electron_9 + electron_10 + electron_11 + electron_12 + electron_13 + electron_14 + electron_15 + electron_16 + electron_17; + + autobuild = callPackage ../development/tools/misc/autobuild { }; + + autoconf = autoconf271; + + autoconf-archive = callPackage ../development/tools/misc/autoconf-archive { }; + + autoconf213 = callPackage ../development/tools/misc/autoconf/2.13.nix { }; + autoconf264 = callPackage ../development/tools/misc/autoconf/2.64.nix { }; + autoconf269 = callPackage ../development/tools/misc/autoconf/2.69.nix { }; + autoconf271 = callPackage ../development/tools/misc/autoconf { }; + + autocutsel = callPackage ../tools/X11/autocutsel{ }; + + automake = automake116x; + + automake111x = callPackage ../development/tools/misc/automake/automake-1.11.x.nix { }; + + automake115x = callPackage ../development/tools/misc/automake/automake-1.15.x.nix { }; + + automake116x = callPackage ../development/tools/misc/automake/automake-1.16.x.nix { }; + + automoc4 = callPackage ../development/tools/misc/automoc4 { }; + + avrdude = callPackage ../development/embedded/avrdude { }; + + b4 = callPackage ../development/tools/b4 { }; + + babeltrace = callPackage ../development/tools/misc/babeltrace { }; + + bam = callPackage ../development/tools/build-managers/bam {}; + + bazel = bazel_3; + + bazel_0 = bazel_0_26; + + bazel_0_26 = callPackage ../development/tools/build-managers/bazel/bazel_0_26 { + inherit (darwin) cctools; + inherit (darwin.apple_sdk.frameworks) CoreFoundation CoreServices Foundation; + buildJdk = jdk8_headless; + buildJdkName = "jdk8"; + runJdk = jdk11_headless; + stdenv = if stdenv.cc.isClang then llvmPackages_6.stdenv else stdenv; + }; + + bazel_0_29 = callPackage ../development/tools/build-managers/bazel/bazel_0_29 { + inherit (darwin) cctools; + inherit (darwin.apple_sdk.frameworks) CoreFoundation CoreServices Foundation; + buildJdk = jdk8_headless; + buildJdkName = "jdk8"; + runJdk = jdk11_headless; + stdenv = if stdenv.cc.isClang then llvmPackages_6.stdenv else stdenv; + bazel_self = bazel_0_29; + }; + + bazel_1 = callPackage ../development/tools/build-managers/bazel/bazel_1 { + inherit (darwin) cctools; + inherit (darwin.apple_sdk.frameworks) CoreFoundation CoreServices Foundation; + buildJdk = jdk8_headless; + buildJdkName = "jdk8"; + runJdk = jdk11_headless; + stdenv = if stdenv.cc.isClang then llvmPackages_6.stdenv else stdenv; + bazel_self = bazel_1; + }; + + bazel_3 = callPackage ../development/tools/build-managers/bazel/bazel_3 { + inherit (darwin) cctools; + inherit (darwin.apple_sdk.frameworks) CoreFoundation CoreServices Foundation; + buildJdk = jdk11_headless; + buildJdkName = "java11"; + runJdk = jdk11_headless; + stdenv = if stdenv.cc.isClang then llvmPackages.stdenv else stdenv; + bazel_self = bazel_3; + }; + + bazel_4 = callPackage ../development/tools/build-managers/bazel/bazel_4 { + inherit (darwin) cctools; + inherit (darwin.apple_sdk.frameworks) CoreFoundation CoreServices Foundation; + buildJdk = jdk11_headless; + buildJdkName = "java11"; + runJdk = jdk11_headless; + stdenv = if stdenv.cc.isClang then llvmPackages.stdenv else stdenv; + bazel_self = bazel_4; + }; + + bazel_5 = callPackage ../development/tools/build-managers/bazel/bazel_5 { + inherit (darwin) cctools; + inherit (darwin.apple_sdk.frameworks) CoreFoundation CoreServices Foundation; + buildJdk = jdk11_headless; + runJdk = jdk11_headless; + stdenv = if stdenv.cc.isClang then llvmPackages.stdenv else stdenv; + bazel_self = bazel_5; + }; + + bazel-buildtools = callPackage ../development/tools/build-managers/bazel/buildtools { }; + buildifier = bazel-buildtools; + buildozer = bazel-buildtools; + unused_deps = bazel-buildtools; + + bazel-remote = callPackage ../development/tools/build-managers/bazel/bazel-remote { }; + + bazel-watcher = callPackage ../development/tools/bazel-watcher { }; + + bazel-gazelle = callPackage ../development/tools/bazel-gazelle { }; + + bazel-kazel = callPackage ../development/tools/bazel-kazel { }; + + bazelisk = callPackage ../development/tools/bazelisk { }; + + rebazel = callPackage ../development/tools/rebazel { + inherit (darwin.apple_sdk.frameworks) CoreServices; + }; + + buildBazelPackage = callPackage ../build-support/build-bazel-package { }; + + bear = callPackage ../development/tools/build-managers/bear { }; + + bingrep = callPackage ../development/tools/analysis/bingrep { }; + + binutils-unwrapped = callPackage ../development/tools/misc/binutils { + autoreconfHook = if targetPlatform.isiOS then autoreconfHook269 else autoreconfHook; + # FHS sys dirs presumably only have stuff for the build platform + noSysDirs = (stdenv.targetPlatform != stdenv.hostPlatform) || noSysDirs; + }; + binutils = wrapBintoolsWith { + bintools = binutils-unwrapped; + }; + binutils_nogold = lowPrio (wrapBintoolsWith { + bintools = binutils-unwrapped.override { + gold = false; + }; + }); + binutilsNoLibc = wrapBintoolsWith { + bintools = binutils-unwrapped; + libc = preLibcCrossHeaders; + }; + + # Here we select the default bintools implementations to be used. Note when + # cross compiling these are used not for this stage but the *next* stage. + # That is why we choose using this stage's target platform / next stage's + # host platform. + # + # Because this is the *next* stages choice, it's a bit non-modular to put + # here. In theory, bootstraping is supposed to not be a chain but at tree, + # where each stage supports many "successor" stages, like multiple possible + # futures. We don't have a better alternative, but with this downside in + # mind, please be judicious when using this attribute. E.g. for building + # things in *this* stage you should use probably `stdenv.cc.bintools` (from a + # default or alternate `stdenv`), at build time, and try not to "force" a + # specific bintools at runtime at all. + # + # In other words, try to only use this in wrappers, and only use those + # wrappers from the next stage. + bintools-unwrapped = let + inherit (stdenv.targetPlatform) linker; + in if linker == "lld" then llvmPackages.bintools-unwrapped + else if linker == "cctools" then darwin.binutils-unwrapped + else if linker == "bfd" then binutils-unwrapped + else if linker == "gold" then binutils-unwrapped + else null; + bintoolsNoLibc = wrapBintoolsWith { + bintools = bintools-unwrapped; + libc = preLibcCrossHeaders; + }; + bintools = wrapBintoolsWith { + bintools = bintools-unwrapped; + }; + + bison = callPackage ../development/tools/parsing/bison { }; + + bisoncpp = callPackage ../development/tools/parsing/bisonc++ { }; + + black = with python3Packages; toPythonApplication black; + + blackfire = callPackage ../development/tools/misc/blackfire { }; + + black-macchiato = with python3Packages; toPythonApplication black-macchiato; + + blackmagic = callPackage ../development/embedded/blackmagic { }; + + bloaty = callPackage ../development/tools/bloaty { }; + + bloomrpc = callPackage ../development/web/bloomrpc { }; + + bloop = callPackage ../development/tools/build-managers/bloop { }; + + bossa = callPackage ../development/embedded/bossa { + wxGTK = wxGTK30; + }; + + buck = callPackage ../development/tools/build-managers/buck { }; + + build2 = callPackage ../development/tools/build-managers/build2 { + # Break cycle by using self-contained toolchain for bootstrapping + build2 = buildPackages.callPackage ../development/tools/build-managers/build2/bootstrap.nix { }; + }; + + # Dependency of build2, must also break cycle for this + libbutl = callPackage ../development/libraries/libbutl { + build2 = build2.bootstrap; + }; + + libbpkg = callPackage ../development/libraries/libbpkg { }; + libodb = callPackage ../development/libraries/libodb { }; + libodb-sqlite = callPackage ../development/libraries/libodb-sqlite { }; + bdep = callPackage ../development/tools/build-managers/build2/bdep.nix { }; + bpkg = callPackage ../development/tools/build-managers/build2/bpkg.nix { }; + + buildkite-agent = callPackage ../development/tools/continuous-integration/buildkite-agent { }; + + buildkite-agent-metrics = callPackage ../servers/monitoring/buildkite-agent-metrics { }; + + buildkite-cli = callPackage ../development/tools/continuous-integration/buildkite-cli { }; + + bump = callPackage ../development/tools/github/bump { }; + + libbpf = callPackage ../os-specific/linux/libbpf { }; + + bpftools = callPackage ../os-specific/linux/bpftools { }; + + bcc = callPackage ../os-specific/linux/bcc { + python = pkgs.python3; + }; + + bpftrace = callPackage ../os-specific/linux/bpftrace { }; + + bpm-tools = callPackage ../tools/audio/bpm-tools { }; + + byacc = callPackage ../development/tools/parsing/byacc { }; + + cadre = callPackage ../development/tools/cadre { }; + + cask = callPackage ../development/tools/cask { }; + + cbrowser = callPackage ../development/tools/misc/cbrowser { }; + + cc-tool = callPackage ../development/embedded/cc-tool { }; + + ccache = callPackage ../development/tools/misc/ccache { }; + + # Wrapper that works as gcc or g++ + # It can be used by setting in nixpkgs config like this, for example: + # replaceStdenv = { pkgs }: pkgs.ccacheStdenv; + # But if you build in chroot, you should have that path in chroot + # If instantiated directly, it will use $HOME/.ccache as the cache directory, + # i.e. /homeless-shelter/.ccache using the Nix daemon. + # You should specify a different directory using an override in + # packageOverrides to set extraConfig. + # + # Example using Nix daemon (i.e. multiuser Nix install or on NixOS): + # packageOverrides = pkgs: { + # ccacheWrapper = pkgs.ccacheWrapper.override { + # extraConfig = '' + # export CCACHE_COMPRESS=1 + # export CCACHE_DIR=/var/cache/ccache + # export CCACHE_UMASK=007 + # ''; + # }; + # You can use a different directory, but whichever directory you choose + # should be owned by user root, group nixbld with permissions 0770. + ccacheWrapper = makeOverridable ({ extraConfig, cc }: + cc.override { + cc = ccache.links { + inherit extraConfig; + unwrappedCC = cc.cc; + }; + }) { + extraConfig = ""; + inherit (stdenv) cc; + }; + + ccacheStdenv = lowPrio (makeOverridable ({ stdenv, ... } @ extraArgs: + overrideCC stdenv (buildPackages.ccacheWrapper.override ({ + inherit (stdenv) cc; + } // lib.optionalAttrs (builtins.hasAttr "extraConfig" extraArgs) { + extraConfig = extraArgs.extraConfig; + }))) { + inherit stdenv; + }); + + cccc = callPackage ../development/tools/analysis/cccc { }; + + cgdb = callPackage ../development/tools/misc/cgdb { }; + + cheat = callPackage ../applications/misc/cheat { }; + + chefdk = callPackage ../development/tools/chefdk { }; + + matter-compiler = callPackage ../development/compilers/matter-compiler {}; + + cfr = callPackage ../development/tools/java/cfr { }; + + cfripper = callPackage ../tools/security/cfripper { }; + + checkra1n = callPackage ../development/mobile/checkra1n { }; + + checkstyle = callPackage ../development/tools/analysis/checkstyle { }; + + chromedriver = callPackage ../development/tools/selenium/chromedriver { }; + + chromium-xorg-conf = callPackage ../os-specific/linux/chromium-xorg-conf { }; + + chrpath = callPackage ../development/tools/misc/chrpath { }; + + chruby = callPackage ../development/tools/misc/chruby { rubies = null; }; + + chruby-fish = callPackage ../development/tools/misc/chruby-fish { }; + + cl-launch = callPackage ../development/tools/misc/cl-launch {}; + + cloud-nuke = callPackage ../development/tools/cloud-nuke { }; + + cloudcompare = libsForQt5.callPackage ../applications/graphics/cloudcompare {}; + + cloudfoundry-cli = callPackage ../applications/networking/cluster/cloudfoundry-cli { }; + + clpm = callPackage ../development/tools/clpm {}; + + coan = callPackage ../development/tools/analysis/coan { }; + + compile-daemon = callPackage ../development/tools/compile-daemon { }; + + complexity = callPackage ../development/tools/misc/complexity { }; + + conan = callPackage ../development/tools/build-managers/conan { }; + + cookiecutter = with python3Packages; toPythonApplication cookiecutter; + + corrosion = callPackage ../development/tools/build-managers/corrosion { }; + + corundum = callPackage ../development/tools/corundum { }; + + confluent-platform = callPackage ../servers/confluent-platform {}; + + ctags = callPackage ../development/tools/misc/ctags { }; + + ctagsWrapped = callPackage ../development/tools/misc/ctags/wrapped.nix {}; + + ctodo = callPackage ../applications/misc/ctodo { }; + + cubiomes-viewer = libsForQt5.callPackage ../applications/misc/cubiomes-viewer { }; + + ctmg = callPackage ../tools/security/ctmg { }; + + cmake = libsForQt5.callPackage ../development/tools/build-managers/cmake { + inherit (darwin.apple_sdk.frameworks) SystemConfiguration; + }; + + cmakeMinimal = libsForQt5.callPackage ../development/tools/build-managers/cmake { + isBootstrap = true; + # There is no SystemConfiguration in bootstrapTools, so this version gets + # patched to remove that dependency. + SystemConfiguration = null; + }; + + cmakeCurses = cmake.override { useNcurses = true; }; + + cmakeWithGui = cmakeCurses.override { withQt5 = true; }; + + cmake-format = python3Packages.callPackage ../development/tools/cmake-format { }; + + cmake-language-server = python3Packages.callPackage ../development/tools/cmake-language-server { + inherit cmake; + }; + + # Does not actually depend on Qt 5 + inherit (plasma5Packages) extra-cmake-modules; + + coccinelle = callPackage ../development/tools/misc/coccinelle { }; + + cpptest = callPackage ../development/libraries/cpptest { }; + + cppi = callPackage ../development/tools/misc/cppi { }; + + cproto = callPackage ../development/tools/misc/cproto { }; + + cflow = callPackage ../development/tools/misc/cflow { }; + + cov-build = callPackage ../development/tools/analysis/cov-build {}; + + cppcheck = callPackage ../development/tools/analysis/cppcheck { }; + + cpplint = callPackage ../development/tools/analysis/cpplint { }; + + ccls = callPackage ../development/tools/misc/ccls { + llvmPackages = llvmPackages_latest; + }; + + credstash = with python3Packages; toPythonApplication credstash; + + creduce = callPackage ../development/tools/misc/creduce { + inherit (llvmPackages_8) llvm libclang; + }; + + cscope = callPackage ../development/tools/misc/cscope { }; + + csmith = callPackage ../development/tools/misc/csmith { }; + + csslint = callPackage ../development/web/csslint { }; + + css-html-js-minify = with python3Packages; toPythonApplication css-html-js-minify; + + cvehound = callPackage ../development/tools/analysis/cvehound { }; + + cvise = python3Packages.callPackage ../development/tools/misc/cvise { + # cvise keeps up with fresh llvm releases and supports wide version range + inherit (llvmPackages_latest) llvm libclang; + }; + + cwltool = callPackage ../applications/science/misc/cwltool { }; + + dprint = callPackage ../development/tools/dprint { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + libcxx = llvmPackages.libcxx; + libcxxabi = llvmPackages.libcxxabi; + + librarian-puppet-go = callPackage ../development/tools/librarian-puppet-go { }; + + libgcc = callPackage ../development/libraries/gcc/libgcc { + stdenvNoLibs = gccStdenvNoLibs; # cannot be built with clang it seems + }; + + # This is for e.g. LLVM libraries on linux. + gccForLibs = + if stdenv.targetPlatform == stdenv.hostPlatform && targetPackages.stdenv.cc.isGNU + # Can only do this is in the native case, otherwise we might get infinite + # recursion if `targetPackages.stdenv.cc.cc` itself uses `gccForLibs`. + then targetPackages.stdenv.cc.cc + else gcc.cc; + + libstdcxx5 = callPackage ../development/libraries/gcc/libstdc++/5.nix { }; + + libsigrok = callPackage ../development/tools/libsigrok { + python = python3; + }; + # old version: + libsigrok_0_3 = libsigrok.override { + python = python3; + version = "0.3.0"; + sha256 = "0l3h7zvn3w4c1b9dgvl3hirc4aj1csfkgbk87jkpl7bgl03nk4j3"; + doInstallCheck = false; + }; + + libsigrokdecode = callPackage ../development/tools/libsigrokdecode { + python3 = python38; + }; + + # special forks used for dsview + libsigrok4dsl = callPackage ../applications/science/electronics/dsview/libsigrok4dsl.nix { }; + libsigrokdecode4dsl = callPackage ../applications/science/electronics/dsview/libsigrokdecode4dsl.nix { }; + + cli11 = callPackage ../development/tools/misc/cli11 { }; + + datree = callPackage ../development/tools/datree { }; + + dcadec = callPackage ../development/tools/dcadec { }; + + dejagnu = callPackage ../development/tools/misc/dejagnu { }; + + devd = callPackage ../development/tools/devd { }; + + devtodo = callPackage ../development/tools/devtodo { }; + + dfeet = callPackage ../development/tools/misc/d-feet { }; + + dfu-programmer = callPackage ../development/tools/misc/dfu-programmer { }; + + dfu-util = callPackage ../development/tools/misc/dfu-util { }; + + ddd = callPackage ../development/tools/misc/ddd { }; + + lattice-diamond = callPackage ../development/embedded/fpga/lattice-diamond { }; + + direvent = callPackage ../development/tools/misc/direvent { }; + + distcc = callPackage ../development/tools/misc/distcc { + libiberty_static = libiberty.override { staticBuild = true; }; + }; + + # distccWrapper: wrapper that works as gcc or g++ + # It can be used by setting in nixpkgs config like this, for example: + # replaceStdenv = { pkgs }: pkgs.distccStdenv; + # But if you build in chroot, a default 'nix' will create + # a new net namespace, and won't have network access. + # You can use an override in packageOverrides to set extraConfig: + # packageOverrides = pkgs: { + # distccWrapper = pkgs.distccWrapper.override { + # extraConfig = '' + # DISTCC_HOSTS="myhost1 myhost2" + # ''; + # }; + # + distccWrapper = makeOverridable ({ extraConfig ? "" }: + wrapCC (distcc.links extraConfig)) {}; + distccStdenv = lowPrio (overrideCC stdenv buildPackages.distccWrapper); + + distccMasquerade = if stdenv.isDarwin + then null + else callPackage ../development/tools/misc/distcc/masq.nix { + gccRaw = gcc.cc; + binutils = binutils; + }; + + dive = callPackage ../development/tools/dive { }; + + doclifter = callPackage ../development/tools/misc/doclifter { }; + + docutils = with python3Packages; toPythonApplication docutils; + + doctl = callPackage ../development/tools/doctl { }; + + doit = with python3Packages; toPythonApplication doit; + + dolt = callPackage ../servers/sql/dolt { }; + + dot2tex = with python3.pkgs; toPythonApplication dot2tex; + + doxygen = callPackage ../development/tools/documentation/doxygen { + qt5 = null; + inherit (darwin.apple_sdk.frameworks) CoreServices; + }; + + doxygen_gui = lowPrio (doxygen.override { inherit qt5; }); + + drake = callPackage ../development/tools/build-managers/drake { }; + + drip = callPackage ../development/tools/drip { }; + + drm_info = callPackage ../development/tools/drm_info { }; + + drush = callPackage ../development/tools/misc/drush { }; + + dura = callPackage ../development/tools/misc/dura { }; + + dwfv = callPackage ../applications/science/electronics/dwfv { }; + + dwz = callPackage ../development/tools/misc/dwz { }; + + easypdkprog = callPackage ../development/embedded/easypdkprog { }; + + editorconfig-checker = callPackage ../development/tools/misc/editorconfig-checker { }; + + editorconfig-core-c = callPackage ../development/tools/misc/editorconfig-core-c { }; + + edb = libsForQt5.callPackage ../development/tools/misc/edb { }; + + eggdbus = callPackage ../development/tools/misc/eggdbus { }; + + effitask = callPackage ../applications/misc/effitask { }; + + efm-langserver = callPackage ../development/tools/efm-langserver { }; + + egypt = callPackage ../development/tools/analysis/egypt { }; + + elf2uf2-rs = callPackage ../development/embedded/elf2uf2-rs { }; + + elfinfo = callPackage ../development/tools/misc/elfinfo { }; + + elfkickers = callPackage ../development/tools/misc/elfkickers { }; + + elfutils = callPackage ../development/tools/misc/elfutils { }; + + eliot-tree = callPackage ../development/tools/eliot-tree { }; + + emma = callPackage ../development/tools/analysis/emma { }; + + ent-go = callPackage ../development/tools/ent { }; + + epm = callPackage ../development/tools/misc/epm { }; + + eresi = callPackage ../development/tools/analysis/eresi { }; + + evmdis = callPackage ../development/tools/analysis/evmdis { }; + + eweb = callPackage ../development/tools/literate-programming/eweb { }; + + funnelweb = callPackage ../development/tools/literate-programming/funnelweb { }; + + Literate = callPackage ../development/tools/literate-programming/Literate { }; + + md-tangle = callPackage ../development/tools/literate-programming/md-tangle { }; + + # NOTE: Override and set useIcon = false to use Awk instead of Icon. + noweb = callPackage ../development/tools/literate-programming/noweb { }; + + nuweb = callPackage ../development/tools/literate-programming/nuweb { + tex = texlive.combined.scheme-medium; + }; + + eztrace = callPackage ../development/tools/profiling/EZTrace { }; + + faas-cli = callPackage ../development/tools/faas-cli { }; + + findbugs = callPackage ../development/tools/analysis/findbugs { }; + + findnewest = callPackage ../development/tools/misc/findnewest { }; + + flootty = callPackage ../development/tools/flootty { }; + + fffuu = haskell.lib.compose.justStaticExecutables (haskellPackages.callPackage ../tools/misc/fffuu { }); + + ffuf = callPackage ../tools/security/ffuf { }; + + flow = callPackage ../development/tools/analysis/flow { + inherit (darwin.apple_sdk.frameworks) CoreServices; + ocamlPackages = ocaml-ng.ocamlPackages_4_12; + }; + + fly = callPackage ../development/tools/continuous-integration/fly { }; + + foreman = callPackage ../tools/system/foreman { }; + goreman = callPackage ../tools/system/goreman { }; + + fprettify = callPackage ../development/tools/fprettify { }; + + fortran-language-server = python3.pkgs.callPackage ../development/tools/fortran-language-server { }; + + framac = callPackage ../development/tools/analysis/frama-c { }; + + frame = callPackage ../development/libraries/frame { }; + + frp = callPackage ../tools/networking/frp { }; + + fsatrace = callPackage ../development/tools/misc/fsatrace { }; + + fswatch = callPackage ../development/tools/misc/fswatch { + inherit (darwin.apple_sdk.frameworks) CoreServices; + autoreconfHook = buildPackages.autoreconfHook269; + }; + + fsearch = callPackage ../tools/misc/fsearch { }; + + fujprog = callPackage ../development/embedded/fpga/fujprog { + inherit (darwin.apple_sdk.frameworks) IOKit; + }; + + fundoc = callPackage ../development/tools/fundoc { }; + + gede = libsForQt5.callPackage ../development/tools/misc/gede { }; + + gdbgui = python3Packages.callPackage ../development/tools/misc/gdbgui { }; + + pmd = callPackage ../development/tools/analysis/pmd { + openjdk = openjdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + + pmdk = callPackage ../development/libraries/pmdk { }; + + jdepend = callPackage ../development/tools/analysis/jdepend { + jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + + flex_2_5_35 = callPackage ../development/tools/parsing/flex/2.5.35.nix { }; + flex = callPackage ../development/tools/parsing/flex { }; + + flexibee = callPackage ../applications/office/flexibee { }; + + flexcpp = callPackage ../development/tools/parsing/flexc++ { }; + + geis = callPackage ../development/libraries/geis { + inherit (xorg) libX11 libXext libXi libXtst; + }; + + gi-docgen = callPackage ../development/tools/documentation/gi-docgen { }; + + git-aggregator = callPackage ../development/tools/git-aggregator { }; + + github-release = callPackage ../development/tools/github/github-release { }; + + global = callPackage ../development/tools/misc/global { }; + + gnatcoll-db2ada = callPackage ../development/libraries/ada/gnatcoll/db.nix { + component = "gnatcoll_db2ada"; + }; + + gnatinspect = callPackage ../development/libraries/ada/gnatcoll/db.nix { + component = "gnatinspect"; + }; + + gnome-doc-utils = callPackage ../development/tools/documentation/gnome-doc-utils {}; + + gnome-desktop-testing = callPackage ../development/tools/gnome-desktop-testing {}; + + gnome-firmware-updater = callPackage ../applications/misc/gnome-firmware-updater {}; + + gnome-usage = callPackage ../applications/misc/gnome-usage {}; + + gnome-inform7 = callPackage ../applications/editors/gnome-inform7 { }; + + gnome-latex = callPackage ../applications/editors/gnome-latex { }; + + gnome-network-displays = callPackage ../applications/networking/gnome-network-displays { }; + + gnome-multi-writer = callPackage ../applications/misc/gnome-multi-writer {}; + + gnome-online-accounts = callPackage ../development/libraries/gnome-online-accounts { }; + + gnome-video-effects = callPackage ../development/libraries/gnome-video-effects { }; + + gnum4 = callPackage ../development/tools/misc/gnum4 { }; + m4 = gnum4; + + gnumake = callPackage ../development/tools/build-managers/gnumake { }; + gnumake42 = callPackage ../development/tools/build-managers/gnumake/4.2 { }; + + gnustep = recurseIntoAttrs (callPackage ../desktops/gnustep {}); + + gob2 = callPackage ../development/tools/misc/gob2 { }; + + gocd-agent = callPackage ../development/tools/continuous-integration/gocd-agent { }; + + gocd-server = callPackage ../development/tools/continuous-integration/gocd-server { }; + + gotify-server = callPackage ../servers/gotify { }; + + gotty = callPackage ../servers/gotty { }; + + gprbuild-boot = callPackage ../development/tools/build-managers/gprbuild/boot.nix { }; + + gprbuild = callPackage ../development/tools/build-managers/gprbuild { }; + + gputils = callPackage ../development/embedded/gputils { }; + + gpuvis = callPackage ../development/tools/misc/gpuvis { }; + + gradle-packages = import ../development/tools/build-managers/gradle { + inherit jdk8 jdk11 jdk17; + }; + gradleGen = gradle-packages.gen; + gradle_4 = callPackage gradle-packages.gradle_4 { }; + gradle_5 = callPackage gradle-packages.gradle_5 { }; + gradle_6 = callPackage gradle-packages.gradle_6 { }; + gradle_7 = callPackage gradle-packages.gradle_7 { }; + gradle = gradle_7; + + grcov = callPackage ../development/tools/misc/grcov { }; + + gperf = callPackage ../development/tools/misc/gperf { }; + # 3.1 changed some parameters from int to size_t, leading to mismatches. + gperf_3_0 = callPackage ../development/tools/misc/gperf/3.0.x.nix { }; + + grail = callPackage ../development/libraries/grail { }; + + graphene-hardened-malloc = callPackage ../development/libraries/graphene-hardened-malloc { }; + + graphene = callPackage ../development/libraries/graphene { }; + + gtk-doc = callPackage ../development/tools/documentation/gtk-doc { }; + + gtkdialog = callPackage ../development/tools/misc/gtkdialog { }; + + crowdin-cli = callPackage ../tools/text/crowdin-cli { }; + + gtranslator = callPackage ../tools/text/gtranslator { }; + + guff = callPackage ../tools/graphics/guff { }; + + guile-lint = callPackage ../development/tools/guile/guile-lint { + guile = guile_1_8; + }; + + gwrap = callPackage ../development/tools/guile/g-wrap { + guile = guile_2_0; + }; + + hadolint = haskell.lib.compose.justStaticExecutables haskellPackages.hadolint; + + halfempty = callPackage ../development/tools/halfempty {}; + + hcloud = callPackage ../development/tools/hcloud { }; + + help2man = callPackage ../development/tools/misc/help2man { }; + + heroku = callPackage ../development/tools/heroku { }; + + ccloud-cli = callPackage ../development/tools/ccloud-cli { }; + + confluent-cli = callPackage ../development/tools/confluent-cli { }; + + htmlunit-driver = callPackage ../development/tools/selenium/htmlunit-driver { }; + + hyenae = callPackage ../tools/networking/hyenae { }; + + iaca_2_1 = callPackage ../development/tools/iaca/2.1.nix { }; + iaca_3_0 = callPackage ../development/tools/iaca/3.0.nix { }; + iaca = iaca_3_0; + + icestorm = callPackage ../development/embedded/fpga/icestorm { }; + + icmake = callPackage ../development/tools/build-managers/icmake { }; + + iconnamingutils = callPackage ../development/tools/misc/icon-naming-utils { }; + + ikos = callPackage ../development/tools/analysis/ikos { + inherit (llvmPackages_9) stdenv clang llvm; + }; + + img = callPackage ../development/tools/img { }; + + include-what-you-use = callPackage ../development/tools/analysis/include-what-you-use { + llvmPackages = llvmPackages_13; + }; + + indent = callPackage ../development/tools/misc/indent { }; + + inotify-tools = callPackage ../development/tools/misc/inotify-tools { }; + + intel-gpu-tools = callPackage ../development/tools/misc/intel-gpu-tools { }; + + insomnia = callPackage ../development/web/insomnia { }; + + iozone = callPackage ../development/tools/misc/iozone { }; + + itstool = callPackage ../development/tools/misc/itstool { }; + + jam = callPackage ../development/tools/build-managers/jam { }; + + ftjam = callPackage ../development/tools/build-managers/jam/ftjam.nix { }; + + javacc = callPackage ../development/tools/parsing/javacc { + jdk = jdk8; + }; + + jbake = callPackage ../development/tools/jbake { }; + + jbang = callPackage ../development/tools/jbang { }; + + jikespg = callPackage ../development/tools/parsing/jikespg { }; + + jenkins = callPackage ../development/tools/continuous-integration/jenkins { }; + + jenkins-job-builder = with python3Packages; toPythonApplication jenkins-job-builder; + + jpexs = callPackage ../development/tools/jpexs { }; + + k0sctl = callPackage ../applications/networking/cluster/k0sctl { }; + + k2tf = callPackage ../development/tools/misc/k2tf { }; + + kafka-delta-ingest = callPackage ../development/tools/kafka-delta-ingest { }; + + kati = callPackage ../development/tools/build-managers/kati { }; + + kcat = callPackage ../development/tools/kcat { }; + + kcc = libsForQt5.callPackage ../applications/graphics/kcc { }; + + kconfig-frontends = callPackage ../development/tools/misc/kconfig-frontends { + gperf = gperf_3_0; + }; + + kcgi = callPackage ../development/web/kcgi { }; + + kcov = callPackage ../development/tools/analysis/kcov { }; + + kind = callPackage ../development/tools/kind { }; + + khronos-ocl-icd-loader = callPackage ../development/libraries/khronos-ocl-icd-loader { }; + + ko = callPackage ../development/tools/ko { }; + + konstraint = callPackage ../development/tools/konstraint { }; + + krankerl = callPackage ../development/tools/krankerl { }; + + krew = callPackage ../development/tools/krew { }; + + kube-aws = callPackage ../development/tools/kube-aws { }; + + kube-hunter = callPackage ../tools/security/kube-hunter { }; + + kubeaudit = callPackage ../tools/security/kubeaudit { }; + + kubectx = callPackage ../development/tools/kubectx { }; + + kube-linter = callPackage ../development/tools/kube-linter { }; + + kube-prompt = callPackage ../development/tools/kube-prompt { }; + + kubei = callPackage ../tools/security/kubei { }; + + kubemq-community = callPackage ../servers/kubemq-community { }; + + kubeone = callPackage ../applications/networking/cluster/kubeone { }; + + kubeprompt = callPackage ../development/tools/kubeprompt { }; + + kubescape = callPackage ../tools/security/kubescape { }; + + kubesec = callPackage ../tools/security/kubesec { }; + + kubespy = callPackage ../applications/networking/cluster/kubespy { }; + + kubicorn = callPackage ../development/tools/kubicorn { }; + + kubie = callPackage ../development/tools/kubie { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + kustomize = callPackage ../development/tools/kustomize { }; + + kustomize_3 = callPackage ../development/tools/kustomize/3.nix { }; + + kustomize-sops = callPackage ../development/tools/kustomize/kustomize-sops.nix { }; + + ktlint = callPackage ../development/tools/ktlint { }; + + kythe = callPackage ../development/tools/kythe { }; + + lazygit = callPackage ../development/tools/lazygit { }; + + laminar = callPackage ../development/tools/continuous-integration/laminar { }; + + lcov = callPackage ../development/tools/analysis/lcov { }; + + leiningen = callPackage ../development/tools/build-managers/leiningen { }; + + lemon = callPackage ../development/tools/parsing/lemon { }; + + lenmus = callPackage ../applications/misc/lenmus { }; + + libtool = libtool_2; + + libtool_1_5 = callPackage ../development/tools/misc/libtool { }; + + libtool_2 = callPackage ../development/tools/misc/libtool/libtool2.nix { }; + + libwhich = callPackage ../development/tools/misc/libwhich { }; + + linuxkit = callPackage ../development/tools/misc/linuxkit { }; + + lit = callPackage ../development/tools/misc/lit { }; + + litecli = callPackage ../development/tools/database/litecli {}; + + litestream = callPackage ../development/tools/database/litestream {}; + + lsof = callPackage ../development/tools/misc/lsof { }; + + ltrace = callPackage ../development/tools/misc/ltrace { }; + + lttng-tools = callPackage ../development/tools/misc/lttng-tools { }; + + lttng-ust = callPackage ../development/tools/misc/lttng-ust { }; + + lttng-ust_2_12 = callPackage ../development/tools/misc/lttng-ust/2.12.nix { }; + + lttv = callPackage ../development/tools/misc/lttv { }; + + luaformatter = callPackage ../development/tools/luaformatter + (lib.optionalAttrs (stdenv.cc.isClang && lib.versionOlder stdenv.cc.version "9") { + stdenv = overrideCC stdenv llvmPackages_9.clang; + }); + + malt = callPackage ../development/tools/profiling/malt {}; + + massif-visualizer = libsForQt5.callPackage ../development/tools/analysis/massif-visualizer { }; + + mastodon-archive = callPackage ../tools/backup/mastodon-archive { }; + + maven = maven3; + maven3 = callPackage ../development/tools/build-managers/apache-maven { }; + + mavproxy = python3Packages.callPackage ../applications/science/robotics/mavproxy { }; + + go-md2man = callPackage ../development/tools/misc/go-md2man {}; + + mage = callPackage ../development/tools/build-managers/mage { }; + + mbed-cli = callPackage ../development/tools/mbed-cli { }; + + mdl = callPackage ../development/tools/misc/mdl { }; + + python-language-server = callPackage ../development/dotnet-modules/python-language-server { }; + + minify = callPackage ../development/web/minify { }; + + minizinc = callPackage ../development/tools/minizinc { }; + minizincide = qt514.callPackage ../development/tools/minizinc/ide.nix { }; + + mkcert = callPackage ../development/tools/misc/mkcert { }; + + mkdocs = with python3Packages; toPythonApplication mkdocs; + + mmtf-cpp = callPackage ../development/libraries/science/chemistry/mmtf-cpp { }; + + mockgen = callPackage ../development/tools/mockgen { }; + + modd = callPackage ../development/tools/modd { }; + + mold = callPackage ../development/tools/mold { + stdenv = llvmPackages_latest.stdenv; + }; + + msgpack-tools = callPackage ../development/tools/msgpack-tools { }; + + msgpuck = callPackage ../development/libraries/msgpuck { }; + + msitools = callPackage ../development/tools/misc/msitools { }; + + haskell-ci = haskell.lib.compose.justStaticExecutables haskellPackages.haskell-ci; + haskell-ci-unstable = lowPrio (haskell.lib.compose.justStaticExecutables haskellPackages.haskell-ci-unstable); + + neoload = callPackage ../development/tools/neoload { + licenseAccepted = (config.neoload.accept_license or false); + fontsConf = makeFontsConf { + fontDirectories = [ + dejavu_fonts.minimal + ]; + }; + }; + + nailgun = callPackage ../development/tools/nailgun { }; + + ninja = callPackage ../development/tools/build-managers/ninja { }; + + nimbo = with python3Packages; callPackage ../applications/misc/nimbo { }; + + gn = callPackage ../development/tools/build-managers/gn { }; + gn1924 = callPackage ../development/tools/build-managers/gn/rev1924.nix { }; + + nixbang = callPackage ../development/tools/misc/nixbang { + pythonPackages = python3Packages; + }; + + nix-build-uncached = callPackage ../development/tools/misc/nix-build-uncached { }; + + nexus = callPackage ../development/tools/repository-managers/nexus { + jre_headless = jre8_headless; + }; + + nwjs = callPackage ../development/tools/nwjs { }; + + nwjs-sdk = callPackage ../development/tools/nwjs { + sdk = true; + }; + + # only kept for nixui, see https://github.com/matejc/nixui/issues/27 + nwjs_0_12 = callPackage ../development/tools/node-webkit/nw12.nix { + gconf = gnome2.GConf; + }; + + nrfutil = callPackage ../development/tools/misc/nrfutil { }; + + obelisk = callPackage ../development/tools/ocaml/obelisk { menhir = ocamlPackages.menhir; }; + + obuild = callPackage ../development/tools/ocaml/obuild { }; + + omake = callPackage ../development/tools/ocaml/omake { }; + + omniorb = callPackage ../development/tools/omniorb { }; + + openai = with python3Packages; toPythonApplication openai; + + opengrok = callPackage ../development/tools/misc/opengrok { }; + + openocd = callPackage ../development/embedded/openocd { }; + + oprofile = callPackage ../development/tools/profiling/oprofile { + libiberty_static = libiberty.override { staticBuild = true; }; + }; + + pactorio = callPackage ../development/tools/pactorio { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + pahole = callPackage ../development/tools/misc/pahole {}; + + panopticon = callPackage ../development/tools/analysis/panopticon {}; + + parinfer-rust = callPackage ../development/tools/parinfer-rust {}; + + parse-cli-bin = callPackage ../development/tools/parse-cli-bin { }; + + patchelf = callPackage ../development/tools/misc/patchelf { }; + patchelf_0_9 = callPackage ../development/tools/misc/patchelf/0.9.nix { }; + + patchelfUnstable = lowPrio (callPackage ../development/tools/misc/patchelf/unstable.nix { }); + + pax-rs = callPackage ../development/tools/pax-rs { }; + + perfect-hash = callPackage ../development/tools/misc/perfect-hash { }; + + peg = callPackage ../development/tools/parsing/peg { }; + + pgcli = pkgs.python3Packages.pgcli; + + phantomjs2 = libsForQt514.callPackage ../development/tools/phantomjs2 { }; + + picotool = callPackage ../development/tools/picotool { }; + + pmccabe = callPackage ../development/tools/misc/pmccabe { }; + + pkgconf-unwrapped = callPackage ../development/tools/misc/pkgconf {}; + pkgconf = callPackage ../build-support/pkg-config-wrapper { + pkg-config = pkgconf-unwrapped; + baseBinName = "pkgconf"; + }; + libpkgconf = pkgconf-unwrapped; + + pkg-config-unwrapped = callPackage ../development/tools/misc/pkg-config { }; + pkg-config = callPackage ../build-support/pkg-config-wrapper { + pkg-config = pkg-config-unwrapped; + }; + + pkg-configUpstream = lowPrio (pkg-config.override (old: { + pkg-config = old.pkg-config.override { + vanilla = true; + }; + })); + + polar = callPackage ../tools/misc/polar { }; + + inherit (nodePackages) postcss-cli; + + postiats-utilities = callPackage ../development/tools/postiats-utilities {}; + + postman = callPackage ../development/web/postman {}; + + pprof = callPackage ../development/tools/profiling/pprof { }; + + pqrs = callPackage ../development/tools/pqrs { }; + + pyprof2calltree = with python3Packages; toPythonApplication pyprof2calltree; + + prelink = callPackage ../development/tools/misc/prelink { }; + + premake3 = callPackage ../development/tools/misc/premake/3.nix { }; + + premake4 = callPackage ../development/tools/misc/premake { }; + + premake5 = callPackage ../development/tools/misc/premake/5.nix { + inherit (darwin.apple_sdk.frameworks) Foundation; + }; + + premake = premake4; + + privacyidea = callPackage ../applications/misc/privacyidea { }; + + procodile = callPackage ../tools/system/procodile { }; + + pry = callPackage ../development/tools/pry { }; + + pup = callPackage ../development/tools/pup { }; + + puppet-bolt = callPackage ../tools/admin/puppet/puppet-bolt { }; + + puppet-lint = callPackage ../development/tools/puppet/puppet-lint { }; + + puppeteer-cli = callPackage ../tools/graphics/puppeteer-cli {}; + + pyrseas = callPackage ../development/tools/database/pyrseas { }; + + pycritty = with python3Packages; toPythonApplication pycritty; + + pylint-exit = callPackage ../development/tools/pylint-exit { }; + + qtcreator = libsForQt5.callPackage ../development/tools/qtcreator { + inherit (linuxPackages) perf; + }; + + qxmledit = libsForQt5.callPackage ../applications/editors/qxmledit {} ; + + r10k = callPackage ../tools/system/r10k { }; + + radare2 = callPackage ../development/tools/analysis/radare2 ({ + lua = lua5; + } // (config.radare or {})); + + ran = callPackage ../servers/http/ran { }; + + retry = callPackage ../tools/system/retry { }; + + rizin = pkgs.callPackage ../development/tools/analysis/rizin { }; + + cutter = libsForQt515.callPackage ../development/tools/analysis/rizin/cutter.nix { }; + + ragel = ragelStable; + + randoop = callPackage ../development/tools/analysis/randoop { }; + + inherit (callPackages ../development/tools/parsing/ragel { + tex = texlive.combined.scheme-small; + }) ragelStable ragelDev; + + hammer = callPackage ../development/tools/parsing/hammer { }; + + rdocker = callPackage ../development/tools/rdocker { }; + + redis-dump = callPackage ../development/tools/redis-dump { }; + + redo = callPackage ../development/tools/build-managers/redo { }; + + redo-apenwarr = callPackage ../development/tools/build-managers/redo-apenwarr { }; + + redo-c = callPackage ../development/tools/build-managers/redo-c { }; + + redo-sh = callPackage ../development/tools/build-managers/redo-sh { }; + + regclient = callPackage ../development/tools/regclient { }; + inherit (regclient) regbot regctl regsync; + + reno = callPackage ../development/tools/reno { }; + + re2c = callPackage ../development/tools/parsing/re2c { }; + + remake = callPackage ../development/tools/build-managers/remake { }; + + replace-secret = callPackage ../build-support/replace-secret/replace-secret.nix { }; + + replacement = callPackage ../development/tools/misc/replacement { }; + + retdec = callPackage ../development/tools/analysis/retdec { + stdenv = gcc8Stdenv; + }; + retdec-full = retdec.override { + withPEPatterns = true; + }; + + reviewdog = callPackage ../development/tools/misc/reviewdog { }; + + rman = callPackage ../development/tools/misc/rman { }; + + rnix-lsp = callPackage ../development/tools/rnix-lsp { }; + + rnginline = with python3Packages; toPythonApplication rnginline; + + rolespec = callPackage ../development/tools/misc/rolespec { }; + + rr = callPackage ../development/tools/analysis/rr { }; + rr-unstable = callPackage ../development/tools/analysis/rr/unstable.nix { }; # This is a temporary attribute, please see the corresponding file for details. + + rufo = callPackage ../development/tools/rufo { }; + + samurai = callPackage ../development/tools/build-managers/samurai { }; + + saleae-logic = callPackage ../development/tools/misc/saleae-logic { }; + + saleae-logic-2 = callPackage ../development/tools/misc/saleae-logic-2 { }; + + sauce-connect = callPackage ../development/tools/sauce-connect { }; + + sawjap = callPackage ../development/tools/java/sawjap { }; + + sd-local = callPackage ../development/tools/sd-local { }; + + selenium-server-standalone = callPackage ../development/tools/selenium/server { }; + + selendroid = callPackage ../development/tools/selenium/selendroid { }; + + semver-tool = callPackage ../development/tools/misc/semver-tool { }; + + semantik = libsForQt5.callPackage ../applications/office/semantik { }; + + sconsPackages = dontRecurseIntoAttrs (callPackage ../development/tools/build-managers/scons { }); + scons = sconsPackages.scons_latest; + + mill = callPackage ../development/tools/build-managers/mill { + jre = jre8; + }; + + sbt = callPackage ../development/tools/build-managers/sbt { }; + sbt-with-scala-native = callPackage ../development/tools/build-managers/sbt/scala-native.nix { }; + simpleBuildTool = sbt; + + sbt-extras = callPackage ../development/tools/build-managers/sbt-extras { }; + + scala-cli = callPackage ../development/tools/build-managers/scala-cli {}; + + scc = callPackage ../development/tools/misc/scc { }; + + scss-lint = callPackage ../development/tools/scss-lint { }; + + segger-ozone = callPackage ../development/tools/misc/segger-ozone { }; + + selene = callPackage ../development/tools/selene { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + shadowenv = callPackage ../tools/misc/shadowenv { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + shake = haskell.lib.compose.justStaticExecutables haskellPackages.shake; + + shallot = callPackage ../tools/misc/shallot { }; + + inherit (callPackage ../development/tools/build-managers/shards { }) + shards_0_15 + shards_0_16 + shards; + + shellcheck = callPackage ../development/tools/shellcheck { + ShellCheck = haskellPackages.ShellCheck_0_8_0; + }; + + shellharden = callPackage ../development/tools/shellharden {}; + + schemaspy = callPackage ../development/tools/database/schemaspy { }; + + scenebuilder = callPackage ../development/tools/scenebuilder { }; + + scenic-view = callPackage ../development/tools/scenic-view { }; + + shncpd = callPackage ../tools/networking/shncpd { }; + + sigrok-cli = callPackage ../development/tools/sigrok-cli { }; + + silicon = callPackage ../tools/misc/silicon { + inherit (darwin.apple_sdk.frameworks) AppKit CoreText Security; + }; + + simpleTpmPk11 = callPackage ../tools/security/simple-tpm-pk11 { }; + + slimerjs = callPackage ../development/tools/slimerjs {}; + + sloccount = callPackage ../development/tools/misc/sloccount { }; + + sloc = nodePackages.sloc; + + smatch = callPackage ../development/tools/analysis/smatch { + buildllvmsparse = false; + buildc2xml = false; + }; + + smc = callPackage ../tools/misc/smc { }; + + snakemake = callPackage ../applications/science/misc/snakemake { }; + + snore = callPackage ../tools/misc/snore { }; + + snzip = callPackage ../tools/archivers/snzip { }; + + snowman = qt5.callPackage ../development/tools/analysis/snowman { }; + + sparse = callPackage ../development/tools/analysis/sparse { }; + + speedtest-cli = with python3Packages; toPythonApplication speedtest-cli; + + spin = callPackage ../development/tools/analysis/spin { }; + + spirv-headers = callPackage ../development/libraries/spirv-headers { }; + spirv-tools = callPackage ../development/tools/spirv-tools { }; + + splint = callPackage ../development/tools/analysis/splint { + flex = flex_2_5_35; + }; + + spoofer = callPackage ../tools/networking/spoofer { }; + + spoofer-gui = callPackage ../tools/networking/spoofer { withGUI = true; }; + + spooles = callPackage ../development/libraries/science/math/spooles {}; + + spruce = callPackage ../development/tools/misc/spruce {}; + + sqlcheck = callPackage ../development/tools/database/sqlcheck { }; + + sqlitebrowser = libsForQt5.callPackage ../development/tools/database/sqlitebrowser { }; + + sqlite-utils = with python3Packages; toPythonApplication sqlite-utils; + + sqlite-web = callPackage ../development/tools/database/sqlite-web { }; + + sqlmap = with python3Packages; toPythonApplication sqlmap; + + sselp = callPackage ../tools/X11/sselp{ }; + + statix = callPackage ../tools/nix/statix { }; + + stm32cubemx = callPackage ../development/embedded/stm32/stm32cubemx { }; + + stm32flash = callPackage ../development/embedded/stm32/stm32flash { }; + + strace = callPackage ../development/tools/misc/strace { }; + + stylua = callPackage ../development/tools/stylua { }; + + summon = callPackage ../development/tools/summon { }; + + svlint = callPackage ../development/tools/analysis/svlint { }; + + svls = callPackage ../development/tools/misc/svls { }; + + swarm = callPackage ../development/tools/analysis/swarm { }; + + swiftformat = callPackage ../development/tools/swiftformat { }; + + symfony-cli = callPackage ../development/tools/symfony-cli { }; + + swiftshader = callPackage ../development/libraries/swiftshader { }; + + systemfd = callPackage ../development/tools/systemfd { }; + + swig1 = callPackage ../development/tools/misc/swig { }; + swig2 = callPackage ../development/tools/misc/swig/2.x.nix { }; + swig3 = callPackage ../development/tools/misc/swig/3.x.nix { }; + swig4 = callPackage ../development/tools/misc/swig/4.nix { }; + swig = swig3; + swigWithJava = swig; + + c2ffi = callPackage ../development/tools/misc/c2ffi { }; + + c3c = callPackage ../development/compilers/c3c { }; + + swfmill = callPackage ../tools/video/swfmill { }; + + swftools = callPackage ../tools/video/swftools { + stdenv = gccStdenv; + }; + + szyszka = callPackage ../tools/misc/szyszka { }; + + taplo-cli = callPackage ../development/tools/taplo-cli { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + taplo-lsp = callPackage ../development/tools/taplo-lsp { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + taoup = callPackage ../tools/misc/taoup { }; + + tcptrack = callPackage ../development/tools/misc/tcptrack { }; + + teensyduino = arduino-core.override { withGui = true; withTeensyduino = true; }; + + teensy-loader-cli = callPackage ../development/embedded/teensy-loader-cli { }; + + tytools = libsForQt5.callPackage ../development/embedded/tytools { }; + + terracognita = callPackage ../development/tools/misc/terracognita { }; + + terraform-lsp = callPackage ../development/tools/misc/terraform-lsp { }; + terraform-ls = callPackage ../development/tools/misc/terraform-ls { }; + + terraformer = callPackage ../development/tools/misc/terraformer { }; + + terrascan = callPackage ../tools/security/terrascan { }; + + texinfo413 = callPackage ../development/tools/misc/texinfo/4.13a.nix { }; + texinfo4 = texinfo413; + texinfo5 = callPackage ../development/tools/misc/texinfo/5.2.nix { }; + texinfo6_5 = callPackage ../development/tools/misc/texinfo/6.5.nix { }; # needed for allegro + texinfo6_7 = callPackage ../development/tools/misc/texinfo/6.7.nix { }; # needed for gpm, iksemel and fwknop + texinfo6 = callPackage ../development/tools/misc/texinfo/6.8.nix { }; + texinfo = texinfo6; + texinfoInteractive = texinfo.override { interactive = true; }; + + texi2html = callPackage ../development/tools/misc/texi2html { }; + + texi2mdoc = callPackage ../tools/misc/texi2mdoc { }; + + texlab = callPackage ../development/tools/misc/texlab { + inherit (darwin.apple_sdk.frameworks) Security CoreServices; + }; + + time-ghc-modules = callPackage ../development/tools/time-ghc-modules { }; + + tflint = callPackage ../development/tools/analysis/tflint { }; + + tfsec = callPackage ../development/tools/analysis/tfsec { }; + + todoist = callPackage ../applications/misc/todoist { }; + + todoist-electron = callPackage ../applications/misc/todoist-electron { }; + + toil = callPackage ../applications/science/misc/toil { }; + + travis = callPackage ../development/tools/misc/travis { }; + + tree-sitter = callPackage ../development/tools/parsing/tree-sitter { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + tree-sitter-grammars = recurseIntoAttrs tree-sitter.builtGrammars; + + trellis = callPackage ../development/embedded/fpga/trellis { }; + + ttyd = callPackage ../servers/ttyd { }; + + turbogit = callPackage ../development/tools/turbogit { + libgit2 = libgit2_1_3_0; + }; + + tweak = callPackage ../applications/editors/tweak { }; + + tychus = callPackage ../development/tools/tychus { + inherit (darwin.apple_sdk.frameworks) CoreFoundation; + }; + + uddup = callPackage ../tools/security/uddup { }; + + udis86 = callPackage ../development/tools/udis86 { }; + + uefi-firmware-parser = callPackage ../development/tools/analysis/uefi-firmware-parser { }; + + uhd3_5 = callPackage ../applications/radio/uhd/3.5.nix { }; + uhd = callPackage ../applications/radio/uhd { }; + + uisp = callPackage ../development/embedded/uisp { }; + + uncrustify = callPackage ../development/tools/misc/uncrustify { }; + + universal-ctags = callPackage ../development/tools/misc/universal-ctags { }; + + unused = callPackage ../development/tools/misc/unused { }; + + vagrant = callPackage ../development/tools/vagrant {}; + + vala-language-server = callPackage ../development/tools/vala-language-server {}; + + bashdb = callPackage ../development/tools/misc/bashdb { }; + + gdb = callPackage ../development/tools/misc/gdb { + guile = null; + readline = readline81; + }; + + java-language-server = callPackage ../development/tools/java/java-language-server { }; + + jhiccup = callPackage ../development/tools/java/jhiccup { }; + + valgrind = callPackage ../development/tools/analysis/valgrind { + inherit (buildPackages.darwin) xnu bootstrap_cmds cctools; + }; + valgrind-light = res.valgrind.override { gdb = null; }; + + valkyrie = callPackage ../development/tools/analysis/valkyrie { }; + + qcachegrind = libsForQt5.callPackage ../development/tools/analysis/qcachegrind {}; + + visualvm = callPackage ../development/tools/java/visualvm { }; + + vultr = callPackage ../development/tools/vultr { }; + + vultr-cli = callPackage ../development/tools/vultr-cli { }; + + vulnix = callPackage ../tools/security/vulnix { }; + + vtable-dumper = callPackage ../development/tools/misc/vtable-dumper { }; + + wails = callPackage ../development/tools/wails { }; + + whatsapp-for-linux = callPackage ../applications/networking/instant-messengers/whatsapp-for-linux { }; + + whatstyle = callPackage ../development/tools/misc/whatstyle { + inherit (llvmPackages) clang-unwrapped; + }; + + watson-ruby = callPackage ../development/tools/misc/watson-ruby {}; + + webdis = callPackage ../development/tools/database/webdis { }; + + xc3sprog = callPackage ../development/embedded/xc3sprog { }; + + xcb-imdkit = callPackage ../development/libraries/xcb-imdkit { }; + + xcode-install = callPackage ../development/tools/xcode-install { }; + + xcodebuild = callPackage ../development/tools/xcbuild/wrapper.nix { + inherit (darwin.apple_sdk.frameworks) CoreServices CoreGraphics ImageIO; + }; + xcodebuild6 = xcodebuild.override { stdenv = llvmPackages_6.stdenv; }; + xcbuild = xcodebuild; + xcbuildHook = makeSetupHook { + deps = [ xcbuild ]; + } ../development/tools/xcbuild/setup-hook.sh ; + + # xcbuild with llvm 6 + xcbuild6Hook = makeSetupHook { + deps = [ xcodebuild6 ]; + } ../development/tools/xcbuild/setup-hook.sh ; + + xcpretty = callPackage ../development/tools/xcpretty { }; + + xmlindent = callPackage ../development/web/xmlindent {}; + + xpwn = callPackage ../development/mobile/xpwn {}; + + xxdiff = libsForQt5.callPackage ../development/tools/misc/xxdiff { }; + + xxe-pe = callPackage ../applications/editors/xxe-pe { }; + + xxdiff-tip = xxdiff; + + xxgdb = callPackage ../development/tools/misc/xxgdb { }; + + yaml2json = callPackage ../development/tools/yaml2json { }; + + yams = callPackage ../applications/audio/yams { }; + + ycmd = callPackage ../development/tools/misc/ycmd { + inherit (darwin.apple_sdk.frameworks) Cocoa; + python = python3; + boost = boost174; + }; + + yodl = callPackage ../development/tools/misc/yodl { }; + + yq = python3.pkgs.toPythonApplication python3.pkgs.yq; + + yq-go = callPackage ../development/tools/yq-go { }; + + ytt = callPackage ../development/tools/ytt {}; + + zls = callPackage ../development/tools/zls { + zig = zig_0_8_1; + }; + + zydis = callPackage ../development/libraries/zydis { }; + + winpdb = callPackage ../development/tools/winpdb { }; + + grabserial = callPackage ../development/tools/grabserial { }; + + mypy = with python3Packages; toPythonApplication mypy; + + nsis = callPackage ../development/tools/nsis { }; + + tockloader = callPackage ../development/tools/misc/tockloader { }; + + ### DEVELOPMENT / LIBRARIES + + a52dec = callPackage ../development/libraries/a52dec { }; + + aalib = callPackage ../development/libraries/aalib { }; + + abseil-cpp_202111 = callPackage ../development/libraries/abseil-cpp/202111.nix { }; + abseil-cpp_202103 = callPackage ../development/libraries/abseil-cpp/202103.nix { }; + abseil-cpp = abseil-cpp_202103; + + accountsservice = callPackage ../development/libraries/accountsservice { }; + + acl = callPackage ../development/libraries/acl { }; + + acsccid = callPackage ../tools/security/acsccid { }; + + activemq = callPackage ../development/libraries/apache-activemq { }; + + adns = callPackage ../development/libraries/adns { }; + + adslib = callPackage ../development/libraries/adslib { }; + + afflib = callPackage ../development/libraries/afflib { }; + + aften = callPackage ../development/libraries/aften { }; + + alure = callPackage ../development/libraries/alure { }; + + alure2 = callPackage ../development/libraries/alure2 { }; + + agg = callPackage ../development/libraries/agg { }; + + alass = callPackage ../applications/video/alass { }; + + allegro = allegro4; + allegro4 = callPackage ../development/libraries/allegro {}; + allegro5 = callPackage ../development/libraries/allegro/5.nix {}; + + amdvlk = callPackage ../development/libraries/amdvlk {}; + + aml = callPackage ../development/libraries/aml { }; + + amrnb = callPackage ../development/libraries/amrnb { }; + + amrwb = callPackage ../development/libraries/amrwb { }; + + ansi2html = with python3.pkgs; toPythonApplication ansi2html; + + anttweakbar = callPackage ../development/libraries/AntTweakBar { }; + + appstream = callPackage ../development/libraries/appstream { }; + + appstream-glib = callPackage ../development/libraries/appstream-glib { }; + + apr = callPackage ../development/libraries/apr { + autoreconfHook = buildPackages.autoreconfHook269; + }; + + aprutil = callPackage ../development/libraries/apr-util { }; + + aravis = callPackage ../development/libraries/aravis { + inherit (gst_all_1) gstreamer gst-plugins-base gst-plugins-good gst-plugins-bad; + }; + + arb = callPackage ../development/libraries/arb {}; + + argp-standalone = callPackage ../development/libraries/argp-standalone {}; + + aribb25 = callPackage ../development/libraries/aribb25 { + inherit (darwin.apple_sdk.frameworks) PCSC; + }; + + armadillo = callPackage ../development/libraries/armadillo {}; + + arrayfire = callPackage ../development/libraries/arrayfire {}; + + arrow-cpp = callPackage ../development/libraries/arrow-cpp ({ + } // lib.optionalAttrs (stdenv.hostPlatform.isi686 && stdenv.cc.isGNU) { + stdenv = overrideCC stdenv buildPackages.gcc6; # hidden symbol `__divmoddi4' + }); + + arsenal = callPackage ../tools/security/arsenal { }; + + assimp = callPackage ../development/libraries/assimp { }; + + asio_1_10 = callPackage ../development/libraries/asio/1.10.nix { }; + asio = callPackage ../development/libraries/asio { }; + + aspell = callPackage ../development/libraries/aspell { }; + + aspellDicts = recurseIntoAttrs (callPackages ../development/libraries/aspell/dictionaries.nix {}); + + aspellWithDicts = callPackage ../development/libraries/aspell/aspell-with-dicts.nix { + aspell = aspell.override { searchNixProfiles = false; }; + }; + + attr = callPackage ../development/libraries/attr { }; + + at-spi2-core = callPackage ../development/libraries/at-spi2-core { }; + + at-spi2-atk = callPackage ../development/libraries/at-spi2-atk { }; + + aqbanking = callPackage ../development/libraries/aqbanking { }; + + aubio = callPackage ../development/libraries/aubio { }; + + audiality2 = callPackage ../development/libraries/audiality2 { }; + + audiofile = callPackage ../development/libraries/audiofile { + inherit (darwin.apple_sdk.frameworks) AudioUnit CoreServices; + }; + + aws-c-auth = callPackage ../development/libraries/aws-c-auth { }; + + aws-c-cal = callPackage ../development/libraries/aws-c-cal { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + aws-c-common = callPackage ../development/libraries/aws-c-common { }; + + aws-c-compression = callPackage ../development/libraries/aws-c-compression { }; + + aws-c-event-stream = callPackage ../development/libraries/aws-c-event-stream { }; + + aws-c-http = callPackage ../development/libraries/aws-c-http { }; + + aws-c-io = callPackage ../development/libraries/aws-c-io { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + aws-c-mqtt = callPackage ../development/libraries/aws-c-mqtt { }; + + aws-c-s3 = callPackage ../development/libraries/aws-c-s3 { }; + + aws-c-sdkutils = callPackage ../development/libraries/aws-c-sdkutils { }; + + aws-checksums = callPackage ../development/libraries/aws-checksums { }; + + aws-crt-cpp = callPackage ../development/libraries/aws-crt-cpp { }; + + aws-sdk-cpp = callPackage ../development/libraries/aws-sdk-cpp { + inherit (darwin.apple_sdk.frameworks) CoreAudio AudioToolbox; + }; + + ayatana-ido = callPackage ../development/libraries/ayatana-ido { }; + + babl = callPackage ../development/libraries/babl { }; + + backward-cpp = callPackage ../development/libraries/backward-cpp { }; + + bamf = callPackage ../development/libraries/bamf { }; + + inherit (callPackages ../development/libraries/bashup-events { }) bashup-events32 bashup-events44; + + bcg729 = callPackage ../development/libraries/bcg729 { }; + + bctoolbox = callPackage ../development/libraries/bctoolbox { }; + + bearssl = callPackage ../development/libraries/bearssl { }; + + beecrypt = callPackage ../development/libraries/beecrypt { }; + + belcard = callPackage ../development/libraries/belcard { }; + + belr = callPackage ../development/libraries/belr { }; + + beignet = callPackage ../development/libraries/beignet { + inherit (llvmPackages_6) libllvm libclang; + }; + + belle-sip = callPackage ../development/libraries/belle-sip { }; + + libbfd = callPackage ../development/libraries/libbfd { + autoreconfHook = buildPackages.autoreconfHook269; + }; + + libopcodes = callPackage ../development/libraries/libopcodes { + autoreconfHook = buildPackages.autoreconfHook269; + }; + + bicpl = callPackage ../development/libraries/science/biology/bicpl { }; + + bicgl = callPackage ../development/libraries/science/biology/bicgl { inherit (darwin.apple_sdk.frameworks) GLUT; }; + + # TODO(@Ericson2314): Build bionic libc from source + bionic = if stdenv.hostPlatform.useAndroidPrebuilt + then pkgs."androidndkPkgs_${stdenv.hostPlatform.ndkVer}".libraries + else callPackage ../os-specific/linux/bionic-prebuilt { }; + + + bobcat = callPackage ../development/libraries/bobcat { }; + + boehmgc = callPackage ../development/libraries/boehm-gc { }; + + boolstuff = callPackage ../development/libraries/boolstuff { }; + + inherit (callPackage ../development/libraries/boost { inherit (buildPackages) boost-build; }) + boost155 + boost159 + boost160 + boost165 + boost166 + boost168 + boost169 + boost170 + boost172 + boost173 + boost174 + boost175 + boost177 + ; + + boost15x = boost159; + boost16x = boost169; + boost17x = boost177; + boost = boost17x; + + boost_process = callPackage ../development/libraries/boost-process { }; + + bosh-cli = callPackage ../applications/networking/cluster/bosh-cli { }; + + botan = callPackage ../development/libraries/botan { + openssl = openssl_1_0_2; + inherit (darwin.apple_sdk.frameworks) CoreServices Security; + }; + + botan2 = callPackage ../development/libraries/botan/2.0.nix { + inherit (darwin.apple_sdk.frameworks) CoreServices Security; + }; + + box2d = callPackage ../development/libraries/box2d { }; + + boxfort = callPackage ../development/libraries/boxfort { }; + + buddy = callPackage ../development/libraries/buddy { }; + + buildkit-nix = callPackage ../applications/virtualization/buildkit-nix { }; + + bulletml = callPackage ../development/libraries/bulletml { }; + + bwidget = callPackage ../development/libraries/bwidget { }; + + bzrtp = callPackage ../development/libraries/bzrtp { }; + + c-ares = callPackage ../development/libraries/c-ares { }; + + c-blosc = callPackage ../development/libraries/c-blosc { }; + + # justStaticExecutables is needed due to https://github.com/NixOS/nix/issues/2990 + cachix = haskell.lib.compose.justStaticExecutables haskellPackages.cachix; + + hercules-ci-agent = callPackage ../development/tools/continuous-integration/hercules-ci-agent { }; + + hci = callPackage ../development/tools/continuous-integration/hci { }; + + isa-l = callPackage ../development/libraries/isa-l { }; + + niv = lib.getBin (haskell.lib.compose.justStaticExecutables haskellPackages.niv); + + ormolu = haskellPackages.ormolu.bin; + + capnproto = callPackage ../development/libraries/capnproto { }; + + capnproto-java = callPackage ../development/tools/capnproto-java { }; + + captive-browser = callPackage ../applications/networking/browsers/captive-browser { }; + + ndn-cxx = callPackage ../development/libraries/ndn-cxx { }; + + ndn-tools = callPackage ../tools/networking/ndn-tools { }; + + nfd = callPackage ../servers/nfd { }; + + cddlib = callPackage ../development/libraries/cddlib {}; + + cdk = callPackage ../development/libraries/cdk {}; + + cdk-go = callPackage ../tools/security/cdk-go {}; + + cdo = callPackage ../development/libraries/cdo { }; + + cimg = callPackage ../development/libraries/cimg { }; + + cjose = callPackage ../development/libraries/cjose { }; + + scmccid = callPackage ../development/libraries/scmccid { }; + + ccrtp = callPackage ../development/libraries/ccrtp { }; + + cctz = callPackage ../development/libraries/cctz { }; + + celt = callPackage ../development/libraries/celt {}; + celt_0_7 = callPackage ../development/libraries/celt/0.7.nix {}; + celt_0_5_1 = callPackage ../development/libraries/celt/0.5.1.nix {}; + + cegui = callPackage ../development/libraries/cegui { + ogre = ogre1_10; + }; + + certbot = python3.pkgs.toPythonApplication python3.pkgs.certbot; + + certbot-full = certbot.withPlugins (cp: with cp; [ + certbot-dns-cloudflare + certbot-dns-rfc2136 + certbot-dns-route53 + ]); + + caf = callPackage ../development/libraries/caf {}; + + # CGAL 5 has API changes + cgal_4 = callPackage ../development/libraries/CGAL/4.nix {}; + cgal_5 = callPackage ../development/libraries/CGAL {}; + cgal = cgal_4; + + cgui = callPackage ../development/libraries/cgui {}; + + check = callPackage ../development/libraries/check { + inherit (darwin.apple_sdk.frameworks) CoreServices; + }; + + chipmunk = callPackage ../development/libraries/chipmunk {}; + + chmlib = callPackage ../development/libraries/chmlib { }; + + chromaprint = callPackage ../development/libraries/chromaprint { }; + + cl = callPackage ../development/libraries/cl { + erlang = erlangR23; + }; + + clanlib = callPackage ../development/libraries/clanlib { }; + + classads = callPackage ../development/libraries/classads { }; + + clearsilver = callPackage ../development/libraries/clearsilver { }; + + clfft = callPackage ../development/libraries/clfft { }; + + clipp = callPackage ../development/libraries/clipp { }; + + clipper = callPackage ../development/libraries/clipper { }; + + cln = callPackage ../development/libraries/cln { }; + + clucene_core_2 = callPackage ../development/libraries/clucene-core/2.x.nix { + stdenv = if stdenv.cc.isClang then llvmPackages_6.stdenv else stdenv; + }; + + clucene_core_1 = callPackage ../development/libraries/clucene-core { + stdenv = if stdenv.cc.isClang then llvmPackages_6.stdenv else stdenv; + }; + + clucene_core = clucene_core_1; + + clutter = callPackage ../development/libraries/clutter { }; + + clutter-gst = callPackage ../development/libraries/clutter-gst { + }; + + clutter-gtk = callPackage ../development/libraries/clutter-gtk { }; + + cminpack = callPackage ../development/libraries/cminpack { }; + + cmocka = callPackage ../development/libraries/cmocka { }; + + cmrt = callPackage ../development/libraries/cmrt { }; + + coeurl = callPackage ../development/libraries/coeurl { }; + + cogl = callPackage ../development/libraries/cogl { }; + + coin3d = callPackage ../development/libraries/coin3d { }; + + soxt = callPackage ../development/libraries/soxt { }; + + CoinMP = callPackage ../development/libraries/CoinMP { }; + + cointop = callPackage ../applications/misc/cointop { }; + + collada-dom = callPackage ../development/libraries/collada-dom { }; + + cog = callPackage ../development/web/cog { }; + + cosmopolitan = callPackage ../development/libraries/cosmopolitan { }; + + ctl = callPackage ../development/libraries/ctl { }; + + ctpp2 = callPackage ../development/libraries/ctpp2 { }; + + ctpl = callPackage ../development/libraries/ctpl { }; + + cppe = callPackage ../development/libraries/science/chemistry/cppe { }; + + cppdb = callPackage ../development/libraries/cppdb { }; + + cpp-utilities = callPackage ../development/libraries/cpp-utilities { }; + + cpp-hocon = callPackage ../development/libraries/cpp-hocon { }; + + cpp-ipfs-api = callPackage ../development/libraries/cpp-ipfs-api { }; + + cpp-netlib = callPackage ../development/libraries/cpp-netlib { + boost = boost169; # fatal error: 'boost/asio/stream_socket_service.hpp' file not found + }; + + ubus = callPackage ../development/libraries/ubus { }; + + uci = callPackage ../development/libraries/uci { }; + + uri = callPackage ../development/libraries/uri { }; + + cppcms = callPackage ../development/libraries/cppcms { }; + + cppunit = callPackage ../development/libraries/cppunit { }; + + cpputest = callPackage ../development/libraries/cpputest { }; + + cracklib = callPackage ../development/libraries/cracklib { }; + + cre2 = callPackage ../development/libraries/cre2 { }; + + criterion = callPackage ../development/libraries/criterion { }; + + croaring = callPackage ../development/libraries/croaring { }; + + cryptopp = callPackage ../development/libraries/crypto++ { }; + + cryptominisat = callPackage ../applications/science/logic/cryptominisat { }; + + csdr = callPackage ../applications/radio/csdr { }; + + ctypes_sh = callPackage ../development/libraries/ctypes_sh { }; + + curlcpp = callPackage ../development/libraries/curlcpp { }; + + curlpp = callPackage ../development/libraries/curlpp { }; + + cutee = callPackage ../development/libraries/cutee { }; + + cutelyst = libsForQt5.callPackage ../development/libraries/cutelyst { }; + + cxxtools = callPackage ../development/libraries/cxxtools { }; + + cwiid = callPackage ../development/libraries/cwiid { }; + + cxx-prettyprint = callPackage ../development/libraries/cxx-prettyprint { }; + + cxxopts = callPackage ../development/libraries/cxxopts { }; + + cxxtest = python2Packages.callPackage ../development/libraries/cxxtest { }; + + cypress = callPackage ../development/web/cypress { }; + + cyrus_sasl = callPackage ../development/libraries/cyrus-sasl { + libkrb5 = if stdenv.isFreeBSD then libheimdal else libkrb5; + }; + + # Make bdb5 the default as it is the last release under the custom + # bsd-like license + db = db5; + db4 = db48; + db48 = callPackage ../development/libraries/db/db-4.8.nix { }; + db5 = db53; + db53 = callPackage ../development/libraries/db/db-5.3.nix { }; + db6 = db60; + db60 = callPackage ../development/libraries/db/db-6.0.nix { }; + db62 = callPackage ../development/libraries/db/db-6.2.nix { }; + + dbxml = callPackage ../development/libraries/dbxml { }; + + dbus = callPackage ../development/libraries/dbus { }; + dbus_cplusplus = callPackage ../development/libraries/dbus-cplusplus { }; + dbus-glib = callPackage ../development/libraries/dbus-glib { }; + dbus_java = callPackage ../development/libraries/java/dbus-java { }; + + dbus-sharp-1_0 = callPackage ../development/libraries/dbus-sharp/dbus-sharp-1.0.nix { }; + dbus-sharp-2_0 = callPackage ../development/libraries/dbus-sharp { }; + + dbus-sharp-glib-1_0 = callPackage ../development/libraries/dbus-sharp-glib/dbus-sharp-glib-1.0.nix { }; + dbus-sharp-glib-2_0 = callPackage ../development/libraries/dbus-sharp-glib { }; + + makeDBusConf = { suidHelper, serviceDirectories, apparmor ? "disabled" }: + callPackage ../development/libraries/dbus/make-dbus-conf.nix { + inherit suidHelper serviceDirectories apparmor; + }; + + dee = callPackage ../development/libraries/dee { + autoreconfHook = buildPackages.autoreconfHook269; + }; + + dhex = callPackage ../applications/editors/dhex { }; + + double-conversion = callPackage ../development/libraries/double-conversion { }; + + dclib = callPackage ../development/libraries/dclib { }; + + dillo = callPackage ../applications/networking/browsers/dillo { + fltk = fltk13; + }; + + directfb = callPackage ../development/libraries/directfb { }; + + discordchatexporter-cli = callPackage ../tools/backup/discordchatexporter-cli { }; + + discord-rpc = callPackage ../development/libraries/discord-rpc { + inherit (darwin.apple_sdk.frameworks) AppKit; + }; + + dlib = callPackage ../development/libraries/dlib { }; + + doctest = callPackage ../development/libraries/doctest { }; + + docopt_cpp = callPackage ../development/libraries/docopt_cpp { }; + + docopts = callPackage ../development/tools/misc/docopts { }; + + dotconf = callPackage ../development/libraries/dotconf { }; + + draco = callPackage ../development/libraries/draco { }; + + # Multi-arch "drivers" which we want to build for i686. + driversi686Linux = recurseIntoAttrs { + inherit (pkgsi686Linux) + amdvlk + mesa + vaapiIntel + libvdpau-va-gl + vaapiVdpau + beignet + glxinfo + vdpauinfo; + }; + + drogon = callPackage ../development/libraries/drogon { }; + + dssi = callPackage ../development/libraries/dssi {}; + + duckdb = callPackage ../development/libraries/duckdb {}; + + duckstation = libsForQt5.callPackage ../applications/emulators/duckstation {}; + + easyloggingpp = callPackage ../development/libraries/easyloggingpp {}; + + eccodes = callPackage ../development/libraries/eccodes { + pythonPackages = python3Packages; + }; + + eclib = callPackage ../development/libraries/eclib {}; + + editline = callPackage ../development/libraries/editline { }; + + eigen = callPackage ../development/libraries/eigen {}; + + eigen2 = callPackage ../development/libraries/eigen/2.0.nix {}; + + vapoursynth = callPackage ../development/libraries/vapoursynth { + inherit (darwin.apple_sdk.frameworks) ApplicationServices; + }; + + vapoursynth-editor = libsForQt5.callPackage ../development/libraries/vapoursynth/editor.nix { }; + + vapoursynth-mvtools = callPackage ../development/libraries/vapoursynth-mvtools { }; + + vmmlib = callPackage ../development/libraries/vmmlib { + inherit (darwin.apple_sdk.frameworks) Accelerate CoreGraphics CoreVideo; + }; + + egl-wayland = callPackage ../development/libraries/egl-wayland {}; + + elastix = callPackage ../development/libraries/science/biology/elastix { + inherit (darwin.apple_sdk.frameworks) Cocoa; + }; + + elfio = callPackage ../development/libraries/elfio { }; + + enchant1 = callPackage ../development/libraries/enchant/1.x.nix { }; + + enchant2 = callPackage ../development/libraries/enchant/2.x.nix { }; + enchant = enchant2; + + enet = callPackage ../development/libraries/enet { }; + + entt = callPackage ../development/libraries/entt { }; + + libepoxy = callPackage ../development/libraries/libepoxy { + inherit (darwin.apple_sdk.frameworks) Carbon OpenGL; + }; + + libesmtp = callPackage ../development/libraries/libesmtp { }; + + liberasurecode = callPackage ../applications/misc/liberasurecode { }; + + exiv2 = callPackage ../development/libraries/exiv2 { }; + + expat = callPackage ../development/libraries/expat { }; + + eventlog = callPackage ../development/libraries/eventlog { }; + + faac = callPackage ../development/libraries/faac { }; + + faad2 = callPackage ../development/libraries/faad2 { }; + + factor-lang-scope = callPackage ../development/compilers/factor-lang/scope.nix { }; + factor-lang = factor-lang-scope.interpreter; + + far2l = callPackage ../applications/misc/far2l { + stdenv = if stdenv.cc.isClang then llvmPackages.stdenv else stdenv; + inherit (darwin.apple_sdk.frameworks) IOKit Carbon Cocoa AudioToolbox OpenGL; + }; + + farbfeld = callPackage ../development/libraries/farbfeld { }; + + farstream = callPackage ../development/libraries/farstream { + inherit (gst_all_1) + gstreamer gst-plugins-base gst-plugins-good gst-plugins-bad + gst-libav; + autoreconfHook = buildPackages.autoreconfHook269; + }; + + fcgi = callPackage ../development/libraries/fcgi { }; + + fcl = callPackage ../development/libraries/fcl { }; + + febio = callPackage ../development/libraries/febio { }; + + ffcast = callPackage ../tools/X11/ffcast { }; + + fflas-ffpack = callPackage ../development/libraries/fflas-ffpack { }; + + forge = callPackage ../development/libraries/forge { + cudatoolkit = buildPackages.cudatoolkit_11; + }; + + linbox = callPackage ../development/libraries/linbox { }; + + ffmpeg_3_4 = callPackage ../development/libraries/ffmpeg/3.4.nix { + inherit (darwin.apple_sdk.frameworks) Cocoa CoreMedia; + }; + ffmpeg_4 = callPackage ../development/libraries/ffmpeg/4.nix { + inherit (darwin.apple_sdk.frameworks) Cocoa CoreMedia VideoToolbox; + }; + ffmpeg_5 = callPackage ../development/libraries/ffmpeg/5.nix { + inherit (darwin.apple_sdk.frameworks) Cocoa CoreMedia VideoToolbox; + }; + + # Aliases + ffmpeg_3 = ffmpeg_3_4; + # Please make sure this is updated to the latest version on the next major + # update to ffmpeg + # Packages which use ffmpeg as a library, should pin to the relevant major + # version number which the upstream support. + ffmpeg = ffmpeg_4; + + ffmpeg-full = callPackage ../development/libraries/ffmpeg-full { + svt-av1 = if stdenv.isAarch64 then null else svt-av1; + rav1e = null; # We already have SVT-AV1 for faster encoding + rtmpdump = null; # Prefer the built-in RTMP implementation + # The following need to be fixed on Darwin + libjack2 = if stdenv.isDarwin then null else libjack2; + libmodplug = if stdenv.isDarwin then null else libmodplug; + libmfx = if stdenv.isDarwin then null else intel-media-sdk; + libpulseaudio = if stdenv.isDarwin then null else libpulseaudio; + samba = if stdenv.isDarwin then null else samba; + vid-stab = if stdenv.isDarwin then null else vid-stab; + inherit (darwin.apple_sdk.frameworks) + Cocoa CoreServices CoreAudio AVFoundation MediaToolbox + VideoDecodeAcceleration; + }; + + ffmpegthumbnailer = callPackage ../development/libraries/ffmpegthumbnailer { }; + + ffmpeg-sixel = callPackage ../development/libraries/ffmpeg-sixel { }; + + ffmpeg-normalize = python3Packages.callPackage ../applications/video/ffmpeg-normalize { }; + + ffms = callPackage ../development/libraries/ffms { }; + + fftw = callPackage ../development/libraries/fftw { }; + fftwSinglePrec = fftw.override { precision = "single"; }; + fftwFloat = fftwSinglePrec; # the configure option is just an alias + fftwLongDouble = fftw.override { precision = "long-double"; }; + + filter-audio = callPackage ../development/libraries/filter-audio {}; + + filtron = callPackage ../servers/filtron {}; + + flann = callPackage ../development/libraries/flann { }; + + flatcc = callPackage ../development/libraries/flatcc { }; + + flint = callPackage ../development/libraries/flint { }; + + flite = callPackage ../development/libraries/flite { }; + + fltk13 = callPackage ../development/libraries/fltk { + inherit (darwin.apple_sdk.frameworks) ApplicationServices Carbon Cocoa OpenGL; + }; + fltk14 = callPackage ../development/libraries/fltk/1.4.nix { + inherit (darwin.apple_sdk.frameworks) ApplicationServices Carbon Cocoa OpenGL; + }; + fltk13-minimal = fltk13.override { + withGL = false; + withCairo = false; + withPango = false; + withExamples = false; + withDocs = false; + }; + fltk14-minimal = fltk14.override { + withGL = false; + withCairo = false; + withPango = false; + withExamples = false; + withDocs = false; + }; + fltk = fltk13; + fltk-minimal = fltk13-minimal; + + flyway = callPackage ../development/tools/flyway { }; + + inherit (callPackages ../development/libraries/fmt { }) fmt_7 fmt_8; + + fmt = fmt_7; + + fplll = callPackage ../development/libraries/fplll {}; + fplll_20160331 = callPackage ../development/libraries/fplll/20160331.nix {}; + + freeimage = callPackage ../development/libraries/freeimage { }; + + freetts = callPackage ../development/libraries/freetts { + jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + + frog = res.languageMachines.frog; + + fstrcmp = callPackage ../development/libraries/fstrcmp { }; + + fstrm = callPackage ../development/libraries/fstrm { }; + + cfitsio = callPackage ../development/libraries/science/astronomy/cfitsio { }; + + fontconfig = callPackage ../development/libraries/fontconfig { + inherit (darwin.apple_sdk.frameworks) CoreFoundation; + }; + + folly = callPackage ../development/libraries/folly { }; + + folks = callPackage ../development/libraries/folks { }; + + makeFontsConf = let fontconfig_ = fontconfig; in {fontconfig ? fontconfig_, fontDirectories}: + callPackage ../development/libraries/fontconfig/make-fonts-conf.nix { + inherit fontconfig fontDirectories; + }; + + makeFontsCache = let fontconfig_ = fontconfig; in {fontconfig ? fontconfig_, fontDirectories}: + callPackage ../development/libraries/fontconfig/make-fonts-cache.nix { + inherit fontconfig fontDirectories; + }; + + f2c = callPackage ../development/tools/f2c { }; + + freealut = callPackage ../development/libraries/freealut { }; + + freeglut = callPackage ../development/libraries/freeglut { }; + + freenect = callPackage ../development/libraries/freenect { + inherit (darwin.apple_sdk.frameworks) Cocoa GLUT; + }; + + freetype = callPackage ../development/libraries/freetype { }; + + frei0r = callPackage ../development/libraries/frei0r { }; + + fribidi = callPackage ../development/libraries/fribidi { }; + + funambol = callPackage ../development/libraries/funambol { }; + + galer = callPackage ../tools/security/galer { }; + + gamenetworkingsockets = callPackage ../development/libraries/gamenetworkingsockets { }; + + gamin = callPackage ../development/libraries/gamin { }; + fam = gamin; # added 2018-04-25 + + ganv = callPackage ../development/libraries/ganv { }; + + garble = callPackage ../build-support/go/garble.nix { }; + + gcab = callPackage ../development/libraries/gcab { }; + + gcovr = with python3Packages; toPythonApplication gcovr; + + gcr = callPackage ../development/libraries/gcr { }; + + gdl = callPackage ../development/libraries/gdl { }; + + gdome2 = callPackage ../development/libraries/gdome2 { }; + + gdbm = callPackage ../development/libraries/gdbm { }; + + gecode_3 = callPackage ../development/libraries/gecode/3.nix { }; + gecode_6 = qt5.callPackage ../development/libraries/gecode { }; + gecode = gecode_6; + + gephi = callPackage ../applications/science/misc/gephi { + jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + + gegl = callPackage ../development/libraries/gegl { + inherit (darwin.apple_sdk.frameworks) OpenCL; + }; + + gensio = callPackage ../development/libraries/gensio {}; + + geoclue2 = callPackage ../development/libraries/geoclue {}; + + geoclue2-with-demo-agent = geoclue2.override { withDemoAgent = true; }; + + geocode-glib = callPackage ../development/libraries/geocode-glib {}; + + geoipWithDatabase = makeOverridable (callPackage ../development/libraries/geoip) { + drvName = "geoip-tools"; + geoipDatabase = geolite-legacy; + }; + + geoip = callPackage ../development/libraries/geoip { }; + + geoipjava = callPackage ../development/libraries/java/geoipjava { }; + + geos = callPackage ../development/libraries/geos { }; + + getdata = callPackage ../development/libraries/getdata { }; + + inherit (callPackages ../development/libraries/getdns { }) + getdns stubby; + + gettext = callPackage ../development/libraries/gettext { }; + + gf2x = callPackage ../development/libraries/gf2x {}; + + gd = callPackage ../development/libraries/gd { + automake = automake115x; + libtiff = null; + libXpm = null; + }; + + gdal = callPackage ../development/libraries/gdal { + pythonPackages = python3Packages; + autoreconfHook = buildPackages.autoreconfHook269; + }; + + gdal_2 = callPackage ../development/libraries/gdal/2.4.nix { }; + + gdcm = callPackage ../development/libraries/gdcm { + inherit (darwin.apple_sdk.frameworks) ApplicationServices Cocoa; + }; + + ggz_base_libs = callPackage ../development/libraries/ggz_base_libs {}; + + gifticlib = callPackage ../development/libraries/science/biology/gifticlib { }; + + gio-sharp = callPackage ../development/libraries/gio-sharp { }; + + givaro = callPackage ../development/libraries/givaro {}; + givaro_3 = callPackage ../development/libraries/givaro/3.nix {}; + givaro_3_7 = callPackage ../development/libraries/givaro/3.7.nix {}; + + ghc_filesystem = callPackage ../development/libraries/ghc_filesystem {}; + + ghp-import = with python3Packages; toPythonApplication ghp-import; + + ghcid = haskellPackages.ghcid.bin; + + graphia = libsForQt5.callPackage ../applications/science/misc/graphia { }; + + icon-lang = callPackage ../development/interpreters/icon-lang { }; + + libgit2 = callPackage ../development/libraries/libgit2 { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + libgit2_1_3_0 = libgit2.overrideAttrs (_: rec { + version = "1.3.0"; + src = pkgs.fetchFromGitHub { + owner = "libgit2"; + repo = "libgit2"; + rev = "v${version}"; + sha256 = "sha256-7atNkOBzX+nU1gtFQEaE+EF1L+eex+Ajhq2ocoJY920="; + }; + patches = []; + }); + + libgit2-glib = callPackage ../development/libraries/libgit2-glib { }; + + libhsts = callPackage ../development/libraries/libhsts { }; + + glbinding = callPackage ../development/libraries/glbinding { }; + + gle = callPackage ../development/libraries/gle { }; + + glew = callPackage ../development/libraries/glew { + inherit (darwin.apple_sdk.frameworks) OpenGL; + }; + glew110 = callPackage ../development/libraries/glew/1.10.nix { + inherit (darwin.apple_sdk.frameworks) AGL OpenGL; + }; + glew-egl = callPackage ../development/libraries/glew { + inherit (darwin.apple_sdk.frameworks) OpenGL; + enableEGL = true; + }; + + glfw = glfw3; + glfw-wayland = glfw.override { + waylandSupport = true; + }; + glfw2 = callPackage ../development/libraries/glfw/2.x.nix { }; + glfw3 = callPackage ../development/libraries/glfw/3.x.nix { + inherit (darwin.apple_sdk.frameworks) Cocoa Kernel; + }; + + glibc = callPackage ../development/libraries/glibc { + stdenv = gccStdenv; # doesn't compile without gcc + }; + + mtrace = callPackage ../development/libraries/glibc/mtrace.nix { }; + + # Provided by libc on Operating Systems that use the Extensible Linker Format. + elf-header = + if stdenv.hostPlatform.parsed.kernel.execFormat.name == "elf" + then null + else elf-header-real; + + elf-header-real = callPackage ../development/libraries/elf-header { }; + + glibc_memusage = callPackage ../development/libraries/glibc { + withGd = true; + }; + + # Being redundant to avoid cycles on boot. TODO: find a better way + glibcCross = callPackage ../development/libraries/glibc { + stdenv = gccCrossLibcStdenv; # doesn't compile without gcc + }; + + muslCross = musl.override { + stdenv = crossLibcStdenv; + }; + + # These are used when buiding compiler-rt / libgcc, prior to building libc. + preLibcCrossHeaders = let + inherit (stdenv.targetPlatform) libc; + in if libc == "msvcrt" then targetPackages.windows.mingw_w64_headers or windows.mingw_w64_headers + else if libc == "nblibc" then targetPackages.netbsdCross.headers or netbsdCross.headers + else if libc == "libSystem" && stdenv.targetPlatform.isAarch64 then targetPackages.darwin.LibsystemCross or darwin.LibsystemCross + else null; + + # We can choose: + libcCrossChooser = name: + # libc is hackily often used from the previous stage. This `or` + # hack fixes the hack, *sigh*. + /**/ if name == "glibc" then targetPackages.glibcCross or glibcCross + else if name == "bionic" then targetPackages.bionic or bionic + else if name == "uclibc" then targetPackages.uclibcCross or uclibcCross + else if name == "avrlibc" then targetPackages.avrlibcCross or avrlibcCross + else if name == "newlib" && stdenv.targetPlatform.isMsp430 then targetPackages.msp430NewlibCross or msp430NewlibCross + else if name == "newlib" && stdenv.targetPlatform.isVc4 then targetPackages.vc4-newlib or vc4-newlib + else if name == "newlib" && stdenv.targetPlatform.isOr1k then targetPackages.or1k-newlib or or1k-newlib + else if name == "newlib" then targetPackages.newlibCross or newlibCross + else if name == "newlib-nano" then targetPackages.newlib-nanoCross or newlib-nanoCross + else if name == "musl" then targetPackages.muslCross or muslCross + else if name == "msvcrt" then targetPackages.windows.mingw_w64 or windows.mingw_w64 + else if name == "libSystem" then + if stdenv.targetPlatform.useiOSPrebuilt + then targetPackages.darwin.iosSdkPkgs.libraries or darwin.iosSdkPkgs.libraries + else targetPackages.darwin.LibsystemCross or (throw "don't yet have a `targetPackages.darwin.LibsystemCross for ${stdenv.targetPlatform.config}`") + else if name == "nblibc" then targetPackages.netbsdCross.libc or netbsdCross.libc + else if name == "wasilibc" then targetPackages.wasilibc or wasilibc + else if name == "relibc" then targetPackages.relibc or relibc + else if stdenv.targetPlatform.isGhcjs then null + else throw "Unknown libc ${name}"; + + libcCross = assert stdenv.targetPlatform != stdenv.buildPlatform; libcCrossChooser stdenv.targetPlatform.libc; + + threadsCross = + if stdenv.targetPlatform.isMinGW && !(stdenv.targetPlatform.useLLVM or false) + then targetPackages.windows.mcfgthreads or windows.mcfgthreads + else null; + + wasilibc = callPackage ../development/libraries/wasilibc { + stdenv = crossLibcStdenv; + }; + + relibc = callPackage ../development/libraries/relibc { }; + + # Only supported on Linux + glibcLocales = if stdenv.hostPlatform.isLinux then callPackage ../development/libraries/glibc/locales.nix { } else null; + + glibcInfo = callPackage ../development/libraries/glibc/info.nix { }; + + glibc_multi = callPackage ../development/libraries/glibc/multi.nix { + glibc32 = pkgsi686Linux.glibc; + }; + + glm = callPackage ../development/libraries/glm { }; + + globalplatform = callPackage ../development/libraries/globalplatform { }; + gppcscconnectionplugin = + callPackage ../development/libraries/globalplatform/gppcscconnectionplugin.nix { }; + + glog = callPackage ../development/libraries/glog { }; + + gloox = callPackage ../development/libraries/gloox { }; + + glpk = callPackage ../development/libraries/glpk { }; + + glsurf = callPackage ../applications/science/math/glsurf { + ocamlPackages = ocaml-ng.ocamlPackages_4_05; + }; + + glui = callPackage ../development/libraries/glui {}; + + gmime2 = callPackage ../development/libraries/gmime/2.nix { }; + gmime3 = callPackage ../development/libraries/gmime/3.nix { }; + gmime = gmime2; + + gmm = callPackage ../development/libraries/gmm { }; + + gmp4 = callPackage ../development/libraries/gmp/4.3.2.nix { }; # required by older GHC versions + gmp5 = callPackage ../development/libraries/gmp/5.1.x.nix { }; + gmp6 = callPackage ../development/libraries/gmp/6.x.nix { }; + gmp = gmp6; + gmpxx = appendToName "with-cxx" (gmp.override { cxx = true; }); + + #GMP ex-satellite, so better keep it near gmp + mpfr = callPackage ../development/libraries/mpfr { }; + + mpfi = callPackage ../development/libraries/mpfi { }; + + mpfshell = callPackage ../development/tools/mpfshell { }; + + # A GMP fork + mpir = callPackage ../development/libraries/mpir {}; + + gnatcoll-core = callPackage ../development/libraries/ada/gnatcoll/core.nix { }; + + # gnatcoll-bindings repository + gnatcoll-gmp = callPackage ../development/libraries/ada/gnatcoll/bindings.nix { component = "gmp"; }; + gnatcoll-iconv = callPackage ../development/libraries/ada/gnatcoll/bindings.nix { component = "iconv"; }; + gnatcoll-lzma = callPackage ../development/libraries/ada/gnatcoll/bindings.nix { component = "lzma"; }; + gnatcoll-omp = callPackage ../development/libraries/ada/gnatcoll/bindings.nix { component = "omp"; }; + gnatcoll-python3 = callPackage ../development/libraries/ada/gnatcoll/bindings.nix { component = "python3"; }; + gnatcoll-readline = callPackage ../development/libraries/ada/gnatcoll/bindings.nix { component = "readline"; }; + gnatcoll-syslog = callPackage ../development/libraries/ada/gnatcoll/bindings.nix { component = "syslog"; }; + gnatcoll-zlib = callPackage ../development/libraries/ada/gnatcoll/bindings.nix { component = "zlib"; }; + + # gnatcoll-db repository + gnatcoll-postgres = callPackage ../development/libraries/ada/gnatcoll/db.nix { component = "postgres"; }; + gnatcoll-sql = callPackage ../development/libraries/ada/gnatcoll/db.nix { component = "sql"; }; + gnatcoll-sqlite = callPackage ../development/libraries/ada/gnatcoll/db.nix { component = "sqlite"; }; + gnatcoll-xref = callPackage ../development/libraries/ada/gnatcoll/db.nix { component = "xref"; }; + + gns3Packages = dontRecurseIntoAttrs (callPackage ../applications/networking/gns3 { }); + gns3-gui = gns3Packages.guiStable; + gns3-server = gns3Packages.serverStable; + + gobject-introspection = callPackage ../development/libraries/gobject-introspection { + nixStoreDir = config.nix.storeDir or builtins.storeDir; + inherit (darwin) cctools; + }; + + goocanvas = callPackage ../development/libraries/goocanvas { }; + goocanvas2 = callPackage ../development/libraries/goocanvas/2.x.nix { }; + goocanvas3 = callPackage ../development/libraries/goocanvas/3.x.nix { }; + goocanvasmm2 = callPackage ../development/libraries/goocanvasmm { }; + + gflags = callPackage ../development/libraries/gflags { }; + + gperftools = callPackage ../development/libraries/gperftools { }; + + grab-site = callPackage ../tools/backup/grab-site { }; + + grilo = callPackage ../development/libraries/grilo { }; + + grilo-plugins = callPackage ../development/libraries/grilo-plugins { }; + + grpc = callPackage ../development/libraries/grpc { }; + + gsettings-qt = libsForQt5.callPackage ../development/libraries/gsettings-qt { }; + + gst_all_1 = recurseIntoAttrs(callPackage ../development/libraries/gstreamer { + callPackage = newScope (gst_all_1 // { libav = pkgs.ffmpeg; }); + inherit (darwin.apple_sdk.frameworks) AudioToolbox AVFoundation Cocoa CoreFoundation CoreMedia CoreServices CoreVideo DiskArbitration Foundation IOKit MediaToolbox OpenGL VideoToolbox; + }); + + gusb = callPackage ../development/libraries/gusb { }; + + qt-mobility = callPackage ../development/libraries/qt-mobility {}; + + + qtstyleplugin-kvantum-qt4 = callPackage ../development/libraries/qtstyleplugin-kvantum-qt4 { }; + + qxmpp = libsForQt5.callPackage ../development/libraries/qxmpp {}; + + gnet = callPackage ../development/libraries/gnet { }; + + gnu-config = callPackage ../development/libraries/gnu-config { }; + + gnu-efi = if stdenv.hostPlatform.isEfi + then callPackage ../development/libraries/gnu-efi { } + else null; + + gnutls = callPackage ../development/libraries/gnutls { + inherit (darwin.apple_sdk.frameworks) Security; + util-linux = util-linuxMinimal; # break the cyclic dependency + autoconf = buildPackages.autoconf269; + }; + + gnutls-kdh = callPackage ../development/libraries/gnutls-kdh/3.5.nix { + gperf = gperf_3_0; + }; + + gpac = callPackage ../applications/video/gpac { }; + + gpgme = callPackage ../development/libraries/gpgme { }; + + pgpdump = callPackage ../tools/security/pgpdump { }; + + pgpkeyserver-lite = callPackage ../servers/web-apps/pgpkeyserver-lite {}; + + pgweb = callPackage ../development/tools/database/pgweb { }; + + gpshell = callPackage ../development/tools/misc/gpshell { }; + + grantlee = callPackage ../development/libraries/grantlee { }; + + gsasl = callPackage ../development/libraries/gsasl { }; + + gsl = callPackage ../development/libraries/gsl { }; + + gsl_1 = callPackage ../development/libraries/gsl/gsl-1_16.nix { }; + + gsm = callPackage ../development/libraries/gsm {}; + + gsoap = callPackage ../development/libraries/gsoap { }; + + gsound = callPackage ../development/libraries/gsound { }; + + gss = callPackage ../development/libraries/gss { }; + + gtkimageview = callPackage ../development/libraries/gtkimageview { }; + + gtkmathview = callPackage ../development/libraries/gtkmathview { }; + + glib = callPackage ../development/libraries/glib (let + glib-untested = glib.override { doCheck = false; }; + in { + # break dependency cycles + # these things are only used for tests, they don't get into the closure + shared-mime-info = shared-mime-info.override { glib = glib-untested; }; + desktop-file-utils = desktop-file-utils.override { glib = glib-untested; }; + dbus = dbus.override { systemd = null; }; + }); + + glibmm = callPackage ../development/libraries/glibmm { }; + + glibmm_2_68 = callPackage ../development/libraries/glibmm/2.68.nix { + inherit (darwin.apple_sdk.frameworks) Cocoa; + }; + + glib-networking = callPackage ../development/libraries/glib-networking {}; + + glib-testing = callPackage ../development/libraries/glib-testing { }; + + glirc = haskell.lib.compose.justStaticExecutables haskellPackages.glirc; + + gom = callPackage ../development/libraries/gom { }; + + ace = callPackage ../development/libraries/ace { }; + + atk = callPackage ../development/libraries/atk { }; + + atkmm = callPackage ../development/libraries/atkmm { }; + + atkmm_2_36 = callPackage ../development/libraries/atkmm/2.36.nix { }; + + pixman = callPackage ../development/libraries/pixman { }; + + cairo = callPackage ../development/libraries/cairo { }; + + cairomm = callPackage ../development/libraries/cairomm { }; + + cairomm_1_16 = callPackage ../development/libraries/cairomm/1.16.nix { + inherit (darwin.apple_sdk.frameworks) ApplicationServices; + }; + + pango = callPackage ../development/libraries/pango { + harfbuzz = harfbuzz.override { withCoreText = stdenv.isDarwin; }; + }; + + pangolin = callPackage ../development/libraries/pangolin { + inherit (darwin.apple_sdk.frameworks) Carbon Cocoa; + }; + + pangomm = callPackage ../development/libraries/pangomm { + inherit (darwin.apple_sdk.frameworks) ApplicationServices; + }; + + pangomm_2_48 = callPackage ../development/libraries/pangomm/2.48.nix { + inherit (darwin.apple_sdk.frameworks) ApplicationServices; + }; + + pangomm_2_42 = callPackage ../development/libraries/pangomm/2.42.nix { + inherit (darwin.apple_sdk.frameworks) ApplicationServices; + }; + + gdata-sharp = callPackage ../development/libraries/gdata-sharp { }; + + gdk-pixbuf = callPackage ../development/libraries/gdk-pixbuf { }; + + gdk-pixbuf-xlib = callPackage ../development/libraries/gdk-pixbuf/xlib.nix { }; + + gnome-menus = callPackage ../development/libraries/gnome-menus { }; + + elementary-cmake-modules = callPackage ../development/libraries/elementary-cmake-modules { }; + + gtk2 = callPackage ../development/libraries/gtk/2.x.nix { + inherit (darwin.apple_sdk.frameworks) AppKit Cocoa; + }; + + gtk2-x11 = gtk2.override { + cairo = cairo.override { x11Support = true; }; + pango = pango.override { cairo = cairo.override { x11Support = true; }; x11Support = true; }; + gdktarget = "x11"; + }; + + gtkextra = callPackage ../development/libraries/gtkextra { }; + + gtk3 = callPackage ../development/libraries/gtk/3.x.nix { + inherit (darwin.apple_sdk.frameworks) AppKit Cocoa QuartzCore; + }; + + gtk4 = callPackage ../development/libraries/gtk/4.x.nix { + inherit (darwin.apple_sdk.frameworks) AppKit Cocoa; + }; + + + # On darwin gtk uses cocoa by default instead of x11. + gtk3-x11 = gtk3.override { + cairo = cairo.override { x11Support = true; }; + pango = pango.override { cairo = cairo.override { x11Support = true; }; x11Support = true; }; + x11Support = true; + }; + + gtkmm2 = callPackage ../development/libraries/gtkmm/2.x.nix { }; + gtkmm3 = callPackage ../development/libraries/gtkmm/3.x.nix { }; + gtkmm4 = callPackage ../development/libraries/gtkmm/4.x.nix { }; + + gtk_engines = callPackage ../development/libraries/gtk-engines { }; + + gtk-engine-bluecurve = callPackage ../development/libraries/gtk-engine-bluecurve { }; + + gtk-engine-murrine = callPackage ../development/libraries/gtk-engine-murrine { }; + + gtk-sharp-2_0 = callPackage ../development/libraries/gtk-sharp/2.0.nix { }; + + gtk-sharp-3_0 = callPackage ../development/libraries/gtk-sharp/3.0.nix { }; + + gtk-sharp-beans = callPackage ../development/libraries/gtk-sharp-beans { }; + + gtk-mac-integration = callPackage ../development/libraries/gtk-mac-integration { + gtk = gtk3; + }; + + gtk-mac-integration-gtk2 = gtk-mac-integration.override { + gtk = gtk2; + }; + + gtk-mac-integration-gtk3 = gtk-mac-integration; + + gtk-mac-bundler = callPackage ../development/tools/gtk-mac-bundler {}; + + gtksourceview = gtksourceview3; + + gtksourceview3 = callPackage ../development/libraries/gtksourceview/3.x.nix { }; + + gtksourceview4 = callPackage ../development/libraries/gtksourceview/4.x.nix { }; + + gtksourceview5 = callPackage ../development/libraries/gtksourceview/5.x.nix { }; + + gtksourceviewmm = callPackage ../development/libraries/gtksourceviewmm { }; + + gtksourceviewmm4 = callPackage ../development/libraries/gtksourceviewmm/4.x.nix { }; + + gtkspell2 = callPackage ../development/libraries/gtkspell { enchant = enchant1; }; + + gtkspell3 = callPackage ../development/libraries/gtkspell/3.nix { }; + + gtkspellmm = callPackage ../development/libraries/gtkspellmm { }; + + gtk-layer-shell = callPackage ../development/libraries/gtk-layer-shell { }; + + gts = callPackage ../development/libraries/gts { }; + + gumbo = callPackage ../development/libraries/gumbo { }; + + gvfs = callPackage ../development/libraries/gvfs { }; + + gvm-libs = callPackage ../development/libraries/gvm-libs { }; + + gwenhywfar = callPackage ../development/libraries/aqbanking/gwenhywfar.nix { }; + + hamlib = hamlib_3; + hamlib_3 = callPackage ../development/libraries/hamlib { }; + hamlib_4 = callPackage ../development/libraries/hamlib/4.nix { }; + + heimdal = callPackage ../development/libraries/kerberos/heimdal.nix { + inherit (darwin.apple_sdk.frameworks) CoreFoundation Security SystemConfiguration; + autoreconfHook = buildPackages.autoreconfHook269; + }; + libheimdal = heimdal; + + harfbuzz = callPackage ../development/libraries/harfbuzz { + inherit (darwin.apple_sdk.frameworks) ApplicationServices CoreText; + }; + + harfbuzzFull = harfbuzz.override { + withCoreText = stdenv.isDarwin; + withGraphite2 = true; + withIcu = true; + }; + + hawknl = callPackage ../development/libraries/hawknl { }; + + haxor-news = callPackage ../applications/misc/haxor-news { }; + + hdt = callPackage ../misc/hdt {}; + + hfinger = callPackage ../tools/security/hfinger { }; + + herqq = libsForQt5.callPackage ../development/libraries/herqq { }; + + hidapi = callPackage ../development/libraries/hidapi { + inherit (darwin.apple_sdk.frameworks) Cocoa IOKit; + # TODO: remove once `udev` is `systemdMinimal` everywhere. + udev = systemdMinimal; + }; + + highfive = callPackage ../development/libraries/highfive { }; + + highfive-mpi = highfive.override { hdf5 = hdf5-mpi; }; + + hiredis = callPackage ../development/libraries/hiredis { }; + + hiredis-vip = callPackage ../development/libraries/hiredis-vip { }; + + hivex = callPackage ../development/libraries/hivex { + autoreconfHook = buildPackages.autoreconfHook269; + }; + + hound = callPackage ../development/tools/misc/hound { }; + + hpx = callPackage ../development/libraries/hpx { + boost = boost17x; + asio = asio.override { boost = boost17x; }; + }; + + hspell = callPackage ../development/libraries/hspell { }; + + hspellDicts = callPackage ../development/libraries/hspell/dicts.nix { }; + + hsqldb = callPackage ../development/libraries/java/hsqldb { }; + + hstr = callPackage ../applications/misc/hstr { }; + + htmlcxx = callPackage ../development/libraries/htmlcxx { }; + + http-parser = callPackage ../development/libraries/http-parser { }; + + hubble = callPackage ../applications/networking/cluster/hubble { }; + + hunspell = callPackage ../development/libraries/hunspell { }; + + hunspellDicts = recurseIntoAttrs (callPackages ../development/libraries/hunspell/dictionaries.nix {}); + + hunspellWithDicts = dicts: callPackage ../development/libraries/hunspell/wrapper.nix { inherit dicts; }; + + hwloc = callPackage ../development/libraries/hwloc {}; + + inherit (callPackage ../development/tools/misc/hydra { }) + hydra-unstable; + + hydra-cli = callPackage ../development/tools/misc/hydra-cli { }; + + hydraAntLogger = callPackage ../development/libraries/java/hydra-ant-logger { }; + + hydra-check = with python3.pkgs; toPythonApplication hydra-check; + + hyena = callPackage ../development/libraries/hyena { }; + + hyperscan = callPackage ../development/libraries/hyperscan { }; + + icu58 = callPackage (import ../development/libraries/icu/58.nix fetchurl) ({ + nativeBuildRoot = buildPackages.icu58.override { buildRootOnly = true; }; + } // + (lib.optionalAttrs (stdenv.hostPlatform.isi686 && stdenv.cc.isGNU) { + stdenv = gcc6Stdenv; # with gcc-7: undefined reference to `__divmoddi4' + })); + icu59 = callPackage ../development/libraries/icu/59.nix ({ + nativeBuildRoot = buildPackages.icu59.override { buildRootOnly = true; }; + } // (lib.optionalAttrs (stdenv.hostPlatform.isi686 && stdenv.cc.isGNU) { + stdenv = gcc6Stdenv; # with gcc-7: undefined reference to `__divmoddi4' + })); + icu60 = callPackage ../development/libraries/icu/60.nix ({ + nativeBuildRoot = buildPackages.icu60.override { buildRootOnly = true; }; + } // (lib.optionalAttrs (stdenv.hostPlatform.isi686 && stdenv.cc.isGNU) { + stdenv = gcc6Stdenv; # with gcc-7: undefined reference to `__divmoddi4' + })); + icu63 = callPackage ../development/libraries/icu/63.nix ({ + nativeBuildRoot = buildPackages.icu63.override { buildRootOnly = true; }; + } // (lib.optionalAttrs (stdenv.hostPlatform.isi686 && stdenv.cc.isGNU) { + stdenv = gcc6Stdenv; # with gcc-7: undefined reference to `__divmoddi4' + })); + icu64 = callPackage ../development/libraries/icu/64.nix ({ + nativeBuildRoot = buildPackages.icu64.override { buildRootOnly = true; }; + } // (lib.optionalAttrs (stdenv.hostPlatform.isi686 && stdenv.cc.isGNU) { + stdenv = gcc6Stdenv; # with gcc-7: undefined reference to `__divmoddi4' + })); + icu65 = callPackage ../development/libraries/icu/65.nix ({ + nativeBuildRoot = buildPackages.icu65.override { buildRootOnly = true; }; + } // (lib.optionalAttrs (stdenv.hostPlatform.isi686 && stdenv.cc.isGNU) { + stdenv = gcc6Stdenv; # with gcc-7: undefined reference to `__divmoddi4' + })); + icu66 = callPackage ../development/libraries/icu/66.nix ({ + nativeBuildRoot = buildPackages.icu66.override { buildRootOnly = true; }; + } // (lib.optionalAttrs (stdenv.hostPlatform.isi686 && stdenv.cc.isGNU) { + stdenv = gcc6Stdenv; # with gcc-7: undefined reference to `__divmoddi4' + })); + icu67 = callPackage ../development/libraries/icu/67.nix ({ + nativeBuildRoot = buildPackages.icu67.override { buildRootOnly = true; }; + } // (lib.optionalAttrs (stdenv.hostPlatform.isi686 && stdenv.cc.isGNU) { + stdenv = gcc6Stdenv; # with gcc-7: undefined reference to `__divmoddi4' + })); + icu68 = callPackage ../development/libraries/icu/68.nix ({ + nativeBuildRoot = buildPackages.icu68.override { buildRootOnly = true; }; + } // (lib.optionalAttrs (stdenv.hostPlatform.isi686 && stdenv.cc.isGNU) { + stdenv = gcc6Stdenv; # with gcc-7: undefined reference to `__divmoddi4' + })); + icu69 = callPackage ../development/libraries/icu/69.nix ({ + nativeBuildRoot = buildPackages.icu69.override { buildRootOnly = true; }; + } // (lib.optionalAttrs (stdenv.hostPlatform.isi686 && stdenv.cc.isGNU) { + stdenv = gcc6Stdenv; # with gcc-7: undefined reference to `__divmoddi4' + })); + icu70 = callPackage ../development/libraries/icu/70.nix ({ + nativeBuildRoot = buildPackages.icu70.override { buildRootOnly = true; }; + } // (lib.optionalAttrs (stdenv.hostPlatform.isi686 && stdenv.cc.isGNU) { + stdenv = gcc6Stdenv; # with gcc-7: undefined reference to `__divmoddi4' + })); + + icu = icu70; + + id3lib = callPackage ../development/libraries/id3lib { }; + + idasen = with python3Packages; toPythonApplication idasen; + + ilbc = callPackage ../development/libraries/ilbc { }; + + ilixi = callPackage ../development/libraries/ilixi { }; + + ilmbase = callPackage ../development/libraries/ilmbase { }; + + imgui = callPackage ../development/libraries/imgui { }; + + imlib = callPackage ../development/libraries/imlib { + libpng = libpng12; + }; + + imv = callPackage ../applications/graphics/imv { }; + + iml = callPackage ../development/libraries/iml { }; + + imlib2 = callPackage ../development/libraries/imlib2 { }; + imlib2-nox = imlib2.override { + x11Support = false; + }; + + imlibsetroot = callPackage ../applications/graphics/imlibsetroot { libXinerama = xorg.libXinerama; } ; + + impy = callPackage ../development/libraries/impy { }; + + ineffassign = callPackage ../development/tools/ineffassign { }; + + ijs = callPackage ../development/libraries/ijs { }; + + itktcl = callPackage ../development/libraries/itktcl { }; + incrtcl = callPackage ../development/libraries/incrtcl { }; + + indicator-application-gtk2 = callPackage ../development/libraries/indicator-application/gtk2.nix { }; + indicator-application-gtk3 = callPackage ../development/libraries/indicator-application/gtk3.nix { }; + + indicator-sound-switcher = callPackage ../applications/audio/indicator-sound-switcher { }; + + indilib = callPackage ../development/libraries/science/astronomy/indilib { }; + indi-full = callPackage ../development/libraries/science/astronomy/indilib/indi-full.nix { }; + + inih = callPackage ../development/libraries/inih { }; + + iniparser = callPackage ../development/libraries/iniparser { }; + + intel-gmmlib = callPackage ../development/libraries/intel-gmmlib { }; + + intel-media-driver = callPackage ../development/libraries/intel-media-driver { }; + + intltool = callPackage ../development/tools/misc/intltool { }; + + ios-cross-compile = callPackage ../development/compilers/ios-cross-compile/9.2.nix {}; + + ip2location-c = callPackage ../development/libraries/ip2location-c { }; + + irrlicht = if !stdenv.isDarwin then + callPackage ../development/libraries/irrlicht { } + else callPackage ../development/libraries/irrlicht/mac.nix { + inherit (darwin.apple_sdk.frameworks) Cocoa OpenGL IOKit; + }; + + isocodes = callPackage ../development/libraries/iso-codes { }; + + iso-flags = callPackage ../data/icons/iso-flags { }; + + ispc = callPackage ../development/compilers/ispc { + inherit (llvmPackages) stdenv; + }; + + isso = callPackage ../servers/isso { + nodejs = nodejs-14_x; + }; + + itk4 = callPackage ../development/libraries/itk/4.x.nix { + inherit (darwin.apple_sdk.frameworks) Cocoa; + }; + + itk = callPackage ../development/libraries/itk { + inherit (darwin.apple_sdk.frameworks) Cocoa; + }; + + jama = callPackage ../development/libraries/jama { }; + + jansson = callPackage ../development/libraries/jansson { }; + + jasper = callPackage ../development/libraries/jasper { }; + + jbig2dec = callPackage ../development/libraries/jbig2dec { }; + + jcal = callPackage ../development/libraries/jcal { }; + + jbigkit = callPackage ../development/libraries/jbigkit { }; + + jemalloc = callPackage ../development/libraries/jemalloc { + # tests fail with LLVM 11+ + # https://github.com/jemalloc/jemalloc/issues/2091 + stdenv = if stdenv.cc.isClang then llvmPackages_10.stdenv else stdenv; + }; + + jose = callPackage ../development/libraries/jose { }; + + jshon = callPackage ../development/tools/parsing/jshon { }; + + json2hcl = callPackage ../development/tools/json2hcl { }; + + json2yaml = haskell.lib.compose.justStaticExecutables haskellPackages.json2yaml; + + json-glib = callPackage ../development/libraries/json-glib { }; + + json_c = callPackage ../development/libraries/json-c { }; + + jsoncpp = callPackage ../development/libraries/jsoncpp { }; + + jsonnet = callPackage ../development/compilers/jsonnet { }; + + jsonnet-bundler = callPackage ../development/tools/jsonnet-bundler { }; + + jrsonnet = callPackage ../development/compilers/jrsonnet { }; + + go-jsonnet = callPackage ../development/compilers/go-jsonnet { }; + + jsonrpc-glib = callPackage ../development/libraries/jsonrpc-glib { }; + + jxrlib = callPackage ../development/libraries/jxrlib { }; + + libjson = callPackage ../development/libraries/libjson { }; + + libb64 = callPackage ../development/libraries/libb64 { }; + + judy = callPackage ../development/libraries/judy { }; + + kddockwidgets = libsForQt5.callPackage ../development/libraries/kddockwidgets { }; + + keybinder = callPackage ../development/libraries/keybinder { + automake = automake111x; + lua = lua5_1; + }; + + keybinder3 = callPackage ../development/libraries/keybinder3 { + gtk3 = if stdenv.isDarwin then gtk3-x11 else gtk3; + automake = automake111x; + }; + + krb5 = callPackage ../development/libraries/kerberos/krb5.nix { + inherit (buildPackages.darwin) bootstrap_cmds; + }; + krb5Full = krb5; + libkrb5 = krb5.override { type = "lib"; }; + + kronosnet = callPackage ../development/libraries/kronosnet { }; + + l-smash = callPackage ../development/libraries/l-smash { + stdenv = gccStdenv; + }; + + languageMachines = recurseIntoAttrs (import ../development/libraries/languagemachines/packages.nix { + inherit pkgs; + }); + + lasem = callPackage ../development/libraries/lasem { }; + + lasso = callPackage ../development/libraries/lasso { }; + + LAStools = callPackage ../development/libraries/LAStools { }; + + LASzip = callPackage ../development/libraries/LASzip { }; + LASzip2 = callPackage ../development/libraries/LASzip/LASzip2.nix { }; + + lcms = lcms1; + + lcms1 = callPackage ../development/libraries/lcms { }; + + lcms2 = callPackage ../development/libraries/lcms2 { }; + + ldacbt = callPackage ../development/libraries/ldacbt { }; + + ldb = callPackage ../development/libraries/ldb { }; + + lensfun = callPackage ../development/libraries/lensfun {}; + + lesstif = callPackage ../development/libraries/lesstif { }; + + leveldb = callPackage ../development/libraries/leveldb { }; + + lmdb = callPackage ../development/libraries/lmdb { }; + + lmdbxx = callPackage ../development/libraries/lmdbxx { }; + + lemon-graph = callPackage ../development/libraries/lemon-graph { }; + + levmar = callPackage ../development/libraries/levmar { }; + + leptonica = callPackage ../development/libraries/leptonica { }; + + lib2geom = callPackage ../development/libraries/lib2geom { }; + + lib3ds = callPackage ../development/libraries/lib3ds { }; + + lib3mf = callPackage ../development/libraries/lib3mf { }; + + libAfterImage = callPackage ../development/libraries/libAfterImage { }; + + libaacs = callPackage ../development/libraries/libaacs { }; + + libaal = callPackage ../development/libraries/libaal { }; + + libabigail = callPackage ../development/libraries/libabigail { }; + + libaccounts-glib = callPackage ../development/libraries/libaccounts-glib { }; + + libacr38u = callPackage ../tools/security/libacr38u { + inherit (darwin.apple_sdk.frameworks) IOKit; + }; + + libad9361 = callPackage ../development/libraries/libad9361 { }; + + libadwaita = callPackage ../development/libraries/libadwaita { }; + + libaec = callPackage ../development/libraries/libaec { }; + + libagar = callPackage ../development/libraries/libagar { }; + libagar_test = callPackage ../development/libraries/libagar/libagar_test.nix { }; + + libao = callPackage ../development/libraries/libao { + usePulseAudio = config.pulseaudio or stdenv.isLinux; + inherit (darwin.apple_sdk.frameworks) CoreAudio CoreServices AudioUnit; + }; + + libaosd = callPackage ../development/libraries/libaosd { }; + + libabw = callPackage ../development/libraries/libabw { }; + + libamqpcpp = callPackage ../development/libraries/libamqpcpp { }; + + libantlr3c = callPackage ../development/libraries/libantlr3c {}; + + libaom = callPackage ../development/libraries/libaom { }; + + libappindicator-gtk2 = libappindicator.override { gtkVersion = "2"; }; + libappindicator-gtk3 = libappindicator.override { gtkVersion = "3"; }; + libappindicator = callPackage ../development/libraries/libappindicator { }; + + libayatana-appindicator-gtk2 = libayatana-appindicator.override { gtkVersion = "2"; }; + libayatana-appindicator-gtk3 = libayatana-appindicator.override { gtkVersion = "3"; }; + libayatana-appindicator = callPackage ../development/libraries/libayatana-appindicator { }; + + libargs = callPackage ../development/libraries/libargs { }; + + libarchive = callPackage ../development/libraries/libarchive { + autoreconfHook = buildPackages.autoreconfHook269; + }; + + libarchive-qt = libsForQt5.callPackage ../development/libraries/libarchive-qt { }; + + libasr = callPackage ../development/libraries/libasr { }; + + libass = callPackage ../development/libraries/libass { }; + + libast = callPackage ../development/libraries/libast { }; + + libassuan = callPackage ../development/libraries/libassuan { }; + + libasyncns = callPackage ../development/libraries/libasyncns { }; + + libatomic_ops = callPackage ../development/libraries/libatomic_ops {}; + + libaudclient = callPackage ../development/libraries/libaudclient { }; + + libaudec = callPackage ../development/libraries/libaudec { }; + + libav = libav_11; # branch 11 is API-compatible with branch 10 + libav_all = callPackages ../development/libraries/libav { }; + inherit (libav_all) libav_0_8 libav_11 libav_12; + + libavc1394 = callPackage ../development/libraries/libavc1394 { }; + + libavif = callPackage ../development/libraries/libavif { }; + + libb2 = callPackage ../development/libraries/libb2 { }; + + libbacktrace = callPackage ../development/libraries/libbacktrace { }; + + libbap = callPackage ../development/libraries/libbap { + inherit (ocaml-ng.ocamlPackages) bap ocaml findlib ctypes; + }; + + libbaseencode = callPackage ../development/libraries/libbaseencode { }; + + libbass = (callPackage ../development/libraries/audio/libbass { }).bass; + libbass_fx = (callPackage ../development/libraries/audio/libbass { }).bass_fx; + + libbde = callPackage ../development/libraries/libbde { }; + + libbencodetools = callPackage ../development/libraries/libbencodetools { }; + + libbluedevil = callPackage ../development/libraries/libbluedevil { }; + + libbdplus = callPackage ../development/libraries/libbdplus { }; + + libblockdev = callPackage ../development/libraries/libblockdev { }; + + libblocksruntime = callPackage ../development/libraries/libblocksruntime { }; + + libbluray = callPackage ../development/libraries/libbluray { + inherit (darwin.apple_sdk.frameworks) DiskArbitration; + }; + + libbs2b = callPackage ../development/libraries/audio/libbs2b { }; + + libbson = callPackage ../development/libraries/libbson { }; + + libburn = callPackage ../development/libraries/libburn { }; + + libbytesize = callPackage ../development/libraries/libbytesize { }; + + libcaca = callPackage ../development/libraries/libcaca { + inherit (xorg) libX11 libXext; + }; + + libcacard = callPackage ../development/libraries/libcacard { }; + + libcamera = callPackage ../development/libraries/libcamera { }; + + libcanberra = callPackage ../development/libraries/libcanberra { + inherit (darwin.apple_sdk.frameworks) Carbon CoreServices; + }; + libcanberra-gtk2 = pkgs.libcanberra.override { + gtkSupport = "gtk2"; + }; + libcanberra-gtk3 = pkgs.libcanberra.override { + gtkSupport = "gtk3"; + }; + + libcanberra_kde = if (config.kde_runtime.libcanberraWithoutGTK or true) + then pkgs.libcanberra + else pkgs.libcanberra-gtk2; + + libcbor = callPackage ../development/libraries/libcbor { }; + + libccd = callPackage ../development/libraries/libccd { }; + + libcec = callPackage ../development/libraries/libcec { + libraspberrypi = null; + }; + + libcec_platform = callPackage ../development/libraries/libcec/platform.nix { }; + + libcef = callPackage ../development/libraries/libcef {}; + + libcello = callPackage ../development/libraries/libcello {}; + + libcerf = callPackage ../development/libraries/libcerf {}; + + libcdada = callPackage ../development/libraries/libcdada { }; + + libcdaudio = callPackage ../development/libraries/libcdaudio { }; + + libcddb = callPackage ../development/libraries/libcddb { }; + + libcdio = callPackage ../development/libraries/libcdio { + inherit (darwin.apple_sdk.frameworks) Carbon IOKit; + }; + + libcdio-paranoia = callPackage ../development/libraries/libcdio-paranoia { + inherit (darwin.apple_sdk.frameworks) DiskArbitration IOKit; + }; + + libcdr = callPackage ../development/libraries/libcdr { lcms = lcms2; }; + + libchamplain = callPackage ../development/libraries/libchamplain { }; + + libchardet = callPackage ../development/libraries/libchardet { }; + + libchewing = callPackage ../development/libraries/libchewing { }; + + libchipcard = callPackage ../development/libraries/aqbanking/libchipcard.nix { }; + + libcrafter = callPackage ../development/libraries/libcrafter { }; + + libcrossguid = callPackage ../development/libraries/libcrossguid { }; + + libuchardet = callPackage ../development/libraries/libuchardet { }; + + libchop = callPackage ../development/libraries/libchop { }; + + libcint = callPackage ../development/libraries/libcint { }; + + libclc = callPackage ../development/libraries/libclc { }; + + libcli = callPackage ../development/libraries/libcli { }; + + libclthreads = callPackage ../development/libraries/libclthreads { }; + + libclxclient = callPackage ../development/libraries/libclxclient { }; + + libconfuse = callPackage ../development/libraries/libconfuse { }; + + libcangjie = callPackage ../development/libraries/libcangjie { }; + + libcollectdclient = callPackage ../development/libraries/libcollectdclient { }; + + libcredis = callPackage ../development/libraries/libcredis { }; + + libctb = callPackage ../development/libraries/libctb { }; + + libctemplate = callPackage ../development/libraries/libctemplate { }; + + libcotp = callPackage ../development/libraries/libcotp { }; + + libcouchbase = callPackage ../development/libraries/libcouchbase { }; + + libcue = callPackage ../development/libraries/libcue { }; + + libcutl = callPackage ../development/libraries/libcutl { }; + + libdaemon = callPackage ../development/libraries/libdaemon { }; + + libdap = callPackage ../development/libraries/libdap { }; + + libdatrie = callPackage ../development/libraries/libdatrie { }; + + libdazzle = callPackage ../development/libraries/libdazzle { }; + + libdbi = callPackage ../development/libraries/libdbi { }; + + libdbiDriversBase = libdbiDrivers.override { + libmysqlclient = null; + sqlite = null; + }; + + libdbiDrivers = callPackage ../development/libraries/libdbi-drivers { }; + + libunity = callPackage ../development/libraries/libunity { }; + + libdbusmenu = callPackage ../development/libraries/libdbusmenu { }; + libdbusmenu-gtk2 = libdbusmenu.override { gtkVersion = "2"; }; + libdbusmenu-gtk3 = libdbusmenu.override { gtkVersion = "3"; }; + + libdbusmenu_qt = callPackage ../development/libraries/libdbusmenu-qt { }; + + libdc1394 = callPackage ../development/libraries/libdc1394 { + inherit (darwin.apple_sdk.frameworks) CoreServices; + }; + + libde265 = callPackage ../development/libraries/libde265 {}; + + libdeflate = callPackage ../development/libraries/libdeflate { }; + + libdeltachat = callPackage ../development/libraries/libdeltachat { + inherit (darwin.apple_sdk.frameworks) CoreFoundation Security; + inherit (darwin) libiconv; + }; + + libdevil = callPackage ../development/libraries/libdevil { + inherit (darwin.apple_sdk.frameworks) OpenGL; + }; + + libdevil-nox = libdevil.override { + libX11 = null; + libGL = null; + }; + + libdecor = callPackage ../development/libraries/libdecor { }; + + libdigidoc = callPackage ../development/libraries/libdigidoc { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + libdigidocpp = callPackage ../development/libraries/libdigidocpp { }; + + libdiscid = callPackage ../development/libraries/libdiscid { }; + + libdivecomputer = callPackage ../development/libraries/libdivecomputer { }; + + libdivsufsort = callPackage ../development/libraries/libdivsufsort { }; + + libdmtx = callPackage ../development/libraries/libdmtx { }; + + libdmapsharing = callPackage ../development/libraries/libdmapsharing { }; + + libdnet = callPackage ../development/libraries/libdnet { }; + + libdnf = callPackage ../tools/package-management/libdnf { }; + + libdrm = callPackage ../development/libraries/libdrm { }; + + libdv = callPackage ../development/libraries/libdv { }; + + libdvbpsi = callPackage ../development/libraries/libdvbpsi { }; + + libdwg = callPackage ../development/libraries/libdwg { }; + + libdvdcss = callPackage ../development/libraries/libdvdcss { + inherit (darwin) IOKit; + }; + + libdvdnav = callPackage ../development/libraries/libdvdnav { }; + libdvdnav_4_2_1 = callPackage ../development/libraries/libdvdnav/4.2.1.nix { + libdvdread = libdvdread_4_9_9; + }; + + libdvdread = callPackage ../development/libraries/libdvdread { }; + libdvdread_4_9_9 = callPackage ../development/libraries/libdvdread/4.9.9.nix { }; + + inherit (callPackage ../development/libraries/libdwarf { }) + libdwarf dwarfdump; + + libe57format = callPackage ../development/libraries/libe57format { }; + + libeatmydata = callPackage ../development/libraries/libeatmydata { + autoreconfHook = buildPackages.autoreconfHook269; + }; + + libeb = callPackage ../development/libraries/libeb { }; + + libebml = callPackage ../development/libraries/libebml { }; + + libebur128 = callPackage ../development/libraries/libebur128 { }; + + libedit = callPackage ../development/libraries/libedit { }; + + libelf = if stdenv.isFreeBSD + then callPackage ../development/libraries/libelf-freebsd { } + else callPackage ../development/libraries/libelf { }; + + libelfin = callPackage ../development/libraries/libelfin { }; + + libetpan = callPackage ../development/libraries/libetpan { }; + + libexecinfo = callPackage ../development/libraries/libexecinfo { }; + + libfaketime = callPackage ../development/libraries/libfaketime { }; + + libfakekey = callPackage ../development/libraries/libfakekey { }; + + libfido2 = callPackage ../development/libraries/libfido2 { + udev = systemdMinimal; + }; + + libfilezilla = callPackage ../development/libraries/libfilezilla { + inherit (darwin.apple_sdk.frameworks) ApplicationServices; + }; + + libfishsound = callPackage ../development/libraries/libfishsound { }; + + libfm = callPackage ../development/libraries/libfm { }; + libfm-extra = libfm.override { + extraOnly = true; + }; + + libfprint = callPackage ../development/libraries/libfprint { }; + + libfprint-tod = callPackage ../development/libraries/libfprint-tod { }; + + libfprint-2-tod1-goodix = callPackage ../development/libraries/libfprint-2-tod1-goodix { }; + + libfprint-2-tod1-vfs0090 = callPackage ../development/libraries/libfprint-2-tod1-vfs0090 { }; + + libfpx = callPackage ../development/libraries/libfpx { }; + + libgadu = callPackage ../development/libraries/libgadu { }; + + libgbinder = callPackage ../development/libraries/libgbinder { }; + + libgda = callPackage ../development/libraries/libgda { }; + + libgda6 = callPackage ../development/libraries/libgda/6.x.nix { }; + + libgdamm = callPackage ../development/libraries/libgdamm { }; + + libgdata = callPackage ../development/libraries/libgdata { }; + + libgee = callPackage ../development/libraries/libgee { }; + + libgepub = callPackage ../development/libraries/libgepub { }; + + libgig = callPackage ../development/libraries/libgig { }; + + libglibutil = callPackage ../development/libraries/libglibutil { }; + + libgnome-keyring = callPackage ../development/libraries/libgnome-keyring { }; + libgnome-keyring3 = gnome.libgnome-keyring; + + libgnome-games-support = callPackage ../development/libraries/libgnome-games-support { }; + + libgnomekbd = callPackage ../development/libraries/libgnomekbd { }; + + libglvnd = callPackage ../development/libraries/libglvnd { }; + + libgnurl = callPackage ../development/libraries/libgnurl { }; + + libgringotts = callPackage ../development/libraries/libgringotts { }; + + libgrss = callPackage ../development/libraries/libgrss { }; + + libgweather = callPackage ../development/libraries/libgweather { }; + + libgxps = callPackage ../development/libraries/libgxps { }; + + libiio = callPackage ../development/libraries/libiio { + python = python3; + }; + + libinjection = callPackage ../development/libraries/libinjection { }; + + libinklevel = callPackage ../development/libraries/libinklevel { }; + + libnats-c = callPackage ../development/libraries/libnats-c { }; + + liburing = callPackage ../development/libraries/liburing { }; + + librseq = callPackage ../development/libraries/librseq { }; + + libseccomp = callPackage ../development/libraries/libseccomp { }; + + libsecret = callPackage ../development/libraries/libsecret { }; + + libserdes = callPackage ../development/libraries/libserdes { }; + + libserialport = callPackage ../development/libraries/libserialport { }; + + libsignal-protocol-c = callPackage ../development/libraries/libsignal-protocol-c { }; + + libsignon-glib = callPackage ../development/libraries/libsignon-glib { }; + + libsoundio = callPackage ../development/libraries/libsoundio { + inherit (darwin.apple_sdk.frameworks) AudioUnit; + }; + + libsystemtap = callPackage ../development/libraries/libsystemtap { }; + + libgtop = callPackage ../development/libraries/libgtop {}; + + libLAS = callPackage ../development/libraries/libLAS { + boost = boost172; + }; + + liblaxjson = callPackage ../development/libraries/liblaxjson { }; + + liblo = callPackage ../development/libraries/liblo { }; + + liblscp = callPackage ../development/libraries/liblscp { }; + + libe-book = callPackage ../development/libraries/libe-book { + icu = icu67; + }; + + libechonest = callPackage ../development/libraries/libechonest { }; + + libemf2svg = callPackage ../development/libraries/libemf2svg { }; + + libev = callPackage ../development/libraries/libev { }; + + libevent = callPackage ../development/libraries/libevent { }; + + libewf = callPackage ../development/libraries/libewf { }; + + libexif = callPackage ../development/libraries/libexif { }; + + libexosip = callPackage ../development/libraries/exosip {}; + + libexsid = callPackage ../development/libraries/libexsid { }; + + libextractor = callPackage ../development/libraries/libextractor { + libmpeg2 = mpeg2dec; + }; + + libexttextcat = callPackage ../development/libraries/libexttextcat {}; + + libf2c = callPackage ../development/libraries/libf2c {}; + + libfabric = callPackage ../development/libraries/libfabric {}; + + libfive = libsForQt5.callPackage ../development/libraries/libfive { }; + + libfixposix = callPackage ../development/libraries/libfixposix {}; + + libff = callPackage ../development/libraries/libff { }; + + libffcall = callPackage ../development/libraries/libffcall { }; + + libffi = callPackage ../development/libraries/libffi { }; + libffiBoot = libffi.override { + doCheck = false; + }; + + libfreeaptx = callPackage ../development/libraries/libfreeaptx { }; + + libfreefare = callPackage ../development/libraries/libfreefare { + inherit (darwin) libobjc; + }; + + libftdi = callPackage ../development/libraries/libftdi { }; + + libftdi1 = callPackage ../development/libraries/libftdi/1.x.nix { }; + + libfyaml = callPackage ../development/libraries/libfyaml { }; + + libgcrypt = callPackage ../development/libraries/libgcrypt { }; + + libgcrypt_1_5 = callPackage ../development/libraries/libgcrypt/1.5.nix { }; + + libgdiplus = callPackage ../development/libraries/libgdiplus { + inherit (darwin.apple_sdk.frameworks) Carbon; + }; + + libgnt = callPackage ../development/libraries/libgnt { }; + + libgpg-error = callPackage ../development/libraries/libgpg-error { }; + + # https://git.gnupg.org/cgi-bin/gitweb.cgi?p=libgpg-error.git;a=blob;f=README;h=fd6e1a83f55696c1f7a08f6dfca08b2d6b7617ec;hb=70058cd9f944d620764e57c838209afae8a58c78#l118 + libgpg-error-gen-posix-lock-obj = libgpg-error.override { + genPosixLockObjOnly = true; + }; + + libgphoto2 = callPackage ../development/libraries/libgphoto2 { }; + + libgpiod = callPackage ../development/libraries/libgpiod { }; + + libgpod = callPackage ../development/libraries/libgpod { + autoreconfHook = buildPackages.autoreconfHook269; + }; + + libgssglue = callPackage ../development/libraries/libgssglue { }; + + libgudev = callPackage ../development/libraries/libgudev { }; + + libguestfs-appliance = callPackage ../development/libraries/libguestfs/appliance.nix {}; + libguestfs = callPackage ../development/libraries/libguestfs { + autoreconfHook = buildPackages.autoreconfHook264; + }; + libguestfs-with-appliance = libguestfs.override { + appliance = libguestfs-appliance; + autoreconfHook = buildPackages.autoreconfHook264; + }; + + + libhangul = callPackage ../development/libraries/libhangul { }; + + libharu = callPackage ../development/libraries/libharu { }; + + libhdhomerun = callPackage ../development/libraries/libhdhomerun { }; + + libheif = callPackage ../development/libraries/libheif {}; + + libhttpseverywhere = callPackage ../development/libraries/libhttpseverywhere { }; + + libhugetlbfs = callPackage ../development/libraries/libhugetlbfs { }; + + libhwy = callPackage ../development/libraries/libhwy { }; + + libHX = callPackage ../development/libraries/libHX { }; + + libibmad = callPackage ../development/libraries/libibmad { }; + + libibumad = callPackage ../development/libraries/libibumad { }; + + libical = callPackage ../development/libraries/libical { }; + + libicns = callPackage ../development/libraries/libicns { }; + + libieee1284 = callPackage ../development/libraries/libieee1284 { }; + + libimobiledevice = callPackage ../development/libraries/libimobiledevice { }; + + libindicator-gtk2 = libindicator.override { gtkVersion = "2"; }; + libindicator-gtk3 = libindicator.override { gtkVersion = "3"; }; + libindicator = callPackage ../development/libraries/libindicator { }; + + libayatana-indicator-gtk2 = libayatana-indicator.override { gtkVersion = "2"; }; + libayatana-indicator-gtk3 = libayatana-indicator.override { gtkVersion = "3"; }; + libayatana-indicator = callPackage ../development/libraries/libayatana-indicator { }; + + libinotify-kqueue = callPackage ../development/libraries/libinotify-kqueue { }; + + libiodbc = callPackage ../development/libraries/libiodbc { + inherit (darwin.apple_sdk.frameworks) Carbon; + }; + + libirecovery = callPackage ../development/libraries/libirecovery { }; + + libivykis = callPackage ../development/libraries/libivykis { }; + + liblastfmSF = callPackage ../development/libraries/liblastfmSF { }; + + liblcf = callPackage ../development/libraries/liblcf { }; + + libliftoff = callPackage ../development/libraries/libliftoff { }; + + liblqr1 = callPackage ../development/libraries/liblqr-1 { + inherit (darwin.apple_sdk.frameworks) Carbon; + }; + + liblockfile = callPackage ../development/libraries/liblockfile { }; + + liblogging = callPackage ../development/libraries/liblogging { }; + + liblognorm = callPackage ../development/libraries/liblognorm { }; + + libltc = callPackage ../development/libraries/libltc { }; + + liblxi = callPackage ../development/libraries/liblxi { }; + + libmaxminddb = callPackage ../development/libraries/libmaxminddb { }; + + libmcrypt = callPackage ../development/libraries/libmcrypt {}; + + libmediaart = callPackage ../development/libraries/libmediaart { }; + + libmediainfo = callPackage ../development/libraries/libmediainfo { }; + + libmhash = callPackage ../development/libraries/libmhash {}; + + libmodbus = callPackage ../development/libraries/libmodbus {}; + + libmtp = callPackage ../development/libraries/libmtp { }; + + libmypaint = callPackage ../development/libraries/libmypaint { }; + + libmysofa = callPackage ../development/libraries/audio/libmysofa { }; + + libmysqlconnectorcpp = callPackage ../development/libraries/libmysqlconnectorcpp { }; + + libnatpmp = callPackage ../development/libraries/libnatpmp { }; + + libnatspec = callPackage ../development/libraries/libnatspec { }; + + libndp = callPackage ../development/libraries/libndp { }; + + libnfc = callPackage ../development/libraries/libnfc { }; + + libnfs = callPackage ../development/libraries/libnfs { }; + + libnice = callPackage ../development/libraries/libnice { }; + + libnsl = callPackage ../development/libraries/libnsl { }; + + liboping = callPackage ../development/libraries/liboping { }; + + libplist = callPackage ../development/libraries/libplist { }; + + libre = callPackage ../development/libraries/libre {}; + + libredwg = callPackage ../development/libraries/libredwg {}; + + librem = callPackage ../development/libraries/librem {}; + + librelp = callPackage ../development/libraries/librelp { }; + + librepo = callPackage ../tools/package-management/librepo { + python = python3; + }; + + libresample = callPackage ../development/libraries/libresample {}; + + librevenge = callPackage ../development/libraries/librevenge {}; + + librevisa = callPackage ../development/libraries/librevisa { }; + + librime = callPackage ../development/libraries/librime { + boost = boost174; + }; + + librsb = callPackage ../development/libraries/librsb { + # Taken from https://build.opensuse.org/package/view_file/science/librsb/librsb.spec + memHierarchy = "L3:16/64/8192K,L2:16/64/2048K,L1:8/64/16K"; + }; + + librtprocess = callPackage ../development/libraries/librtprocess { }; + + libsamplerate = callPackage ../development/libraries/libsamplerate { + inherit (darwin.apple_sdk.frameworks) ApplicationServices Carbon CoreServices; + }; + + libsieve = callPackage ../development/libraries/libsieve { }; + + libsixel = callPackage ../development/libraries/libsixel { }; + + libsolv = callPackage ../development/libraries/libsolv { }; + + libspectre = callPackage ../development/libraries/libspectre { }; + + libspnav = callPackage ../development/libraries/libspnav { }; + + libgsf = callPackage ../development/libraries/libgsf { }; + + # GNU libc provides libiconv so systems with glibc don't need to build + # libiconv separately. Additionally, Apple forked/repackaged libiconv so we + # use that instead of the vanilla version on that OS. + # + # We also provide `libiconvReal`, which will always be a standalone libiconv, + # just in case you want it regardless of platform. + libiconv = + if lib.elem stdenv.hostPlatform.libc ["glibc" "musl" "wasilibc"] + then glibcIconv (if stdenv.hostPlatform != stdenv.buildPlatform + then libcCross + else stdenv.cc.libc) + else if stdenv.hostPlatform.isDarwin + then darwin.libiconv + else libiconvReal; + + glibcIconv = libc: let + inherit (libc) pname version; + libcDev = lib.getDev libc; + in runCommand "${pname}-iconv-${version}" {} '' + mkdir -p $out/include + ln -sv ${libcDev}/include/iconv.h $out/include + ''; + + libiconvReal = callPackage ../development/libraries/libiconv { }; + + # On non-GNU systems we need GNU Gettext for libintl. + libintl = if stdenv.hostPlatform.libc != "glibc" then gettext else null; + + libid3tag = callPackage ../development/libraries/libid3tag { + gperf = gperf_3_0; + }; + + libidn = callPackage ../development/libraries/libidn { }; + + libidn2 = callPackage ../development/libraries/libidn2 { }; + + idnkit = callPackage ../development/libraries/idnkit { }; + + libiec61883 = callPackage ../development/libraries/libiec61883 { }; + + libimagequant = callPackage ../development/libraries/libimagequant {}; + + libime = callPackage ../development/libraries/libime { }; + + libinfinity = callPackage ../development/libraries/libinfinity { }; + + libinput = callPackage ../development/libraries/libinput { + graphviz = graphviz-nox; + }; + + libinput-gestures = callPackage ../tools/inputmethods/libinput-gestures {}; + + libinstpatch = callPackage ../development/libraries/audio/libinstpatch { }; + + libisofs = callPackage ../development/libraries/libisofs { }; + + libisoburn = callPackage ../development/libraries/libisoburn { }; + + libipt = callPackage ../development/libraries/libipt { }; + + libiptcdata = callPackage ../development/libraries/libiptcdata { }; + + libjcat = callPackage ../development/libraries/libjcat { }; + + libjpeg_original = callPackage ../development/libraries/libjpeg { }; + # also known as libturbojpeg + libjpeg_turbo = callPackage ../development/libraries/libjpeg-turbo { }; + libjpeg = libjpeg_turbo; + + libjreen = callPackage ../development/libraries/libjreen { }; + + libjson-rpc-cpp = callPackage ../development/libraries/libjson-rpc-cpp { + libmicrohttpd = libmicrohttpd_0_9_72; + }; + + libjwt = callPackage ../development/libraries/libjwt { }; + + libjxl = callPackage ../development/libraries/libjxl { }; + + libkate = callPackage ../development/libraries/libkate { }; + + libkeyfinder = callPackage ../development/libraries/audio/libkeyfinder { }; + + libks = callPackage ../development/libraries/libks { }; + + libksba = callPackage ../development/libraries/libksba { }; + + libksi = callPackage ../development/libraries/libksi { }; + + liblinear = callPackage ../development/libraries/liblinear { }; + + libmad = callPackage ../development/libraries/libmad { }; + + llama = callPackage ../applications/misc/llama { }; + + malcontent = callPackage ../development/libraries/malcontent { }; + + malcontent-ui = callPackage ../development/libraries/malcontent/ui.nix { }; + + libmanette = callPackage ../development/libraries/libmanette { }; + + libmatchbox = callPackage ../development/libraries/libmatchbox { }; + + libmatheval = callPackage ../development/libraries/libmatheval { + autoconf = buildPackages.autoconf269; + guile = guile_2_0; + }; + + libmatthew_java = callPackage ../development/libraries/java/libmatthew-java { + jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + + libmatroska = callPackage ../development/libraries/libmatroska { }; + + libmd = callPackage ../development/libraries/libmd { }; + + libmemcached = callPackage ../development/libraries/libmemcached { }; + + libmicrohttpd_0_9_70 = callPackage ../development/libraries/libmicrohttpd/0.9.70.nix { }; + libmicrohttpd_0_9_71 = callPackage ../development/libraries/libmicrohttpd/0.9.71.nix { }; + libmicrohttpd_0_9_72 = callPackage ../development/libraries/libmicrohttpd/0.9.72.nix { }; + libmicrohttpd = libmicrohttpd_0_9_71; + + libmikmod = callPackage ../development/libraries/libmikmod { + inherit (darwin.apple_sdk.frameworks) CoreAudio; + }; + + libmilter = callPackage ../development/libraries/libmilter { }; + + libminc = callPackage ../development/libraries/libminc { + hdf5 = hdf5_1_10; + }; + + libmirage = callPackage ../applications/emulators/cdemu/libmirage.nix { }; + + libmkv = callPackage ../development/libraries/libmkv { }; + + libmms = callPackage ../development/libraries/libmms { }; + + libmowgli = callPackage ../development/libraries/libmowgli { }; + + libmng = callPackage ../development/libraries/libmng { }; + + libmnl = callPackage ../development/libraries/libmnl { }; + + libmodplug = callPackage ../development/libraries/libmodplug {}; + + libmodule = callPackage ../development/libraries/libmodule { }; + + libmpcdec = callPackage ../development/libraries/libmpcdec { }; + + libmp3splt = callPackage ../development/libraries/libmp3splt { }; + + libmrss = callPackage ../development/libraries/libmrss { }; + + libmspack = callPackage ../development/libraries/libmspack { }; + + libmusicbrainz3 = callPackage ../development/libraries/libmusicbrainz { }; + + libmusicbrainz5 = callPackage ../development/libraries/libmusicbrainz/5.x.nix { }; + + libmusicbrainz = libmusicbrainz3; + + libmwaw = callPackage ../development/libraries/libmwaw { }; + + libmx = callPackage ../development/libraries/libmx { }; + + libndctl = callPackage ../development/libraries/libndctl { }; + + libnest2d = callPackage ../development/libraries/libnest2d { + boost = boost174; + }; + + libnet = callPackage ../development/libraries/libnet { }; + + libnetfilter_acct = callPackage ../development/libraries/libnetfilter_acct { }; + + libnetfilter_conntrack = callPackage ../development/libraries/libnetfilter_conntrack { }; + + libnetfilter_cthelper = callPackage ../development/libraries/libnetfilter_cthelper { }; + + libnetfilter_cttimeout = callPackage ../development/libraries/libnetfilter_cttimeout { }; + + libnetfilter_log = callPackage ../development/libraries/libnetfilter_log { }; + + libnetfilter_queue = callPackage ../development/libraries/libnetfilter_queue { }; + + libnfnetlink = callPackage ../development/libraries/libnfnetlink { }; + + libnftnl = callPackage ../development/libraries/libnftnl { }; + + libnih = callPackage ../development/libraries/libnih { }; + + libnova = callPackage ../development/libraries/science/astronomy/libnova { }; + + libnxml = callPackage ../development/libraries/libnxml { }; + + libodfgen = callPackage ../development/libraries/libodfgen { }; + + libofa = callPackage ../development/libraries/libofa { }; + + libofx = callPackage ../development/libraries/libofx { }; + + libogg = callPackage ../development/libraries/libogg { }; + + liboggz = callPackage ../development/libraries/liboggz { }; + + liboil = callPackage ../development/libraries/liboil { }; + + libomxil-bellagio = callPackage ../development/libraries/libomxil-bellagio { }; + + liboop = callPackage ../development/libraries/liboop { }; + + libopenaptx = callPackage ../development/libraries/libopenaptx { }; + + libopenglrecorder = callPackage ../development/libraries/libopenglrecorder { }; + + libopus = callPackage ../development/libraries/libopus { }; + + libopusenc = callPackage ../development/libraries/libopusenc { }; + + libosinfo = callPackage ../development/libraries/libosinfo { + inherit (gnome) libsoup; + }; + + libosip = callPackage ../development/libraries/osip {}; + + libosmium = callPackage ../development/libraries/libosmium { }; + + libosmocore = callPackage ../applications/misc/libosmocore { }; + + libosmscout = libsForQt5.callPackage ../development/libraries/libosmscout { }; + + libotr = callPackage ../development/libraries/libotr { }; + + libow = callPackage ../development/libraries/libow { }; + + libp11 = callPackage ../development/libraries/libp11 { }; + + libpam-wrapper = callPackage ../development/libraries/libpam-wrapper { }; + + libpar2 = callPackage ../development/libraries/libpar2 { }; + + libpcap = callPackage ../development/libraries/libpcap { }; + + libpeas = callPackage ../development/libraries/libpeas { }; + + libpg_query = callPackage ../development/libraries/libpg_query { }; + + libpipeline = callPackage ../development/libraries/libpipeline { }; + + libpgf = callPackage ../development/libraries/libpgf { }; + + libphonenumber = callPackage ../development/libraries/libphonenumber { + inherit (darwin.apple_sdk.frameworks) Foundation; + }; + + libplacebo = callPackage ../development/libraries/libplacebo { }; + + libpng = callPackage ../development/libraries/libpng { }; + libpng_apng = libpng.override { apngSupport = true; }; + libpng12 = callPackage ../development/libraries/libpng/12.nix { }; + + libpostal = callPackage ../development/libraries/libpostal { }; + + libpaper = callPackage ../development/libraries/libpaper { }; + + libpfm = callPackage ../development/libraries/libpfm { }; + + libpqxx = callPackage ../development/libraries/libpqxx { }; + libpqxx_6 = callPackage ../development/libraries/libpqxx/6.nix { }; + + inherit (callPackages ../development/libraries/prometheus-client-c { + stdenv = gccStdenv; # Required for darwin + }) libprom libpromhttp; + + libproxy = callPackage ../development/libraries/libproxy { + inherit (darwin.apple_sdk.frameworks) SystemConfiguration CoreFoundation JavaScriptCore; + }; + + libpseudo = callPackage ../development/libraries/libpseudo { }; + + libpsl = callPackage ../development/libraries/libpsl { }; + + libpst = callPackage ../development/libraries/libpst { }; + + libptytty = callPackage ../development/libraries/libptytty { }; + + libpulsar = callPackage ../development/libraries/libpulsar { }; + + libpwquality = callPackage ../development/libraries/libpwquality { }; + + libqalculate = callPackage ../development/libraries/libqalculate { + readline = readline81; + }; + + libqt5pas = libsForQt5.callPackage ../development/compilers/fpc/libqt5pas.nix { }; + + libroxml = callPackage ../development/libraries/libroxml { }; + + librsvg = callPackage ../development/libraries/librsvg { + inherit (darwin) libobjc; + inherit (darwin.apple_sdk.frameworks) ApplicationServices Foundation; + }; + + librsync = callPackage ../development/libraries/librsync { }; + + librttopo = callPackage ../development/libraries/librttopo { }; + + libs3 = callPackage ../development/libraries/libs3 { }; + + libschrift = callPackage ../development/libraries/libschrift { }; + + libsciter = callPackage ../development/libraries/libsciter { }; + + libsearpc = callPackage ../development/libraries/libsearpc { }; + + libsigcxx = callPackage ../development/libraries/libsigcxx { }; + + libsigcxx12 = callPackage ../development/libraries/libsigcxx/1.2.nix { }; + + libsigcxx30 = callPackage ../development/libraries/libsigcxx/3.0.nix { }; + + libsigsegv = callPackage ../development/libraries/libsigsegv { }; + + libslirp = callPackage ../development/libraries/libslirp { }; + + libsndfile = callPackage ../development/libraries/libsndfile { + inherit (darwin.apple_sdk.frameworks) Carbon AudioToolbox; + }; + + libsnark = callPackage ../development/libraries/libsnark { }; + + libsodium = callPackage ../development/libraries/libsodium { }; + + libsoup = callPackage ../development/libraries/libsoup { }; + + libsoup_3 = callPackage ../development/libraries/libsoup/3.x.nix { }; + + libspectrum = callPackage ../development/libraries/libspectrum { }; + + libspiro = callPackage ../development/libraries/libspiro {}; + + libspng = callPackage ../development/libraries/libspng { }; + + libssh = callPackage ../development/libraries/libssh { }; + + libssh2 = callPackage ../development/libraries/libssh2 { }; + #FIXME: temporary attribute + libssh2_1_10 = callPackage ../development/libraries/libssh2/1_10.nix { }; + + libstartup_notification = callPackage ../development/libraries/startup-notification { }; + + libstemmer = callPackage ../development/libraries/libstemmer { }; + + libstroke = callPackage ../development/libraries/libstroke { }; + + libstrophe = callPackage ../development/libraries/libstrophe { }; + + libspatialaudio = callPackage ../development/libraries/libspatialaudio { }; + + libspatialindex = callPackage ../development/libraries/libspatialindex { }; + + libspatialite = callPackage ../development/libraries/libspatialite { }; + + libstatgrab = callPackage ../development/libraries/libstatgrab { + inherit (darwin.apple_sdk.frameworks) IOKit; + }; + + libsvm = callPackage ../development/libraries/libsvm { }; + + libtar = callPackage ../development/libraries/libtar { }; + + libtasn1 = callPackage ../development/libraries/libtasn1 { }; + + libtcod = callPackage ../development/libraries/libtcod { }; + + libthai = callPackage ../development/libraries/libthai { }; + + libtheora = callPackage ../development/libraries/libtheora { }; + + libthreadar = callPackage ../development/libraries/libthreadar { }; + + libticables2 = callPackage ../development/libraries/libticables2 { }; + + libticalcs2 = callPackage ../development/libraries/libticalcs2 { + inherit (darwin) libobjc; + }; + + libticonv = callPackage ../development/libraries/libticonv { }; + + libtifiles2 = callPackage ../development/libraries/libtifiles2 { }; + + libtiff = if stdenv.isDarwin && stdenv.isAarch64 + then callPackage ../development/libraries/libtiff/aarch64-darwin.nix { } + else callPackage ../development/libraries/libtiff { }; + + libtiger = callPackage ../development/libraries/libtiger { }; + + libtommath = callPackage ../development/libraries/libtommath { }; + + libtomcrypt = callPackage ../development/libraries/libtomcrypt { }; + + libtorrent-rasterbar-2_0_x = callPackage ../development/libraries/libtorrent-rasterbar { + inherit (darwin.apple_sdk.frameworks) SystemConfiguration; + python = python3; + }; + + libtorrent-rasterbar-1_2_x = callPackage ../development/libraries/libtorrent-rasterbar/1.2.nix { + inherit (darwin.apple_sdk.frameworks) SystemConfiguration; + python = python2; + }; + + libtorrent-rasterbar-1_1_x = callPackage ../development/libraries/libtorrent-rasterbar/1.1.nix { + python = python2; + }; + + libtorrent-rasterbar = libtorrent-rasterbar-2_0_x; + + # this is still the new version of the old API + libtoxcore-new = callPackage ../development/libraries/libtoxcore/new-api.nix { }; + + inherit (callPackages ../development/libraries/libtoxcore {}) + libtoxcore_0_1 libtoxcore_0_2; + libtoxcore = libtoxcore_0_2; + + libtpms = callPackage ../tools/security/libtpms { }; + + libtap = callPackage ../development/libraries/libtap { }; + + libtsm = callPackage ../development/libraries/libtsm { }; + + libgeotiff = callPackage ../development/libraries/libgeotiff { }; + + libu2f-host = callPackage ../development/libraries/libu2f-host { }; + + libu2f-server = callPackage ../development/libraries/libu2f-server { }; + + libubox = callPackage ../development/libraries/libubox { }; + + libudev-zero = callPackage ../development/libraries/libudev-zero { }; + + libudfread = callPackage ../development/libraries/libudfread { }; + + libuecc = callPackage ../development/libraries/libuecc { }; + + libui = callPackage ../development/libraries/libui { + inherit (darwin.apple_sdk.frameworks) Cocoa; + }; + + libuinputplus = callPackage ../development/libraries/libuinputplus { }; + + libunistring = callPackage ../development/libraries/libunistring { }; + + libupnp = callPackage ../development/libraries/pupnp { }; + + libwhereami = callPackage ../development/libraries/libwhereami { }; + + giflib = callPackage ../development/libraries/giflib { }; + + libunarr = callPackage ../development/libraries/libunarr { }; + + libunibreak = callPackage ../development/libraries/libunibreak { }; + + libuninameslist = callPackage ../development/libraries/libuninameslist { }; + + libunique = callPackage ../development/libraries/libunique { }; + libunique3 = callPackage ../development/libraries/libunique/3.x.nix { }; + + liburcu = callPackage ../development/libraries/liburcu { }; + + libjaylink = callPackage ../development/libraries/libjaylink { }; + + libusb-compat-0_1 = callPackage ../development/libraries/libusb-compat/0.1.nix {}; + + libusb1 = callPackage ../development/libraries/libusb1 { + inherit (darwin) libobjc; + inherit (darwin.apple_sdk.frameworks) IOKit; + # TODO: remove once `udev` is `systemdMinimal` everywhere. + udev = systemdMinimal; + }; + + libusbgx = callPackage ../development/libraries/libusbgx { }; + + libusbmuxd = callPackage ../development/libraries/libusbmuxd { }; + + libutempter = callPackage ../development/libraries/libutempter { }; + + libuldaq = callPackage ../development/libraries/libuldaq { }; + + libunwind = + if stdenv.isDarwin then darwin.libunwind + else if stdenv.hostPlatform.system == "riscv32-linux" then llvmPackages_latest.libunwind + else callPackage ../development/libraries/libunwind { }; + + libuv = callPackage ../development/libraries/libuv { + inherit (darwin.apple_sdk.frameworks) ApplicationServices CoreServices; + }; + + libuvc = callPackage ../development/libraries/libuvc { }; + + libv4l = lowPrio (v4l-utils.override { + withUtils = false; + }); + + libva = callPackage ../development/libraries/libva { }; + libva-minimal = libva.override { minimal = true; }; + libva-utils = callPackage ../development/libraries/libva/utils.nix { }; + + libva1 = callPackage ../development/libraries/libva/1.0.0.nix { }; + libva1-minimal = libva1.override { minimal = true; }; + + libvarlink = callPackage ../development/libraries/libvarlink { }; + + libvdpau = callPackage ../development/libraries/libvdpau { }; + + libmodulemd = callPackage ../development/libraries/libmodulemd { }; + + libvdpau-va-gl = callPackage ../development/libraries/libvdpau-va-gl { }; + + libversion = callPackage ../development/libraries/libversion { }; + + libvirt = callPackage ../development/libraries/libvirt { + inherit (darwin.apple_sdk.frameworks) Carbon AppKit; + }; + + libvirt-glib = callPackage ../development/libraries/libvirt-glib { }; + + libvisio = callPackage ../development/libraries/libvisio { }; + + libvisio2svg = callPackage ../development/libraries/libvisio2svg { }; + + libvisual = callPackage ../development/libraries/libvisual { }; + + libvmaf = callPackage ../development/libraries/libvmaf { }; + + libvncserver = callPackage ../development/libraries/libvncserver { + inherit (darwin.apple_sdk.frameworks) Carbon; + }; + + libviper = callPackage ../development/libraries/libviper { }; + + libvpx = callPackage ../development/libraries/libvpx { }; + libvpx_1_8 = callPackage ../development/libraries/libvpx/1_8.nix { }; + + libvterm = callPackage ../development/libraries/libvterm { }; + libvterm-neovim = callPackage ../development/libraries/libvterm-neovim { }; + + libvorbis = callPackage ../development/libraries/libvorbis { }; + + libvori = callPackage ../development/libraries/libvori { }; + + libwbxml = callPackage ../development/libraries/libwbxml { }; + + libwebcam = callPackage ../os-specific/linux/libwebcam { }; + + libwebp = callPackage ../development/libraries/libwebp { }; + + libwmf = callPackage ../development/libraries/libwmf { }; + + libwnck = callPackage ../development/libraries/libwnck { }; + libwnck2 = callPackage ../development/libraries/libwnck/2.nix { }; + + libwpd = callPackage ../development/libraries/libwpd { }; + + libwpd_08 = callPackage ../development/libraries/libwpd/0.8.nix { }; + + libwps = callPackage ../development/libraries/libwps { }; + + libwpg = callPackage ../development/libraries/libwpg { }; + + libx86 = callPackage ../development/libraries/libx86 {}; + + libxcrypt = callPackage ../development/libraries/libxcrypt { }; + + libxdg_basedir = callPackage ../development/libraries/libxdg-basedir { }; + + libxkbcommon = libxkbcommon_8; + libxkbcommon_8 = callPackage ../development/libraries/libxkbcommon { }; + libxkbcommon_7 = callPackage ../development/libraries/libxkbcommon/libxkbcommon_7.nix { }; + + libxklavier = callPackage ../development/libraries/libxklavier { }; + + libxls = callPackage ../development/libraries/libxls { }; + + libxlsxwriter = callPackage ../development/libraries/libxlsxwriter { }; + + libxmi = callPackage ../development/libraries/libxmi { }; + + libxml2 = callPackage ../development/libraries/libxml2 { + python = python3; + inherit (darwin) libiconv; + }; + + libxml2Python = let + libxml2 = python2Packages.libxml2; + in pkgs.buildEnv { # slightly hacky + name = "libxml2+py-${res.libxml2.version}"; + paths = with libxml2; [ dev bin py ]; + inherit (libxml2) passthru; + # the hook to find catalogs is hidden by buildEnv + postBuild = '' + mkdir "$out/nix-support" + cp '${libxml2.dev}/nix-support/propagated-build-inputs' "$out/nix-support/" + ''; + }; + + libxmlb = callPackage ../development/libraries/libxmlb { }; + + libxmlxx = callPackage ../development/libraries/libxmlxx { }; + libxmlxx3 = callPackage ../development/libraries/libxmlxx/v3.nix { }; + + libxmp = callPackage ../development/libraries/libxmp { }; + + libxslt = callPackage ../development/libraries/libxslt { + python = python3; + }; + + libxsmm = callPackage ../development/libraries/libxsmm { }; + + libixp_hg = callPackage ../development/libraries/libixp-hg { }; + + libwpe = callPackage ../development/libraries/libwpe { }; + + libwpe-fdo = callPackage ../development/libraries/libwpe/fdo.nix { }; + + libyaml = callPackage ../development/libraries/libyaml { }; + + libyamlcpp = callPackage ../development/libraries/libyaml-cpp { }; + + libyamlcpp_0_3 = callPackage ../development/libraries/libyaml-cpp/0.3.0.nix { }; + + libyang = callPackage ../development/libraries/libyang { }; + + libcyaml = callPackage ../development/libraries/libcyaml { }; + + rang = callPackage ../development/libraries/rang { }; + + libykclient = callPackage ../development/libraries/libykclient { }; + + libykneomgr = callPackage ../development/libraries/libykneomgr { }; + + libytnef = callPackage ../development/libraries/libytnef { }; + + libyubikey = callPackage ../development/libraries/libyubikey { }; + + libyuv = callPackage ../development/libraries/libyuv { }; + + libzapojit = callPackage ../development/libraries/libzapojit { }; + + libzen = callPackage ../development/libraries/libzen { }; + + libzip = callPackage ../development/libraries/libzip { }; + + libzdb = callPackage ../development/libraries/libzdb { }; + + libwacom = callPackage ../development/libraries/libwacom { }; + + lightning = callPackage ../development/libraries/lightning { }; + + lightlocker = callPackage ../misc/screensavers/light-locker { }; + + lightspark = callPackage ../misc/lightspark { }; + + lightstep-tracer-cpp = callPackage ../development/libraries/lightstep-tracer-cpp { }; + + ligolo-ng = callPackage ../tools/networking/ligolo-ng { }; + + linenoise = callPackage ../development/libraries/linenoise { }; + + linenoise-ng = callPackage ../development/libraries/linenoise-ng { }; + + lirc = callPackage ../development/libraries/lirc { }; + + liquid-dsp = callPackage ../development/libraries/liquid-dsp { }; + + liquidfun = callPackage ../development/libraries/liquidfun { }; + + live555 = callPackage ../development/libraries/live555 { }; + + log4cpp = callPackage ../development/libraries/log4cpp { }; + + log4cxx = callPackage ../development/libraries/log4cxx { }; + + log4cplus = callPackage ../development/libraries/log4cplus { }; + + log4shib = callPackage ../development/libraries/log4shib { }; + + loudmouth = callPackage ../development/libraries/loudmouth { }; + + lrdf = callPackage ../development/libraries/lrdf { }; + + luabind = callPackage ../development/libraries/luabind { lua = lua5_1; }; + + luabind_luajit = luabind.override { lua = luajit; }; + + luksmeta = callPackage ../development/libraries/luksmeta { + asciidoc = asciidoc-full; + }; + + lyra = callPackage ../development/libraries/lyra { }; + + lzlib = callPackage ../development/libraries/lzlib { }; + + lzo = callPackage ../development/libraries/lzo { }; + + opencl-clang = callPackage ../development/libraries/opencl-clang { }; + + mapnik = callPackage ../development/libraries/mapnik { + gdal = gdal.override { + libgeotiff = libgeotiff.override { proj = proj_7; }; + libspatialite = libspatialite.override { proj = proj_7; }; + proj = proj_7; + }; + proj = proj_7; + boost = boost175; + }; + + + marisa = callPackage ../development/libraries/marisa {}; + + matio = callPackage ../development/libraries/matio { }; + + matterhorn = haskell.lib.compose.justStaticExecutables haskellPackages.matterhorn; + + maxflow = callPackage ../development/libraries/maxflow { }; + + mbedtls = callPackage ../development/libraries/mbedtls { }; + + mdctags = callPackage ../development/tools/misc/mdctags { }; + + md4c = callPackage ../development/libraries/md4c { }; + + mdds = callPackage ../development/libraries/mdds { }; + + mediastreamer = callPackage ../development/libraries/mediastreamer { }; + + mediastreamer-openh264 = callPackage ../development/libraries/mediastreamer/msopenh264.nix { }; + + memorymapping = callPackage ../development/libraries/memorymapping { }; + memorymappingHook = makeSetupHook { + deps = [ memorymapping ]; + } ../development/libraries/memorymapping/setup-hook.sh; + + memstream = callPackage ../development/libraries/memstream { }; + memstreamHook = makeSetupHook { + deps = [ memstream ]; + } ../development/libraries/memstream/setup-hook.sh; + + menu-cache = callPackage ../development/libraries/menu-cache { }; + + mergerfs = callPackage ../tools/filesystems/mergerfs { }; + + mergerfs-tools = callPackage ../tools/filesystems/mergerfs/tools.nix { }; + + ## libGL/libGLU/Mesa stuff + + # Default libGL implementation, should provide headers and + # libGL.so/libEGL.so/... to link agains them. Android NDK provides + # an OpenGL implementation, we can just use that. + libGL = if stdenv.hostPlatform.useAndroidPrebuilt then stdenv + else callPackage ../development/libraries/mesa/stubs.nix { + inherit (darwin.apple_sdk.frameworks) OpenGL; + }; + + # Default libGLU + libGLU = mesa_glu; + + mesa = callPackage ../development/libraries/mesa { + llvmPackages = llvmPackages_latest; + inherit (darwin.apple_sdk.frameworks) OpenGL; + inherit (darwin.apple_sdk.libs) Xplugin; + }; + + mesa_glu = callPackage ../development/libraries/mesa-glu { + inherit (darwin.apple_sdk.frameworks) ApplicationServices; + }; + + ## End libGL/libGLU/Mesa stuff + + meterbridge = callPackage ../applications/audio/meterbridge { }; + + mhddfs = callPackage ../tools/filesystems/mhddfs { }; + + microsoft_gsl = callPackage ../development/libraries/microsoft_gsl { }; + + micronucleus = callPackage ../development/tools/misc/micronucleus { }; + + markdown-anki-decks = callPackage ../tools/misc/markdown-anki-decks { }; + + micropython = callPackage ../development/interpreters/micropython { }; + + MIDIVisualizer = callPackage ../applications/audio/midi-visualizer { }; + + mimalloc = callPackage ../development/libraries/mimalloc { }; + + minizip = callPackage ../development/libraries/minizip { }; + + minizip2 = callPackage ../development/libraries/minizip2 { }; + + mkvtoolnix = libsForQt5.callPackage ../applications/video/mkvtoolnix { }; + + mkvtoolnix-cli = mkvtoolnix.override { + withGUI = false; + }; + + mlc = callPackage ../tools/system/mlc { }; + + mlt = callPackage ../development/libraries/mlt { }; + + mlv-app = libsForQt5.callPackage ../applications/video/mlv-app { }; + + mono-addins = callPackage ../development/libraries/mono-addins { }; + + movine = callPackage ../development/tools/database/movine { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + movit = callPackage ../development/libraries/movit { }; + + mosquitto = callPackage ../servers/mqtt/mosquitto { }; + + mps = callPackage ../development/libraries/mps { }; + + libmpeg2 = callPackage ../development/libraries/libmpeg2 { }; + + mpeg2dec = libmpeg2; + + mqtt-bench = callPackage ../applications/misc/mqtt-bench {}; + + mqttui = callPackage ../tools/networking/mqttui { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + msgpack = callPackage ../development/libraries/msgpack { }; + + msoffcrypto-tool = with python3.pkgs; toPythonApplication msoffcrypto-tool; + + msilbc = callPackage ../development/libraries/msilbc { }; + + mp4v2 = callPackage ../development/libraries/mp4v2 { }; + + libmpc = callPackage ../development/libraries/libmpc { }; + + mpich = callPackage ../development/libraries/mpich { + ch4backend = libfabric; + }; + + mstpd = callPackage ../os-specific/linux/mstpd { }; + + mtdev = callPackage ../development/libraries/mtdev { }; + + mtpfs = callPackage ../tools/filesystems/mtpfs { }; + + mtxclient = callPackage ../development/libraries/mtxclient { }; + + mu = callPackage ../tools/networking/mu { + texinfo = texinfo4; + }; + + mueval = callPackage ../development/tools/haskell/mueval { }; + + muparser = callPackage ../development/libraries/muparser { + inherit (darwin.stubs) setfile; + }; + + muparserx = callPackage ../development/libraries/muparserx { }; + + mutest = callPackage ../development/libraries/mutest { }; + + mvapich = callPackage ../development/libraries/mvapich { }; + + mygpoclient = with python3.pkgs; toPythonApplication mygpoclient; + + mygui = callPackage ../development/libraries/mygui { + ogre = ogre1_9; + }; + + mysocketw = callPackage ../development/libraries/mysocketw { }; + + mythes = callPackage ../development/libraries/mythes { }; + + nanodbc = callPackage ../development/libraries/nanodbc { }; + + nanoflann = callPackage ../development/libraries/nanoflann { }; + + nanomsg = callPackage ../development/libraries/nanomsg { }; + + nanovna-saver = libsForQt5.callPackage ../applications/science/electronics/nanovna-saver { }; + + ncnn = callPackage ../development/libraries/ncnn { }; + + ndpi = callPackage ../development/libraries/ndpi { }; + + nemo-qml-plugin-dbus = libsForQt5.callPackage ../development/libraries/nemo-qml-plugin-dbus { }; + + nifticlib = callPackage ../development/libraries/science/biology/nifticlib { }; + + notify-sharp = callPackage ../development/libraries/notify-sharp { }; + + notcurses = callPackage ../development/libraries/notcurses { }; + + ncurses5 = ncurses.override { + abiVersion = "5"; + }; + ncurses6 = ncurses.override { + abiVersion = "6"; + }; + ncurses = + if stdenv.hostPlatform.useiOSPrebuilt + then null + else callPackage ../development/libraries/ncurses { }; + + ndi = callPackage ../development/libraries/ndi { }; + + neardal = callPackage ../development/libraries/neardal { }; + + neatvnc = callPackage ../development/libraries/neatvnc { }; + + neon = callPackage ../development/libraries/neon { }; + + nettle = import ../development/libraries/nettle { inherit callPackage fetchurl; }; + + newman = callPackage ../development/web/newman {}; + + newt = callPackage ../development/libraries/newt { python = python3; }; + + nghttp2 = callPackage ../development/libraries/nghttp2 { }; + libnghttp2 = nghttp2.lib; + + nghttp3 = callPackage ../development/libraries/nghttp3 { }; + + ngtcp2 = callPackage ../development/libraries/ngtcp2 { }; + + nix-plugins = callPackage ../development/libraries/nix-plugins { nix = nixVersions.nix_2_5; }; + + nika-fonts = callPackage ../data/fonts/nika-fonts { }; + + nikto = callPackage ../tools/networking/nikto { }; + + nlohmann_json = callPackage ../development/libraries/nlohmann_json { }; + + nntp-proxy = callPackage ../applications/networking/nntp-proxy { }; + + non = callPackage ../applications/audio/non { }; + + ntl = callPackage ../development/libraries/ntl { }; + + nspr = callPackage ../development/libraries/nspr { + inherit (darwin.apple_sdk.frameworks) CoreServices; + }; + + nss = lowPrio (callPackage ../development/libraries/nss { }); + nssTools = nss.tools; + + nss_wrapper = callPackage ../development/libraries/nss_wrapper { }; + + nsss = skawarePackages.nsss; + + ntbtls = callPackage ../development/libraries/ntbtls { }; + + ntk = callPackage ../development/libraries/audio/ntk { }; + + ntrack = callPackage ../development/libraries/ntrack { }; + + nuraft = callPackage ../development/libraries/nuraft { }; + + nuspell = callPackage ../development/libraries/nuspell { }; + nuspellWithDicts = dicts: callPackage ../development/libraries/nuspell/wrapper.nix { inherit dicts; }; + + nv-codec-headers = callPackage ../development/libraries/nv-codec-headers { }; + nv-codec-headers-10 = callPackage ../development/libraries/nv-codec-headers/10_x.nix { }; + nv-codec-headers-11 = callPackage ../development/libraries/nv-codec-headers/11_x.nix { }; + + mkNvidiaContainerPkg = { name, containerRuntimePath, configTemplate, additionalPaths ? [] }: + let + nvidia-container-runtime = callPackage ../applications/virtualization/nvidia-container-runtime { + inherit containerRuntimePath configTemplate; + }; + in symlinkJoin { + inherit name; + paths = [ + (callPackage ../applications/virtualization/libnvidia-container { }) + nvidia-container-runtime + (callPackage ../applications/virtualization/nvidia-container-toolkit { + inherit nvidia-container-runtime; + }) + ] ++ additionalPaths; + }; + + nvidia-docker = mkNvidiaContainerPkg { + name = "nvidia-docker"; + containerRuntimePath = "${docker}/libexec/docker/runc"; + configTemplate = ../applications/virtualization/nvidia-docker/config.toml; + additionalPaths = [ (callPackage ../applications/virtualization/nvidia-docker { }) ]; + }; + + nvidia-podman = mkNvidiaContainerPkg { + name = "nvidia-podman"; + containerRuntimePath = "${runc}/bin/runc"; + configTemplate = ../applications/virtualization/nvidia-podman/config.toml; + }; + + nvidia-texture-tools = callPackage ../development/libraries/nvidia-texture-tools { }; + + nvidia-vaapi-driver = callPackage ../development/libraries/nvidia-vaapi-driver { }; + + nvidia-video-sdk = callPackage ../development/libraries/nvidia-video-sdk { }; + + nvidia-optical-flow-sdk = callPackage ../development/libraries/nvidia-optical-flow-sdk { }; + + nvtop = callPackage ../tools/system/nvtop { }; + + ocl-icd = callPackage ../development/libraries/ocl-icd { }; + + ode = callPackage ../development/libraries/ode { }; + + ogre = callPackage ../development/libraries/ogre {}; + ogre1_9 = callPackage ../development/libraries/ogre/1.9.x.nix {}; + ogre1_10 = callPackage ../development/libraries/ogre/1.10.x.nix {}; + + ogrepaged = callPackage ../development/libraries/ogrepaged { }; + + olm = callPackage ../development/libraries/olm { }; + + one_gadget = callPackage ../development/tools/misc/one_gadget { }; + + oneDNN = callPackage ../development/libraries/oneDNN { }; + + onedrive = callPackage ../applications/networking/sync/onedrive { }; + + oneko = callPackage ../applications/misc/oneko { }; + + oniguruma = callPackage ../development/libraries/oniguruma { }; + + oobicpl = callPackage ../development/libraries/science/biology/oobicpl { }; + + ookla-speedtest = callPackage ../tools/networking/ookla-speedtest { }; + + openalSoft = callPackage ../development/libraries/openal-soft { + inherit (darwin.apple_sdk.frameworks) CoreServices AudioUnit AudioToolbox; + }; + openal = openalSoft; + + openbabel = openbabel3; + + openbabel2 = callPackage ../development/libraries/openbabel/2.nix { }; + + openbabel3 = callPackage ../development/libraries/openbabel { + python = python3; + }; + + opencascade = callPackage ../development/libraries/opencascade { + inherit (darwin.apple_sdk.frameworks) OpenCL Cocoa; + }; + opencascade-occt = callPackage ../development/libraries/opencascade-occt { }; + + opencl-headers = callPackage ../development/libraries/opencl-headers { }; + + opencl-clhpp = callPackage ../development/libraries/opencl-clhpp { }; + + opencollada = callPackage ../development/libraries/opencollada { }; + + opencore-amr = callPackage ../development/libraries/opencore-amr { }; + + opencsg = callPackage ../development/libraries/opencsg { + inherit (qt5) qmake; + inherit (darwin.apple_sdk.frameworks) GLUT; + }; + + openct = callPackage ../development/libraries/openct { }; + + opencv2 = callPackage ../development/libraries/opencv { + inherit (darwin.apple_sdk.frameworks) Cocoa QTKit; + ffmpeg = ffmpeg_4; + }; + + opencv3 = callPackage ../development/libraries/opencv/3.x.nix { + inherit (darwin.apple_sdk.frameworks) AVFoundation Cocoa VideoDecodeAcceleration; + ffmpeg = ffmpeg_4; + }; + + opencv3WithoutCuda = opencv3.override { + enableCuda = false; + }; + + opencv4 = callPackage ../development/libraries/opencv/4.x.nix { + inherit (darwin.apple_sdk.frameworks) AVFoundation Cocoa VideoDecodeAcceleration CoreMedia MediaToolbox; + pythonPackages = python3Packages; + ffmpeg = ffmpeg_4; + }; + + opencv = opencv4; + + imath = callPackage ../development/libraries/imath { }; + + openexr = openexr_2; + openexr_2 = callPackage ../development/libraries/openexr { }; + openexr_3 = callPackage ../development/libraries/openexr/3.nix { }; + + openexrid-unstable = callPackage ../development/libraries/openexrid-unstable { }; + + openldap = callPackage ../development/libraries/openldap { }; + + opencolorio = callPackage ../development/libraries/opencolorio { + inherit (darwin.apple_sdk.frameworks) Carbon GLUT Cocoa; + }; + opencolorio_1 = callPackage ../development/libraries/opencolorio/1.x.nix { }; + + opendmarc = callPackage ../development/libraries/opendmarc { }; + + ois = callPackage ../development/libraries/ois { + inherit (darwin.apple_sdk.frameworks) Cocoa IOKit Kernel; + }; + + openh264 = callPackage ../development/libraries/openh264 { }; + + openjpeg = callPackage ../development/libraries/openjpeg { }; + + openpa = callPackage ../development/libraries/openpa { }; + + opensaml-cpp = callPackage ../development/libraries/opensaml-cpp { }; + + openscenegraph = callPackage ../development/libraries/openscenegraph { + inherit (darwin.apple_sdk.frameworks) AGL Carbon Cocoa Foundation; + }; + + openslide = callPackage ../development/libraries/openslide { }; + + openslp = callPackage ../development/libraries/openslp {}; + + openstackclient = with python3Packages; toPythonApplication python-openstackclient; + + openvdb = callPackage ../development/libraries/openvdb {}; + + inherit (callPackages ../development/libraries/libressl { }) + libressl_3_2 + libressl_3_4; + + # Please keep this pointed to the latest version. See also + # https://discourse.nixos.org/t/nixpkgs-policy-regarding-libraries-available-in-multiple-versions/7026/2 + libressl = libressl_3_4; + + boringssl = callPackage ../development/libraries/boringssl { }; + + wolfssl = callPackage ../development/libraries/wolfssl { }; + + openssl = openssl_1_1; + + inherit (callPackages ../development/libraries/openssl { }) + openssl_1_0_2 + openssl_1_1 + openssl_3_0; + + openssl-chacha = callPackage ../development/libraries/openssl/chacha.nix { }; + + opensubdiv = callPackage ../development/libraries/opensubdiv { }; + + opensupaplex = callPackage ../games/opensupaplex { }; + + open-wbo = callPackage ../applications/science/logic/open-wbo {}; + + openwsman = callPackage ../development/libraries/openwsman {}; + + ortp = callPackage ../development/libraries/ortp { }; + + openhmd = callPackage ../development/libraries/openhmd { }; + + openwebrx = callPackage ../applications/radio/openwebrx { + inherit (python3Packages) + buildPythonPackage buildPythonApplication setuptools; + }; + + optparse-bash = callPackage ../development/libraries/optparse-bash { }; + + orcania = callPackage ../development/libraries/orcania { }; + + osm-gps-map = callPackage ../development/libraries/osm-gps-map { }; + + osmid = callPackage ../applications/audio/osmid {}; + + osinfo-db = callPackage ../data/misc/osinfo-db { }; + osinfo-db-tools = callPackage ../tools/misc/osinfo-db-tools { }; + + p11-kit = callPackage ../development/libraries/p11-kit { }; + + paperkey = callPackage ../tools/security/paperkey { }; + + pcaudiolib = callPackage ../development/libraries/pcaudiolib { }; + + pcg_c = callPackage ../development/libraries/pcg-c { }; + + pcl = libsForQt5.callPackage ../development/libraries/pcl { + inherit (darwin.apple_sdk.frameworks) Cocoa AGL OpenGL; + }; + + pcre = callPackage ../development/libraries/pcre { }; + pcre16 = res.pcre.override { variant = "pcre16"; }; + # pcre32 seems unused + pcre-cpp = res.pcre.override { variant = "cpp"; }; + + pcre2 = callPackage ../development/libraries/pcre2 { }; + + pdal = callPackage ../development/libraries/pdal { } ; + + pdf2xml = callPackage ../development/libraries/pdf2xml {} ; + + pe-parse = callPackage ../development/libraries/pe-parse { }; + + inherit (callPackage ../development/libraries/physfs { + inherit (darwin.apple_sdk.frameworks) Foundation Carbon; + }) + physfs_2 + physfs; + + pico-sdk = callPackage ../development/libraries/pico-sdk { }; + + pipelight = callPackage ../tools/misc/pipelight { + stdenv = stdenv_32bit; + wine-staging = pkgsi686Linux.wine-staging; + }; + + pkcs11helper = callPackage ../development/libraries/pkcs11helper { }; + + pkgdiff = callPackage ../tools/misc/pkgdiff { }; + + place-cursor-at = haskell.lib.compose.justStaticExecutables haskellPackages.place-cursor-at; + + plib = callPackage ../development/libraries/plib { }; + + pocketsphinx = callPackage ../development/libraries/pocketsphinx { }; + + poco = callPackage ../development/libraries/poco { }; + + podofo = callPackage ../development/libraries/podofo { }; + + polkit = callPackage ../development/libraries/polkit { }; + + poppler = callPackage ../development/libraries/poppler { lcms = lcms2; }; + poppler_0_61 = callPackage ../development/libraries/poppler/0.61.nix { lcms = lcms2; }; + + poppler_gi = lowPrio (poppler.override { + introspectionSupport = true; + }); + + poppler_min = poppler.override { # TODO: maybe reduce even more + # this is currently only used by texlive.bin. + minimal = true; + suffix = "min"; + }; + + poppler_utils = poppler.override { + suffix = "utils"; + utils = true; + }; + + popt = callPackage ../development/libraries/popt { }; + + portaudio = callPackage ../development/libraries/portaudio { + inherit (darwin.apple_sdk.frameworks) AudioToolbox AudioUnit CoreAudio CoreServices Carbon; + }; + + portaudio2014 = portaudio.overrideAttrs (_: { + src = fetchurl { + url = "http://www.portaudio.com/archives/pa_stable_v19_20140130.tgz"; + sha256 = "0mwddk4qzybaf85wqfhxqlf0c5im9il8z03rd4n127k8y2jj9q4g"; + }; + }); + + portmidi = callPackage ../development/libraries/portmidi { + inherit (darwin.apple_sdk.frameworks) Carbon CoreAudio CoreFoundation CoreMIDI CoreServices; + }; + + presage = callPackage ../development/libraries/presage { }; + + present = callPackage ../misc/present { }; + + prime-server = callPackage ../development/libraries/prime-server { }; + + primecount = callPackage ../development/libraries/science/math/primecount { }; + + primesieve = callPackage ../development/libraries/science/math/primesieve { }; + + prison = callPackage ../development/libraries/prison { }; + + proj = callPackage ../development/libraries/proj { }; + + proj_7 = callPackage ../development/libraries/proj/7.nix { }; + + proj-datumgrid = callPackage ../development/libraries/proj-datumgrid { }; + + proselint = callPackage ../tools/text/proselint { + inherit (python3Packages) + buildPythonApplication click future six; + }; + + pru = callPackage ../tools/text/pru { }; + + prospector = callPackage ../development/tools/prospector { }; + + protobuf = protobuf3_19; + + protobuf3_19 = callPackage ../development/libraries/protobuf/3.19.nix { }; + protobuf3_18 = callPackage ../development/libraries/protobuf/3.18.nix { }; + protobuf3_17 = callPackage ../development/libraries/protobuf/3.17.nix { }; + protobuf3_16 = callPackage ../development/libraries/protobuf/3.16.nix { }; + protobuf3_15 = callPackage ../development/libraries/protobuf/3.15.nix { }; + protobuf3_14 = callPackage ../development/libraries/protobuf/3.14.nix { }; + protobuf3_13 = callPackage ../development/libraries/protobuf/3.13.nix { }; + protobuf3_12 = callPackage ../development/libraries/protobuf/3.12.nix { }; + protobuf3_11 = callPackage ../development/libraries/protobuf/3.11.nix { }; + protobuf3_10 = callPackage ../development/libraries/protobuf/3.10.nix { }; + protobuf3_9 = callPackage ../development/libraries/protobuf/3.9.nix { }; + protobuf3_8 = callPackage ../development/libraries/protobuf/3.8.nix { }; + protobuf3_7 = callPackage ../development/libraries/protobuf/3.7.nix { }; + protobuf3_6 = callPackage ../development/libraries/protobuf/3.6.nix { }; + protobuf3_1 = callPackage ../development/libraries/protobuf/3.1.nix { }; + protobuf2_5 = callPackage ../development/libraries/protobuf/2.5.nix { }; + + protobufc = callPackage ../development/libraries/protobufc/1.3.nix { }; + + protolock = callPackage ../development/libraries/protolock { }; + + protozero = callPackage ../development/libraries/protozero { }; + + flatbuffers = flatbuffers_2_0; + flatbuffers_2_0 = callPackage ../development/libraries/flatbuffers/2.0.nix { }; + flatbuffers_1_12 = callPackage ../development/libraries/flatbuffers/1.12.nix { }; + + nanopb = callPackage ../development/libraries/nanopb { }; + + gnupth = callPackage ../development/libraries/pth { }; + pth = if stdenv.hostPlatform.isMusl then npth else gnupth; + + pslib = callPackage ../development/libraries/pslib { }; + + pstreams = callPackage ../development/libraries/pstreams {}; + + pufferpanel = callPackage ../servers/pufferpanel { }; + + pugixml = callPackage ../development/libraries/pugixml { }; + + pylode = callPackage ../misc/pylode {}; + + python-qt = callPackage ../development/libraries/python-qt { + python = python27; + inherit (qt514) qmake qttools qtwebengine qtxmlpatterns; + }; + + pyotherside = libsForQt5.callPackage ../development/libraries/pyotherside {}; + + plasma-hud = callPackage ../misc/plasma-hud { }; + + re2 = callPackage ../development/libraries/re2 { }; + + qbs = libsForQt5.callPackage ../development/tools/build-managers/qbs { }; + + qca2 = callPackage ../development/libraries/qca2 { qt = qt4; }; + + qimageblitz = callPackage ../development/libraries/qimageblitz {}; + + qjson = callPackage ../development/libraries/qjson { }; + + qolibri = libsForQt5.callPackage ../applications/misc/qolibri { }; + + qt4 = qt48; + + qt48 = callPackage ../development/libraries/qt-4.x/4.8 { + # GNOME dependencies are not used unless gtkStyle == true + inherit (gnome2) libgnomeui GConf gnome_vfs; + cups = if stdenv.isLinux then cups else null; + + # XXX: mariadb doesn't built on fbsd as of nov 2015 + libmysqlclient = if (!stdenv.isFreeBSD) then libmysqlclient else null; + + inherit (darwin) libobjc; + inherit (darwin.apple_sdk.frameworks) ApplicationServices OpenGL Cocoa AGL; + }; + + qmake48Hook = makeSetupHook + { substitutions = { qt4 = qt48; }; } + ../development/libraries/qt-4.x/4.8/qmake-hook.sh; + + qmake4Hook = qmake48Hook; + + qt48Full = qt48.override { + docs = true; + demos = true; + examples = true; + developerBuild = true; + }; + + qt512 = recurseIntoAttrs (makeOverridable + (import ../development/libraries/qt-5/5.12) { + inherit newScope; + inherit lib stdenv fetchurl fetchpatch fetchFromGitHub makeSetupHook makeWrapper; + inherit bison cups dconf harfbuzz libGL perl gtk3; + inherit (gst_all_1) gstreamer gst-plugins-base; + inherit darwin; + }); + + qt514 = recurseIntoAttrs (makeOverridable + (import ../development/libraries/qt-5/5.14) { + inherit newScope; + inherit lib stdenv fetchurl fetchpatch fetchFromGitHub makeSetupHook makeWrapper; + inherit bison cups dconf harfbuzz libGL perl gtk3; + inherit (gst_all_1) gstreamer gst-plugins-base; + inherit darwin; + }); + + qt515 = recurseIntoAttrs (makeOverridable + (import ../development/libraries/qt-5/5.15) { + inherit newScope; + inherit lib stdenv fetchurl fetchpatch fetchgit fetchFromGitHub makeSetupHook makeWrapper; + inherit bison cups dconf harfbuzz libGL perl gtk3; + inherit (gst_all_1) gstreamer gst-plugins-base; + inherit darwin; + }); + + libsForQt512 = recurseIntoAttrs (import ./qt5-packages.nix { + inherit lib pkgs; + qt5 = qt512; + }); + + libsForQt514 = recurseIntoAttrs (import ./qt5-packages.nix { + inherit lib pkgs; + qt5 = qt514; + }); + + libsForQt515 = recurseIntoAttrs (import ./qt5-packages.nix { + inherit lib pkgs; + qt5 = qt515; + }); + + # TODO bump to 5.14 on darwin once it's not broken; see #95199 + qt5 = if stdenv.hostPlatform.isDarwin then qt512 else qt515; + libsForQt5 = if stdenv.hostPlatform.isDarwin then libsForQt512 else libsForQt515; + + # plasma5Packages maps to the Qt5 packages set that is used to build the plasma5 desktop + plasma5Packages = libsForQt515; + + qtEnv = qt5.env; + qt5Full = qt5.full; + + qtscriptgenerator = callPackage ../development/libraries/qtscriptgenerator { }; + + quark-engine = callPackage ../tools/security/quark-engine { }; + + quesoglc = callPackage ../development/libraries/quesoglc { }; + + quickder = callPackage ../development/libraries/quickder {}; + + quicksynergy = callPackage ../applications/misc/quicksynergy { }; + + quill = callPackage ../tools/security/quill { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + qv2ray = libsForQt5.callPackage ../applications/networking/qv2ray {}; + + qwt = callPackage ../development/libraries/qwt {}; + + qwt6_qt4 = callPackage ../development/libraries/qwt/6_qt4.nix { + inherit (darwin.apple_sdk.frameworks) AGL; + }; + + qxt = callPackage ../development/libraries/qxt {}; + + rabbitmq-c = callPackage ../development/libraries/rabbitmq-c {}; + + raft-canonical = callPackage ../development/libraries/raft-canonical { }; + + range-v3 = callPackage ../development/libraries/range-v3 {}; + + rabbitmq-java-client = callPackage ../development/libraries/rabbitmq-java-client { + jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + + rapidcheck = callPackage ../development/libraries/rapidcheck {}; + + rapidjson = callPackage ../development/libraries/rapidjson {}; + + rapidxml = callPackage ../development/libraries/rapidxml {}; + + raul = callPackage ../development/libraries/audio/raul { }; + + raylib = callPackage ../development/libraries/raylib { }; + + readline = readline6; + readline6 = readline63; + + readline63 = callPackage ../development/libraries/readline/6.3.nix { }; + + readline70 = callPackage ../development/libraries/readline/7.0.nix { }; + + readline81 = callPackage ../development/libraries/readline/8.1.nix { }; + + readosm = callPackage ../development/libraries/readosm { }; + + recastnavigation = callPackage ../development/libraries/recastnavigation { }; + + rinutils = callPackage ../development/libraries/rinutils { }; + + kissfft = callPackage ../development/libraries/kissfft { }; + + lambdabot = callPackage ../development/tools/haskell/lambdabot { + haskellLib = haskell.lib.compose; + }; + + lambda-mod-zsh-theme = callPackage ../shells/zsh/lambda-mod-zsh-theme { }; + + libgme = callPackage ../development/libraries/audio/libgme { }; + + librdf_raptor = callPackage ../development/libraries/librdf/raptor.nix { }; + + librdf_raptor2 = callPackage ../development/libraries/librdf/raptor2.nix { }; + + librdf_rasqal = callPackage ../development/libraries/librdf/rasqal.nix { }; + + librdf_redland = callPackage ../development/libraries/librdf/redland.nix { }; + redland = librdf_redland; # added 2018-04-25 + + libsmf = callPackage ../development/libraries/audio/libsmf { }; + + lilv = callPackage ../development/libraries/audio/lilv { }; + + lv2 = callPackage ../development/libraries/audio/lv2 { }; + + lvtk = callPackage ../development/libraries/audio/lvtk { }; + + qm-dsp = callPackage ../development/libraries/audio/qm-dsp { }; + + qradiolink = callPackage ../applications/radio/qradiolink { }; + + qrupdate = callPackage ../development/libraries/qrupdate { }; + + qgnomeplatform = libsForQt5.callPackage ../development/libraries/qgnomeplatform { }; + + randomx = callPackage ../development/libraries/randomx { }; + + retro-gtk = callPackage ../development/libraries/retro-gtk { }; + + resolv_wrapper = callPackage ../development/libraries/resolv_wrapper { }; + + restinio = callPackage ../development/libraries/restinio {}; + + rhino = callPackage ../development/libraries/java/rhino { + javac = jdk8; + jvm = jre8; + }; + + rlog = callPackage ../development/libraries/rlog { }; + + rlottie = callPackage ../development/libraries/rlottie { }; + + rocksdb = callPackage ../development/libraries/rocksdb { }; + + rocksdb_lite = rocksdb.override { enableLite = true; }; + + rocksdb_6_23 = rocksdb.overrideAttrs (_: rec { + pname = "rocksdb"; + version = "6.23.3"; + src = fetchFromGitHub { + owner = "facebook"; + repo = pname; + rev = "v${version}"; + sha256 = "sha256-SsDqhjdCdtIGNlsMj5kfiuS3zSGwcxi4KV71d95h7yk="; + }; + }); + + rotate-backups = callPackage ../tools/backup/rotate-backups { }; + + rote = callPackage ../development/libraries/rote { }; + + round = callPackage ../applications/graphics/round { }; + + ronn = callPackage ../development/tools/ronn { }; + + rshell = python3.pkgs.callPackage ../development/embedded/rshell { }; + + rttr = callPackage ../development/libraries/rttr { }; + + rubberband = callPackage ../development/libraries/rubberband { }; + + rure = callPackage ../development/libraries/rure { }; + + rustc-demangle = callPackage ../development/libraries/rustc-demangle { }; + + s2geometry = callPackage ../development/libraries/s2geometry { }; + + /* This package references ghc844, which we no longer have. Unfortunately, I + have been unable to mark it as "broken" in a way that the ofBorg bot + recognizes. Since I don't want to merge code into master that generates + evaluation errors, I have no other idea but to comment it out entirely. + + sad = callPackage ../applications/science/logic/sad { }; + */ + + safefile = callPackage ../development/libraries/safefile {}; + + sbc = callPackage ../development/libraries/sbc { }; + + schroedinger = callPackage ../development/libraries/schroedinger { + autoreconfHook = buildPackages.autoreconfHook269; + }; + + SDL = callPackage ../development/libraries/SDL ({ + inherit (darwin.apple_sdk.frameworks) OpenGL CoreAudio CoreServices AudioUnit Kernel Cocoa GLUT; + } // lib.optionalAttrs stdenv.hostPlatform.isAndroid { + # libGLU doesn’t work with Android’s SDL + libGLU = null; + }); + + SDL_sixel = callPackage ../development/libraries/SDL_sixel { }; + + SDL_gfx = callPackage ../development/libraries/SDL_gfx { }; + + SDL_gpu = callPackage ../development/libraries/SDL_gpu { }; + + SDL_image = callPackage ../development/libraries/SDL_image { }; + + SDL_mixer = callPackage ../development/libraries/SDL_mixer { }; + + SDL_net = callPackage ../development/libraries/SDL_net { }; + + SDL_Pango = callPackage ../development/libraries/SDL_Pango {}; + + SDL_sound = callPackage ../development/libraries/SDL_sound { }; + + SDL_stretch= callPackage ../development/libraries/SDL_stretch { }; + + SDL_ttf = callPackage ../development/libraries/SDL_ttf { }; + + SDL2 = callPackage ../development/libraries/SDL2 { + inherit (darwin.apple_sdk.frameworks) AudioUnit Cocoa CoreAudio CoreServices ForceFeedback OpenGL; + }; + + SDL2_image = callPackage ../development/libraries/SDL2_image { + inherit (darwin.apple_sdk.frameworks) Foundation; + }; + + SDL2_mixer = callPackage ../development/libraries/SDL2_mixer { + inherit (darwin.apple_sdk.frameworks) CoreServices AudioUnit AudioToolbox; + }; + + SDL2_net = callPackage ../development/libraries/SDL2_net { }; + + SDL2_gfx = callPackage ../development/libraries/SDL2_gfx { }; + + SDL2_ttf = callPackage ../development/libraries/SDL2_ttf { }; + + SDL2_ttf_2_0_15 = callPackage ../development/libraries/SDL2_ttf/2.0.15.nix { }; + + sdnotify-wrapper = skawarePackages.sdnotify-wrapper; + + sdrplay = callPackage ../applications/radio/sdrplay {}; + + sdrpp = callPackage ../applications/radio/sdrpp { + inherit (darwin.apple_sdk.frameworks) AppKit; + }; + + sblim-sfcc = callPackage ../development/libraries/sblim-sfcc {}; + + selinux-sandbox = callPackage ../os-specific/linux/selinux-sandbox { }; + + seasocks = callPackage ../development/libraries/seasocks { }; + + serd = callPackage ../development/libraries/serd {}; + + serf = callPackage ../development/libraries/serf {}; + + sfsexp = callPackage ../development/libraries/sfsexp {}; + + shhgit = callPackage ../tools/security/shhgit { }; + + shhmsg = callPackage ../development/libraries/shhmsg { }; + + shhopt = callPackage ../development/libraries/shhopt { }; + + shine = callPackage ../development/libraries/shine { }; + + graphite2 = callPackage ../development/libraries/silgraphite/graphite2.nix {}; + + s2n-tls = callPackage ../development/libraries/s2n-tls { }; + + simavr = callPackage ../development/tools/simavr { + avrgcc = pkgsCross.avr.buildPackages.gcc; + avrlibc = pkgsCross.avr.libcCross; + inherit (darwin.apple_sdk.frameworks) GLUT; + }; + + simgear = callPackage ../development/libraries/simgear { }; + + simp_le = callPackage ../tools/admin/simp_le { }; + + simpleitk = callPackage ../development/libraries/simpleitk { lua = lua5_3; }; + + sfml = callPackage ../development/libraries/sfml { + inherit (darwin.apple_sdk.frameworks) IOKit Foundation AppKit OpenAL; + }; + csfml = callPackage ../development/libraries/csfml { }; + + shapelib = callPackage ../development/libraries/shapelib { }; + + sharness = callPackage ../development/libraries/sharness { }; + + shibboleth-sp = callPackage ../development/libraries/shibboleth-sp { }; + + skaffold = callPackage ../development/tools/skaffold { }; + + skjold = callPackage ../development/tools/skjold { }; + + skalibs = skawarePackages.skalibs; + skalibs_2_10 = skawarePackages.skalibs_2_10; + + skawarePackages = recurseIntoAttrs rec { + cleanPackaging = callPackage ../build-support/skaware/clean-packaging.nix { }; + buildPackage = callPackage ../build-support/skaware/build-skaware-package.nix { + inherit cleanPackaging; + }; + buildManPages = callPackage ../build-support/skaware/build-skaware-man-pages.nix { }; + + skalibs = callPackage ../development/libraries/skalibs { }; + skalibs_2_10 = callPackage ../development/libraries/skalibs/2_10.nix { }; + execline = callPackage ../tools/misc/execline { }; + + execline-man-pages = callPackage ../data/documentation/execline-man-pages { + inherit buildManPages; + }; + + s6 = callPackage ../tools/system/s6 { }; + s6-dns = callPackage ../tools/networking/s6-dns { }; + s6-linux-init = callPackage ../os-specific/linux/s6-linux-init { }; + s6-linux-utils = callPackage ../os-specific/linux/s6-linux-utils { }; + s6-networking = callPackage ../tools/networking/s6-networking { }; + s6-portable-utils = callPackage ../tools/misc/s6-portable-utils { }; + s6-rc = callPackage ../tools/system/s6-rc { }; + s6-man-pages = callPackage ../data/documentation/s6-man-pages { + inherit buildManPages; + }; + s6-networking-man-pages = callPackage ../data/documentation/s6-networking-man-pages { + inherit buildManPages; + }; + + mdevd = callPackage ../os-specific/linux/mdevd { }; + nsss = callPackage ../development/libraries/nsss { }; + utmps = callPackage ../development/libraries/utmps { }; + sdnotify-wrapper = callPackage ../os-specific/linux/sdnotify-wrapper { }; + }; + + slang = callPackage ../development/libraries/slang { }; + + slibGuile = callPackage ../development/libraries/slib { + scheme = guile_1_8; + texinfo = texinfo4; # otherwise erros: must be after `@defun' to use `@defunx' + }; + + smpeg = callPackage ../development/libraries/smpeg { }; + + smpeg2 = callPackage ../development/libraries/smpeg2 { }; + + snack = callPackage ../development/libraries/snack { + # optional + }; + + snappy = callPackage ../development/libraries/snappy { }; + + snow = callPackage ../tools/security/snow { }; + + snowcrash = callPackage ../tools/security/snowcrash { }; + + soapyairspy = callPackage ../applications/radio/soapyairspy { }; + + soapyaudio = callPackage ../applications/radio/soapyaudio { }; + + soapybladerf = callPackage ../applications/radio/soapybladerf { }; + + soapyhackrf = callPackage ../applications/radio/soapyhackrf { }; + + soapysdr = callPackage ../applications/radio/soapysdr { }; + + soapyremote = callPackage ../applications/radio/soapyremote { }; + + soapysdrplay = callPackage ../applications/radio/soapysdrplay { }; + + soapysdr-with-plugins = callPackage ../applications/radio/soapysdr { + extraPackages = [ + limesuite + soapyairspy + soapyaudio + soapybladerf + soapyhackrf + soapyremote + soapyrtlsdr + soapyuhd + ]; + }; + + soapyrtlsdr = callPackage ../applications/radio/soapyrtlsdr { }; + + soapyuhd = callPackage ../applications/radio/soapyuhd { }; + + socket_wrapper = callPackage ../development/libraries/socket_wrapper { }; + + soco-cli = callPackage ../tools/audio/soco-cli { }; + + sofia_sip = callPackage ../development/libraries/sofia-sip { + inherit (darwin.apple_sdk.frameworks) SystemConfiguration; + }; + + soil = callPackage ../development/libraries/soil { + inherit (darwin.apple_sdk.frameworks) Carbon; + }; + + sonic = callPackage ../development/libraries/sonic { }; + + sope = callPackage ../development/libraries/sope { }; + + sord = callPackage ../development/libraries/sord {}; + + soundtouch = callPackage ../development/libraries/soundtouch {}; + + spandsp = callPackage ../development/libraries/spandsp {}; + spandsp3 = callPackage ../development/libraries/spandsp/3.nix {}; + + spaceship-prompt = callPackage ../shells/zsh/spaceship-prompt {}; + + spatialite_tools = callPackage ../development/libraries/spatialite-tools { }; + + spdk = callPackage ../development/libraries/spdk { }; + + speechd = callPackage ../development/libraries/speechd { }; + + speech-tools = callPackage ../development/libraries/speech-tools {}; + + speex = callPackage ../development/libraries/speex { + fftw = fftwFloat; + }; + + speexdsp = callPackage ../development/libraries/speexdsp { + fftw = fftwFloat; + }; + + sphinx = with python3Packages; toPythonApplication sphinx; + + sphinx-autobuild = with python3Packages; toPythonApplication sphinx-autobuild; + + sphinx-serve = with python3Packages; toPythonApplication sphinx-serve; + + sphinxbase = callPackage ../development/libraries/sphinxbase { }; + + sphinxsearch = callPackage ../servers/search/sphinxsearch { }; + + spice = callPackage ../development/libraries/spice { }; + + spice-gtk = callPackage ../development/libraries/spice-gtk { }; + + spice-protocol = callPackage ../development/libraries/spice-protocol { }; + + spice-up = callPackage ../applications/office/spice-up { }; + + spicetify-cli = callPackage ../applications/misc/spicetify-cli { }; + + spirv-cross = callPackage ../tools/graphics/spirv-cross { }; + + sratom = callPackage ../development/libraries/audio/sratom { }; + + srm = callPackage ../tools/security/srm { }; + + srt = callPackage ../development/libraries/srt { }; + + srtp = callPackage ../development/libraries/srtp { }; + + stargate-libcds = callPackage ../development/libraries/stargate-libcds { }; + + stb = callPackage ../development/libraries/stb { }; + + StormLib = callPackage ../development/libraries/StormLib { }; + + stxxl = callPackage ../development/libraries/stxxl { }; + + sqlite = lowPrio (callPackage ../development/libraries/sqlite { }); + + unqlite = lowPrio (callPackage ../development/libraries/unqlite { }); + + inherit (callPackage ../development/libraries/sqlite/tools.nix { + inherit (darwin.apple_sdk.frameworks) Foundation; + }) sqlite-analyzer sqldiff; + + sqlar = callPackage ../development/libraries/sqlite/sqlar.nix { }; + + sqlitecpp = callPackage ../development/libraries/sqlitecpp { }; + + sqlite-interactive = (sqlite.override { interactive = true; }).bin; + + sqlite-jdbc = callPackage ../servers/sql/sqlite/jdbc { }; + + sqlite-replication = sqlite.overrideAttrs (oldAttrs: rec { + name = "sqlite-${version}"; + version = "3.27.2+replication3"; + src = fetchFromGitHub { + owner = "CanonicalLtd"; + repo = "sqlite"; + rev = "version-${version}"; + sha256 = "1aw1naa5y25ial251f74h039pgcz92p4b3994jvfzqpjlz06qwvw"; + }; + nativeBuildInputs = [ tcl ]; + configureFlags = oldAttrs.configureFlags ++ [ + "--enable-replication" + "--disable-amalgamation" + "--disable-tcl" + ]; + preConfigure = '' + echo "D 2019-03-09T15:45:46" > manifest + echo -n "8250984a368079bb1838d48d99f8c1a6282e00bc" > manifest.uuid + ''; + }); + + dqlite = callPackage ../development/libraries/dqlite { }; + + sqlcipher = callPackage ../development/libraries/sqlcipher { }; + + standardnotes = callPackage ../applications/editors/standardnotes { }; + + stfl = callPackage ../development/libraries/stfl { }; + + stlink = callPackage ../development/tools/misc/stlink { }; + stlink-gui = callPackage ../development/tools/misc/stlink { withGUI = true; }; + + stegseek = callPackage ../tools/security/stegseek {}; + + stlport = callPackage ../development/libraries/stlport { }; + + streamlink = callPackage ../applications/video/streamlink { }; + streamlink-twitch-gui-bin = callPackage ../applications/video/streamlink-twitch-gui/bin.nix {}; + + sub-batch = callPackage ../applications/video/sub-batch { }; + + subdl = callPackage ../applications/video/subdl { }; + + subtitleeditor = callPackage ../applications/video/subtitleeditor { }; + + suil = callPackage ../development/libraries/audio/suil { }; + + suil-qt5 = suil.override { + withQt4 = false; + withQt5 = true; + }; + suil-qt4 = suil.override { + withQt4 = true; + withQt5 = false; + }; + + sundials = callPackage ../development/libraries/sundials { + python = python3; + }; + + sutils = callPackage ../tools/misc/sutils { }; + + svrcore = callPackage ../development/libraries/svrcore { }; + + svxlink = libsForQt5.callPackage ../applications/radio/svxlink { }; + + swiftclient = with python3Packages; toPythonApplication python-swiftclient; + + sword = callPackage ../development/libraries/sword { }; + + biblesync = callPackage ../development/libraries/biblesync { }; + + szip = callPackage ../development/libraries/szip { }; + + t1lib = callPackage ../development/libraries/t1lib { }; + + tachyon = callPackage ../development/libraries/tachyon { + inherit (darwin.apple_sdk.frameworks) Carbon; + }; + + tageditor = libsForQt5.callPackage ../applications/audio/tageditor { }; + + taglib = callPackage ../development/libraries/taglib { }; + + taglib_extras = callPackage ../development/libraries/taglib-extras { }; + + taglib-sharp = callPackage ../development/libraries/taglib-sharp { }; + + talloc = callPackage ../development/libraries/talloc { }; + + tagparser = callPackage ../development/libraries/tagparser { }; + + tclap = callPackage ../development/libraries/tclap {}; + + tcllib = callPackage ../development/libraries/tcllib { }; + + tcltls = callPackage ../development/libraries/tcltls { }; + + tclx = callPackage ../development/libraries/tclx { }; + + ntdb = callPackage ../development/libraries/ntdb { }; + + tdb = callPackage ../development/libraries/tdb {}; + + tdlib = callPackage ../development/libraries/tdlib { }; + + tecla = callPackage ../development/libraries/tecla { }; + + tectonic = callPackage ../tools/typesetting/tectonic { + harfbuzz = harfbuzzFull; + }; + + tepl = callPackage ../development/libraries/tepl { }; + + telepathy-glib = callPackage ../development/libraries/telepathy/glib { }; + + telepathy-farstream = callPackage ../development/libraries/telepathy/farstream {}; + + termbox = callPackage ../development/libraries/termbox { }; + + tevent = callPackage ../development/libraries/tevent { }; + + tet = callPackage ../development/tools/misc/tet { }; + + theft = callPackage ../development/libraries/theft { }; + + thrift = callPackage ../development/libraries/thrift { }; + + thrift-0_10 = callPackage ../development/libraries/thrift/0.10.nix { }; + + tidyp = callPackage ../development/libraries/tidyp { }; + + tinycdb = callPackage ../development/libraries/tinycdb { }; + + tinyxml = tinyxml2; + + tinyxml2 = callPackage ../development/libraries/tinyxml/2.6.2.nix { }; + + tinyxml-2 = callPackage ../development/libraries/tinyxml-2 { }; + + tiscamera = callPackage ../os-specific/linux/tiscamera { }; + + tivodecode = callPackage ../applications/video/tivodecode { }; + + tix = callPackage ../development/libraries/tix { }; + + tk = tk-8_6; + + tk-8_6 = callPackage ../development/libraries/tk/8.6.nix { }; + tk-8_5 = callPackage ../development/libraries/tk/8.5.nix { tcl = tcl-8_5; }; + + tkrzw = callPackage ../development/libraries/tkrzw { }; + + tl-expected = callPackage ../development/libraries/tl-expected { }; + + tnt = callPackage ../development/libraries/tnt { }; + + tntnet = callPackage ../development/libraries/tntnet { }; + + tntdb = callPackage ../development/libraries/tntdb { }; + + kyotocabinet = callPackage ../development/libraries/kyotocabinet { }; + + tokyocabinet = callPackage ../development/libraries/tokyo-cabinet { }; + + tokyotyrant = callPackage ../development/libraries/tokyo-tyrant { }; + + totem-pl-parser = callPackage ../development/libraries/totem-pl-parser { }; + + tpm2-tss = callPackage ../development/libraries/tpm2-tss { + autoreconfHook = buildPackages.autoreconfHook269; + }; + + tremor = callPackage ../development/libraries/tremor { }; + + triehash = callPackage ../tools/misc/triehash { }; + + trillian = callPackage ../tools/misc/trillian { }; + + twolame = callPackage ../development/libraries/twolame { }; + + udns = callPackage ../development/libraries/udns { }; + + uid_wrapper = callPackage ../development/libraries/uid_wrapper { }; + + umockdev = callPackage ../development/libraries/umockdev { }; + + unconvert = callPackage ../development/tools/unconvert { }; + + unibilium = callPackage ../development/libraries/unibilium { }; + + unicap = callPackage ../development/libraries/unicap {}; + + unicon-lang = callPackage ../development/interpreters/unicon-lang {}; + + tsocks = callPackage ../development/libraries/tsocks { }; + + unixODBC = callPackage ../development/libraries/unixODBC { }; + + unixODBCDrivers = recurseIntoAttrs (callPackages ../development/libraries/unixODBCDrivers { }); + + ustr = callPackage ../development/libraries/ustr { }; + + usrsctp = callPackage ../development/libraries/usrsctp { }; + + usbredir = callPackage ../development/libraries/usbredir { }; + + usbrip = callPackage ../tools/security/usbrip { }; + + uthash = callPackage ../development/libraries/uthash { }; + + uthenticode = callPackage ../development/libraries/uthenticode { }; + + utmps = skawarePackages.utmps; + + ucommon = ucommon_openssl; + + ucommon_openssl = callPackage ../development/libraries/ucommon { + gnutls = null; + openssl = openssl_1_0_2; + }; + + ucommon_gnutls = lowPrio (ucommon.override { + openssl = null; + zlib = null; + gnutls = gnutls; + }); + + v8 = callPackage ../development/libraries/v8 { }; + + v8_8_x = callPackage ../development/libraries/v8/8_x.nix { }; + + vaapiIntel = callPackage ../development/libraries/vaapi-intel { }; + + vaapi-intel-hybrid = callPackage ../development/libraries/vaapi-intel-hybrid { }; + + vaapiVdpau = callPackage ../development/libraries/vaapi-vdpau { }; + + vale = callPackage ../tools/text/vale { }; + + valhalla = callPackage ../development/libraries/valhalla { + boost = boost.override { enablePython = true; python = python38; }; + }; + + vamp-plugin-sdk = callPackage ../development/libraries/audio/vamp-plugin-sdk { }; + + vc = callPackage ../development/libraries/vc { }; + + vc_0_7 = callPackage ../development/libraries/vc/0.7.nix { }; + + vcdimager = callPackage ../development/libraries/vcdimager { }; + + vcg = callPackage ../development/libraries/vcg { }; + + vid-stab = callPackage ../development/libraries/vid-stab { + inherit (llvmPackages) openmp; + }; + + vigra = callPackage ../development/libraries/vigra { + hdf5 = hdf5.override { usev110Api = true; }; + }; + + vlock = callPackage ../misc/screensavers/vlock { }; + + vmime = callPackage ../development/libraries/vmime { }; + + vrb = callPackage ../development/libraries/vrb { }; + + vrpn = callPackage ../development/libraries/vrpn { }; + + vsqlite = callPackage ../development/libraries/vsqlite { }; + + vte = callPackage ../development/libraries/vte { }; + + vte_290 = callPackage ../development/libraries/vte/2.90.nix { }; + + vtk_7 = libsForQt515.callPackage ../development/libraries/vtk/7.x.nix { + stdenv = gcc9Stdenv; + inherit (darwin) libobjc; + inherit (darwin.apple_sdk.libs) xpc; + inherit (darwin.apple_sdk.frameworks) Cocoa CoreServices DiskArbitration + IOKit CFNetwork Security ApplicationServices + CoreText IOSurface ImageIO OpenGL GLUT; + }; + vtk_8 = libsForQt515.callPackage ../development/libraries/vtk/8.x.nix { + stdenv = gcc9Stdenv; + inherit (darwin) libobjc; + inherit (darwin.apple_sdk.libs) xpc; + inherit (darwin.apple_sdk.frameworks) Cocoa CoreServices DiskArbitration + IOKit CFNetwork Security ApplicationServices + CoreText IOSurface ImageIO OpenGL GLUT; + }; + + vtk_8_withQt5 = vtk_8.override { enableQt = true; }; + + vtk_9 = libsForQt515.callPackage ../development/libraries/vtk/9.x.nix { + inherit (darwin) libobjc; + inherit (darwin.apple_sdk.libs) xpc; + inherit (darwin.apple_sdk.frameworks) Cocoa CoreServices DiskArbitration + IOKit CFNetwork Security ApplicationServices + CoreText IOSurface ImageIO OpenGL GLUT; + }; + + vtk_9_withQt5 = vtk_9.override { enableQt = true; }; + + vtk = vtk_8; + vtkWithQt5 = vtk_8_withQt5; + + vulkan-extension-layer = callPackage ../tools/graphics/vulkan-extension-layer { }; + vulkan-headers = callPackage ../development/libraries/vulkan-headers { }; + vulkan-loader = callPackage ../development/libraries/vulkan-loader { inherit (darwin) moltenvk; }; + vulkan-tools = callPackage ../tools/graphics/vulkan-tools { }; + vulkan-tools-lunarg = callPackage ../tools/graphics/vulkan-tools-lunarg { }; + vulkan-validation-layers = callPackage ../development/tools/vulkan-validation-layers { }; + + vxl = callPackage ../development/libraries/vxl { + libpng = libpng12; + stdenv = gcc6Stdenv; # upstream code incompatible with gcc7 + }; + + waffle = callPackage ../development/libraries/waffle { }; + + wally-cli = callPackage ../development/tools/wally-cli { }; + zsa-udev-rules = callPackage ../os-specific/linux/zsa-udev-rules { }; + + wavpack = callPackage ../development/libraries/wavpack { }; + + wayland = callPackage ../development/libraries/wayland { }; + wayland-scanner = wayland.bin; + + wayland-protocols = callPackage ../development/libraries/wayland/protocols.nix { }; + + waylandpp = callPackage ../development/libraries/waylandpp { }; + + wcslib = callPackage ../development/libraries/science/astronomy/wcslib { }; + + webkitgtk = callPackage ../development/libraries/webkitgtk { + harfbuzz = harfbuzzFull; + inherit (gst_all_1) gst-plugins-base gst-plugins-bad; + inherit (darwin) apple_sdk; + }; + + webkitgtk_4_1 = webkitgtk.override { + libsoup = libsoup_3; + }; + + websocketpp = callPackage ../development/libraries/websocket++ { }; + + webrtc-audio-processing_1 = callPackage ../development/libraries/webrtc-audio-processing { }; + webrtc-audio-processing_0_3 = callPackage ../development/libraries/webrtc-audio-processing/0.3.nix { }; + # bump when majoring of packages have updated + webrtc-audio-processing = webrtc-audio-processing_0_3; + + wildmidi = callPackage ../development/libraries/wildmidi { }; + + wiredtiger = callPackage ../development/libraries/wiredtiger { }; + + wlr-protocols = callPackage ../development/libraries/wlroots/protocols.nix { }; + + wt = wt4; + inherit (callPackages ../development/libraries/wt { + boost = boost175; + }) + wt3 + wt4; + + wxformbuilder = callPackage ../development/tools/wxformbuilder { }; + + wxGTK = wxGTK28; + wxGTK30 = wxGTK30-gtk2; + wxGTK31 = wxGTK31-gtk2; + + wxGTK28 = callPackage ../development/libraries/wxwidgets/2.8 { }; + + wxGTK29 = callPackage ../development/libraries/wxwidgets/2.9 { + inherit (darwin.stubs) setfile; + inherit (darwin.apple_sdk.frameworks) AGL Carbon Cocoa Kernel QuickTime; + }; + + wxGTK30-gtk2 = callPackage ../development/libraries/wxwidgets/3.0 { + withGtk2 = true; + inherit (darwin.stubs) setfile; + inherit (darwin.apple_sdk.frameworks) AGL Carbon Cocoa Kernel QTKit; + }; + + wxGTK30-gtk3 = callPackage ../development/libraries/wxwidgets/3.0 { + withGtk2 = false; + inherit (darwin.stubs) setfile; + inherit (darwin.apple_sdk.frameworks) AGL Carbon Cocoa Kernel QTKit; + }; + + wxGTK31-gtk2 = callPackage ../development/libraries/wxwidgets/3.1 { + withGtk2 = true; + inherit (darwin.stubs) setfile; + inherit (darwin.apple_sdk.frameworks) AGL Carbon Cocoa Kernel QTKit; + }; + + wxGTK31-gtk3 = callPackage ../development/libraries/wxwidgets/3.1 { + withGtk2 = false; + inherit (darwin.stubs) setfile; + inherit (darwin.apple_sdk.frameworks) AGL Carbon Cocoa Kernel QTKit; + }; + + wxmac = callPackage ../development/libraries/wxwidgets/3.0/mac.nix { }; + + wxSVG = callPackage ../development/libraries/wxSVG { + wxGTK = wxGTK30-gtk3; + }; + + wtk = callPackage ../development/libraries/wtk { }; + + x264 = callPackage ../development/libraries/x264 { }; + + x265 = callPackage ../development/libraries/x265 { }; + + xandikos = callPackage ../servers/xandikos { }; + + inherit (callPackages ../development/libraries/xapian { }) + xapian_1_4; + xapian = xapian_1_4; + + xapian-omega = callPackage ../development/libraries/xapian/tools/omega { + libmagic = file; + }; + + xavs = callPackage ../development/libraries/xavs { }; + + Xaw3d = callPackage ../development/libraries/Xaw3d { }; + + xbase = callPackage ../development/libraries/xbase { }; + + xcb-util-cursor = xorg.xcbutilcursor; + xcb-util-cursor-HEAD = callPackage ../development/libraries/xcb-util-cursor/HEAD.nix { }; + + xcbutilxrm = callPackage ../servers/x11/xorg/xcb-util-xrm.nix { }; + + xdo = callPackage ../tools/misc/xdo { }; + + xed = callPackage ../development/libraries/xed { }; + + xedit = callPackage ../applications/editors/xedit { }; + + xine-lib = callPackage ../development/libraries/xine-lib { }; + + xautolock = callPackage ../misc/screensavers/xautolock { }; + + xercesc = callPackage ../development/libraries/xercesc {}; + + xalanc = callPackage ../development/libraries/xalanc {}; + + xgboost = callPackage ../development/libraries/xgboost { }; + + xgeometry-select = callPackage ../tools/X11/xgeometry-select { }; + + # Avoid using this. It isn't really a wrapper anymore, but we keep the name. + xlibsWrapper = callPackage ../development/libraries/xlibs-wrapper { + packages = [ + freetype fontconfig xorg.xorgproto xorg.libX11 xorg.libXt + xorg.libXft xorg.libXext xorg.libSM xorg.libICE + ]; + }; + + xmlada = callPackage ../development/libraries/ada/xmlada { }; + + xmlrpc_c = callPackage ../development/libraries/xmlrpc-c { }; + + xmlsec = callPackage ../development/libraries/xmlsec { }; + + xml-security-c = callPackage ../development/libraries/xml-security-c { }; + + xml-tooling-c = callPackage ../development/libraries/xml-tooling-c { }; + + xlslib = callPackage ../development/libraries/xlslib { }; + + xsimd = callPackage ../development/libraries/xsimd { }; + + xtensor = callPackage ../development/libraries/xtensor { }; + + xtl = callPackage ../development/libraries/xtl { }; + + xvidcore = callPackage ../development/libraries/xvidcore { }; + + xxHash = callPackage ../development/libraries/xxHash {}; + + xylib = callPackage ../development/libraries/xylib { }; + + yajl = callPackage ../development/libraries/yajl { }; + + yder = callPackage ../development/libraries/yder { }; + + yojimbo = callPackage ../development/libraries/yojimbo { }; + + yubioath-desktop = libsForQt5.callPackage ../applications/misc/yubioath-desktop { }; + + yubico-pam = callPackage ../development/libraries/yubico-pam { }; + + yubico-piv-tool = callPackage ../tools/misc/yubico-piv-tool { + inherit (darwin.apple_sdk.frameworks) PCSC; + }; + + yubikey-manager = callPackage ../tools/misc/yubikey-manager { }; + + yubikey-manager-qt = libsForQt5.callPackage ../tools/misc/yubikey-manager-qt { }; + + yubikey-personalization = callPackage ../tools/misc/yubikey-personalization { }; + + yubikey-personalization-gui = libsForQt5.callPackage ../tools/misc/yubikey-personalization-gui { }; + + yubikey-agent = callPackage ../tools/security/yubikey-agent { }; + + yubikey-touch-detector = callPackage ../tools/security/yubikey-touch-detector { }; + + zchunk = callPackage ../development/libraries/zchunk { }; + + zeitgeist = callPackage ../development/libraries/zeitgeist { }; + + zlib = callPackage ../development/libraries/zlib { }; + + zlib-ng = callPackage ../development/libraries/zlib-ng { }; + + libdynd = callPackage ../development/libraries/libdynd { }; + + zlog = callPackage ../development/libraries/zlog { }; + + zeromq4 = callPackage ../development/libraries/zeromq/4.x.nix {}; + zeromq = zeromq4; + + cppzmq = callPackage ../development/libraries/cppzmq {}; + + czmq = callPackage ../development/libraries/czmq {}; + + zmqpp = callPackage ../development/libraries/zmqpp { }; + + libzra = callPackage ../development/libraries/libzra { }; + + zig = callPackage ../development/compilers/zig { + llvmPackages = llvmPackages_13; + }; + zig_0_8_1 = callPackage ../development/compilers/zig/0.8.1.nix { + llvmPackages = llvmPackages_12; + }; + + zimlib = callPackage ../development/libraries/zimlib { }; + + zita-convolver = callPackage ../development/libraries/audio/zita-convolver { }; + + zita-alsa-pcmi = callPackage ../development/libraries/audio/zita-alsa-pcmi { }; + + zita-resampler = callPackage ../development/libraries/audio/zita-resampler { }; + + zz = callPackage ../development/compilers/zz { }; + + zziplib = callPackage ../development/libraries/zziplib { }; + + glpng = callPackage ../development/libraries/glpng { }; + + gsignond = callPackage ../development/libraries/gsignond { + plugins = []; + }; + + gsignondPlugins = recurseIntoAttrs { + sasl = callPackage ../development/libraries/gsignond/plugins/sasl.nix { }; + oauth = callPackage ../development/libraries/gsignond/plugins/oauth.nix { }; + lastfm = callPackage ../development/libraries/gsignond/plugins/lastfm.nix { }; + mail = callPackage ../development/libraries/gsignond/plugins/mail.nix { }; + }; + + ### DEVELOPMENT / LIBRARIES / AGDA + + agdaPackages = callPackage ./agda-packages.nix { + inherit (haskellPackages) Agda; + }; + agda = agdaPackages.agda; + + ### DEVELOPMENT / LIBRARIES / BASH + + bash-preexec = callPackage ../development/libraries/bash/bash-preexec { }; + + ### DEVELOPMENT / LIBRARIES / JAVA + + commonsBcel = callPackage ../development/libraries/java/commons/bcel { }; + + commonsBsf = callPackage ../development/libraries/java/commons/bsf { }; + + commonsCompress = callPackage ../development/libraries/java/commons/compress { }; + + commonsDaemon = callPackage ../development/libraries/java/commons/daemon { }; + + commonsFileUpload = callPackage ../development/libraries/java/commons/fileupload { }; + + commonsLang = callPackage ../development/libraries/java/commons/lang { }; + + commonsLogging = callPackage ../development/libraries/java/commons/logging { }; + + commonsIo = callPackage ../development/libraries/java/commons/io { }; + + commonsMath = callPackage ../development/libraries/java/commons/math { }; + + fastjar = callPackage ../development/tools/java/fastjar { }; + + httpunit = callPackage ../development/libraries/java/httpunit { }; + + javaCup = callPackage ../development/libraries/java/cup { + jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + + jdom = callPackage ../development/libraries/java/jdom { }; + + jflex = callPackage ../development/libraries/java/jflex { }; + + lombok = callPackage ../development/libraries/java/lombok { }; + + lucene = callPackage ../development/libraries/java/lucene { }; + + lucenepp = callPackage ../development/libraries/lucene++ { }; + + mockobjects = callPackage ../development/libraries/java/mockobjects { }; + + saxonb = saxonb_8_8; + + inherit (callPackages ../development/libraries/java/saxon { }) + saxon + saxonb_8_8 + saxonb_9_1 + saxon-he; + + smack = callPackage ../development/libraries/java/smack { }; + + swt = callPackage ../development/libraries/java/swt { }; + swt_jdk8 = callPackage ../development/libraries/java/swt { + jdk = jdk8; + }; + + + ### DEVELOPMENT / LIBRARIES / JAVASCRIPT + + yuicompressor = callPackage ../development/tools/yuicompressor { }; + + ### DEVELOPMENT / BOWER MODULES (JAVASCRIPT) + + buildBowerComponents = callPackage ../development/bower-modules/generic { }; + + ### DEVELOPMENT / GO MODULES + + buildGo116Package = callPackage ../development/go-packages/generic { + go = buildPackages.go_1_16; + }; + buildGo117Package = callPackage ../development/go-packages/generic { + go = buildPackages.go_1_17; + }; + buildGo118Package = callPackage ../development/go-packages/generic { + go = buildPackages.go_1_18; + }; + + buildGoPackage = buildGo117Package; + + buildGo116Module = callPackage ../development/go-modules/generic { + go = buildPackages.go_1_16; + }; + buildGo117Module = callPackage ../development/go-modules/generic { + go = buildPackages.go_1_17; + }; + buildGo118Module = callPackage ../development/go-modules/generic { + go = buildPackages.go_1_18; + }; + + buildGoModule = buildGo117Module; + + go2nix = callPackage ../development/tools/go2nix { }; + + leaps = callPackage ../development/tools/leaps { }; + + vgo2nix = callPackage ../development/tools/vgo2nix { }; + + ws = callPackage ../development/tools/ws { }; + + ### DEVELOPMENT / JAVA MODULES + + javaPackages = recurseIntoAttrs (callPackage ./java-packages.nix { }); + + ### DEVELOPMENT / LISP MODULES + + asdf = callPackage ../development/lisp-modules/asdf { + texLive = null; + }; + + # QuickLisp minimal version + asdf_2_26 = callPackage ../development/lisp-modules/asdf/2.26.nix { + texLive = null; + }; + # Currently most popular + asdf_3_1 = callPackage ../development/lisp-modules/asdf/3.1.nix { + texLive = null; + }; + + clwrapperFunction = callPackage ../development/lisp-modules/clwrapper; + + wrapLisp = lisp: clwrapperFunction { inherit lisp; }; + + lispPackagesFor = clwrapper: callPackage ../development/lisp-modules/lisp-packages.nix { + inherit clwrapper; + }; + + lispPackages = recurseIntoAttrs (quicklispPackages // + (lispPackagesFor (wrapLisp sbcl))); + + quicklispPackagesFor = clwrapper: callPackage ../development/lisp-modules/quicklisp-to-nix.nix { + inherit clwrapper; + }; + quicklispPackagesClisp = dontRecurseIntoAttrs (quicklispPackagesFor (wrapLisp clisp)); + quicklispPackagesSBCL = dontRecurseIntoAttrs (quicklispPackagesFor (wrapLisp sbcl)); + quicklispPackagesECL = dontRecurseIntoAttrs (quicklispPackagesFor (wrapLisp ecl)); + quicklispPackagesCCL = dontRecurseIntoAttrs (quicklispPackagesFor (wrapLisp ccl)); + quicklispPackagesABCL = dontRecurseIntoAttrs (quicklispPackagesFor (wrapLisp abcl)); + quicklispPackagesGCL = dontRecurseIntoAttrs (quicklispPackagesFor (wrapLisp gcl)); + quicklispPackages = quicklispPackagesSBCL; + + ### DEVELOPMENT / PERL MODULES + + perlInterpreters = callPackages ../development/interpreters/perl {}; + inherit (perlInterpreters) perl532 perl534 perldevel; + + perl532Packages = recurseIntoAttrs perl532.pkgs; + perl534Packages = recurseIntoAttrs perl534.pkgs; + perldevelPackages = perldevel.pkgs; + + perl = perl534; + perlPackages = perl534Packages; + + ack = perlPackages.ack; + + perlcritic = perlPackages.PerlCritic; + + sqitchMysql = (callPackage ../development/tools/misc/sqitch { + mysqlSupport = true; + }).overrideAttrs (_: { pname = "sqitch-mysql"; }); + + sqitchPg = (callPackage ../development/tools/misc/sqitch { + postgresqlSupport = true; + }).overrideAttrs (_: { pname = "sqitch-pg"; }); + + ### DEVELOPMENT / R MODULES + + R = callPackage ../applications/science/math/R { + # TODO: split docs into a separate output + texLive = texlive.combine { + inherit (texlive) scheme-small inconsolata helvetic texinfo fancyvrb cm-super; + }; + withRecommendedPackages = false; + inherit (darwin.apple_sdk.frameworks) Cocoa Foundation; + inherit (darwin) libobjc; + jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + + rWrapper = callPackage ../development/r-modules/wrapper.nix { + recommendedPackages = with rPackages; [ + boot class cluster codetools foreign KernSmooth lattice MASS + Matrix mgcv nlme nnet rpart spatial survival + ]; + # Override this attribute to register additional libraries. + packages = []; + }; + + rstudioWrapper = libsForQt5.callPackage ../development/r-modules/wrapper-rstudio.nix { + recommendedPackages = with rPackages; [ + boot class cluster codetools foreign KernSmooth lattice MASS + Matrix mgcv nlme nnet rpart spatial survival + ]; + # Override this attribute to register additional libraries. + packages = []; + }; + + rstudioServerWrapper = rstudioWrapper.override { rstudio = rstudio-server; }; + + rPackages = dontRecurseIntoAttrs (callPackage ../development/r-modules { + overrides = (config.rPackageOverrides or (_: {})) pkgs; + }); + + ### SERVERS + + _389-ds-base = callPackage ../servers/ldap/389 { }; + + adguardhome = callPackage ../servers/adguardhome {}; + + alerta = callPackage ../servers/monitoring/alerta/client.nix { }; + + alerta-server = callPackage ../servers/monitoring/alerta { }; + + alps = callPackage ../servers/alps { }; + + apacheHttpd_2_4 = callPackage ../servers/http/apache-httpd/2.4.nix { }; + apacheHttpd = apacheHttpd_2_4; + + apacheHttpdPackagesFor = apacheHttpd: self: let callPackage = newScope self; in { + inherit apacheHttpd; + + mod_auth_mellon = callPackage ../servers/http/apache-modules/mod_auth_mellon { }; + + # Redwax collection + mod_ca = callPackage ../servers/http/apache-modules/mod_ca { }; + mod_crl = callPackage ../servers/http/apache-modules/mod_crl { }; + mod_csr = callPackage ../servers/http/apache-modules/mod_csr { }; + mod_cspnonce = callPackage ../servers/http/apache-modules/mod_cspnonce { }; + mod_ocsp = callPackage ../servers/http/apache-modules/mod_ocsp{ }; + mod_scep = callPackage ../servers/http/apache-modules/mod_scep { }; + mod_pkcs12 = callPackage ../servers/http/apache-modules/mod_pkcs12 { }; + mod_spkac= callPackage ../servers/http/apache-modules/mod_spkac { }; + mod_timestamp = callPackage ../servers/http/apache-modules/mod_timestamp { }; + + mod_dnssd = callPackage ../servers/http/apache-modules/mod_dnssd { }; + + mod_evasive = throw "mod_evasive is not supported on Apache httpd 2.4"; + + mod_perl = callPackage ../servers/http/apache-modules/mod_perl { }; + + mod_fastcgi = callPackage ../servers/http/apache-modules/mod_fastcgi { }; + + mod_python = callPackage ../servers/http/apache-modules/mod_python { }; + + mod_tile = callPackage ../servers/http/apache-modules/mod_tile { }; + + mod_wsgi = self.mod_wsgi2; + mod_wsgi2 = callPackage ../servers/http/apache-modules/mod_wsgi { python = python2; ncurses = null; }; + mod_wsgi3 = callPackage ../servers/http/apache-modules/mod_wsgi { python = python3; }; + + mod_itk = callPackage ../servers/http/apache-modules/mod_itk { }; + + php = pkgs.php.override { inherit apacheHttpd; }; + + subversion = pkgs.subversion.override { httpServer = true; inherit apacheHttpd; }; + }; + + apacheHttpdPackages_2_4 = recurseIntoAttrs (apacheHttpdPackagesFor apacheHttpd_2_4 apacheHttpdPackages_2_4); + apacheHttpdPackages = apacheHttpdPackages_2_4; + + appdaemon = callPackage ../servers/home-assistant/appdaemon.nix { }; + + archiveopteryx = callPackage ../servers/mail/archiveopteryx { }; + + atlassian-confluence = callPackage ../servers/atlassian/confluence.nix { }; + atlassian-crowd = callPackage ../servers/atlassian/crowd.nix { }; + atlassian-jira = callPackage ../servers/atlassian/jira.nix { }; + + cadvisor = callPackage ../servers/monitoring/cadvisor { }; + + cassandra_2_1 = callPackage ../servers/nosql/cassandra/2.1.nix { + jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + cassandra_2_2 = callPackage ../servers/nosql/cassandra/2.2.nix { + jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + cassandra_3_0 = callPackage ../servers/nosql/cassandra/3.0.nix { + jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + cassandra_3_11 = callPackage ../servers/nosql/cassandra/3.11.nix { + jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + cassandra = cassandra_3_11; + + apache-jena = callPackage ../servers/nosql/apache-jena/binary.nix { + java = jre; + }; + + apache-jena-fuseki = callPackage ../servers/nosql/apache-jena/fuseki-binary.nix { + java = jre; + }; + + apcupsd = callPackage ../servers/apcupsd { }; + + inherit (callPackages ../servers/asterisk { }) + asterisk asterisk-stable asterisk-lts + asterisk_13 asterisk_16 asterisk_17 asterisk_18; + + asterisk-module-sccp = callPackage ../servers/asterisk/sccp { }; + + sabnzbd = callPackage ../servers/sabnzbd { }; + + bftpd = callPackage ../servers/ftp/bftpd {}; + + bind = callPackage ../servers/dns/bind { }; + dnsutils = bind.dnsutils; + dig = bind.dnsutils; + + bird = callPackage ../servers/bird { }; + + bosun = callPackage ../servers/monitoring/bosun { }; + + cayley = callPackage ../servers/cayley { }; + + charybdis = callPackage ../servers/irc/charybdis { + autoreconfHook = buildPackages.autoreconfHook269; + }; + + clamsmtp = callPackage ../servers/mail/clamsmtp { }; + + clickhouse = callPackage ../servers/clickhouse { + # upstream requires llvm10 as of v20.11.4.13 + inherit (llvmPackages_10) clang-unwrapped lld llvm; + llvm-bintools = llvmPackages_10.bintools; + }; + + clickhouse-cli = with python3Packages; toPythonApplication clickhouse-cli; + + clickhouse-backup = callPackage ../development/tools/database/clickhouse-backup { }; + + couchdb3 = callPackage ../servers/http/couchdb/3.nix { + erlang = erlangR22; + }; + + dcnnt = python3Packages.callPackage ../servers/dcnnt { }; + + dendrite = callPackage ../servers/dendrite { }; + + dex-oidc = callPackage ../servers/dex { }; + + dex2jar = callPackage ../development/tools/java/dex2jar { }; + + doh-proxy = callPackage ../servers/dns/doh-proxy { }; + + doh-proxy-rust = callPackage ../servers/dns/doh-proxy-rust { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + dgraph = callPackage ../servers/dgraph { }; + + dico = callPackage ../servers/dico { }; + + dict = callPackage ../servers/dict { + libmaa = callPackage ../servers/dict/libmaa.nix {}; + }; + + dictdDBs = recurseIntoAttrs (callPackages ../servers/dict/dictd-db.nix {}); + + dictDBCollector = callPackage ../servers/dict/dictd-db-collector.nix {}; + + diod = callPackage ../servers/diod { lua = lua5_1; }; + + directx-shader-compiler = callPackage ../tools/graphics/directx-shader-compiler {}; + + dkimproxy = callPackage ../servers/mail/dkimproxy { }; + + do-agent = callPackage ../servers/monitoring/do-agent { }; + + dodgy = with python3Packages; toPythonApplication dodgy; + + dovecot = callPackage ../servers/mail/dovecot { }; + dovecot_pigeonhole = callPackage ../servers/mail/dovecot/plugins/pigeonhole { }; + dovecot_fts_xapian = callPackage ../servers/mail/dovecot/plugins/fts_xapian { }; + + dspam = callPackage ../servers/mail/dspam { }; + + engelsystem = callPackage ../servers/web-apps/engelsystem { php = php74; }; + + envoy = callPackage ../servers/http/envoy { + jdk = openjdk11; + gn = gn1924; + }; + + ergochat = callPackage ../servers/irc/ergochat { }; + + etcd = etcd_3_3; + etcd_3_3 = callPackage ../servers/etcd/3.3.nix { }; + etcd_3_4 = callPackage ../servers/etcd/3.4.nix { }; + etcd_3_5 = callPackage ../servers/etcd/3.5.nix { }; + + ejabberd = callPackage ../servers/xmpp/ejabberd { }; + + exhibitor = callPackage ../servers/exhibitor { }; + + hyp = callPackage ../servers/http/hyp { }; + + podgrab = callPackage ../servers/misc/podgrab { }; + + prosody = callPackage ../servers/xmpp/prosody { + # _compat can probably be removed on next minor version after 0.10.0 + lua = lua5_2_compat; + withExtraLibs = []; + withExtraLuaPackages = _: []; + }; + + prosody-filer = callPackage ../servers/xmpp/prosody-filer { }; + + biboumi = callPackage ../servers/xmpp/biboumi { }; + + elasticmq-server-bin = callPackage ../servers/elasticmq-server-bin { + jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + + eventstore = callPackage ../servers/nosql/eventstore { + Nuget = dotnetPackages.Nuget; + }; + + exim = callPackage ../servers/mail/exim { }; + + fcgiwrap = callPackage ../servers/fcgiwrap { }; + + fedigroups = callPackage ../servers/fedigroups { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + felix = callPackage ../servers/felix { }; + + felix_remoteshell = callPackage ../servers/felix/remoteshell.nix { }; + + fingerd_bsd = callPackage ../servers/fingerd/bsd-fingerd { }; + + inherit (callPackages ../servers/firebird { }) firebird_4 firebird_3 firebird_2_5 firebird; + + freeradius = callPackage ../servers/freeradius { }; + + freeswitch = callPackage ../servers/sip/freeswitch { + inherit (darwin.apple_sdk.frameworks) SystemConfiguration; + }; + + fusionInventory = callPackage ../servers/monitoring/fusion-inventory { }; + + gatling = callPackage ../servers/http/gatling { }; + + gitlab-pages = callPackage ../servers/http/gitlab-pages { }; + + glabels = callPackage ../applications/graphics/glabels { }; + + nats-server = callPackage ../servers/nats-server { }; + + gofish = callPackage ../servers/gopher/gofish { }; + + grafana = callPackage ../servers/monitoring/grafana { }; + grafanaPlugins = callPackages ../servers/monitoring/grafana/plugins { }; + + grafana-agent = callPackage ../servers/monitoring/grafana-agent { }; + + grafana-loki = callPackage ../servers/monitoring/loki { }; + + promtail = grafana-loki.overrideAttrs (o: { + pname = "promtail"; + subPackages = ["clients/cmd/promtail"]; + CGO_ENABLED = 1; + }); + + grafana_reporter = callPackage ../servers/monitoring/grafana-reporter { }; + + grafana-image-renderer = callPackage ../servers/monitoring/grafana-image-renderer { }; + + gerbera = callPackage ../servers/gerbera {}; + + gobetween = callPackage ../servers/gobetween { }; + + gobgpd = callPackage ../servers/misc/gobgpd { }; + + graph-cli = callPackage ../tools/graphics/graph-cli { }; + + h2o = callPackage ../servers/http/h2o { }; + + haka = callPackage ../tools/security/haka { }; + + hashi-ui = callPackage ../servers/hashi-ui {}; + + hasura-graphql-engine = haskell.lib.compose.justStaticExecutables haskellPackages.graphql-engine; + + hasura-cli = callPackage ../servers/hasura/cli.nix { }; + + heapster = callPackage ../servers/monitoring/heapster { }; + + hbase = callPackage ../servers/hbase {}; + + headphones = callPackage ../servers/headphones {}; + + hiawatha = callPackage ../servers/http/hiawatha {}; + + home-assistant = callPackage ../servers/home-assistant { }; + + home-assistant-cli = callPackage ../servers/home-assistant/cli.nix { }; + + home-assistant-component-tests = recurseIntoAttrs home-assistant.tests.components; + + hqplayerd = callPackage ../servers/hqplayerd { }; + + https-dns-proxy = callPackage ../servers/dns/https-dns-proxy { }; + + hydron = callPackage ../servers/hydron { }; + + hyprspace = callPackage ../applications/networking/hyprspace { inherit (darwin) iproute2mac; }; + + ic-keysmith = callPackage ../tools/security/ic-keysmith { }; + + icecream = callPackage ../servers/icecream { }; + + icingaweb2-ipl = callPackage ../servers/icingaweb2/ipl.nix { }; + icingaweb2-thirdparty = callPackage ../servers/icingaweb2/thirdparty.nix { }; + icingaweb2 = callPackage ../servers/icingaweb2 { }; + icingaweb2Modules = { + theme-april = callPackage ../servers/icingaweb2/theme-april { }; + theme-lsd = callPackage ../servers/icingaweb2/theme-lsd { }; + theme-particles = callPackage ../servers/icingaweb2/theme-particles { }; + theme-snow = callPackage ../servers/icingaweb2/theme-snow { }; + theme-spring = callPackage ../servers/icingaweb2/theme-spring { }; + }; + + inspircd = callPackage ../servers/irc/inspircd { }; + + inspircdMinimal = inspircd.override { extraModules = []; }; + + imgproxy = callPackage ../servers/imgproxy { }; + + ircdog = callPackage ../applications/networking/irc/ircdog { }; + + ircdHybrid = callPackage ../servers/irc/ircd-hybrid { }; + + janus-gateway = callPackage ../servers/janus-gateway { }; + + jboss = callPackage ../servers/http/jboss { }; + + jboss_mysql_jdbc = callPackage ../servers/http/jboss/jdbc/mysql { }; + + jetty = callPackage ../servers/http/jetty { }; + + jibri = callPackage ../servers/jibri { }; + + jicofo = callPackage ../servers/jicofo { }; + + jitsi-meet = callPackage ../servers/web-apps/jitsi-meet { }; + + jitsi-meet-prosody = callPackage ../misc/jitsi-meet-prosody { }; + + jitsi-videobridge = callPackage ../servers/jitsi-videobridge { }; + + kapowbang = callPackage ../servers/kapowbang { }; + + keycloak = callPackage ../servers/keycloak { }; + + knot-dns = callPackage ../servers/dns/knot-dns { }; + knot-resolver = callPackage ../servers/dns/knot-resolver { }; + + rdkafka = callPackage ../development/libraries/rdkafka { }; + + leafnode = callPackage ../servers/news/leafnode { }; + + lemmy-server = callPackage ../servers/web-apps/lemmy/server.nix { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + lemmy-ui = callPackage ../servers/web-apps/lemmy/ui.nix { + nodejs = nodejs-14_x; + }; + + lighttpd = callPackage ../servers/http/lighttpd { }; + + livepeer = callPackage ../servers/livepeer { }; + + lwan = callPackage ../servers/http/lwan { }; + + labelImg = callPackage ../applications/science/machine-learning/labelimg { }; + + mackerel-agent = callPackage ../servers/monitoring/mackerel-agent { }; + + mailman = callPackage ../servers/mail/mailman/wrapped.nix { + python3 = python3.override { + packageOverrides = self: super: { + sqlalchemy = super.sqlalchemy.overridePythonAttrs (oldAttrs: rec { + version = "1.3.24"; + src = oldAttrs.src.override { + inherit version; + sha256 = "ebbb777cbf9312359b897bf81ba00dae0f5cb69fba2a18265dcc18a6f5ef7519"; + }; + }); + }; + }; + }; + + mailman-rss = callPackage ../tools/misc/mailman-rss { }; + + mailman-web = with python3.pkgs; toPythonApplication mailman-web; + + listadmin = callPackage ../applications/networking/listadmin {}; + + maker-panel = callPackage ../tools/misc/maker-panel { }; + + mastodon = callPackage ../servers/mastodon { }; + + materialize = callPackage ../servers/sql/materialize { + inherit (buildPackages.darwin) bootstrap_cmds; + inherit (darwin.apple_sdk.frameworks) DiskArbitration Foundation; + }; + + matrix-alertmanager = callPackage ../servers/monitoring/matrix-alertmanager { }; + + mattermost = callPackage ../servers/mattermost { }; + matterircd = callPackage ../servers/mattermost/matterircd.nix { }; + matterbridge = callPackage ../servers/matterbridge { }; + + mattermost-desktop = callPackage ../applications/networking/instant-messengers/mattermost-desktop { }; + + mbtileserver = callPackage ../servers/mbtileserver { }; + + memcached = callPackage ../servers/memcached {}; + + meteor = callPackage ../servers/meteor { }; + + micronaut = callPackage ../development/tools/micronaut {}; + + minio = callPackage ../servers/minio { }; + + mkchromecast = libsForQt5.callPackage ../applications/networking/mkchromecast { }; + + # Backwards compatibility. + mod_dnssd = apacheHttpdPackages.mod_dnssd; + mod_fastcgi = apacheHttpdPackages.mod_fastcgi; + mod_python = apacheHttpdPackages.mod_python; + mod_wsgi = apacheHttpdPackages.mod_wsgi; + mod_ca = apacheHttpdPackages.mod_ca; + mod_crl = apacheHttpdPackages.mod_crl; + mod_csr = apacheHttpdPackages.mod_csr; + mod_ocsp = apacheHttpdPackages.mod_ocsp; + mod_scep = apacheHttpdPackages.mod_scep; + mod_spkac = apacheHttpdPackages.mod_spkac; + mod_pkcs12 = apacheHttpdPackages.mod_pkcs12; + mod_timestamp = apacheHttpdPackages.mod_timestamp; + + inherit (callPackages ../servers/mpd { + inherit (darwin.apple_sdk.frameworks) AudioToolbox AudioUnit; + }) mpd mpd-small mpdWithFeatures; + + libmpdclient = callPackage ../servers/mpd/libmpdclient.nix { }; + + mpdscribble = callPackage ../tools/misc/mpdscribble { }; + + mtprotoproxy = python3.pkgs.callPackage ../servers/mtprotoproxy { }; + + micro-httpd = callPackage ../servers/http/micro-httpd { }; + + miniHttpd = callPackage ../servers/http/mini-httpd {}; + + mlflow-server = callPackage ../servers/mlflow-server { }; + + mlmmj = callPackage ../servers/mail/mlmmj { }; + + moodle = callPackage ../servers/web-apps/moodle { }; + + moodle-utils = callPackage ../servers/web-apps/moodle/moodle-utils.nix { }; + + morty = callPackage ../servers/web-apps/morty { }; + + mullvad-vpn = callPackage ../applications/networking/mullvad-vpn { }; + + mycorrhiza = callPackage ../servers/mycorrhiza { + buildGoModule = buildGo116Module; + }; + + myserver = callPackage ../servers/http/myserver { }; + + napalm = with python3Packages; toPythonApplication ( + napalm.overridePythonAttrs (attrs: { + # add community frontends that depend on the napalm python package + propagatedBuildInputs = attrs.propagatedBuildInputs ++ [ + napalm-hp-procurve + ]; + }) + ); + + nas = callPackage ../servers/nas { }; + + nats-streaming-server = callPackage ../servers/nats-streaming-server { }; + + neard = callPackage ../servers/neard { }; + + networkaudiod = callPackage ../servers/networkaudiod { }; + + unifiedpush-common-proxies = callPackage ../servers/unifiedpush-common-proxies { }; + + unit = callPackage ../servers/http/unit { }; + + ncdns = callPackage ../servers/dns/ncdns { + buildGoModule = buildGo116Module; + }; + + nginx = nginxStable; + + nginxQuic = callPackage ../servers/http/nginx/quic.nix { + zlib = zlib-ng.override { withZlibCompat = true; }; + withPerl = false; + # We don't use `with` statement here on purpose! + # See https://github.com/NixOS/nixpkgs/pull/10474#discussion_r42369334 + modules = [ nginxModules.rtmp nginxModules.dav nginxModules.moreheaders ]; + # Use latest boringssl to allow http3 support + openssl = quictls; + }; + + nginxStable = callPackage ../servers/http/nginx/stable.nix { + zlib = zlib-ng.override { withZlibCompat = true; }; + withPerl = false; + # We don't use `with` statement here on purpose! + # See https://github.com/NixOS/nixpkgs/pull/10474#discussion_r42369334 + modules = [ nginxModules.rtmp nginxModules.dav nginxModules.moreheaders ]; + }; + + nginxMainline = callPackage ../servers/http/nginx/mainline.nix { + zlib = zlib-ng.override { withZlibCompat = true; }; + withKTLS = true; + withPerl = false; + # We don't use `with` statement here on purpose! + # See https://github.com/NixOS/nixpkgs/pull/10474#discussion_r42369334 + modules = [ nginxModules.dav nginxModules.moreheaders ]; + }; + + nginxModules = recurseIntoAttrs (callPackage ../servers/http/nginx/modules.nix { }); + + # We should move to dynmaic modules and create a nginxFull package with all modules + nginxShibboleth = nginxStable.override { + modules = [ nginxModules.rtmp nginxModules.dav nginxModules.moreheaders nginxModules.shibboleth ]; + }; + + libmodsecurity = callPackage ../tools/security/libmodsecurity { }; + + ngircd = callPackage ../servers/irc/ngircd { }; + + nix-binary-cache = callPackage ../servers/http/nix-binary-cache {}; + + nix-tour = callPackage ../applications/misc/nix-tour {}; + + nosqli = callPackage ../tools/security/nosqli { }; + + nsd = callPackage ../servers/dns/nsd (config.nsd or {}); + + nsq = callPackage ../servers/nsq { }; + + oauth2-proxy = callPackage ../servers/oauth2-proxy { }; + + openbgpd = callPackage ../servers/openbgpd { }; + + openafs_1_8 = callPackage ../servers/openafs/1.8 { tsmbac = null; ncurses = null; }; + openafs_1_9 = callPackage ../servers/openafs/1.9 { tsmbac = null; ncurses = null; }; + # Current stable release; don't backport release updates! + openafs = openafs_1_8; + + openresty = callPackage ../servers/http/openresty { + withPerl = false; + modules = []; + }; + + opensmtpd = callPackage ../servers/mail/opensmtpd { }; + opensmtpd-extras = callPackage ../servers/mail/opensmtpd/extras.nix { }; + opensmtpd-filter-rspamd = callPackage ../servers/mail/opensmtpd/filter-rspamd.nix { }; + + openxpki = callPackage ../servers/openxpki { }; + + openxr-loader = callPackage ../development/libraries/openxr-loader { }; + + osrm-backend = callPackage ../servers/osrm-backend { }; + + oven-media-engine = callPackage ../servers/misc/oven-media-engine { }; + + p910nd = callPackage ../servers/p910nd { }; + + petidomo = callPackage ../servers/mail/petidomo { }; + + pict-rs = callPackage ../servers/web-apps/pict-rs { + inherit (darwin.apple_sdk.frameworks) Security; + ffmpeg = ffmpeg_4; + }; + + popa3d = callPackage ../servers/mail/popa3d { }; + + postfix = callPackage ../servers/mail/postfix { }; + + postfixadmin = callPackage ../servers/postfixadmin { }; + + postsrsd = callPackage ../servers/mail/postsrsd { }; + + rspamd = callPackage ../servers/mail/rspamd { }; + + pfixtools = callPackage ../servers/mail/postfix/pfixtools.nix { + gperf = gperf_3_0; + }; + pflogsumm = callPackage ../servers/mail/postfix/pflogsumm.nix { }; + + pomerium = callPackage ../servers/http/pomerium { }; + pomerium-cli = callPackage ../tools/security/pomerium-cli { }; + + postgrey = callPackage ../servers/mail/postgrey { }; + + pshs = callPackage ../servers/http/pshs { }; + + quark = callPackage ../servers/http/quark { }; + + soft-serve = callPackage ../servers/soft-serve { }; + + sympa = callPackage ../servers/mail/sympa { }; + + system-sendmail = lowPrio (callPackage ../servers/mail/system-sendmail { }); + + # PulseAudio daemons + + hsphfpd = callPackage ../servers/pulseaudio/hsphfpd.nix { }; + + pulseaudio-hsphfpd = callPackage ../servers/pulseaudio/pali.nix { + inherit (darwin.apple_sdk.frameworks) CoreServices AudioUnit Cocoa; + }; + + pulseaudio = callPackage ../servers/pulseaudio ({ + inherit (darwin.apple_sdk.frameworks) CoreServices AudioUnit Cocoa; + } // lib.optionalAttrs stdenv.isDarwin { + # Default autoreconfHook (2.70) fails on darwin, + # with "configure: error: *** Compiler does not support -std=gnu11" + autoreconfHook = buildPackages.autoreconfHook269; + }); + + qpaeq = libsForQt5.callPackage ../servers/pulseaudio/qpaeq.nix { }; + + pulseaudioFull = pulseaudio.override { + x11Support = true; + jackaudioSupport = true; + airtunesSupport = true; + bluetoothSupport = true; + remoteControlSupport = true; + zeroconfSupport = true; + }; + + # libpulse implementations + libpulseaudio-vanilla = pulseaudio.override { + libOnly = true; + }; + + apulse = callPackage ../misc/apulse { }; + + libpressureaudio = callPackage ../misc/apulse/pressureaudio.nix { + libpulseaudio = libpulseaudio-vanilla; # headers only + }; + + libcardiacarrest = callPackage ../misc/libcardiacarrest { + libpulseaudio = libpulseaudio-vanilla; # meta only + }; + + libpulseaudio = libpulseaudio-vanilla; + + easyeffects = callPackage ../applications/audio/easyeffects { }; + + pulseeffects-legacy = callPackage ../applications/audio/pulseeffects-legacy { + boost = boost172; + }; + + tomcat_connectors = callPackage ../servers/http/apache-modules/tomcat-connectors { }; + + tomcat-native = callPackage ../servers/http/tomcat/tomcat-native.nix { }; + + pg_featureserv = callPackage ../servers/pg_featureserv { }; + + pg_tileserv = callPackage ../servers/pg_tileserv { }; + + pies = callPackage ../servers/pies { }; + + rpcbind = callPackage ../servers/rpcbind { }; + + rpcsvc-proto = callPackage ../tools/misc/rpcsvc-proto { }; + + libmysqlclient = libmysqlclient_3_2; + libmysqlclient_3_1 = mariadb-connector-c_3_1; + libmysqlclient_3_2 = mariadb-connector-c_3_2; + mariadb-connector-c = mariadb-connector-c_3_2; + mariadb-connector-c_3_1 = callPackage ../servers/sql/mariadb/connector-c/3_1.nix { }; + mariadb-connector-c_3_2 = callPackage ../servers/sql/mariadb/connector-c/3_2.nix { }; + + mariadb-galera = callPackage ../servers/sql/mariadb/galera { + asio = asio_1_10; + }; + + inherit (callPackage ../servers/sql/mariadb { + inherit (darwin) cctools; + inherit (darwin.apple_sdk.frameworks) CoreServices; + }) + mariadb_104 + mariadb_105 + mariadb_106 + mariadb_107 + mariadb_108 + ; + mariadb = mariadb_106; + + mongodb = hiPrio mongodb-3_4; + + mongodb-3_4 = callPackage ../servers/nosql/mongodb/v3_4.nix { + sasl = cyrus_sasl; + boost = boost160; + inherit (darwin) cctools; + inherit (darwin.apple_sdk.frameworks) CoreFoundation Security; + }; + + mongodb-3_6 = callPackage ../servers/nosql/mongodb/v3_6.nix { + sasl = cyrus_sasl; + boost = boost160; + inherit (darwin) cctools; + inherit (darwin.apple_sdk.frameworks) CoreFoundation Security; + }; + + mongodb-4_0 = callPackage ../servers/nosql/mongodb/v4_0.nix { + sasl = cyrus_sasl; + boost = boost169; + inherit (darwin) cctools; + inherit (darwin.apple_sdk.frameworks) CoreFoundation Security; + }; + + mongodb-4_2 = callPackage ../servers/nosql/mongodb/v4_2.nix { + sasl = cyrus_sasl; + boost = boost169; + inherit (darwin) cctools; + inherit (darwin.apple_sdk.frameworks) CoreFoundation Security; + }; + + nginx-sso = callPackage ../servers/nginx-sso { }; + + percona-server56 = callPackage ../servers/sql/percona/5.6.x.nix { }; + percona-server = percona-server56; + + riak = callPackage ../servers/nosql/riak/2.2.0.nix { + erlang = erlang_basho_R16B02; + }; + + influxdb = callPackage ../servers/nosql/influxdb { }; + influxdb2-server = callPackage ../servers/nosql/influxdb2 { }; + influxdb2-cli = callPackage ../servers/nosql/influxdb2/cli.nix { }; + # For backwards compatibility with older versions of influxdb2, + # which bundled the server and CLI into the same derivation. Will be + # removed in a few releases. + influxdb2 = callPackage ../servers/nosql/influxdb2/combined.nix { }; + + mysql57 = callPackage ../servers/sql/mysql/5.7.x.nix { + inherit (darwin) cctools developer_cmds; + inherit (darwin.apple_sdk.frameworks) CoreServices; + boost = boost159; + protobuf = protobuf3_7; + }; + + mysql80 = callPackage ../servers/sql/mysql/8.0.x.nix { + inherit (darwin) cctools developer_cmds DarwinTools; + inherit (darwin.apple_sdk.frameworks) CoreServices; + boost = boost173; # Configure checks for specific version. + protobuf = protobuf3_11; + icu = icu67; + }; + + mysql_jdbc = callPackage ../servers/sql/mysql/jdbc { }; + + mssql_jdbc = callPackage ../servers/sql/mssql/jdbc { }; + jtds_jdbc = callPackage ../servers/sql/mssql/jdbc/jtds.nix { }; + + azuredatastudio = callPackage ../applications/misc/azuredatastudio { }; + + miniflux = callPackage ../servers/miniflux { }; + + icinga2 = callPackage ../servers/monitoring/icinga2 { }; + + icinga2-agent = callPackage ../servers/monitoring/icinga2 { + nameSuffix = "-agent"; + withMysql = false; + withNotification = false; + withIcingadb = false; + }; + + munin = callPackage ../servers/monitoring/munin { }; + + nagios = callPackage ../servers/monitoring/nagios { }; + + monitoring-plugins = callPackage ../servers/monitoring/plugins { }; + + inherit (callPackage ../servers/monitoring/plugins/labs_consol_de.nix { }) + check-mssql-health + check-nwc-health + check-ups-health; + + check-openvpn = callPackage ../servers/monitoring/plugins/openvpn.nix { }; + + checkSSLCert = callPackage ../servers/monitoring/nagios/plugins/check_ssl_cert.nix { }; + + check_systemd = callPackage ../servers/monitoring/nagios/plugins/check_systemd.nix { }; + + neo4j = callPackage ../servers/nosql/neo4j { + jre = jre8_headless; + }; + + neo4j-desktop = callPackage ../applications/misc/neo4j-desktop { }; + + check-esxi-hardware = callPackage ../servers/monitoring/plugins/esxi.nix {}; + + net-snmp = callPackage ../servers/monitoring/net-snmp { }; + + newrelic-sysmond = callPackage ../servers/monitoring/newrelic-sysmond { }; + + nullidentdmod = callPackage ../servers/identd/nullidentdmod {}; + + riemann = callPackage ../servers/monitoring/riemann { }; + riemann-dash = callPackage ../servers/monitoring/riemann-dash { }; + + unpfs = callPackage ../servers/unpfs {}; + + oidentd = callPackage ../servers/identd/oidentd { }; + + openfire = callPackage ../servers/xmpp/openfire { }; + + softether = callPackage ../servers/softether { }; + + qboot = pkgsi686Linux.callPackage ../applications/virtualization/qboot { }; + + OVMF = callPackage ../applications/virtualization/OVMF { }; + OVMFFull = callPackage ../applications/virtualization/OVMF { + secureBoot = true; + csmSupport = true; + httpSupport = true; + tpmSupport = true; + }; + + seabios = callPackage ../applications/virtualization/seabios { }; + + vmfs-tools = callPackage ../tools/filesystems/vmfs-tools { }; + + patroni = callPackage ../servers/sql/patroni { pythonPackages = python3Packages; }; + + pgbouncer = callPackage ../servers/sql/pgbouncer { }; + + pgpool = callPackage ../servers/sql/pgpool { + pam = if stdenv.isLinux then pam else null; + libmemcached = null; # Detection is broken upstream + }; + + tang = callPackage ../servers/tang { + asciidoc = asciidoc-full; + }; + + promscale = callPackage ../servers/monitoring/prometheus/promscale { }; + + timescaledb-parallel-copy = callPackage ../development/tools/database/timescaledb-parallel-copy { }; + + timescaledb-tune = callPackage ../development/tools/database/timescaledb-tune { }; + + inherit (import ../servers/sql/postgresql pkgs) + postgresql_10 + postgresql_11 + postgresql_12 + postgresql_13 + postgresql_14 + ; + postgresql = postgresql_13.override { this = postgresql; }; + postgresqlPackages = recurseIntoAttrs postgresql.pkgs; + postgresql11Packages = recurseIntoAttrs postgresql_11.pkgs; + postgresql12Packages = recurseIntoAttrs postgresql_12.pkgs; + postgresql13Packages = postgresqlPackages; + postgresql14Packages = recurseIntoAttrs postgresql_14.pkgs; + + postgresql_jdbc = callPackage ../development/java-modules/postgresql_jdbc { }; + + prom2json = callPackage ../servers/monitoring/prometheus/prom2json.nix { }; + prometheus = callPackage ../servers/monitoring/prometheus { }; + prometheus-alertmanager = callPackage ../servers/monitoring/prometheus/alertmanager.nix { }; + prometheus-apcupsd-exporter = callPackage ../servers/monitoring/prometheus/apcupsd-exporter.nix { }; + prometheus-artifactory-exporter = callPackage ../servers/monitoring/prometheus/artifactory-exporter.nix { }; + prometheus-aws-s3-exporter = callPackage ../servers/monitoring/prometheus/aws-s3-exporter.nix { }; + prometheus-bind-exporter = callPackage ../servers/monitoring/prometheus/bind-exporter.nix { }; + prometheus-bird-exporter = callPackage ../servers/monitoring/prometheus/bird-exporter.nix { }; + prometheus-bitcoin-exporter = callPackage ../servers/monitoring/prometheus/bitcoin-exporter.nix { }; + prometheus-blackbox-exporter = callPackage ../servers/monitoring/prometheus/blackbox-exporter.nix { }; + prometheus-collectd-exporter = callPackage ../servers/monitoring/prometheus/collectd-exporter.nix { }; + prometheus-consul-exporter = callPackage ../servers/monitoring/prometheus/consul-exporter.nix { }; + prometheus-dmarc-exporter = callPackage ../servers/monitoring/prometheus/dmarc-exporter { }; + prometheus-dnsmasq-exporter = callPackage ../servers/monitoring/prometheus/dnsmasq-exporter.nix { }; + prometheus-dovecot-exporter = callPackage ../servers/monitoring/prometheus/dovecot-exporter.nix { }; + prometheus-domain-exporter = callPackage ../servers/monitoring/prometheus/domain-exporter.nix { }; + prometheus-fastly-exporter = callPackage ../servers/monitoring/prometheus/fastly-exporter.nix { }; + prometheus-flow-exporter = callPackage ../servers/monitoring/prometheus/flow-exporter.nix { }; + prometheus-fritzbox-exporter = callPackage ../servers/monitoring/prometheus/fritzbox-exporter.nix { }; + prometheus-gitlab-ci-pipelines-exporter = callPackage ../servers/monitoring/prometheus/gitlab-ci-pipelines-exporter.nix { }; + prometheus-haproxy-exporter = callPackage ../servers/monitoring/prometheus/haproxy-exporter.nix { }; + prometheus-influxdb-exporter = callPackage ../servers/monitoring/prometheus/influxdb-exporter.nix { }; + prometheus-jitsi-exporter = callPackage ../servers/monitoring/prometheus/jitsi-exporter.nix { }; + prometheus-jmx-httpserver = callPackage ../servers/monitoring/prometheus/jmx-httpserver.nix { }; + prometheus-json-exporter = callPackage ../servers/monitoring/prometheus/json-exporter.nix { }; + prometheus-kea-exporter = callPackage ../servers/monitoring/prometheus/kea-exporter.nix { }; + prometheus-keylight-exporter = callPackage ../servers/monitoring/prometheus/keylight-exporter.nix { }; + prometheus-knot-exporter = callPackage ../servers/monitoring/prometheus/knot-exporter.nix { }; + prometheus-lnd-exporter = callPackage ../servers/monitoring/prometheus/lnd-exporter.nix { }; + prometheus-mail-exporter = callPackage ../servers/monitoring/prometheus/mail-exporter.nix { }; + prometheus-mesos-exporter = callPackage ../servers/monitoring/prometheus/mesos-exporter.nix { }; + prometheus-mikrotik-exporter = callPackage ../servers/monitoring/prometheus/mikrotik-exporter.nix { }; + prometheus-minio-exporter = callPackage ../servers/monitoring/prometheus/minio-exporter { }; + prometheus-modemmanager-exporter = callPackage ../servers/monitoring/prometheus/modemmanager-exporter.nix { }; + prometheus-mysqld-exporter = callPackage ../servers/monitoring/prometheus/mysqld-exporter.nix { }; + prometheus-nextcloud-exporter = callPackage ../servers/monitoring/prometheus/nextcloud-exporter.nix { }; + prometheus-nginx-exporter = callPackage ../servers/monitoring/prometheus/nginx-exporter.nix { }; + prometheus-nginxlog-exporter = callPackage ../servers/monitoring/prometheus/nginxlog-exporter.nix { }; + prometheus-node-exporter = callPackage ../servers/monitoring/prometheus/node-exporter.nix { }; + prometheus-openldap-exporter = callPackage ../servers/monitoring/prometheus/openldap-exporter.nix { }; + prometheus-openvpn-exporter = callPackage ../servers/monitoring/prometheus/openvpn-exporter.nix { }; + prometheus-pihole-exporter = callPackage ../servers/monitoring/prometheus/pihole-exporter.nix { }; + prometheus-postfix-exporter = callPackage ../servers/monitoring/prometheus/postfix-exporter.nix { }; + prometheus-postgres-exporter = callPackage ../servers/monitoring/prometheus/postgres-exporter.nix { }; + prometheus-process-exporter = callPackage ../servers/monitoring/prometheus/process-exporter.nix { }; + prometheus-pushgateway = callPackage ../servers/monitoring/prometheus/pushgateway.nix { }; + prometheus-pve-exporter = callPackage ../servers/monitoring/prometheus/pve-exporter.nix { }; + prometheus-redis-exporter = callPackage ../servers/monitoring/prometheus/redis-exporter.nix { }; + prometheus-rabbitmq-exporter = callPackage ../servers/monitoring/prometheus/rabbitmq-exporter.nix { }; + prometheus-rtl_433-exporter = callPackage ../servers/monitoring/prometheus/rtl_433-exporter.nix { }; + prometheus-script-exporter = callPackage ../servers/monitoring/prometheus/script-exporter.nix { }; + prometheus-smartctl-exporter = callPackage ../servers/monitoring/prometheus/smartctl-exporter { }; + prometheus-smokeping-prober = callPackage ../servers/monitoring/prometheus/smokeping-prober.nix { }; + prometheus-snmp-exporter = callPackage ../servers/monitoring/prometheus/snmp-exporter.nix { }; + prometheus-statsd-exporter = callPackage ../servers/monitoring/prometheus/statsd-exporter.nix { }; + prometheus-surfboard-exporter = callPackage ../servers/monitoring/prometheus/surfboard-exporter.nix { }; + prometheus-sql-exporter = callPackage ../servers/monitoring/prometheus/sql-exporter.nix { }; + prometheus-systemd-exporter = callPackage ../servers/monitoring/prometheus/systemd-exporter.nix { }; + prometheus-tor-exporter = callPackage ../servers/monitoring/prometheus/tor-exporter.nix { }; + prometheus-unbound-exporter = callPackage ../servers/monitoring/prometheus/unbound-exporter.nix { + inherit (darwin.apple_sdk.frameworks) Security; + }; + prometheus-unifi-exporter = callPackage ../servers/monitoring/prometheus/unifi-exporter { }; + prometheus-varnish-exporter = callPackage ../servers/monitoring/prometheus/varnish-exporter.nix { }; + prometheus-wireguard-exporter = callPackage ../servers/monitoring/prometheus/wireguard-exporter.nix { + inherit (darwin.apple_sdk.frameworks) Security; + }; + prometheus-xmpp-alerts = callPackage ../servers/monitoring/prometheus/xmpp-alerts.nix { }; + + prometheus-cpp = callPackage ../development/libraries/prometheus-cpp { }; + + psqlodbc = callPackage ../development/libraries/psqlodbc { }; + + public-inbox = perlPackages.callPackage ../servers/mail/public-inbox { }; + + pure-ftpd = callPackage ../servers/ftp/pure-ftpd { }; + + pypolicyd-spf = python3.pkgs.callPackage ../servers/mail/pypolicyd-spf { }; + + qpid-cpp = callPackage ../servers/amqp/qpid-cpp { + boost = boost155; + inherit (python2Packages) buildPythonPackage qpid-python; + }; + + qremotecontrol-server = callPackage ../servers/misc/qremotecontrol-server { }; + + rabbitmq-server = callPackage ../servers/amqp/rabbitmq-server { + inherit (darwin.apple_sdk.frameworks) AppKit Carbon Cocoa; + elixir = elixir_1_12; + }; + + radicale2 = callPackage ../servers/radicale/2.x.nix { }; + radicale3 = callPackage ../servers/radicale/3.x.nix { }; + + radicale = radicale3; + + radicle-upstream = callPackage ../applications/version-management/git-and-tools/radicle-upstream {}; + + rake = callPackage ../development/tools/build-managers/rake { }; + + rakkess = callPackage ../development/tools/rakkess { }; + + redis = callPackage ../servers/nosql/redis { }; + + redstore = callPackage ../servers/http/redstore { }; + + reproxy = callPackage ../servers/reproxy { }; + + restic = callPackage ../tools/backup/restic { }; + + restic-rest-server = callPackage ../tools/backup/restic/rest-server.nix { }; + + restya-board = callPackage ../servers/web-apps/restya-board { }; + + rethinkdb = callPackage ../servers/nosql/rethinkdb { + stdenv = clangStdenv; + libtool = darwin.cctools; + }; + + # Fails to compile with boost <= 1.72 + rippled = callPackage ../servers/rippled { + boost = boost172; + }; + + rippled-validator-keys-tool = callPackage ../servers/rippled/validator-keys-tool.nix { }; + + roon-bridge = callPackage ../servers/roon-bridge { }; + + rpiplay = callPackage ../servers/rpiplay { }; + + roon-server = callPackage ../servers/roon-server { }; + + s6 = skawarePackages.s6; + + s6-rc = skawarePackages.s6-rc; + + supervise = callPackage ../tools/system/supervise { }; + + spamassassin = callPackage ../servers/mail/spamassassin { }; + + deadpixi-sam-unstable = callPackage ../applications/editors/deadpixi-sam { }; + + samba4 = callPackage ../servers/samba/4.x.nix { }; + + samba = samba4; + + samba4Full = lowPrio (samba4.override { + enableLDAP = true; + enablePrinting = true; + enableMDNS = true; + enableDomainController = true; + enableRegedit = true; + enableCephFS = !stdenv.hostPlatform.isAarch64; + }); + + sambaFull = samba4Full; + + sampler = callPackage ../applications/misc/sampler { + buildGoModule = buildGo116Module; + }; + + shairplay = callPackage ../servers/shairplay { avahi = avahi-compat; }; + + shairport-sync = callPackage ../servers/shairport-sync { }; + + showoff = callPackage ../servers/http/showoff {}; + + serfdom = callPackage ../servers/serf { }; + + seyren = callPackage ../servers/monitoring/seyren { }; + + ruby-zoom = callPackage ../tools/text/ruby-zoom { }; + + sensu = callPackage ../servers/monitoring/sensu { }; + + inherit (callPackages ../servers/monitoring/sensu-go { }) + sensu-go-agent + sensu-go-backend + sensu-go-cli; + + check-wmiplus = callPackage ../servers/monitoring/plugins/wmiplus { }; + + uchiwa = callPackage ../servers/monitoring/uchiwa { }; + + shishi = callPackage ../servers/shishi { + pam = if stdenv.isLinux then pam else null; + # see also openssl, which has/had this same trick + }; + + sickgear = callPackage ../servers/sickbeard/sickgear.nix { }; + + sipwitch = callPackage ../servers/sip/sipwitch { }; + + slimserver = callPackage ../servers/slimserver { }; + + smcroute = callPackage ../servers/smcroute { }; + + sogo = callPackage ../servers/web-apps/sogo { }; + + spacecookie = + haskell.lib.compose.justStaticExecutables haskellPackages.spacecookie; + + spawn_fcgi = callPackage ../servers/http/spawn-fcgi { }; + + spring-boot-cli = callPackage ../development/tools/spring-boot-cli { }; + + squid = callPackage ../servers/squid { }; + + duckling-proxy = callPackage ../servers/duckling-proxy { }; + + sslh = callPackage ../servers/sslh { }; + + thttpd = callPackage ../servers/http/thttpd { }; + + storm = callPackage ../servers/computing/storm { }; + + switcheroo-control = callPackage ../os-specific/linux/switcheroo-control { }; + + slurm = callPackage ../servers/computing/slurm { gtk2 = null; }; + + slurm-spank-stunnel = callPackage ../servers/computing/slurm-spank-stunnel { }; + + slurm-spank-x11 = callPackage ../servers/computing/slurm-spank-x11 { }; + + systemd-journal2gelf = callPackage ../tools/system/systemd-journal2gelf { }; + + tailscale = callPackage ../servers/tailscale { }; + + thanos = callPackage ../servers/monitoring/thanos { }; + + trafficserver = callPackage ../servers/http/trafficserver { }; + + inherit (callPackages ../servers/http/tomcat { }) + tomcat9 + tomcat10; + + tomcat_mysql_jdbc = callPackage ../servers/http/tomcat/jdbc/mysql { }; + + torque = callPackage ../servers/computing/torque { + autoreconfHook = buildPackages.autoreconfHook269; + }; + + tt-rss = callPackage ../servers/tt-rss { }; + tt-rss-plugin-ff-instagram = callPackage ../servers/tt-rss/plugin-ff-instagram { }; + tt-rss-plugin-auth-ldap = callPackage ../servers/tt-rss/plugin-auth-ldap { }; + tt-rss-theme-feedly = callPackage ../servers/tt-rss/theme-feedly { }; + + rss-bridge = callPackage ../servers/web-apps/rss-bridge { }; + + searx = callPackage ../servers/web-apps/searx { }; + + selfoss = callPackage ../servers/web-apps/selfoss { }; + + shaarli = callPackage ../servers/web-apps/shaarli { }; + + shiori = callPackage ../servers/web-apps/shiori { }; + + inherit (callPackages ../servers/web-apps/matomo {}) + matomo + matomo-beta; + + axis2 = callPackage ../servers/http/tomcat/axis2 { }; + + inherit (callPackages ../servers/unifi { }) + unifiLTS + unifi5 + unifi6 + unifi7; + + unifi = unifi6; + + unifi-video = callPackage ../servers/unifi-video { }; + + unpackerr = callPackage ../servers/unpackerr { + inherit (darwin.apple_sdk.frameworks) Cocoa WebKit; + }; + + urserver = callPackage ../servers/urserver { }; + + vouch-proxy = callPackage ../servers/vouch-proxy { + buildGoModule = buildGo116Module; + }; + + victoriametrics = callPackage ../servers/nosql/victoriametrics { }; + + virtiofsd = callPackage ../servers/misc/virtiofsd { }; + + virtlyst = libsForQt5.callPackage ../servers/web-apps/virtlyst { }; + + virtualenv = with python3Packages; toPythonApplication virtualenv; + + virtualenv-clone = with python3Packages; toPythonApplication virtualenv-clone; + + vsftpd = callPackage ../servers/ftp/vsftpd { }; + + wallabag = callPackage ../servers/web-apps/wallabag { }; + + webdav = callPackage ../servers/webdav { }; + + webdav-server-rs = callPackage ../servers/webdav-server-rs { }; + + webmetro = callPackage ../servers/webmetro { }; + + wsdd = callPackage ../servers/wsdd { }; + + webhook = callPackage ../servers/http/webhook { }; + + xinetd = callPackage ../servers/xinetd { }; + + zookeeper = callPackage ../servers/zookeeper { }; + + zookeeper_mt = callPackage ../development/libraries/zookeeper_mt { }; + + xqilla = callPackage ../development/tools/xqilla { }; + + xquartz = callPackage ../servers/x11/xquartz { }; + + quartz-wm = callPackage ../servers/x11/quartz-wm { + stdenv = clangStdenv; + inherit (darwin.apple_sdk.frameworks) AppKit Foundation; + inherit (darwin.apple_sdk.libs) Xplugin; + }; + + # Use `lib.callPackageWith __splicedPackages` rather than plain `callPackage` + # so as not to have the newly bound xorg items already in scope, which would + # have created a cycle. + xorg = recurseIntoAttrs ((lib.callPackageWith __splicedPackages ../servers/x11/xorg { + }).overrideScope' (lib.callPackageWith __splicedPackages ../servers/x11/xorg/overrides.nix { + inherit (darwin.apple_sdk.frameworks) ApplicationServices Carbon Cocoa; + inherit (darwin.apple_sdk.libs) Xplugin; + inherit (buildPackages.darwin) bootstrap_cmds; + udev = if stdenv.isLinux then udev else null; + libdrm = if stdenv.isLinux then libdrm else null; + abiCompat = config.xorg.abiCompat # `config` because we have no `xorg.override` + or (if stdenv.isDarwin then "1.18" else null); # 1.19 needs fixing on Darwin + }) // { inherit xlibsWrapper; } ); + + xwayland = callPackage ../servers/x11/xorg/xwayland.nix { }; + + yaws = callPackage ../servers/http/yaws { + erlang = erlangR21; + }; + + youtrack = callPackage ../servers/jetbrains/youtrack.nix { }; + + zabbixFor = version: rec { + agent = (callPackages ../servers/monitoring/zabbix/agent.nix {}).${version}; + agent2 = (callPackages ../servers/monitoring/zabbix/agent2.nix {}).${version}; + proxy-mysql = (callPackages ../servers/monitoring/zabbix/proxy.nix { mysqlSupport = true; }).${version}; + proxy-pgsql = (callPackages ../servers/monitoring/zabbix/proxy.nix { postgresqlSupport = true; }).${version}; + proxy-sqlite = (callPackages ../servers/monitoring/zabbix/proxy.nix { sqliteSupport = true; }).${version}; + server-mysql = (callPackages ../servers/monitoring/zabbix/server.nix { mysqlSupport = true; }).${version}; + server-pgsql = (callPackages ../servers/monitoring/zabbix/server.nix { postgresqlSupport = true; }).${version}; + web = (callPackages ../servers/monitoring/zabbix/web.nix {}).${version}; + + # backwards compatibility + server = server-pgsql; + }; + + zabbix50 = recurseIntoAttrs (zabbixFor "v50"); + zabbix40 = dontRecurseIntoAttrs (zabbixFor "v40"); + + zabbix = zabbix50; + + zipkin = callPackage ../servers/monitoring/zipkin { }; + + ### OS-SPECIFIC + + afuse = callPackage ../os-specific/linux/afuse { }; + + autofs5 = callPackage ../os-specific/linux/autofs { }; + + _915resolution = callPackage ../os-specific/linux/915resolution { }; + + nfs-utils = callPackage ../os-specific/linux/nfs-utils { }; + + acpi = callPackage ../os-specific/linux/acpi { }; + + acpid = callPackage ../os-specific/linux/acpid { }; + + acpitool = callPackage ../os-specific/linux/acpitool { }; + + alfred = callPackage ../os-specific/linux/batman-adv/alfred.nix { }; + + alertmanager-bot = callPackage ../servers/monitoring/alertmanager-bot { }; + + alertmanager-irc-relay = callPackage ../servers/monitoring/alertmanager-irc-relay { }; + + alsa-firmware = callPackage ../os-specific/linux/alsa-project/alsa-firmware { }; + alsa-lib = callPackage ../os-specific/linux/alsa-project/alsa-lib { }; + alsa-oss = callPackage ../os-specific/linux/alsa-project/alsa-oss { }; + alsa-plugins = callPackage ../os-specific/linux/alsa-project/alsa-plugins { }; + alsa-plugins-wrapper = callPackage ../os-specific/linux/alsa-project/alsa-plugins/wrapper.nix { }; + alsa-tools = callPackage ../os-specific/linux/alsa-project/alsa-tools { }; + alsa-topology-conf = callPackage ../os-specific/linux/alsa-project/alsa-topology-conf { }; + alsa-ucm-conf = callPackage ../os-specific/linux/alsa-project/alsa-ucm-conf { }; + alsa-utils = callPackage ../os-specific/linux/alsa-project/alsa-utils { + fftw = fftwFloat; + }; + + inherit (callPackage ../misc/arm-trusted-firmware {}) + buildArmTrustedFirmware + armTrustedFirmwareTools + armTrustedFirmwareAllwinner + armTrustedFirmwareAllwinnerH616 + armTrustedFirmwareQemu + armTrustedFirmwareRK3328 + armTrustedFirmwareRK3399 + armTrustedFirmwareS905 + ; + + microcodeAmd = callPackage ../os-specific/linux/microcode/amd.nix { }; + + microcodeIntel = callPackage ../os-specific/linux/microcode/intel.nix { }; + + iucode-tool = callPackage ../os-specific/linux/microcode/iucode-tool.nix { }; + + inherit (callPackages ../os-specific/linux/apparmor { }) + libapparmor apparmor-utils apparmor-bin-utils apparmor-parser apparmor-pam + apparmor-profiles apparmor-kernel-patches apparmorRulesFromClosure; + + aseq2json = callPackage ../os-specific/linux/aseq2json {}; + + atop = callPackage ../os-specific/linux/atop { }; + + audit = callPackage ../os-specific/linux/audit { }; + + b43Firmware_5_1_138 = callPackage ../os-specific/linux/firmware/b43-firmware/5.1.138.nix { }; + + b43Firmware_6_30_163_46 = callPackage ../os-specific/linux/firmware/b43-firmware/6.30.163.46.nix { }; + + b43FirmwareCutter = callPackage ../os-specific/linux/firmware/b43-firmware-cutter { }; + + bt-fw-converter = callPackage ../os-specific/linux/firmware/bt-fw-converter { }; + + brillo = callPackage ../os-specific/linux/brillo { }; + + broadcom-bt-firmware = callPackage ../os-specific/linux/firmware/broadcom-bt-firmware { }; + + batctl = callPackage ../os-specific/linux/batman-adv/batctl.nix { }; + + beefi = callPackage ../os-specific/linux/beefi { }; + + blktrace = callPackage ../os-specific/linux/blktrace { }; + + bluez5 = callPackage ../os-specific/linux/bluez { }; + + bluez5-experimental = callPackage ../os-specific/linux/bluez { + withExperimental = true; + }; + + pulseaudio-modules-bt = callPackage ../applications/audio/pulseaudio-modules-bt { + # pulseaudio-modules-bt is most likely to be used with pulseaudioFull + pulseaudio = pulseaudioFull; + }; + + bluez = bluez5; + + inherit (python3Packages) bedup; + + bolt = callPackage ../os-specific/linux/bolt { }; + + bpfmon = callPackage ../os-specific/linux/bpfmon { }; + + bridge-utils = callPackage ../os-specific/linux/bridge-utils { }; + + busybox = callPackage ../os-specific/linux/busybox { }; + busybox-sandbox-shell = callPackage ../os-specific/linux/busybox/sandbox-shell.nix { + # musl roadmap has RISC-V support projected for 1.1.20 + busybox = if !stdenv.hostPlatform.isRiscV && stdenv.hostPlatform.libc != "bionic" + then pkgsStatic.busybox + else busybox; + }; + + cachefilesd = callPackage ../os-specific/linux/cachefilesd { }; + + cariddi = callPackage ../tools/security/cariddi { }; + + checkpolicy = callPackage ../os-specific/linux/checkpolicy { }; + + checksec = callPackage ../os-specific/linux/checksec { }; + + cifs-utils = callPackage ../os-specific/linux/cifs-utils { }; + + cm-rgb = python3Packages.callPackage ../tools/system/cm-rgb { }; + + cpustat = callPackage ../os-specific/linux/cpustat { }; + + cockroachdb = callPackage ../servers/sql/cockroachdb { }; + + conky = callPackage ../os-specific/linux/conky ({ + lua = lua5_3_compat; + inherit (linuxPackages.nvidia_x11.settings) libXNVCtrl; + } // config.conky or {}); + + conntrack-tools = callPackage ../os-specific/linux/conntrack-tools { }; + + coredns = callPackage ../servers/dns/coredns { }; + + corerad = callPackage ../tools/networking/corerad { }; + + cpufrequtils = callPackage ../os-specific/linux/cpufrequtils { }; + + cpupower-gui = python3Packages.callPackage ../os-specific/linux/cpupower-gui { + inherit (pkgs) meson; + }; + + cpuset = callPackage ../os-specific/linux/cpuset { + pythonPackages = python3Packages; + }; + + criu = callPackage ../os-specific/linux/criu { }; + + cryptomator = callPackage ../tools/security/cryptomator { }; + + cryptsetup = callPackage ../os-specific/linux/cryptsetup { }; + + cramfsprogs = callPackage ../os-specific/linux/cramfsprogs { }; + + cramfsswap = callPackage ../os-specific/linux/cramfsswap { }; + + crda = callPackage ../os-specific/linux/crda { }; + + cshatag = callPackage ../os-specific/linux/cshatag { }; + + # Darwin package set + # + # Even though this is a set of packages not single package, use `callPackage` + # not `callPackages` so the per-package callPackages don't have their + # `.override` clobbered. C.F. `llvmPackages` which does the same. + darwin = callPackage ./darwin-packages.nix { }; + + disk_indicator = callPackage ../os-specific/linux/disk-indicator { }; + + displaylink = callPackage ../os-specific/linux/displaylink { + inherit (linuxPackages) evdi; + }; + + dmidecode = callPackage ../os-specific/linux/dmidecode { }; + + dmtcp = callPackage ../os-specific/linux/dmtcp { }; + + directvnc = callPackage ../os-specific/linux/directvnc { }; + + dmraid = callPackage ../os-specific/linux/dmraid { lvm2 = lvm2_dmeventd; }; + + drbd = callPackage ../os-specific/linux/drbd { }; + + dropwatch = callPackage ../os-specific/linux/dropwatch { }; + + dsd = callPackage ../applications/radio/dsd { }; + + dstat = callPackage ../os-specific/linux/dstat { }; + + erofs-utils = callPackage ../os-specific/linux/erofs-utils { }; + + fscryptctl = callPackage ../os-specific/linux/fscryptctl { }; + # unstable until the first 1.x release + fscrypt-experimental = callPackage ../os-specific/linux/fscrypt { }; + + fwanalyzer = callPackage ../tools/filesystems/fwanalyzer { }; + + fwupd = callPackage ../os-specific/linux/firmware/fwupd { }; + + fwupd-efi = callPackage ../os-specific/linux/firmware/fwupd-efi { }; + + firmware-manager = callPackage ../os-specific/linux/firmware/firmware-manager { }; + + firmware-updater = callPackage ../os-specific/linux/firmware/firmware-updater { }; + + fwts = callPackage ../os-specific/linux/fwts { }; + + gobi_loader = callPackage ../os-specific/linux/gobi_loader { }; + + libossp_uuid = callPackage ../development/libraries/libossp-uuid { }; + + libuuid = if stdenv.isLinux + then util-linuxMinimal + else null; + + light = callPackage ../os-specific/linux/light { }; + + lightum = callPackage ../os-specific/linux/lightum { }; + + ebtables = callPackage ../os-specific/linux/ebtables { }; + + error-inject = callPackages ../os-specific/linux/error-inject { }; + + extrace = callPackage ../os-specific/linux/extrace { }; + + facetimehd-firmware = callPackage ../os-specific/linux/firmware/facetimehd-firmware { }; + + fatrace = callPackage ../os-specific/linux/fatrace { }; + + ffado = libsForQt5.callPackage ../os-specific/linux/ffado { + inherit (linuxPackages) kernel; + }; + libffado = ffado; + + fbterm = callPackage ../os-specific/linux/fbterm { }; + + firejail = callPackage ../os-specific/linux/firejail {}; + + fnotifystat = callPackage ../os-specific/linux/fnotifystat { }; + + forkstat = callPackage ../os-specific/linux/forkstat { }; + + freefall = callPackage ../os-specific/linux/freefall { + inherit (linuxPackages) kernel; + }; + + fusePackages = dontRecurseIntoAttrs (callPackage ../os-specific/linux/fuse { + util-linux = util-linuxMinimal; + }); + fuse = lowPrio (if stdenv.isDarwin then macfuse-stubs else fusePackages.fuse_2); + fuse3 = fusePackages.fuse_3; + fuse-common = hiPrio fusePackages.fuse_3.common; + + fxload = callPackage ../os-specific/linux/fxload { }; + + gfxtablet = callPackage ../os-specific/linux/gfxtablet {}; + + gmailctl = callPackage ../applications/networking/gmailctl { }; + + gometer = callPackage ../applications/misc/gometer { }; + + gomp = callPackage ../applications/version-management/gomp { }; + + gomplate = callPackage ../development/tools/gomplate {}; + + gpm = callPackage ../servers/gpm { + ncurses = null; # Keep curses disabled for lack of value + + # latest 6.8 mysteriously fails to parse '@headings single': + # https://lists.gnu.org/archive/html/bug-texinfo/2021-09/msg00011.html + texinfo = texinfo6_7; + }; + + gpm-ncurses = gpm.override { inherit ncurses; }; + + gpu-switch = callPackage ../os-specific/linux/gpu-switch { }; + + gradm = callPackage ../os-specific/linux/gradm { }; + + gt = callPackage ../os-specific/linux/gt { }; + + inherit (nodePackages) gtop; + + hd-idle = callPackage ../os-specific/linux/hd-idle { }; + + hdparm = callPackage ../os-specific/linux/hdparm { }; + + health-check = callPackage ../os-specific/linux/health-check { }; + + hibernate = callPackage ../os-specific/linux/hibernate { }; + + hostapd = callPackage ../os-specific/linux/hostapd { }; + + htop = callPackage ../tools/system/htop { + inherit (darwin) IOKit; + }; + + htop-vim = callPackage ../tools/system/htop/htop-vim.nix { }; + + btop = callPackage ../tools/system/btop { + stdenv = gcc11Stdenv; + }; + + nmon = callPackage ../os-specific/linux/nmon { }; + + hwdata = callPackage ../os-specific/linux/hwdata { }; + + i7z = qt5.callPackage ../os-specific/linux/i7z { }; + + pcm = callPackage ../os-specific/linux/pcm { }; + + ifmetric = callPackage ../os-specific/linux/ifmetric {}; + + ima-evm-utils = callPackage ../os-specific/linux/ima-evm-utils {}; + + intel2200BGFirmware = callPackage ../os-specific/linux/firmware/intel2200BGFirmware { }; + + intel-cmt-cat = callPackage ../os-specific/linux/intel-cmt-cat { }; + + intel-compute-runtime = callPackage ../os-specific/linux/intel-compute-runtime { }; + + intel-ocl = callPackage ../os-specific/linux/intel-ocl { }; + + iomelt = callPackage ../os-specific/linux/iomelt { }; + + iotop = callPackage ../os-specific/linux/iotop { }; + iotop-c = callPackage ../os-specific/linux/iotop-c { }; + + iproute2 = callPackage ../os-specific/linux/iproute { }; + + iproute_mptcp = callPackage ../os-specific/linux/iproute/mptcp.nix { }; + + iputils = hiPrio (callPackage ../os-specific/linux/iputils { }); + # hiPrio for collisions with inetutils (ping) + + iptables = callPackage ../os-specific/linux/iptables { }; + iptables-legacy = callPackage ../os-specific/linux/iptables { nftablesCompat = false; }; + iptables-nftables-compat = iptables; + + iptstate = callPackage ../os-specific/linux/iptstate { } ; + + ipset = callPackage ../os-specific/linux/ipset { }; + + irqbalance = callPackage ../os-specific/linux/irqbalance { }; + + itpp = callPackage ../development/libraries/science/math/itpp { }; + + iw = callPackage ../os-specific/linux/iw { }; + + iwd = callPackage ../os-specific/linux/iwd { }; + + jfbview = callPackage ../os-specific/linux/jfbview { }; + jfbpdf = jfbview.override { + imageSupport = false; + }; + + jool-cli = callPackage ../os-specific/linux/jool/cli.nix { }; + + juju = callPackage ../applications/networking/juju { }; + + jujuutils = callPackage ../os-specific/linux/jujuutils { }; + + kbd = callPackage ../os-specific/linux/kbd { }; + + kbdlight = callPackage ../os-specific/linux/kbdlight { }; + + kinect-audio-setup = callPackage ../os-specific/linux/kinect-audio-setup { }; + + kmscon = callPackage ../os-specific/linux/kmscon { }; + + kmscube = callPackage ../os-specific/linux/kmscube { }; + + kmsxx = callPackage ../development/libraries/kmsxx { }; + + latencytop = callPackage ../os-specific/linux/latencytop { }; + + ldm = callPackage ../os-specific/linux/ldm { }; + + libaio = callPackage ../os-specific/linux/libaio { }; + + libargon2 = callPackage ../development/libraries/libargon2 { }; + + libatasmart = callPackage ../os-specific/linux/libatasmart { }; + + libcgroup = callPackage ../os-specific/linux/libcgroup { }; + + libnl = callPackage ../os-specific/linux/libnl { }; + + libtraceevent = callPackage ../os-specific/linux/libtraceevent {}; + + libtracefs = callPackage ../os-specific/linux/libtracefs {}; + + lieer = callPackage ../applications/networking/lieer {}; + + linuxConsoleTools = callPackage ../os-specific/linux/consoletools { }; + + linthesia = callPackage ../games/linthesia/default.nix { }; + + libreelec-dvb-firmware = callPackage ../os-specific/linux/firmware/libreelec-dvb-firmware { }; + + openiscsi = callPackage ../os-specific/linux/open-iscsi { }; + + open-isns = callPackage ../os-specific/linux/open-isns { }; + + osx-cpu-temp = callPackage ../os-specific/darwin/osx-cpu-temp { + inherit (darwin.apple_sdk.frameworks) IOKit; + }; + + macfuse-stubs = callPackage ../os-specific/darwin/macfuse { + inherit (darwin) libtapi; + inherit (darwin.apple_sdk.frameworks) DiskArbitration; + }; + + osxsnarf = callPackage ../os-specific/darwin/osxsnarf { }; + + power-calibrate = callPackage ../os-specific/linux/power-calibrate { }; + + powercap = callPackage ../os-specific/linux/powercap { }; + + powerstat = callPackage ../os-specific/linux/powerstat { }; + + smemstat = callPackage ../os-specific/linux/smemstat { }; + + tgt = callPackage ../tools/networking/tgt { }; + + lkl = callPackage ../applications/virtualization/lkl { }; + + inherit (callPackages ../os-specific/linux/kernel-headers { }) + linuxHeaders makeLinuxHeaders; + + klibc = callPackage ../os-specific/linux/klibc { }; + + klibcShrunk = lowPrio (callPackage ../os-specific/linux/klibc/shrunk.nix { }); + + linuxKernel = recurseIntoAttrs (callPackage ./linux-kernels.nix { }); + + inherit (linuxKernel) buildLinux linuxConfig kernelPatches; + + linuxPackagesFor = linuxKernel.packagesFor; + + hardenedLinuxPackagesFor = linuxKernel.hardenedPackagesFor; + + linuxManualConfig = linuxKernel.manualConfig; + + linuxPackages_custom = linuxKernel.customPackage; + + # This serves as a test for linuxPackages_custom + linuxPackages_custom_tinyconfig_kernel = let + base = linuxPackages.kernel; + tinyLinuxPackages = linuxKernel.customPackage { + inherit (base) version src; + allowImportFromDerivation = false; + configfile = linuxConfig { + makeTarget = "tinyconfig"; + src = base.src; + }; + }; + in tinyLinuxPackages.kernel; + + # The current default kernel / kernel modules. + linuxPackages = linuxKernel.packageAliases.linux_default; + linux = linuxPackages.kernel; + + linuxPackages_latest = linuxKernel.packageAliases.linux_latest; + linux_latest = linuxPackages_latest.kernel; + + # Testing (rc) kernel + linuxPackages_testing = linuxKernel.packages.linux_testing; + linux_testing = linuxKernel.kernels.linux_testing; + + linuxPackages_testing_bcachefs = linuxKernel.packages.linux_testing_bcachefs; + linux_testing_bcachefs = linuxKernel.kernels.linux_testing_bcachefs; + + # kernel with mtcp support + linuxPackages_mptcp = linuxKernel.packageAliases.linux_mptcp; + linux_mptcp = linuxPackages_mptcp.kernel; + + # Realtime kernel + linuxPackages-rt = linuxKernel.packageAliases.linux_rt_default; + linuxPackages-rt_latest = linuxKernel.packageAliases.linux_rt_latest; + linux-rt = linuxPackages-rt.kernel; + linux-rt_latest = linuxPackages-rt_latest.kernel; + + # hardened kernels + linuxPackages_hardened = linuxKernel.packages.linux_hardened; + linux_hardened = linuxPackages_hardened.kernel; + linuxPackages_4_14_hardened = linuxKernel.packages.linux_4_14_hardened; + linux_4_14_hardened = linuxPackages_4_14_hardened.kernel; + linuxPackages_4_19_hardened = linuxKernel.packages.linux_4_19_hardened; + linux_4_19_hardened = linuxPackages_4_19_hardened.kernel; + linuxPackages_5_4_hardened = linuxKernel.packages.linux_5_4_hardened; + linux_5_4_hardened = linuxKernel.kernels.linux_5_4_hardened; + linuxPackages_5_10_hardened = linuxKernel.packages.linux_5_10_hardened; + linux_5_10_hardened = linuxKernel.kernels.linux_5_10_hardened; + linuxPackages_5_15_hardened = linuxKernel.packages.linux_5_15_hardened; + linux_5_15_hardened = linuxKernel.kernels.linux_5_15_hardened; + + # Hardkernel (Odroid) kernels. + linuxPackages_hardkernel_latest = linuxKernel.packageAliases.linux_hardkernel_latest; + linux_hardkernel_latest = linuxPackages_hardkernel_latest.kernel; + + # GNU Linux-libre kernels + linuxPackages-libre = linuxKernel.packages.linux_libre; + linux-libre = linuxPackages-libre.kernel; + linuxPackages_latest-libre = linuxKernel.packages.linux_latest_libre; + linux_latest-libre = linuxPackages_latest-libre.kernel; + + # zen-kernel + linuxPackages_zen = linuxKernel.packages.linux_zen; + linuxPackages_lqx = linuxKernel.packages.linux_lqx; + + # XanMod kernel + linuxPackages_xanmod = linuxKernel.packages.linux_xanmod; + linux_xanmod = linuxKernel.kernels.linux_xanmod; + + cryptodev = linuxKernel.packages.linux_4_9.cryptodev; + + dpdk = callPackage ../os-specific/linux/dpdk { + kernel = null; # dpdk modules are in linuxPackages.dpdk.kmod + }; + + keyutils = callPackage ../os-specific/linux/keyutils { }; + + libselinux = callPackage ../os-specific/linux/libselinux { }; + + libsemanage = callPackage ../os-specific/linux/libsemanage { + python = python3; + }; + + libraw = callPackage ../development/libraries/libraw { }; + + libraw1394 = callPackage ../development/libraries/libraw1394 { }; + + librealsense = callPackage ../development/libraries/librealsense { }; + + librealsenseWithCuda = callPackage ../development/libraries/librealsense { + cudaSupport = true; + }; + + librealsenseWithoutCuda = callPackage ../development/libraries/librealsense { + cudaSupport = false; + }; + + libsass = callPackage ../development/libraries/libsass { }; + + libsepol = callPackage ../os-specific/linux/libsepol { }; + + libsmbios = callPackage ../os-specific/linux/libsmbios { }; + + libsurvive = callPackage ../development/libraries/libsurvive { }; + + lm_sensors = callPackage ../os-specific/linux/lm-sensors { }; + + lockdep = callPackage ../os-specific/linux/lockdep { }; + + lsirec = callPackage ../os-specific/linux/lsirec { }; + + lsiutil = callPackage ../os-specific/linux/lsiutil { }; + + kaitai-struct-compiler = callPackage ../development/compilers/kaitai-struct-compiler { }; + + kmod = callPackage ../os-specific/linux/kmod { }; + + kmod-blacklist-ubuntu = callPackage ../os-specific/linux/kmod-blacklist-ubuntu { }; + + kmod-debian-aliases = callPackage ../os-specific/linux/kmod-debian-aliases { }; + + libcap = callPackage ../os-specific/linux/libcap { }; + + libcap_ng = callPackage ../os-specific/linux/libcap-ng { + swig = null; # Currently not using the python2/3 bindings + python2 = null; # Currently not using the python2 bindings + python3 = null; # Currently not using the python3 bindings + }; + + libnotify = callPackage ../development/libraries/libnotify { }; + + libvolume_id = callPackage ../os-specific/linux/libvolume_id { }; + + lsscsi = callPackage ../os-specific/linux/lsscsi { }; + + lvm2-2_03 = callPackage ../os-specific/linux/lvm2/2_03.nix { + # udev is the same package as systemd which depends on cryptsetup + # which depends on lvm2 again. But we only need the libudev part + # which does not depend on cryptsetup. + udev = systemdMinimal; + }; + lvm2-2_02 = callPackage ../os-specific/linux/lvm2/2_02.nix { + udev = systemdMinimal; + }; + lvm2 = if stdenv.targetPlatform.isMusl then lvm2-2_02 else lvm2-2_03; + + lvm2_dmeventd = lvm2.override { + enableDmeventd = true; + enableCmdlib = true; + }; + + maddy = callPackage ../servers/maddy { }; + + mbelib = callPackage ../development/libraries/audio/mbelib { }; + + mbpfan = callPackage ../os-specific/linux/mbpfan { }; + + mdadm = mdadm4; + mdadm4 = callPackage ../os-specific/linux/mdadm { }; + + inherit (skawarePackages) mdevd; + + metastore = callPackage ../os-specific/linux/metastore { }; + + mingetty = callPackage ../os-specific/linux/mingetty { }; + + miraclecast = callPackage ../os-specific/linux/miraclecast { }; + + mkinitcpio-nfs-utils = callPackage ../os-specific/linux/mkinitcpio-nfs-utils { }; + + mmc-utils = callPackage ../os-specific/linux/mmc-utils { }; + + aggregateModules = modules: + callPackage ../os-specific/linux/kmod/aggregator.nix { + inherit (buildPackages) kmod; + inherit modules; + }; + + multipart-parser-c = callPackage ../development/libraries/multipart-parser-c { }; + + multipath-tools = callPackage ../os-specific/linux/multipath-tools { }; + + musl = callPackage ../os-specific/linux/musl { }; + + musl-fts = callPackage ../os-specific/linux/musl-fts { }; + musl-obstack = callPackage ../os-specific/linux/musl-obstack { }; + + nsh = callPackage ../shells/nsh { }; + + nushell = callPackage ../shells/nushell { + inherit (darwin.apple_sdk.frameworks) AppKit Security; + }; + + nettools = if stdenv.isLinux + then callPackage ../os-specific/linux/net-tools { } + else unixtools.nettools; + + nettools_mptcp = callPackage ../os-specific/linux/net-tools/mptcp.nix { }; + + nftables = callPackage ../os-specific/linux/nftables { }; + + noah = callPackage ../os-specific/darwin/noah { + inherit (darwin.apple_sdk.frameworks) Hypervisor; + }; + + numactl = callPackage ../os-specific/linux/numactl { }; + + numad = callPackage ../os-specific/linux/numad { }; + + nvme-cli = callPackage ../os-specific/linux/nvme-cli { }; + + nvmet-cli = callPackage ../os-specific/linux/nvmet-cli { }; + + system76-firmware = callPackage ../os-specific/linux/firmware/system76-firmware { }; + + ocf-resource-agents = callPackage ../os-specific/linux/ocf-resource-agents { }; + + open-vm-tools = callPackage ../applications/virtualization/open-vm-tools { }; + open-vm-tools-headless = open-vm-tools.override { withX = false; }; + + air = callPackage ../development/tools/air { }; + + delve = callPackage ../development/tools/delve { }; + + dep = callPackage ../development/tools/dep { }; + + dep2nix = callPackage ../development/tools/dep2nix { }; + + easyjson = callPackage ../development/tools/easyjson { }; + + iferr = callPackage ../development/tools/iferr { }; + + ginkgo = callPackage ../development/tools/ginkgo { }; + + go-bindata = callPackage ../development/tools/go-bindata { }; + + go-bindata-assetfs = callPackage ../development/tools/go-bindata-assetfs { }; + + go-minimock = callPackage ../development/tools/go-minimock { }; + + go-protobuf = callPackage ../development/tools/go-protobuf { }; + + go-symbols = callPackage ../development/tools/go-symbols { }; + + go-toml = callPackage ../development/tools/go-toml { }; + + go-outline = callPackage ../development/tools/go-outline { }; + + gocode = callPackage ../development/tools/gocode { }; + + gocode-gomod = callPackage ../development/tools/gocode-gomod { }; + + goconst = callPackage ../development/tools/goconst { }; + + goconvey = callPackage ../development/tools/goconvey { }; + + gofumpt = callPackage ../development/tools/gofumpt { }; + + gotags = callPackage ../development/tools/gotags { }; + + go-task = callPackage ../development/tools/go-task { }; + + golint = callPackage ../development/tools/golint { }; + + golangci-lint = callPackage ../development/tools/golangci-lint { }; + + gocyclo = callPackage ../development/tools/gocyclo { }; + + godef = callPackage ../development/tools/godef { }; + + gopkgs = callPackage ../development/tools/gopkgs { }; + + gosec = callPackage ../development/tools/gosec { }; + + govers = callPackage ../development/tools/govers { }; + + govendor = callPackage ../development/tools/govendor { }; + + go-tools = callPackage ../development/tools/go-tools { }; + + gotest = callPackage ../development/tools/gotest { }; + + gotools = callPackage ../development/tools/gotools { }; + + gotop = callPackage ../tools/system/gotop { }; + + go-migrate = callPackage ../development/tools/go-migrate { }; + + go-mockery = callPackage ../development/tools/go-mockery { }; + + gomacro = callPackage ../development/tools/gomacro { }; + + gomodifytags = callPackage ../development/tools/gomodifytags { }; + + go-langserver = callPackage ../development/tools/go-langserver { }; + + gopls = callPackage ../development/tools/gopls { }; + + gops = callPackage ../development/tools/gops { }; + + gore = callPackage ../development/tools/gore { }; + + gotests = callPackage ../development/tools/gotests { }; + + gotestsum = callPackage ../development/tools/gotestsum { }; + + impl = callPackage ../development/tools/impl { }; + + quicktemplate = callPackage ../development/tools/quicktemplate { }; + + linux-pam = callPackage ../os-specific/linux/pam { }; + + nss_ldap = callPackage ../os-specific/linux/nss_ldap { }; + + octomap = callPackage ../development/libraries/octomap { }; + + odin = callPackage ../development/compilers/odin { }; + + odp-dpdk = callPackage ../os-specific/linux/odp-dpdk { }; + + odroid-xu3-bootloader = callPackage ../tools/misc/odroid-xu3-bootloader { }; + + ofono = callPackage ../tools/networking/ofono { }; + + okapi = callPackage ../development/libraries/okapi { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + openpam = callPackage ../development/libraries/openpam { }; + + openbsm = callPackage ../development/libraries/openbsm { }; + + pagemon = callPackage ../os-specific/linux/pagemon { }; + + pam = if stdenv.isLinux then linux-pam else openpam; + + # pam_bioapi ( see http://www.thinkwiki.org/wiki/How_to_enable_the_fingerprint_reader ) + + pam_ccreds = callPackage ../os-specific/linux/pam_ccreds { }; + + pam_gnupg = callPackage ../os-specific/linux/pam_gnupg { }; + + pam_krb5 = callPackage ../os-specific/linux/pam_krb5 { }; + + pam_ldap = callPackage ../os-specific/linux/pam_ldap { }; + + pam_mount = callPackage ../os-specific/linux/pam_mount { }; + + pam_p11 = callPackage ../os-specific/linux/pam_p11 { }; + + pam_pgsql = callPackage ../os-specific/linux/pam_pgsql { }; + + pam_ssh_agent_auth = callPackage ../os-specific/linux/pam_ssh_agent_auth { }; + + pam_u2f = callPackage ../os-specific/linux/pam_u2f { }; + + pam_usb = callPackage ../os-specific/linux/pam_usb { }; + + paxctl = callPackage ../os-specific/linux/paxctl { }; + + paxtest = callPackage ../os-specific/linux/paxtest { }; + + pax-utils = callPackage ../os-specific/linux/pax-utils { }; + + pcmciaUtils = callPackage ../os-specific/linux/pcmciautils { }; + + pcstat = callPackage ../tools/system/pcstat { }; + + perf-tools = callPackage ../os-specific/linux/perf-tools { }; + + pipes = callPackage ../misc/screensavers/pipes { }; + + pipes-rs = callPackage ../misc/screensavers/pipes-rs { }; + + pipework = callPackage ../os-specific/linux/pipework { }; + + pktgen = callPackage ../os-specific/linux/pktgen { }; + + plymouth = callPackage ../os-specific/linux/plymouth { }; + + pmount = callPackage ../os-specific/linux/pmount { }; + + pmutils = callPackage ../os-specific/linux/pm-utils { }; + + policycoreutils = callPackage ../os-specific/linux/policycoreutils { }; + + semodule-utils = callPackage ../os-specific/linux/semodule-utils { }; + + powerdns = callPackage ../servers/dns/powerdns { + boost = boost172; + }; + + powerdns-admin = callPackage ../applications/networking/powerdns-admin { }; + + dnsdist = callPackage ../servers/dns/dnsdist { }; + + pdns-recursor = callPackage ../servers/dns/pdns-recursor { }; + + powertop = callPackage ../os-specific/linux/powertop { }; + + pps-tools = callPackage ../os-specific/linux/pps-tools { }; + + prayer = callPackage ../servers/prayer { }; + + procps = if stdenv.isLinux + then callPackage ../os-specific/linux/procps-ng { } + else unixtools.procps; + + procdump = callPackage ../os-specific/linux/procdump { }; + + prototool = callPackage ../development/tools/prototool { }; + + qemu_kvm = lowPrio (qemu.override { hostCpuOnly = true; }); + qemu_full = lowPrio (qemu.override { smbdSupport = true; cephSupport = true; glusterfsSupport = true; }); + + # See `xenPackages` source for explanations. + # Building with `xen` instead of `xen-slim` is possible, but makes no sense. + qemu_xen = lowPrio (qemu.override { hostCpuOnly = true; xenSupport = true; xen = xen-slim; }); + qemu_xen-light = lowPrio (qemu.override { hostCpuOnly = true; xenSupport = true; xen = xen-light; }); + qemu_xen_4_10 = lowPrio (qemu.override { hostCpuOnly = true; xenSupport = true; xen = xen_4_10-slim; }); + qemu_xen_4_10-light = lowPrio (qemu.override { hostCpuOnly = true; xenSupport = true; xen = xen_4_10-light; }); + + qemu_test = lowPrio (qemu.override { hostCpuOnly = true; nixosTestRunner = true; }); + + quick-lint-js = callPackage ../development/tools/quick-lint-js { }; + + linux-firmware = callPackage ../os-specific/linux/firmware/linux-firmware { }; + + qmk-udev-rules = callPackage ../os-specific/linux/qmk-udev-rules { }; + + radeontools = callPackage ../os-specific/linux/radeontools { }; + + radeontop = callPackage ../os-specific/linux/radeontop { }; + + rasdaemon = callPackage ../os-specific/linux/rasdaemon { }; + + raspberrypifw = callPackage ../os-specific/linux/firmware/raspberrypi {}; + raspberrypiWirelessFirmware = callPackage ../os-specific/linux/firmware/raspberrypi-wireless { }; + + raspberrypi-eeprom = callPackage ../os-specific/linux/raspberrypi-eeprom {}; + + raspberrypi-armstubs = callPackage ../os-specific/linux/firmware/raspberrypi/armstubs.nix {}; + + regionset = callPackage ../os-specific/linux/regionset { }; + + rfkill_udev = callPackage ../os-specific/linux/rfkill/udev.nix { }; + + riscv-pk = callPackage ../misc/riscv-pk { }; + + ristate = callPackage ../tools/misc/ristate { }; + + roccat-tools = callPackage ../os-specific/linux/roccat-tools { }; + + rtsp-simple-server = callPackage ../servers/rtsp-simple-server { }; + + rtkit = callPackage ../os-specific/linux/rtkit { }; + + rt5677-firmware = callPackage ../os-specific/linux/firmware/rt5677 { }; + + rtl8192su-firmware = callPackage ../os-specific/linux/firmware/rtl8192su-firmware { }; + + rtl8723bs-firmware = callPackage ../os-specific/linux/firmware/rtl8723bs-firmware { }; + + rtl8761b-firmware = callPackage ../os-specific/linux/firmware/rtl8761b-firmware { }; + + rtw88-firmware = callPackage ../os-specific/linux/firmware/rtw88-firmware { }; + + rtw89-firmware = callPackage ../os-specific/linux/firmware/rtw89-firmware { }; + + s3ql = callPackage ../tools/backup/s3ql { }; + + sass = callPackage ../development/tools/sass { }; + + sassc = callPackage ../development/tools/sassc { }; + + scanmem = callPackage ../tools/misc/scanmem { }; + + schedtool = callPackage ../os-specific/linux/schedtool { }; + + sdparm = callPackage ../os-specific/linux/sdparm { }; + + sdrangel = libsForQt5.callPackage ../applications/radio/sdrangel { + boost = boost172; + }; + + setools = callPackage ../os-specific/linux/setools { }; + + seturgent = callPackage ../os-specific/linux/seturgent { }; + + sgx-sdk = callPackage ../os-specific/linux/sgx/sdk { }; + + sgx-ssl = callPackage ../os-specific/linux/sgx/ssl { }; + + sgx-psw = callPackage ../os-specific/linux/sgx/psw { }; + + shadow = callPackage ../os-specific/linux/shadow { }; + + sinit = callPackage ../os-specific/linux/sinit { + rcinit = "/etc/rc.d/rc.init"; + rcshutdown = "/etc/rc.d/rc.shutdown"; + }; + + skopeo = callPackage ../development/tools/skopeo { }; + + smem = callPackage ../os-specific/linux/smem { }; + + smimesign = callPackage ../os-specific/darwin/smimesign { }; + + solo5 = callPackage ../os-specific/solo5 { }; + + speedometer = callPackage ../os-specific/linux/speedometer { }; + + statik = callPackage ../development/tools/statik { }; + + statifier = callPackage ../os-specific/linux/statifier { }; + + sysdig = callPackage ../os-specific/linux/sysdig { + kernel = null; + }; # sysdig is a client, for a driver look at linuxPackagesFor + + sysfsutils = callPackage ../os-specific/linux/sysfsutils { }; + + sysprof = callPackage ../development/tools/profiling/sysprof { }; + + libsysprof-capture = callPackage ../development/tools/profiling/sysprof/capture.nix { }; + + sysklogd = callPackage ../os-specific/linux/sysklogd { }; + + syslinux = callPackage ../os-specific/linux/syslinux { }; + + sysstat = callPackage ../os-specific/linux/sysstat { }; + + systemd = callPackage ../os-specific/linux/systemd { + # break some cyclic dependencies + util-linux = util-linuxMinimal; + # provide a super minimal gnupg used for systemd-machined + gnupg = callPackage ../tools/security/gnupg/23.nix { + enableMinimal = true; + guiSupport = false; + pcsclite = null; + sqlite = null; + pinentry = null; + adns = null; + gnutls = null; + libusb1 = null; + openldap = null; + readline = null; + zlib = null; + bzip2 = null; + }; + }; + systemdMinimal = systemd.override { + pname = "systemd-minimal"; + withAnalyze = false; + withApparmor = false; + withCompression = false; + withCoredump = false; + withCryptsetup = false; + withDocumentation = false; + withEfi = false; + withFido2 = false; + withHostnamed = false; + withHwdb = false; + withImportd = false; + withLibBPF = false; + withLocaled = false; + withLogind = false; + withMachined = false; + withNetworkd = false; + withNss = false; + withOomd = false; + withPCRE2 = false; + withPolkit = false; + withRemote = false; + withResolved = false; + withShellCompletions = false; + withTimedated = false; + withTimesyncd = false; + withTpm2Tss = false; + withUserDb = false; + glib = null; + libgcrypt = null; + lvm2 = null; + libfido2 = null; + p11-kit = null; + }; + + + udev = systemd; # TODO: change to systemdMinimal + + systemd-wait = callPackage ../os-specific/linux/systemd-wait { }; + + sysvinit = callPackage ../os-specific/linux/sysvinit { }; + + sysvtools = sysvinit.override { + withoutInitTools = true; + }; + + # FIXME: `tcp-wrapper' is actually not OS-specific. + tcp_wrappers = callPackage ../os-specific/linux/tcp-wrappers { }; + + teck-udev-rules = callPackage ../os-specific/linux/teck-udev-rules { }; + + tiptop = callPackage ../os-specific/linux/tiptop { }; + + tpacpi-bat = callPackage ../os-specific/linux/tpacpi-bat { }; + + trickster = callPackage ../servers/trickster/trickster.nix {}; + + trinity = callPackage ../os-specific/linux/trinity { }; + + trinsic-cli = callPackage ../tools/admin/trinsic-cli { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + tunctl = callPackage ../os-specific/linux/tunctl { }; + + twa = callPackage ../tools/networking/twa { }; + + # Upstream U-Boots: + inherit (callPackage ../misc/uboot {}) + buildUBoot + ubootTools + ubootA20OlinuxinoLime + ubootA20OlinuxinoLime2EMMC + ubootBananaPi + ubootBananaPim3 + ubootBananaPim64 + ubootAmx335xEVM + ubootClearfog + ubootCubieboard2 + ubootGuruplug + ubootJetsonTK1 + ubootNanoPCT4 + ubootNovena + ubootOdroidC2 + ubootOdroidXU3 + ubootOlimexA64Olinuxino + ubootOrangePiPc + ubootOrangePiZeroPlus2H5 + ubootOrangePiZero + ubootOrangePiZero2 + ubootPcduino3Nano + ubootPine64 + ubootPine64LTS + ubootPinebook + ubootPinebookPro + ubootQemuAarch64 + ubootQemuArm + ubootQemuRiscv64Smode + ubootQemuX86 + ubootRaspberryPi + ubootRaspberryPi2 + ubootRaspberryPi3_32bit + ubootRaspberryPi3_64bit + ubootRaspberryPi4_32bit + ubootRaspberryPi4_64bit + ubootRaspberryPiZero + ubootRock64 + ubootRockPi4 + ubootRockPro64 + ubootROCPCRK3399 + ubootSheevaplug + ubootSopine + ubootUtilite + ubootWandboard + ; + + # Upstream Barebox: + inherit (callPackage ../misc/barebox {}) + buildBarebox + bareboxTools; + + uclibc = callPackage ../os-specific/linux/uclibc { }; + + uclibcCross = callPackage ../os-specific/linux/uclibc { + stdenv = crossLibcStdenv; + }; + + eudev = callPackage ../os-specific/linux/eudev { util-linux = util-linuxMinimal; }; + + libudev0-shim = callPackage ../os-specific/linux/libudev0-shim { }; + + udisks1 = callPackage ../os-specific/linux/udisks/1-default.nix { }; + udisks2 = callPackage ../os-specific/linux/udisks/2-default.nix { }; + udisks = udisks2; + + udisks_glue = callPackage ../os-specific/linux/udisks-glue { }; + + ugtrain = callPackage ../tools/misc/ugtrain { }; + + untie = callPackage ../os-specific/linux/untie { }; + + upower = callPackage ../os-specific/linux/upower { }; + + usbguard = callPackage ../os-specific/linux/usbguard { + libgcrypt = null; + }; + + usbtop = callPackage ../os-specific/linux/usbtop { }; + + usbutils = callPackage ../os-specific/linux/usbutils { }; + + userhosts = callPackage ../tools/networking/userhosts { }; + + usermount = callPackage ../os-specific/linux/usermount { }; + + util-linux = if stdenv.isLinux then callPackage ../os-specific/linux/util-linux { } + else unixtools.util-linux; + + util-linuxCurses = util-linux; + + util-linuxMinimal = if stdenv.isLinux then appendToName "minimal" (util-linux.override { + nlsSupport = false; + ncurses = null; + systemd = null; + }) else util-linux; + + v4l-utils = qt5.callPackage ../os-specific/linux/v4l-utils { }; + + vendir = callPackage ../development/tools/vendir { }; + + vndr = callPackage ../development/tools/vndr { }; + + windows = callPackages ../os-specific/windows {}; + + wirelesstools = callPackage ../os-specific/linux/wireless-tools { }; + + wooting-udev-rules = callPackage ../os-specific/linux/wooting-udev-rules { }; + + wpa_supplicant = callPackage ../os-specific/linux/wpa_supplicant { }; + + wpa_supplicant_ro_ssids = wpa_supplicant.override { + readOnlyModeSSIDs = true; + }; + + wpa_supplicant_gui = libsForQt5.callPackage ../os-specific/linux/wpa_supplicant/gui.nix { }; + + xf86_input_cmt = callPackage ../os-specific/linux/xf86-input-cmt { }; + + xf86_input_wacom = callPackage ../os-specific/linux/xf86-input-wacom { }; + + xf86_video_nested = callPackage ../os-specific/linux/xf86-video-nested { }; + + xilinx-bootgen = callPackage ../tools/misc/xilinx-bootgen { }; + + xorg_sys_opengl = callPackage ../os-specific/linux/opengl/xorg-sys { }; + + zd1211fw = callPackage ../os-specific/linux/firmware/zd1211 { }; + + zenmonitor = callPackage ../os-specific/linux/zenmonitor { }; + + inherit (callPackages ../os-specific/linux/zfs { + configFile = "user"; + }) zfsStable zfsUnstable; + + zfs = zfsStable; + + ### DATA + + _3270font = callPackage ../data/fonts/3270font { }; + + adapta-backgrounds = callPackage ../data/misc/adapta-backgrounds { }; + + adapta-gtk-theme = callPackage ../data/themes/adapta { }; + + adapta-kde-theme = callPackage ../data/themes/adapta-kde { }; + + adementary-theme = callPackage ../data/themes/adementary { }; + + adwaita-qt = libsForQt5.callPackage ../data/themes/adwaita-qt { }; + + agave = callPackage ../data/fonts/agave { }; + + aileron = callPackage ../data/fonts/aileron { }; + + albatross = callPackage ../data/themes/albatross { }; + + alegreya = callPackage ../data/fonts/alegreya { }; + + alegreya-sans = callPackage ../data/fonts/alegreya-sans { }; + + amber-theme = callPackage ../data/themes/amber { }; + + amiri = callPackage ../data/fonts/amiri { }; + + anarchism = callPackage ../data/documentation/anarchism { }; + + ananicy = callPackage ../misc/ananicy { }; + + ananicy-cpp = callPackage ../misc/ananicy-cpp { }; + + andagii = callPackage ../data/fonts/andagii { }; + + andika = callPackage ../data/fonts/andika { }; + + android-udev-rules = callPackage ../os-specific/linux/android-udev-rules { }; + + ankacoder = callPackage ../data/fonts/ankacoder { }; + ankacoder-condensed = callPackage ../data/fonts/ankacoder/condensed.nix { }; + + anonymousPro = callPackage ../data/fonts/anonymous-pro { }; + + ant-theme = callPackage ../data/themes/ant-theme/ant.nix { }; + + ant-bloody-theme = callPackage ../data/themes/ant-theme/ant-bloody.nix { }; + + dracula-theme = callPackage ../data/themes/dracula-theme { }; + + ant-nebula-theme = callPackage ../data/themes/ant-theme/ant-nebula.nix { }; + + arc-icon-theme = callPackage ../data/icons/arc-icon-theme { }; + + arc-kde-theme = callPackage ../data/themes/arc-kde { }; + + arc-theme = callPackage ../data/themes/arc { }; + + arkpandora_ttf = callPackage ../data/fonts/arkpandora { }; + + aurulent-sans = callPackage ../data/fonts/aurulent-sans { }; + + ayu-theme-gtk = callPackage ../data/themes/ayu-theme-gtk { }; + + b612 = callPackage ../data/fonts/b612 { }; + + babelstone-han = callPackage ../data/fonts/babelstone-han { }; + + baekmuk-ttf = callPackage ../data/fonts/baekmuk-ttf { }; + + bakoma_ttf = callPackage ../data/fonts/bakoma-ttf { }; + + barlow = callPackage ../data/fonts/barlow { }; + + bgnet = callPackage ../data/documentation/bgnet { }; + + bibata-cursors = callPackage ../data/icons/bibata-cursors { }; + bibata-extra-cursors = callPackage ../data/icons/bibata-cursors/extra.nix { }; + bibata-cursors-translucent = callPackage ../data/icons/bibata-cursors/translucent.nix { }; + + blackbird = callPackage ../data/themes/blackbird { }; + + brise = callPackage ../data/misc/brise { }; + + cacert = callPackage ../data/misc/cacert { }; + + caladea = callPackage ../data/fonts/caladea {}; + + canta-theme = callPackage ../data/themes/canta { }; + + cantarell-fonts = callPackage ../data/fonts/cantarell-fonts { }; + + capitaine-cursors = callPackage ../data/icons/capitaine-cursors { }; + + carlito = callPackage ../data/fonts/carlito {}; + + cascadia-code = callPackage ../data/fonts/cascadia-code { }; + + charis-sil = callPackage ../data/fonts/charis-sil { }; + + cherry = callPackage ../data/fonts/cherry { inherit (xorg) fonttosfnt mkfontdir; }; + + chonburi-font = callPackage ../data/fonts/chonburi { }; + + cldr-emoji-annotation = callPackage ../data/misc/cldr-emoji-annotation { }; + + clearlooks-phenix = callPackage ../data/themes/clearlooks-phenix { }; + + cnstrokeorder = callPackage ../data/fonts/cnstrokeorder {}; + + comfortaa = callPackage ../data/fonts/comfortaa {}; + + comic-neue = callPackage ../data/fonts/comic-neue { }; + + comic-relief = callPackage ../data/fonts/comic-relief {}; + + comixcursors = callPackage ../data/icons/comixcursors {}; + + coreclr = callPackage ../development/compilers/coreclr { }; + + corefonts = callPackage ../data/fonts/corefonts { }; + + courier-prime = callPackage ../data/fonts/courier-prime { }; + + cozette = callPackage ../data/fonts/cozette { }; + + culmus = callPackage ../data/fonts/culmus { }; + + clearlyU = callPackage ../data/fonts/clearlyU + { inherit (buildPackages.xorg) fonttosfnt mkfontscale; }; + + cm_unicode = callPackage ../data/fonts/cm-unicode {}; + + creep = callPackage ../data/fonts/creep + { inherit (buildPackages.xorg) fonttosfnt mkfontscale; }; + + crimson = callPackage ../data/fonts/crimson {}; + + dejavu_fonts = lowPrio (callPackage ../data/fonts/dejavu-fonts {}); + + # solve collision for nix-env before https://github.com/NixOS/nix/pull/815 + dejavu_fontsEnv = buildEnv { + name = dejavu_fonts.name; + paths = [ dejavu_fonts.out ]; + }; + + dina-font = callPackage ../data/fonts/dina + { inherit (buildPackages.xorg) mkfontscale; }; + + dns-root-data = callPackage ../data/misc/dns-root-data { }; + + docbook5 = callPackage ../data/sgml+xml/schemas/docbook-5.0 { }; + + docbook_sgml_dtd_31 = callPackage ../data/sgml+xml/schemas/sgml-dtd/docbook/3.1.nix { }; + + docbook_sgml_dtd_41 = callPackage ../data/sgml+xml/schemas/sgml-dtd/docbook/4.1.nix { }; + + docbook_xml_dtd_412 = callPackage ../data/sgml+xml/schemas/xml-dtd/docbook/4.1.2.nix { }; + + docbook_xml_dtd_42 = callPackage ../data/sgml+xml/schemas/xml-dtd/docbook/4.2.nix { }; + + docbook_xml_dtd_43 = callPackage ../data/sgml+xml/schemas/xml-dtd/docbook/4.3.nix { }; + + docbook_xml_dtd_44 = callPackage ../data/sgml+xml/schemas/xml-dtd/docbook/4.4.nix { }; + + docbook_xml_dtd_45 = callPackage ../data/sgml+xml/schemas/xml-dtd/docbook/4.5.nix { }; + + docbook_xml_ebnf_dtd = callPackage ../data/sgml+xml/schemas/xml-dtd/docbook-ebnf { }; + + inherit (callPackages ../data/sgml+xml/stylesheets/xslt/docbook-xsl { }) + docbook-xsl-nons + docbook-xsl-ns; + + # TODO: move this to aliases + docbook_xsl = docbook-xsl-nons; + docbook_xsl_ns = docbook-xsl-ns; + + documentation-highlighter = callPackage ../misc/documentation-highlighter { }; + + documize-community = callPackage ../servers/documize-community { }; + + doge = callPackage ../misc/doge { }; + + doulos-sil = callPackage ../data/fonts/doulos-sil { }; + + cabin = callPackage ../data/fonts/cabin { }; + + camingo-code = callPackage ../data/fonts/camingo-code { }; + + combinatorial_designs = callPackage ../data/misc/combinatorial_designs { }; + + conway_polynomials = callPackage ../data/misc/conway_polynomials { }; + + cooper-hewitt = callPackage ../data/fonts/cooper-hewitt { }; + + d2coding = callPackage ../data/fonts/d2coding { }; + + dosis = callPackage ../data/fonts/dosis { }; + + dosemu_fonts = callPackage ../data/fonts/dosemu-fonts { }; + + e17gtk = callPackage ../data/themes/e17gtk { }; + + eb-garamond = callPackage ../data/fonts/eb-garamond { }; + + edukai = callPackage ../data/fonts/edukai { }; + + eduli = callPackage ../data/fonts/eduli { }; + + moeli = eduli; + + edusong = callPackage ../data/fonts/edusong { }; + + efont-unicode = callPackage ../data/fonts/efont-unicode { }; + + elliptic_curves = callPackage ../data/misc/elliptic_curves { }; + + equilux-theme = callPackage ../data/themes/equilux-theme { }; + + eunomia = callPackage ../data/fonts/eunomia { }; + + f5_6 = callPackage ../data/fonts/f5_6 { }; + + faba-icon-theme = callPackage ../data/icons/faba-icon-theme { }; + + faba-mono-icons = callPackage ../data/icons/faba-mono-icons { }; + + ferrum = callPackage ../data/fonts/ferrum { }; + + fixedsys-excelsior = callPackage ../data/fonts/fixedsys-excelsior { }; + + graphs = callPackage ../data/misc/graphs { }; + + emacs-all-the-icons-fonts = callPackage ../data/fonts/emacs-all-the-icons-fonts { }; + + emojione = callPackage ../data/fonts/emojione { + inherit (nodePackages) svgo; + }; + + emojipick = callPackage ../applications/misc/emojipick { }; + + encode-sans = callPackage ../data/fonts/encode-sans { }; + + envypn-font = callPackage ../data/fonts/envypn-font + { inherit (buildPackages.xorg) fonttosfnt mkfontscale; }; + + envdir = callPackage ../tools/misc/envdir-go { }; + + execline-man-pages = skawarePackages.execline-man-pages; + + fantasque-sans-mono = callPackage ../data/fonts/fantasque-sans-mono {}; + + fira = callPackage ../data/fonts/fira { }; + + fira-code = callPackage ../data/fonts/fira-code { }; + fira-code-symbols = callPackage ../data/fonts/fira-code/symbols.nix { }; + + fira-mono = callPackage ../data/fonts/fira-mono { }; + + flat-remix-icon-theme = callPackage ../data/icons/flat-remix-icon-theme { + inherit (plasma5Packages) breeze-icons; + }; + flat-remix-gtk = callPackage ../data/themes/flat-remix-gtk { }; + flat-remix-gnome = callPackage ../data/themes/flat-remix-gnome { }; + + font-awesome_4 = (callPackage ../data/fonts/font-awesome-5 { }).v4; + font-awesome_5 = (callPackage ../data/fonts/font-awesome-5 { }).v5; + font-awesome = font-awesome_5; + + fraunces = callPackage ../data/fonts/fraunces { }; + + freefont_ttf = callPackage ../data/fonts/freefont-ttf { }; + + freepats = callPackage ../data/misc/freepats { }; + + g15daemon = callPackage ../os-specific/linux/g15daemon {}; + + gentium = callPackage ../data/fonts/gentium {}; + + gentium-book-basic = callPackage ../data/fonts/gentium-book-basic {}; + + geolite-legacy = callPackage ../data/misc/geolite-legacy { }; + + gohufont = callPackage ../data/fonts/gohufont + { inherit (buildPackages.xorg) fonttosfnt mkfontscale; }; + + gnome-user-docs = callPackage ../data/documentation/gnome-user-docs { }; + + gsettings-desktop-schemas = callPackage ../development/libraries/gsettings-desktop-schemas { }; + + gnome-breeze = callPackage ../data/themes/gnome-breeze { }; + + gnome-icon-theme = callPackage ../data/icons/gnome-icon-theme { }; + + go-font = callPackage ../data/fonts/go-font { }; + + graphite-gtk-theme = callPackage ../data/themes/graphite-gtk-theme { }; + + graphite-kde-theme = callPackage ../data/themes/graphite-kde-theme { }; + + greybird = callPackage ../data/themes/greybird { }; + + gruvbox-dark-gtk = callPackage ../data/themes/gruvbox-dark-gtk { }; + + palenight-theme = callPackage ../data/themes/gtk-theme-framework { theme = "palenight"; }; + + amarena-theme = callPackage ../data/themes/gtk-theme-framework { theme = "amarena"; }; + + gruvterial-theme = callPackage ../data/themes/gtk-theme-framework { theme = "gruvterial"; }; + + oceanic-theme = callPackage ../data/themes/gtk-theme-framework { theme = "oceanic"; }; + + spacx-gtk-theme = callPackage ../data/themes/gtk-theme-framework { theme = "spacx"; }; + + gruvbox-dark-icons-gtk = callPackage ../data/icons/gruvbox-dark-icons-gtk { + inherit (plasma5Packages) breeze-icons; + }; + + gubbi-font = callPackage ../data/fonts/gubbi { }; + + gyre-fonts = callPackage ../data/fonts/gyre {}; + + hack-font = callPackage ../data/fonts/hack { }; + + helvetica-neue-lt-std = callPackage ../data/fonts/helvetica-neue-lt-std { }; + + helvum = callPackage ../applications/audio/helvum { }; + + hetzner-kube = callPackage ../applications/networking/cluster/hetzner-kube { }; + + hicolor-icon-theme = callPackage ../data/icons/hicolor-icon-theme { }; + + hannom = callPackage ../data/fonts/hannom { }; + + hanazono = callPackage ../data/fonts/hanazono { }; + + hermit = callPackage ../data/fonts/hermit { }; + + humanity-icon-theme = callPackage ../data/icons/humanity-icon-theme { }; + + hyperscrypt-font = callPackage ../data/fonts/hyperscrypt { }; + + ia-writer-duospace = callPackage ../data/fonts/ia-writer-duospace { }; + + i-dot-ming = callPackage ../data/fonts/i-dot-ming { }; + + ibm-plex = callPackage ../data/fonts/ibm-plex { }; + + iconpack-jade = callPackage ../data/icons/iconpack-jade { }; + + iconpack-obsidian = callPackage ../data/icons/iconpack-obsidian { }; + + inconsolata = callPackage ../data/fonts/inconsolata {}; + + inconsolata-lgc = callPackage ../data/fonts/inconsolata/lgc.nix {}; + + inconsolata-nerdfont = nerdfonts.override { + fonts = [ "Inconsolata" ]; + }; + + input-fonts = callPackage ../data/fonts/input-fonts { }; + + inriafonts = callPackage ../data/fonts/inriafonts { }; + + iosevka = callPackage ../data/fonts/iosevka {}; + iosevka-bin = callPackage ../data/fonts/iosevka/bin.nix {}; + + ipafont = callPackage ../data/fonts/ipafont {}; + ipaexfont = callPackage ../data/fonts/ipaexfont {}; + + iwona = callPackage ../data/fonts/iwona { }; + + jetbrains-mono = callPackage ../data/fonts/jetbrains-mono { }; + + jost = callPackage ../data/fonts/jost { }; + + joypixels = callPackage ../data/fonts/joypixels { }; + + junicode = callPackage ../data/fonts/junicode { }; + + julia-mono = callPackage ../data/fonts/julia-mono { }; + + juno-theme = callPackage ../data/themes/juno { }; + + kanit-font = callPackage ../data/fonts/kanit { }; + + kanji-stroke-order-font = callPackage ../data/fonts/kanji-stroke-order-font {}; + + kawkab-mono-font = callPackage ../data/fonts/kawkab-mono {}; + + kde-rounded-corners = libsForQt5.callPackage ../data/themes/kwin-decorations/kde-rounded-corners { }; + + kochi-substitute = callPackage ../data/fonts/kochi-substitute {}; + + kochi-substitute-naga10 = callPackage ../data/fonts/kochi-substitute-naga10 {}; + + kopia = callPackage ../tools/backup/kopia { }; + + kora-icon-theme = callPackage ../data/icons/kora-icon-theme { + inherit (gnome) adwaita-icon-theme; + inherit (libsForQt5.kdeFrameworks) breeze-icons; + }; + + koreader = callPackage ../applications/misc/koreader {}; + + kreative-square-fonts = callPackage ../data/fonts/kreative-square-fonts { }; + + la-capitaine-icon-theme = callPackage ../data/icons/la-capitaine-icon-theme { + inherit (plasma5Packages) breeze-icons; + inherit (pantheon) elementary-icon-theme; + }; + + layan-gtk-theme = callPackage ../data/themes/layan-gtk-theme { }; + + layan-kde = callPackage ../data/themes/layan-kde { }; + + lato = callPackage ../data/fonts/lato {}; + + league-of-moveable-type = callPackage ../data/fonts/league-of-moveable-type {}; + + ledger-udev-rules = callPackage ../os-specific/linux/ledger-udev-rules {}; + + inherit (callPackages ../data/fonts/liberation-fonts { }) + liberation_ttf_v1 + liberation_ttf_v2 + ; + liberation_ttf = liberation_ttf_v2; + + liberation-sans-narrow = callPackage ../data/fonts/liberation-sans-narrow { }; + + libevdevc = callPackage ../os-specific/linux/libevdevc { }; + + libgestures = callPackage ../os-specific/linux/libgestures { }; + + liberastika = callPackage ../data/fonts/liberastika { }; + + libertine = callPackage ../data/fonts/libertine { }; + + libertinus = callPackage ../data/fonts/libertinus { }; + + libratbag = callPackage ../os-specific/linux/libratbag { }; + + libre-baskerville = callPackage ../data/fonts/libre-baskerville { }; + + libre-bodoni = callPackage ../data/fonts/libre-bodoni { }; + + libre-caslon = callPackage ../data/fonts/libre-caslon { }; + + libre-franklin = callPackage ../data/fonts/libre-franklin { }; + + lightly-qt = libsForQt5.callPackage ../data/themes/lightly-qt { }; + + line-awesome = callPackage ../data/fonts/line-awesome { }; + + linux-manual = callPackage ../data/documentation/linux-manual { }; + + lmmath = callPackage ../data/fonts/lmmath {}; + + lmodern = callPackage ../data/fonts/lmodern { }; + + logitech-udev-rules = callPackage ../os-specific/linux/logitech-udev-rules {}; + + # lohit-fonts.assamese lohit-fonts.bengali lohit-fonts.devanagari lohit-fonts.gujarati lohit-fonts.gurmukhi + # lohit-fonts.kannada lohit-fonts.malayalam lohit-fonts.marathi lohit-fonts.nepali lohit-fonts.odia + # lohit-fonts.tamil-classical lohit-fonts.tamil lohit-fonts.telugu + # lohit-fonts.kashmiri lohit-fonts.konkani lohit-fonts.maithili lohit-fonts.sindhi + lohit-fonts = recurseIntoAttrs ( callPackages ../data/fonts/lohit-fonts { } ); + + lounge-gtk-theme = callPackage ../data/themes/lounge { }; + + luculent = callPackage ../data/fonts/luculent { }; + + luna-icons = callPackage ../data/icons/luna-icons { + inherit (plasma5Packages) breeze-icons; + }; + + lxgw-wenkai = callPackage ../data/fonts/lxgw-wenkai { }; + + maia-icon-theme = libsForQt5.callPackage ../data/icons/maia-icon-theme { }; + + mailcap = callPackage ../data/misc/mailcap { }; + + marathi-cursive = callPackage ../data/fonts/marathi-cursive { }; + + man-pages = callPackage ../data/documentation/man-pages { }; + + man-pages-posix = callPackage ../data/documentation/man-pages-posix { }; + + manrope = callPackage ../data/fonts/manrope { }; + + marwaita = callPackage ../data/themes/marwaita { }; + + marwaita-manjaro = callPackage ../data/themes/marwaita-manjaro { }; + + marwaita-peppermint = callPackage ../data/themes/marwaita-peppermint { }; + + marwaita-pop_os = callPackage ../data/themes/marwaita-pop_os { }; + + marwaita-ubuntu = callPackage ../data/themes/marwaita-ubuntu { }; + + matcha-gtk-theme = callPackage ../data/themes/matcha { }; + + materia-theme = callPackage ../data/themes/materia-theme { }; + + materia-kde-theme = callPackage ../data/themes/materia-kde { }; + + material-design-icons = callPackage ../data/fonts/material-design-icons { }; + + material-icons = callPackage ../data/fonts/material-icons { }; + + material-kwin-decoration = libsForQt5.callPackage ../data/themes/material-kwin-decoration { }; + + meslo-lg = callPackage ../data/fonts/meslo-lg {}; + + meslo-lgs-nf = callPackage ../data/fonts/meslo-lgs-nf {}; + + migmix = callPackage ../data/fonts/migmix {}; + + migu = callPackage ../data/fonts/migu {}; + + miscfiles = callPackage ../data/misc/miscfiles { }; + + media-player-info = callPackage ../data/misc/media-player-info {}; + + medio = callPackage ../data/fonts/medio { }; + + mno16 = callPackage ../data/fonts/mno16 { }; + + mnist = callPackage ../data/machine-learning/mnist { }; + + mobile-broadband-provider-info = callPackage ../data/misc/mobile-broadband-provider-info { }; + + mojave-gtk-theme = callPackage ../data/themes/mojave { }; + + moka-icon-theme = callPackage ../data/icons/moka-icon-theme { }; + + monoid = callPackage ../data/fonts/monoid { }; + + mononoki = callPackage ../data/fonts/mononoki { }; + + montserrat = callPackage ../data/fonts/montserrat { }; + + mph_2b_damase = callPackage ../data/fonts/mph-2b-damase { }; + + mplus-outline-fonts = callPackage ../data/fonts/mplus-outline-fonts { }; + + mro-unicode = callPackage ../data/fonts/mro-unicode { }; + + mustache-spec = callPackage ../data/documentation/mustache-spec { }; + + mustache-go = callPackage ../development/tools/mustache-go { }; + + mustache-hpp = callPackage ../development/libraries/mustache-hpp { }; + + myrddin = callPackage ../development/compilers/myrddin { }; + + myrica = callPackage ../data/fonts/myrica { }; + + nafees = callPackage ../data/fonts/nafees { }; + + nanum-gothic-coding = callPackage ../data/fonts/nanum-gothic-coding { }; + + national-park-typeface = callPackage ../data/fonts/national-park { }; + + netease-music-tui = callPackage ../applications/audio/netease-music-tui { }; + + netease-cloud-music-gtk = callPackage ../applications/audio/netease-cloud-music-gtk { }; + + nordic = callPackage ../data/themes/nordic { }; + + nordzy-cursor-theme = callPackage ../data/icons/nordzy-cursor-theme { }; + + nordzy-icon-theme = callPackage ../data/icons/nordzy-icon-theme { }; + + inherit (callPackages ../data/fonts/noto-fonts {}) + noto-fonts + noto-fonts-cjk-sans + noto-fonts-cjk-serif + noto-fonts-emoji + noto-fonts-emoji-blob-bin + noto-fonts-extra; + + nuclear = callPackage ../applications/audio/nuclear { }; + + nuclei = callPackage ../tools/security/nuclei { }; + + nullmailer = callPackage ../servers/mail/nullmailer { + stdenv = gccStdenv; + }; + + numix-icon-theme = callPackage ../data/icons/numix-icon-theme { }; + + numix-icon-theme-circle = callPackage ../data/icons/numix-icon-theme-circle { }; + + numix-icon-theme-square = callPackage ../data/icons/numix-icon-theme-square { }; + + numix-cursor-theme = callPackage ../data/icons/numix-cursor-theme { }; + + numix-gtk-theme = callPackage ../data/themes/numix { }; + + numix-solarized-gtk-theme = callPackage ../data/themes/numix-solarized { }; + + numix-sx-gtk-theme = callPackage ../data/themes/numix-sx { }; + + office-code-pro = callPackage ../data/fonts/office-code-pro { }; + + oldstandard = callPackage ../data/fonts/oldstandard { }; + + oldsindhi = callPackage ../data/fonts/oldsindhi { }; + + onestepback = callPackage ../data/themes/onestepback { }; + + open-dyslexic = callPackage ../data/fonts/open-dyslexic { }; + + open-sans = callPackage ../data/fonts/open-sans { }; + + openmoji-color = callPackage ../data/fonts/openmoji { variant = "color"; }; + + openmoji-black = callPackage ../data/fonts/openmoji { variant = "black"; }; + + openzone-cursors = callPackage ../data/themes/openzone { }; + + oranchelo-icon-theme = callPackage ../data/icons/oranchelo-icon-theme { }; + + orbitron = callPackage ../data/fonts/orbitron { }; + + orchis-theme = callPackage ../data/themes/orchis-theme { }; + + orion = callPackage ../data/themes/orion {}; + + overpass = callPackage ../data/fonts/overpass { }; + + oxygenfonts = callPackage ../data/fonts/oxygenfonts { }; + + paper-gtk-theme = callPackage ../data/themes/paper-gtk { }; + + paper-icon-theme = callPackage ../data/icons/paper-icon-theme { }; + + papirus-icon-theme = callPackage ../data/icons/papirus-icon-theme { + inherit (plasma5Packages) breeze-icons; + }; + + papirus-maia-icon-theme = callPackage ../data/icons/papirus-maia-icon-theme { + inherit (plasma5Packages) breeze-icons; + }; + + papis = with python3Packages; toPythonApplication papis; + + paperlike-go = callPackage ../tools/misc/paperlike-go { }; + + paps = callPackage ../tools/misc/paps { }; + + pecita = callPackage ../data/fonts/pecita {}; + + paratype-pt-mono = callPackage ../data/fonts/paratype-pt/mono.nix {}; + paratype-pt-sans = callPackage ../data/fonts/paratype-pt/sans.nix {}; + paratype-pt-serif = callPackage ../data/fonts/paratype-pt/serif.nix {}; + + pari-galdata = callPackage ../data/misc/pari-galdata {}; + + pari-seadata-small = callPackage ../data/misc/pari-seadata-small {}; + + penna = callPackage ../data/fonts/penna { }; + + pitch-black = callPackage ../data/themes/pitch-black {}; + + plano-theme = callPackage ../data/themes/plano { }; + + plata-theme = callPackage ../data/themes/plata { + inherit (mate) marco; + }; + + poly = callPackage ../data/fonts/poly { }; + + polytopes_db = callPackage ../data/misc/polytopes_db { }; + + pop-gtk-theme = callPackage ../data/themes/pop-gtk { }; + + pop-icon-theme = callPackage ../data/icons/pop-icon-theme { + inherit (gnome) adwaita-icon-theme; + }; + + powerline-fonts = callPackage ../data/fonts/powerline-fonts { }; + + powerline-symbols = callPackage ../data/fonts/powerline-symbols { }; + + powerline-go = callPackage ../tools/misc/powerline-go { }; + + powerline-rs = callPackage ../tools/misc/powerline-rs { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + profont = callPackage ../data/fonts/profont + { inherit (buildPackages.xorg) mkfontscale; }; + + proggyfonts = callPackage ../data/fonts/proggyfonts { }; + + public-sans = callPackage ../data/fonts/public-sans { }; + + publicsuffix-list = callPackage ../data/misc/publicsuffix-list { }; + + phinger-cursors = callPackage ../data/icons/phinger-cursors { }; + + qogir-icon-theme = callPackage ../data/icons/qogir-icon-theme { }; + + qogir-theme = callPackage ../data/themes/qogir { }; + + quintom-cursor-theme = callPackage ../data/icons/quintom-cursor-theme { }; + + redhat-official-fonts = callPackage ../data/fonts/redhat-official { }; + + rime-data = callPackage ../data/misc/rime-data { }; + + rose-pine-gtk-theme = callPackage ../data/themes/rose-pine-gtk { }; + + route159 = callPackage ../data/fonts/route159 { }; + + sampradaya = callPackage ../data/fonts/sampradaya { }; + + sarasa-gothic = callPackage ../data/fonts/sarasa-gothic { }; + + savepagenow = callPackage ../tools/misc/savepagenow { }; + + scheme-manpages = callPackage ../data/documentation/scheme-manpages { }; + + scowl = callPackage ../data/misc/scowl { }; + + seshat = callPackage ../data/fonts/seshat { }; + + session-desktop-appimage = callPackage ../applications/networking/instant-messengers/session-desktop-appimage { }; + + shaderc = callPackage ../development/compilers/shaderc { }; + + shades-of-gray-theme = callPackage ../data/themes/shades-of-gray { }; + + sierra-breeze-enhanced = libsForQt5.callPackage ../data/themes/kwin-decorations/sierra-breeze-enhanced { }; + + sjasmplus = callPackage ../development/compilers/sjasmplus { }; + + skeu = callPackage ../data/themes/skeu { }; + + sweet = callPackage ../data/themes/sweet { }; + + shared-mime-info = callPackage ../data/misc/shared-mime-info { }; + + shared_desktop_ontologies = callPackage ../data/misc/shared-desktop-ontologies { }; + + scheherazade = callPackage ../data/fonts/scheherazade { version = "2.100"; }; + + scheherazade-new = callPackage ../data/fonts/scheherazade { }; + + signwriting = callPackage ../data/fonts/signwriting { }; + + sierra-gtk-theme = callPackage ../data/themes/sierra { }; + + snap7 = callPackage ../development/libraries/snap7 {}; + + snowblind = callPackage ../data/themes/snowblind { }; + + solarc-gtk-theme = callPackage ../data/themes/solarc { }; + + soundfont-fluid = callPackage ../data/soundfonts/fluid { }; + + soundfont-ydp-grand = callPackage ../data/soundfonts/ydp-grand { }; + + spdx-license-list-data = callPackage ../data/misc/spdx-license-list-data { }; + + stdmanpages = callPackage ../data/documentation/std-man-pages { }; + + starship = callPackage ../tools/misc/starship { + inherit (darwin.apple_sdk.frameworks) Security Foundation; + }; + + stig = callPackage ../applications/networking/p2p/stig { }; + + stix-otf = callPackage ../data/fonts/stix-otf { }; + + stix-two = callPackage ../data/fonts/stix-two { }; + + inherit (callPackages ../data/fonts/gdouros { }) + aegan aegyptus akkadian assyrian eemusic maya symbola textfonts unidings; + + iana-etc = callPackage ../data/misc/iana-etc { }; + + poppler_data = callPackage ../data/misc/poppler-data { }; + + qmc2 = libsForQt514.callPackage ../applications/emulators/qmc2 { }; + + quattrocento = callPackage ../data/fonts/quattrocento {}; + + quattrocento-sans = callPackage ../data/fonts/quattrocento-sans {}; + + r3rs = callPackage ../data/documentation/rnrs/r3rs.nix { }; + + r4rs = callPackage ../data/documentation/rnrs/r4rs.nix { }; + + r5rs = callPackage ../data/documentation/rnrs/r5rs.nix { }; + + raleway = callPackage ../data/fonts/raleway { }; + + recursive = callPackage ../data/fonts/recursive { }; + + rubik = callPackage ../data/fonts/rubik { }; + + rhodium-libre = callPackage ../data/fonts/rhodium-libre { }; + + rictydiminished-with-firacode = callPackage ../data/fonts/rictydiminished-with-firacode { }; + + roboto = callPackage ../data/fonts/roboto { }; + + roboto-mono = callPackage ../data/fonts/roboto-mono { }; + + roboto-slab = callPackage ../data/fonts/roboto-slab { }; + + hasklig = callPackage ../data/fonts/hasklig {}; + + interfacer = callPackage ../development/tools/interfacer { }; + + maligned = callPackage ../development/tools/maligned { }; + + inter = callPackage ../data/fonts/inter { }; + + open-fonts = callPackage ../data/fonts/open-fonts { }; + + s6-man-pages = skawarePackages.s6-man-pages; + + s6-networking-man-pages = skawarePackages.s6-networking-man-pages; + + scientifica = callPackage ../data/fonts/scientifica { }; + + siji = callPackage ../data/fonts/siji + { inherit (buildPackages.xorg) mkfontscale fonttosfnt; }; + + sound-theme-freedesktop = callPackage ../data/misc/sound-theme-freedesktop { }; + + source-code-pro = callPackage ../data/fonts/source-code-pro {}; + + source-sans = callPackage ../data/fonts/source-sans { }; + source-sans-pro = callPackage ../data/fonts/source-sans-pro { }; + + source-serif = callPackage ../data/fonts/source-serif { }; + source-serif-pro = callPackage ../data/fonts/source-serif-pro { }; + + source-han-code-jp = callPackage ../data/fonts/source-han-code-jp { }; + + sourceHanPackages = dontRecurseIntoAttrs (callPackage ../data/fonts/source-han { }); + source-han-sans = sourceHanPackages.sans; + source-han-serif = sourceHanPackages.serif; + source-han-mono = sourceHanPackages.mono; + + spleen = callPackage ../data/fonts/spleen { inherit (buildPackages.xorg) mkfontscale; }; + + stilo-themes = callPackage ../data/themes/stilo { }; + + sudo-font = callPackage ../data/fonts/sudo { }; + + inherit (callPackages ../data/fonts/tai-languages { }) tai-ahom; + + taskspooler = callPackage ../tools/system/taskspooler { }; + + tamsyn = callPackage ../data/fonts/tamsyn { inherit (buildPackages.xorg) mkfontscale; }; + + tamzen = callPackage ../data/fonts/tamzen { inherit (buildPackages.xorg) mkfontscale; }; + + tango-icon-theme = callPackage ../data/icons/tango-icon-theme { + gtk = res.gtk2; + }; + + theme-jade1 = callPackage ../data/themes/jade1 { }; + + theme-obsidian2 = callPackage ../data/themes/obsidian2 { }; + + themes = name: callPackage (../data/misc/themes + ("/" + name + ".nix")) {}; + + theano = callPackage ../data/fonts/theano { }; + + tela-circle-icon-theme = callPackage ../data/icons/tela-circle-icon-theme { }; + + tela-icon-theme = callPackage ../data/icons/tela-icon-theme { }; + + template-glib = callPackage ../development/libraries/template-glib { }; + + tempora_lgc = callPackage ../data/fonts/tempora-lgc { }; + + tenderness = callPackage ../data/fonts/tenderness { }; + + terminus_font = callPackage ../data/fonts/terminus-font + { inherit (buildPackages.xorg) mkfontscale; }; + + terminus_font_ttf = callPackage ../data/fonts/terminus-font-ttf { }; + + terminus-nerdfont = nerdfonts.override { + fonts = [ "Terminus" ]; + }; + + termtekst = callPackage ../applications/emulators/termtekst { }; + + tex-gyre = callPackages ../data/fonts/tex-gyre { }; + + tex-gyre-math = callPackages ../data/fonts/tex-gyre-math { }; + + theme-vertex = callPackage ../data/themes/vertex { }; + + times-newer-roman = callPackage ../data/fonts/times-newer-roman { }; + + tipa = callPackage ../data/fonts/tipa { }; + + ttf_bitstream_vera = callPackage ../data/fonts/ttf-bitstream-vera { }; + + ttf-envy-code-r = callPackage ../data/fonts/ttf-envy-code-r {}; + + ttf-tw-moe = callPackage ../data/fonts/ttf-tw-moe { }; + + twemoji-color-font = callPackage ../data/fonts/twemoji-color-font { }; + + twitter-color-emoji = callPackage ../data/fonts/twitter-color-emoji { }; + + tzdata = callPackage ../data/misc/tzdata { }; + + ubuntu-themes = callPackage ../data/themes/ubuntu-themes { }; + + ubuntu_font_family = callPackage ../data/fonts/ubuntu-font-family { }; + + ucs-fonts = callPackage ../data/fonts/ucs-fonts + { inherit (buildPackages.xorg) fonttosfnt mkfontscale; }; + + bront_fonts = callPackage ../data/fonts/bront { }; + + ultimate-oldschool-pc-font-pack = callPackage ../data/fonts/ultimate-oldschool-pc-font-pack { }; + + ultralist = callPackage ../applications/misc/ultralist { }; + + undefined-medium = callPackage ../data/fonts/undefined-medium { }; + + unfonts-core = callPackage ../data/fonts/unfonts-core { }; + + uni-vga = callPackage ../data/fonts/uni-vga + { inherit (buildPackages.xorg) fonttosfnt mkfontscale; }; + + unicode-character-database = callPackage ../data/misc/unicode-character-database { }; + + unicode-emoji = callPackage ../data/misc/unicode-emoji { }; + + unihan-database = callPackage ../data/misc/unihan-database { }; + + unifont = callPackage ../data/fonts/unifont + { inherit (buildPackages.xorg) fonttosfnt mkfontscale; }; + + unifont_upper = callPackage ../data/fonts/unifont_upper { }; + + unscii = callPackage ../data/fonts/unscii { }; + + uw-ttyp0 = callPackage ../data/fonts/uw-ttyp0 { inherit (xorg) fonttosfnt mkfontdir; }; + + vanilla-dmz = callPackage ../data/icons/vanilla-dmz { }; + + vdrsymbols = callPackage ../data/fonts/vdrsymbols { }; + + vegur = callPackage ../data/fonts/vegur { }; + + vegeta = callPackage ../tools/networking/vegeta { }; + + venta = callPackage ../data/themes/venta { }; + + victor-mono = callPackage ../data/fonts/victor-mono { }; + + vimix-gtk-themes = callPackage ../data/themes/vimix { + inherit (gnome) gnome-shell; + }; + + vimix-icon-theme = callPackage ../data/icons/vimix-icon-theme { }; + + vistafonts = callPackage ../data/fonts/vista-fonts { }; + + vistafonts-chs = callPackage ../data/fonts/vista-fonts-chs { }; + + vistafonts-cht = callPackage ../data/fonts/vista-fonts-cht { }; + + vollkorn = callPackage ../data/fonts/vollkorn { }; + + weather-icons = callPackage ../data/fonts/weather-icons { }; + + whitesur-gtk-theme = callPackage ../data/themes/whitesur { + inherit (gnome) gnome-shell; + }; + + whitesur-icon-theme = callPackage ../data/icons/whitesur-icon-theme { }; + + wireless-regdb = callPackage ../data/misc/wireless-regdb { }; + + work-sans = callPackage ../data/fonts/work-sans { }; + + wqy_microhei = callPackage ../data/fonts/wqy-microhei { }; + + wqy_zenhei = callPackage ../data/fonts/wqy-zenhei { }; + + xhtml1 = callPackage ../data/sgml+xml/schemas/xml-dtd/xhtml1 { }; + + xits-math = callPackage ../data/fonts/xits-math { }; + + xkcd-font = callPackage ../data/fonts/xkcd-font { }; + + xkeyboard_config = xorg.xkeyboardconfig; + + xlsx2csv = with python3Packages; toPythonApplication xlsx2csv; + + xorg-rgb = callPackage ../data/misc/xorg-rgb {}; + + yanone-kaffeesatz = callPackage ../data/fonts/yanone-kaffeesatz {}; + + yaru-theme = callPackage ../data/themes/yaru {}; + + yaru-remix-theme = callPackage ../data/themes/yaru-remix {}; + + zafiro-icons = callPackage ../data/icons/zafiro-icons { + inherit (plasma5Packages) breeze-icons; + }; + + zeal = libsForQt5.callPackage ../data/documentation/zeal { }; + + zilla-slab = callPackage ../data/fonts/zilla-slab { }; + + zuki-themes = callPackage ../data/themes/zuki { }; + + + ### APPLICATIONS + + _2bwm = callPackage ../applications/window-managers/2bwm { + patches = config."2bwm".patches or []; + }; + + a2jmidid = callPackage ../applications/audio/a2jmidid { }; + + aacgain = callPackage ../applications/audio/aacgain { }; + + abcde = callPackage ../applications/audio/abcde { + inherit (python3Packages) eyeD3; + }; + + abiword = callPackage ../applications/office/abiword { }; + + abook = callPackage ../applications/misc/abook { }; + + acd-cli = callPackage ../applications/networking/sync/acd_cli { + inherit (python3Packages) + buildPythonApplication appdirs colorama python-dateutil + requests requests-toolbelt setuptools sqlalchemy fusepy; + }; + + adobe-reader = pkgsi686Linux.callPackage ../applications/misc/adobe-reader { }; + + masterpdfeditor = libsForQt5.callPackage ../applications/misc/masterpdfeditor { }; + + masterpdfeditor4 = libsForQt5.callPackage ../applications/misc/masterpdfeditor4 { }; + + foxitreader = libsForQt512.callPackage ../applications/misc/foxitreader { }; + + pdfstudio = import ../applications/misc/pdfstudio { + program = "pdfstudio"; + inherit callPackage fetchurl libgccjit; + }; + + pdfstudioviewer = import ../applications/misc/pdfstudio { + program = "pdfstudioviewer"; + inherit callPackage fetchurl libgccjit; + }; + + aeolus = callPackage ../applications/audio/aeolus { }; + + aewan = callPackage ../applications/editors/aewan { }; + + afterstep = callPackage ../applications/window-managers/afterstep { + fltk = fltk13; + gtk = gtk2; + }; + + agedu = callPackage ../tools/misc/agedu { }; + + agenda = callPackage ../applications/office/agenda { }; + + ahoviewer = callPackage ../applications/graphics/ahoviewer { }; + + airwave = callPackage ../applications/audio/airwave { qt5 = qt514; }; + + akira-unstable = callPackage ../applications/graphics/akira { }; + + alembic = callPackage ../development/libraries/alembic {}; + + alfaview = callPackage ../applications/networking/instant-messengers/alfaview { }; + + alchemy = callPackage ../applications/graphics/alchemy { }; + + alock = callPackage ../misc/screensavers/alock { }; + + alot = callPackage ../applications/networking/mailreaders/alot { }; + + alpine = callPackage ../applications/networking/mailreaders/alpine { + tcl = tcl-8_5; + }; + + msgviewer = callPackage ../applications/networking/mailreaders/msgviewer { }; + + amarok = libsForQt5.callPackage ../applications/audio/amarok { }; + amarok-kf5 = amarok; # for compatibility + + amfora = callPackage ../applications/networking/browsers/amfora { }; + + AMB-plugins = callPackage ../applications/audio/AMB-plugins { }; + + ams-lv2 = callPackage ../applications/audio/ams-lv2 { }; + + androidStudioPackages = recurseIntoAttrs + (callPackage ../applications/editors/android-studio { + buildFHSUserEnv = buildFHSUserEnvBubblewrap; + }); + android-studio = androidStudioPackages.stable; + + animbar = callPackage ../applications/graphics/animbar { }; + + antfs-cli = callPackage ../applications/misc/antfs-cli {}; + + antimony = libsForQt514.callPackage ../applications/graphics/antimony {}; + + antiword = callPackage ../applications/office/antiword {}; + + anup = callPackage ../applications/misc/anup { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + anytype = callPackage ../applications/misc/anytype { }; + + ao = libfive; + + apache-directory-studio = callPackage ../applications/networking/apache-directory-studio {}; + + apkeep = callPackage ../tools/misc/apkeep { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + apngasm = callPackage ../applications/graphics/apngasm {}; + apngasm_2 = callPackage ../applications/graphics/apngasm/2.nix {}; + + appeditor = callPackage ../applications/misc/appeditor { }; + + appgate-sdp = callPackage ../applications/networking/appgate-sdp { }; + + apostrophe = callPackage ../applications/editors/apostrophe { + pythonPackages = python3Packages; + texlive = texlive.combined.scheme-medium; + }; + + aqemu = libsForQt5.callPackage ../applications/virtualization/aqemu { }; + + ardour = callPackage ../applications/audio/ardour { }; + + arelle = with python3Packages; toPythonApplication arelle; + + argo = callPackage ../applications/networking/cluster/argo { }; + + argocd = callPackage ../applications/networking/cluster/argocd { }; + + argo-rollouts = callPackage ../applications/networking/cluster/argo-rollouts { }; + + ario = callPackage ../applications/audio/ario { }; + + arion = callPackage ../applications/virtualization/arion { }; + + arkade = callPackage ../applications/networking/cluster/arkade { }; + + asuka = callPackage ../applications/networking/browsers/asuka { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + ascii-image-converter = callPackage ../applications/graphics/ascii-image-converter { }; + + artha = callPackage ../applications/misc/artha { }; + + atlassian-cli = callPackage ../applications/office/atlassian-cli { }; + + atomEnv = callPackage ../applications/editors/atom/env.nix { + gconf = gnome2.GConf; + }; + + atomPackages = dontRecurseIntoAttrs (callPackage ../applications/editors/atom { }); + + inherit (atomPackages) atom atom-beta; + + aseprite = callPackage ../applications/editors/aseprite { }; + aseprite-unfree = aseprite.override { unfree = true; }; + + assign-lb-ip = callPackage ../applications/networking/cluster/assign-lb-ip { }; + + astroid = callPackage ../applications/networking/mailreaders/astroid { + vim = vim_configurable.override { features = "normal"; gui = "auto"; }; + }; + + aucatctl = callPackage ../applications/audio/aucatctl { }; + + audacious = libsForQt5.callPackage ../applications/audio/audacious { }; + audaciousQt5 = audacious; + + audacity-gtk2 = callPackage ../applications/audio/audacity { wxGTK = wxGTK31-gtk2; }; + audacity-gtk3 = callPackage ../applications/audio/audacity { wxGTK = wxGTK31-gtk3; }; + audacity = + if stdenv.isDarwin then + callPackage ../applications/audio/audacity { + inherit (darwin.apple_sdk.frameworks) AppKit AudioToolbox AudioUnit Carbon Cocoa CoreAudio CoreAudioKit CoreServices; + suil = suil-qt5; + } + else + audacity-gtk2; + + audio-recorder = callPackage ../applications/audio/audio-recorder { }; + + auto-multiple-choice = callPackage ../applications/misc/auto-multiple-choice { }; + + autokey = callPackage ../applications/office/autokey { }; + + autotalent = callPackage ../applications/audio/autotalent { }; + + autotrace = callPackage ../applications/graphics/autotrace {}; + + av-98 = callPackage ../applications/networking/browsers/av-98 { }; + + avizo = callPackage ../applications/misc/avizo { }; + + avocode = callPackage ../applications/graphics/avocode {}; + + azpainter = callPackage ../applications/graphics/azpainter { }; + + bambootracker = libsForQt5.callPackage ../applications/audio/bambootracker { }; + + blocky = callPackage ../applications/networking/blocky { }; + + cadence = libsForQt5.callPackage ../applications/audio/cadence { }; + + cheesecutter = callPackage ../applications/audio/cheesecutter { }; + + milkytracker = callPackage ../applications/audio/milkytracker { }; + + ptcollab = libsForQt515.callPackage ../applications/audio/ptcollab { }; + + schismtracker = callPackage ../applications/audio/schismtracker { }; + + jnetmap = callPackage ../applications/networking/jnetmap {}; + + libbitcoin = callPackage ../tools/misc/libbitcoin/libbitcoin.nix { + boost = boost175; # fatal error: 'boost/interprocess/detail/posix_time_types_wrk.hpp' file not found + }; + libbitcoin-protocol = callPackage ../tools/misc/libbitcoin/libbitcoin-protocol.nix { + boost = boost175; + }; + libbitcoin-client = callPackage ../tools/misc/libbitcoin/libbitcoin-client.nix { + boost = boost175; + }; + libbitcoin-network = callPackage ../tools/misc/libbitcoin/libbitcoin-network.nix { + boost = boost175; + }; + libbitcoin-explorer = callPackage ../tools/misc/libbitcoin/libbitcoin-explorer.nix { + boost = boost175; + }; + + + aumix = callPackage ../applications/audio/aumix { + gtkGUI = false; + }; + + autopanosiftc = callPackage ../applications/graphics/autopanosiftc { }; + + AusweisApp2 = libsForQt5.callPackage ../applications/misc/ausweisapp2 { }; + + avidemux = libsForQt5.callPackage ../applications/video/avidemux { }; + + avrdudess = callPackage ../applications/misc/avrdudess { }; + + awesome-4-0 = callPackage ../applications/window-managers/awesome { + cairo = cairo.override { xcbSupport = true; }; + inherit (texFunctions) fontsConf; + }; + awesome = awesome-4-0; + + awesomebump = libsForQt5.callPackage ../applications/graphics/awesomebump { }; + + inherit (gnome) baobab; + + backintime-common = callPackage ../applications/networking/sync/backintime/common.nix { }; + + backintime-qt = libsForQt5.callPackage ../applications/networking/sync/backintime/qt.nix { }; + + backintime = backintime-qt; + + balsa = callPackage ../applications/networking/mailreaders/balsa { }; + + bandwidth = callPackage ../tools/misc/bandwidth { }; + + banking = callPackage ../applications/office/banking { }; + + baresip = callPackage ../applications/networking/instant-messengers/baresip { }; + + barrier = libsForQt5.callPackage ../applications/misc/barrier {}; + + bashSnippets = callPackage ../applications/misc/bashSnippets { }; + + batik = callPackage ../applications/graphics/batik { }; + + batsignal = callPackage ../applications/misc/batsignal { }; + + baudline = callPackage ../applications/audio/baudline { }; + + bb = callPackage ../applications/misc/bb { }; + + bchoppr = callPackage ../applications/audio/bchoppr { }; + + berry = callPackage ../applications/window-managers/berry { }; + + bespokesynth = callPackage ../applications/audio/bespokesynth { + inherit (darwin.apple_sdk.frameworks) Cocoa WebKit CoreServices CoreAudioKit; + }; + + bespokesynth-with-vst2 = bespokesynth.override { + enableVST2 = true; + }; + + bevelbar = callPackage ../applications/window-managers/bevelbar { }; + + bibletime = libsForQt5.callPackage ../applications/misc/bibletime { }; + + bino3d = libsForQt5.callPackage ../applications/video/bino3d { + glew = glew110; + }; + + bitkeeper = callPackage ../applications/version-management/bitkeeper { + gperf = gperf_3_0; + }; + + bitlbee = callPackage ../applications/networking/instant-messengers/bitlbee { }; + bitlbee-plugins = callPackage ../applications/networking/instant-messengers/bitlbee/plugins.nix { }; + + bitlbee-discord = callPackage ../applications/networking/instant-messengers/bitlbee-discord { }; + + bitlbee-facebook = callPackage ../applications/networking/instant-messengers/bitlbee-facebook { }; + + bitlbee-steam = callPackage ../applications/networking/instant-messengers/bitlbee-steam { }; + + bitlbee-mastodon = callPackage ../applications/networking/instant-messengers/bitlbee-mastodon { }; + + bitmeter = callPackage ../applications/audio/bitmeter { }; + + bitscope = recurseIntoAttrs + (callPackage ../applications/science/electronics/bitscope/packages.nix { }); + + bitwig-studio1 = callPackage ../applications/audio/bitwig-studio/bitwig-studio1.nix { + inherit (gnome) zenity; + libxkbcommon = libxkbcommon_7; + }; + bitwig-studio2 = callPackage ../applications/audio/bitwig-studio/bitwig-studio2.nix { + inherit bitwig-studio1; + }; + bitwig-studio3 = callPackage ../applications/audio/bitwig-studio/bitwig-studio3.nix { }; + bitwig-studio4 = callPackage ../applications/audio/bitwig-studio/bitwig-studio4.nix { }; + + bitwig-studio = bitwig-studio4; + + bgpdump = callPackage ../tools/networking/bgpdump { }; + + bgpq3 = callPackage ../tools/networking/bgpq3 { }; + + bgpq4 = callPackage ../tools/networking/bgpq4 { }; + + blackbox = callPackage ../applications/version-management/blackbox { }; + + bleachbit = callPackage ../applications/misc/bleachbit { }; + + blender = callPackage ../applications/misc/blender { + inherit (darwin.apple_sdk.frameworks) Cocoa CoreGraphics ForceFeedback OpenAL OpenGL; + }; + + blender-with-packages = callPackage ../applications/misc/blender/wrapper.nix {}; + + blflash = callPackage ../tools/misc/blflash { }; + + blogc = callPackage ../applications/misc/blogc { }; + + blucontrol = callPackage ../applications/misc/blucontrol/wrapper.nix { + inherit (haskellPackages) ghcWithPackages; + }; + + bluefish = callPackage ../applications/editors/bluefish { + gtk = gtk3; + }; + + bluej = callPackage ../applications/editors/bluej { + jdk = jetbrains.jdk; + }; + + bluejeans-gui = callPackage ../applications/networking/instant-messengers/bluejeans { }; + + blugon = callPackage ../applications/misc/blugon { }; + + bombadillo = callPackage ../applications/networking/browsers/bombadillo { }; + + bombono = callPackage ../applications/video/bombono {}; + + bonzomatic = callPackage ../applications/editors/bonzomatic { }; + + bottles = callPackage ../applications/misc/bottles { }; + + brave = callPackage ../applications/networking/browsers/brave { }; + + break-time = callPackage ../applications/misc/break-time { }; + + breezy = with python3Packages; toPythonApplication breezy; + + notmuch-bower = callPackage ../applications/networking/mailreaders/notmuch-bower { }; + + brig = callPackage ../applications/networking/brig { }; + + bristol = callPackage ../applications/audio/bristol { }; + + bjumblr = callPackage ../applications/audio/bjumblr { }; + + bschaffl = callPackage ../applications/audio/bschaffl { }; + + bsequencer = callPackage ../applications/audio/bsequencer { }; + + bslizr = callPackage ../applications/audio/bslizr { }; + + bshapr = callPackage ../applications/audio/bshapr { }; + + bspwm = callPackage ../applications/window-managers/bspwm { }; + + btops = callPackage ../applications/window-managers/btops { }; + + bvi = callPackage ../applications/editors/bvi { }; + + bviplus = callPackage ../applications/editors/bviplus { }; + + caerbannog = callPackage ../applications/misc/caerbannog { }; + + cardboard = callPackage ../applications/window-managers/cardboard { }; + + cage = callPackage ../applications/window-managers/cage { + wlroots = wlroots_0_14; + }; + + calf = callPackage ../applications/audio/calf { + inherit (gnome2) libglade; + }; + + calcurse = callPackage ../applications/misc/calcurse { }; + + calculix = callPackage ../applications/science/math/calculix {}; + + calibre = libsForQt5.callPackage ../applications/misc/calibre { }; + + calibre-web = callPackage ../servers/calibre-web { }; + + calligra = libsForQt5.callPackage ../applications/office/calligra { + # Must use the same Qt version as Calligra itself: + poppler = libsForQt5.poppler_0_61; + }; + + perkeep = callPackage ../applications/misc/perkeep { }; + + canto-curses = callPackage ../applications/networking/feedreaders/canto-curses { }; + + canto-daemon = callPackage ../applications/networking/feedreaders/canto-daemon { }; + + carddav-util = callPackage ../tools/networking/carddav-util { }; + + cardinal = callPackage ../applications/audio/cardinal { }; + + carla = libsForQt5.callPackage ../applications/audio/carla { }; + + castor = callPackage ../applications/networking/browsers/castor { }; + + catfs = callPackage ../os-specific/linux/catfs { }; + + catgirl = callPackage ../applications/networking/irc/catgirl { }; + + catimg = callPackage ../tools/misc/catimg { }; + + catt = callPackage ../applications/video/catt { }; + + cava = callPackage ../applications/audio/cava { }; + + cb2bib = libsForQt514.callPackage ../applications/office/cb2bib { }; + + cbatticon = callPackage ../applications/misc/cbatticon { }; + + cbc = callPackage ../applications/science/math/cbc { }; + + cddiscid = callPackage ../applications/audio/cd-discid { + inherit (darwin) IOKit; + }; + + cdparanoia = cdparanoiaIII; + + cdparanoiaIII = callPackage ../applications/audio/cdparanoia { + inherit (darwin) IOKit; + inherit (darwin.apple_sdk.frameworks) Carbon; + }; + + cyanrip = callPackage ../applications/audio/cyanrip { }; + + centerim = callPackage ../applications/networking/instant-messengers/centerim { }; + + cgit = callPackage ../applications/version-management/git-and-tools/cgit { + inherit (python3Packages) python wrapPython pygments markdown; + }; + + chatty = callPackage ../applications/networking/instant-messengers/chatty { }; + + chirp = callPackage ../applications/radio/chirp { }; + + browsh = callPackage ../applications/networking/browsers/browsh { }; + + brotab = callPackage ../tools/misc/brotab { + python = python3; + }; + + bookworm = callPackage ../applications/office/bookworm { }; + + boops = callPackage ../applications/audio/boops { }; + + ChowCentaur = callPackage ../applications/audio/ChowCentaur { }; + + ChowKick = callPackage ../applications/audio/ChowKick { }; + + CHOWTapeModel = callPackage ../applications/audio/CHOWTapeModel { }; + + chromium = callPackage ../applications/networking/browsers/chromium (config.chromium or {}); + + chromiumBeta = lowPrio (chromium.override { channel = "beta"; }); + + chromiumDev = lowPrio (chromium.override { channel = "dev"; }); + + chuck = callPackage ../applications/audio/chuck { + inherit (darwin.apple_sdk.frameworks) AppKit Carbon CoreAudio CoreMIDI CoreServices Kernel; + }; + + cinelerra = callPackage ../applications/video/cinelerra { }; + + cipher = callPackage ../applications/misc/cipher { }; + + clapper = callPackage ../applications/video/clapper { }; + + ciscoPacketTracer7 = callPackage ../applications/networking/cisco-packet-tracer/7.nix { }; + + ciscoPacketTracer8 = callPackage ../applications/networking/cisco-packet-tracer/8.nix { }; + + claws-mail = callPackage ../applications/networking/mailreaders/claws-mail { + inherit (xorg) libSM; + }; + + clfswm = callPackage ../applications/window-managers/clfswm { }; + + clickshare-csc1 = callPackage ../applications/video/clickshare-csc1 { }; + + cligh = python3Packages.callPackage ../development/tools/github/cligh {}; + + clight = callPackage ../applications/misc/clight { }; + + clightd = callPackage ../applications/misc/clight/clightd.nix { }; + + clipgrab = libsForQt5.callPackage ../applications/video/clipgrab { }; + + clipcat = callPackage ../applications/misc/clipcat { }; + + clipmenu = callPackage ../applications/misc/clipmenu { }; + + clipit = callPackage ../applications/misc/clipit { }; + + cloud-hypervisor = callPackage ../applications/virtualization/cloud-hypervisor { }; + + clp = callPackage ../applications/science/math/clp { }; + + cmatrix = callPackage ../applications/misc/cmatrix { }; + + cmctl = callPackage ../applications/networking/cluster/cmctl { }; + + cmus = callPackage ../applications/audio/cmus { + inherit (darwin.apple_sdk.frameworks) AudioUnit CoreAudio; + libjack = libjack2; + }; + + cmusfm = callPackage ../applications/audio/cmusfm { }; + + cni = callPackage ../applications/networking/cluster/cni {}; + cni-plugins = callPackage ../applications/networking/cluster/cni/plugins.nix {}; + + dnsname-cni = callPackage ../applications/networking/cluster/dnsname-cni {}; + + multus-cni = callPackage ../applications/networking/cluster/multus-cni {}; + + cntr = callPackage ../applications/virtualization/cntr { }; + + communi = libsForQt5.callPackage ../applications/networking/irc/communi { }; + + complete-alias = callPackage ../tools/misc/complete-alias { }; + + confclerk = callPackage ../applications/misc/confclerk { }; + + copyq = libsForQt5.callPackage ../applications/misc/copyq { }; + + corectrl = libsForQt5.callPackage ../applications/misc/corectrl { }; + + coriander = callPackage ../applications/video/coriander { + inherit (gnome2) libgnomeui GConf; + }; + + corrscope = libsForQt5.callPackage ../applications/video/corrscope { + ffmpeg = ffmpeg-full; + }; + + cpeditor = libsForQt515.callPackage ../applications/editors/cpeditor { }; + + csa = callPackage ../applications/audio/csa { }; + + csound = callPackage ../applications/audio/csound { }; + + csound-manual = callPackage ../applications/audio/csound/csound-manual { + python = python27; + pygments = python27Packages.pygments; + }; + + csound-qt = libsForQt5.callPackage ../applications/audio/csound/csound-qt { + python = python27; + }; + + codeblocks = callPackage ../applications/editors/codeblocks { }; + codeblocksFull = codeblocks.override { contribPlugins = true; }; + + cudatext-qt = callPackage ../applications/editors/cudatext { widgetset = "qt5"; }; + cudatext-gtk = callPackage ../applications/editors/cudatext { widgetset = "gtk2"; }; + cudatext = cudatext-qt; + + convos = callPackage ../applications/networking/irc/convos { }; + + comical = callPackage ../applications/graphics/comical { }; + + containerd = callPackage ../applications/virtualization/containerd { }; + containerd_1_4 = callPackage ../applications/virtualization/containerd/1.4.nix { }; + + convchain = callPackage ../tools/graphics/convchain {}; + + cordless = callPackage ../applications/networking/instant-messengers/cordless { }; + + coursera-dl = callPackage ../applications/misc/coursera-dl {}; + + coyim = callPackage ../applications/networking/instant-messengers/coyim { }; + + cozy-drive = callPackage ../applications/networking/cozy-drive {}; + + cq-editor = libsForQt5.callPackage ../applications/graphics/cq-editor { + python3Packages = python37Packages; + }; + + cqrlog = callPackage ../applications/radio/cqrlog { + hamlib = hamlib_4; + }; + + crun = callPackage ../applications/virtualization/crun {}; + + csdp = callPackage ../applications/science/math/csdp { }; + + ctop = callPackage ../tools/system/ctop { }; + + cubicsdr = callPackage ../applications/radio/cubicsdr { }; + + cum = callPackage ../applications/misc/cum { }; + + cuneiform = callPackage ../tools/graphics/cuneiform {}; + + curseradio = callPackage ../applications/audio/curseradio { }; + + cutecom = libsForQt5.callPackage ../tools/misc/cutecom { }; + + cvs = callPackage ../applications/version-management/cvs { }; + + cvsps = callPackage ../applications/version-management/cvsps { }; + + cvsq = callPackage ../applications/version-management/cvsq { }; + + cvs2svn = callPackage ../applications/version-management/cvs2svn { }; + + cwm = callPackage ../applications/window-managers/cwm { }; + + cyclone = callPackage ../applications/audio/pd-plugins/cyclone { }; + + dablin = callPackage ../applications/radio/dablin { }; + + darcs = haskell.lib.compose.overrideCabal (drv: { + configureFlags = (lib.remove "-flibrary" drv.configureFlags or []) ++ ["-f-library"]; + }) (haskell.lib.compose.justStaticExecutables haskellPackages.darcs); + + darcs-to-git = callPackage ../applications/version-management/git-and-tools/darcs-to-git { }; + + darktable = callPackage ../applications/graphics/darktable { + lua = lua5_4; + pugixml = pugixml.override { shared = true; }; + }; + + das_watchdog = callPackage ../tools/system/das_watchdog { }; + + dd-agent = callPackage ../tools/networking/dd-agent/5.nix { }; + datadog-agent = callPackage ../tools/networking/dd-agent/datadog-agent.nix { + pythonPackages = datadog-integrations-core {}; + }; + datadog-process-agent = callPackage ../tools/networking/dd-agent/datadog-process-agent.nix { }; + datadog-integrations-core = extras: callPackage ../tools/networking/dd-agent/integrations-core.nix { + python = python3; + extraIntegrations = extras; + }; + + ddgr = callPackage ../applications/misc/ddgr { }; + + deadbeef = callPackage ../applications/audio/deadbeef { }; + + deadbeefPlugins = { + headerbar-gtk3 = callPackage ../applications/audio/deadbeef/plugins/headerbar-gtk3.nix { }; + infobar = callPackage ../applications/audio/deadbeef/plugins/infobar.nix { }; + lyricbar = callPackage ../applications/audio/deadbeef/plugins/lyricbar.nix { }; + mpris2 = callPackage ../applications/audio/deadbeef/plugins/mpris2.nix { }; + statusnotifier = callPackage ../applications/audio/deadbeef/plugins/statusnotifier.nix { }; + }; + + deadbeef-with-plugins = callPackage ../applications/audio/deadbeef/wrapper.nix { + plugins = []; + }; + + dfasma = libsForQt5.callPackage ../applications/audio/dfasma { }; + + dfilemanager = libsForQt5.callPackage ../applications/misc/dfilemanager { }; + + dht = callPackage ../applications/networking/p2p/dht { }; + + dia = callPackage ../applications/graphics/dia { + inherit (gnome2) libart_lgpl libgnomeui; + }; + + direwolf = callPackage ../applications/radio/direwolf { + hamlib = hamlib_4; + }; + + dirt = callPackage ../applications/audio/dirt {}; + + distrho = callPackage ../applications/audio/distrho {}; + + dit = callPackage ../applications/editors/dit { }; + + djvulibre = callPackage ../applications/misc/djvulibre { }; + + djvu2pdf = callPackage ../tools/typesetting/djvu2pdf { }; + + djview = libsForQt5.callPackage ../applications/graphics/djview { }; + djview4 = djview; + + dmenu = callPackage ../applications/misc/dmenu { }; + dmenu-wayland = callPackage ../applications/misc/dmenu/wayland.nix { }; + + dmensamenu = callPackage ../applications/misc/dmensamenu { + inherit (python3Packages) buildPythonApplication requests; + }; + + dmrconfig = callPackage ../applications/radio/dmrconfig { }; + + dmtx-utils = callPackage ../tools/graphics/dmtx-utils { + inherit (darwin.apple_sdk.frameworks) Foundation; + }; + + dnd-tools = callPackage ../applications/misc/dnd-tools { }; + + inherit (callPackage ../applications/virtualization/docker {}) + docker_20_10; + + docker = docker_20_10; + docker-edge = docker_20_10; + docker-client = docker.override { clientOnly = true; }; + + docker-proxy = callPackage ../applications/virtualization/docker/proxy.nix { }; + + docker-gc = callPackage ../applications/virtualization/docker/gc.nix { }; + + docker-machine = callPackage ../applications/networking/cluster/docker-machine { }; + docker-machine-hyperkit = callPackage ../applications/networking/cluster/docker-machine/hyperkit.nix { }; + docker-machine-kvm = callPackage ../applications/networking/cluster/docker-machine/kvm.nix { }; + docker-machine-kvm2 = callPackage ../applications/networking/cluster/docker-machine/kvm2.nix { }; + docker-machine-xhyve = callPackage ../applications/networking/cluster/docker-machine/xhyve.nix { + inherit (darwin.apple_sdk.frameworks) Hypervisor vmnet; + inherit (darwin) cctools; + }; + + docker-distribution = callPackage ../applications/virtualization/docker/distribution.nix { }; + + dockfmt = callPackage ../development/tools/dockfmt { }; + + afterburn = callPackage ../tools/admin/afterburn {}; + + docker-buildx = callPackage ../applications/virtualization/docker/buildx.nix { }; + docker-compose_2 = callPackage ../applications/virtualization/docker/compose.nix { }; + + amazon-ecr-credential-helper = callPackage ../tools/admin/amazon-ecr-credential-helper { }; + + docker-credential-gcr = callPackage ../tools/admin/docker-credential-gcr { }; + + docker-credential-helpers = callPackage ../tools/admin/docker-credential-helpers { }; + + doodle = callPackage ../applications/search/doodle { }; + + dr14_tmeter = callPackage ../applications/audio/dr14_tmeter { }; + + dragonfly-reverb = callPackage ../applications/audio/dragonfly-reverb { }; + + drawing = callPackage ../applications/graphics/drawing { }; + + drawio = callPackage ../applications/graphics/drawio {}; + + drawpile = libsForQt5.callPackage ../applications/graphics/drawpile { }; + drawpile-server-headless = libsForQt5.callPackage ../applications/graphics/drawpile { + buildClient = false; + buildServerGui = false; + }; + + drawterm = callPackage ../tools/admin/drawterm { }; + + droopy = python3Packages.callPackage ../applications/networking/droopy { }; + + drumgizmo = callPackage ../applications/audio/drumgizmo { }; + + dsf2flac = callPackage ../applications/audio/dsf2flac { }; + + dunst = callPackage ../applications/misc/dunst { }; + + du-dust = callPackage ../tools/misc/dust { }; + + dutree = callPackage ../tools/misc/dutree { }; + + devede = callPackage ../applications/video/devede { }; + + denemo = callPackage ../applications/audio/denemo { }; + + dvdauthor = callPackage ../applications/video/dvdauthor { }; + + dvdbackup = callPackage ../applications/video/dvdbackup { }; + + dvd-slideshow = callPackage ../applications/video/dvd-slideshow { }; + + dvdstyler = callPackage ../applications/video/dvdstyler { + inherit (gnome2) libgnomeui; + }; + + dyff = callPackage ../development/tools/dyff { }; + + dwl = callPackage ../applications/window-managers/dwl { }; + + dwm = callPackage ../applications/window-managers/dwm { + # dwm is configured entirely through source modification. Allow users to + # specify patches through nixpkgs.config.dwm.patches + patches = config.dwm.patches or []; + }; + + dwmblocks = callPackage ../applications/misc/dwmblocks { }; + + dwm-status = callPackage ../applications/window-managers/dwm/dwm-status.nix { }; + + dynamips = callPackage ../applications/emulators/dynamips { }; + + exploitdb = callPackage ../tools/security/exploitdb { }; + + evilwm = callPackage ../applications/window-managers/evilwm { + patches = config.evilwm.patches or []; + }; + + dzen2 = callPackage ../applications/window-managers/dzen2 { }; + + e16 = callPackage ../applications/window-managers/e16 { }; + + eaglemode = callPackage ../applications/misc/eaglemode { }; + + ebumeter = callPackage ../applications/audio/ebumeter { }; + + echoip = callPackage ../servers/echoip { }; + + eclipses = recurseIntoAttrs (callPackage ../applications/editors/eclipse { + jdk = jdk11; + }); + + ecpdap = callPackage ../development/embedded/fpga/ecpdap { + inherit (darwin.apple_sdk.frameworks) AppKit; + }; + + ecs-agent = callPackage ../applications/virtualization/ecs-agent { }; + + ed = callPackage ../applications/editors/ed { }; + + edbrowse = callPackage ../applications/editors/edbrowse { }; + + oed = callPackage ../applications/editors/oed { }; + + ekho = callPackage ../applications/audio/ekho { }; + + electron-cash = libsForQt5.callPackage ../applications/misc/electron-cash { }; + + electrum = libsForQt5.callPackage ../applications/misc/electrum { }; + + electrum-grs = libsForQt5.callPackage ../applications/misc/electrum-grs { }; + + electrum-ltc = libsForQt5.callPackage ../applications/misc/electrum/ltc.nix { }; + + elementary-planner = callPackage ../applications/office/elementary-planner { }; + + elf-dissector = libsForQt5.callPackage ../applications/misc/elf-dissector { }; + + elfx86exts = callPackage ../applications/misc/elfx86exts { }; + + elinks = callPackage ../applications/networking/browsers/elinks { + autoreconfHook = buildPackages.autoreconfHook269; + }; + + elvis = callPackage ../applications/editors/elvis { }; + + em = callPackage ../applications/editors/em { }; + + emacs = emacs27; + emacs-nox = emacs27-nox; + + emacs27 = callPackage ../applications/editors/emacs/27.nix { + # use override to enable additional features + libXaw = xorg.libXaw; + Xaw3d = null; + gconf = null; + alsa-lib = null; + acl = null; + gpm = null; + inherit (darwin.apple_sdk.frameworks) AppKit GSS ImageIO; + inherit (darwin) sigtool; + }; + + emacs27-nox = lowPrio (emacs27.override { + withX = false; + withNS = false; + withGTK2 = false; + withGTK3 = false; + }); + + emacsMacport = callPackage ../applications/editors/emacs/macport.nix { + inherit (darwin.apple_sdk.frameworks) + AppKit Carbon Cocoa IOKit OSAKit Quartz QuartzCore WebKit + ImageCaptureCore GSS ImageIO; + stdenv = if stdenv.cc.isClang then llvmPackages_6.stdenv else stdenv; + }; + + emacsPackagesFor = emacs: import ./emacs-packages.nix { + inherit (lib) makeScope makeOverridable dontRecurseIntoAttrs; + emacs' = emacs; + pkgs' = pkgs; # default pkgs used for bootstrapping the emacs package set + }; + + inherit (gnome) empathy; + + enhanced-ctorrent = callPackage ../applications/networking/enhanced-ctorrent { }; + + entangle = callPackage ../applications/video/entangle { + inherit (gst_all_1) gstreamer gst-plugins-base; + }; + + eolie = callPackage ../applications/networking/browsers/eolie { }; + + eos-installer = callPackage ../applications/misc/eos-installer { }; + + epdfview = callPackage ../applications/misc/epdfview { }; + + epeg = callPackage ../applications/graphics/epeg { }; + + epgstation = callPackage ../applications/video/epgstation { }; + + inherit (gnome) epiphany; + + ephemeral = callPackage ../applications/networking/browsers/ephemeral { }; + + epic5 = callPackage ../applications/networking/irc/epic5 { }; + + epick = callPackage ../applications/graphics/epick { + inherit (darwin.apple_sdk.frameworks) AppKit IOKit; + inherit (xorg) libX11 libXcursor libXi libXrandr libxcb; + }; + + epr = callPackage ../applications/misc/epr { }; + + eq10q = callPackage ../applications/audio/eq10q { }; + + errbot = python3Packages.callPackage ../applications/networking/errbot { }; + + espeak-classic = callPackage ../applications/audio/espeak { }; + + espeak-ng = callPackage ../applications/audio/espeak-ng { }; + espeak = res.espeak-ng; + + espeakedit = callPackage ../applications/audio/espeak/edit.nix { }; + + eteroj.lv2 = libsForQt5.callPackage ../applications/audio/eteroj.lv2 { }; + + etebase-server = with python3Packages; toPythonApplication etebase-server; + + etesync-dav = callPackage ../applications/misc/etesync-dav {}; + + etherape = callPackage ../applications/networking/sniffers/etherape { }; + + evilpixie = libsForQt5.callPackage ../applications/graphics/evilpixie { }; + + eww = callPackage ../applications/window-managers/eww { }; + eww-wayland = callPackage ../applications/window-managers/eww { + withWayland = true; + }; + + exaile = callPackage ../applications/audio/exaile { }; + + exercism = callPackage ../applications/misc/exercism { }; + + expenses = callPackage ../applications/misc/expenses { }; + + fnott = callPackage ../applications/misc/fnott { }; + + gg-scm = callPackage ../applications/version-management/git-and-tools/gg { }; + + gigalixir = with python3Packages; toPythonApplication gigalixir; + + go-libp2p-daemon = callPackage ../servers/go-libp2p-daemon { }; + + go-motion = callPackage ../development/tools/go-motion { }; + + gpg-mdp = callPackage ../applications/misc/gpg-mdp { }; + + greenfoot = callPackage ../applications/editors/greenfoot { + jdk = jetbrains.jdk; + }; + + gspeech = callPackage ../applications/audio/gspeech { }; + + haruna = libsForQt5.callPackage ../applications/video/haruna { }; + + hdrmerge = libsForQt5.callPackage ../applications/graphics/hdrmerge { }; + + helix = callPackage ../applications/editors/helix { }; + + icesl = callPackage ../applications/misc/icesl { }; + + kalendar = libsForQt5.callPackage ../applications/office/kalendar { }; + + keepassx = callPackage ../applications/misc/keepassx { }; + keepassx2 = callPackage ../applications/misc/keepassx/2.0.nix { }; + keepassxc = libsForQt5.callPackage ../applications/misc/keepassx/community.nix { }; + + keeweb = callPackage ../applications/misc/keeweb { }; + + inherit (gnome) evince; + evolution-data-server = gnome.evolution-data-server; + evolution-ews = callPackage ../applications/networking/mailreaders/evolution/evolution-ews { }; + evolution = callPackage ../applications/networking/mailreaders/evolution/evolution { }; + evolutionWithPlugins = callPackage ../applications/networking/mailreaders/evolution/evolution/wrapper.nix { plugins = [ evolution evolution-ews ]; }; + + keepass = callPackage ../applications/misc/keepass { }; + + keepass-charactercopy = callPackage ../applications/misc/keepass-plugins/charactercopy { }; + + keepass-keeagent = callPackage ../applications/misc/keepass-plugins/keeagent { }; + + keepass-keepasshttp = callPackage ../applications/misc/keepass-plugins/keepasshttp { }; + + keepass-keepassrpc = callPackage ../applications/misc/keepass-plugins/keepassrpc { }; + + keepass-keetraytotp = callPackage ../applications/misc/keepass-plugins/keetraytotp { }; + + keepass-otpkeyprov = callPackage ../applications/misc/keepass-plugins/otpkeyprov { }; + + keepass-qrcodeview = callPackage ../applications/misc/keepass-plugins/qrcodeview { }; + + kerbrute = callPackage ../tools/security/kerbrute { }; + + exrdisplay = callPackage ../applications/graphics/exrdisplay { }; + + exrtools = callPackage ../applications/graphics/exrtools { }; + + f1viewer = callPackage ../applications/video/f1viewer {}; + + fasttext = callPackage ../applications/science/machine-learning/fasttext { }; + + fbmenugen = callPackage ../applications/misc/fbmenugen { }; + + fbpanel = callPackage ../applications/window-managers/fbpanel { }; + + fbreader = callPackage ../applications/misc/fbreader { + inherit (darwin.apple_sdk.frameworks) AppKit Cocoa; + }; + + fdr = libsForQt5.callPackage ../applications/science/programming/fdr { }; + + feedbackd = callPackage ../applications/misc/feedbackd { }; + + fehlstart = callPackage ../applications/misc/fehlstart { }; + + fetchmail = callPackage ../applications/misc/fetchmail { }; + + fff = callPackage ../applications/misc/fff { }; + + fig2dev = callPackage ../applications/graphics/fig2dev { }; + + FIL-plugins = callPackage ../applications/audio/FIL-plugins { }; + + finalfrontier = callPackage ../applications/science/machine-learning/finalfrontier { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + finalfusion-utils = callPackage ../applications/science/machine-learning/finalfusion-utils { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + flacon = libsForQt5.callPackage ../applications/audio/flacon { }; + + flexget = callPackage ../applications/networking/flexget { }; + + fldigi = callPackage ../applications/radio/fldigi { + hamlib = hamlib_4; + }; + + flink = callPackage ../applications/networking/cluster/flink { }; + + fllog = callPackage ../applications/radio/fllog { }; + + flmsg = callPackage ../applications/radio/flmsg { }; + + flrig = callPackage ../applications/radio/flrig { }; + + fluxus = callPackage ../applications/graphics/fluxus { }; + + flwrap = callPackage ../applications/radio/flwrap { }; + + fluidsynth = callPackage ../applications/audio/fluidsynth { + inherit (darwin.apple_sdk.frameworks) AudioUnit CoreAudio CoreMIDI CoreServices; + }; + + fmit = libsForQt5.callPackage ../applications/audio/fmit { }; + + fmsynth = callPackage ../applications/audio/fmsynth { }; + + focuswriter = libsForQt5.callPackage ../applications/editors/focuswriter { }; + + foliate = callPackage ../applications/office/foliate { }; + + fondo = callPackage ../applications/graphics/fondo { }; + + font-manager = callPackage ../applications/misc/font-manager { }; + + fontpreview = callPackage ../applications/misc/fontpreview { }; + + foo-yc20 = callPackage ../applications/audio/foo-yc20 { }; + + fossil = callPackage ../applications/version-management/fossil { + sqlite = sqlite.override { enableDeserialize = true; }; + }; + + freebayes = callPackage ../applications/science/biology/freebayes { }; + + freewheeling = callPackage ../applications/audio/freewheeling { }; + + fritzing = libsForQt5.callPackage ../applications/science/electronics/fritzing { }; + + fritzprofiles = with python3.pkgs; toPythonApplication fritzprofiles; + + fsv = callPackage ../applications/misc/fsv { + autoreconfHook = buildPackages.autoreconfHook269; + }; + + ft2-clone = callPackage ../applications/audio/ft2-clone { + inherit (darwin.apple_sdk.frameworks) CoreAudio CoreMIDI CoreServices Cocoa; + }; + + fvwm = callPackage ../applications/window-managers/fvwm { }; + + ganttproject-bin = callPackage ../applications/misc/ganttproject-bin { }; + + gaucheBootstrap = callPackage ../development/interpreters/gauche/boot.nix { }; + + gauche = callPackage ../development/interpreters/gauche { }; + + gcal = callPackage ../applications/misc/gcal { }; + + gcstar = callPackage ../applications/misc/gcstar { }; + + geany = callPackage ../applications/editors/geany { }; + geany-with-vte = callPackage ../applications/editors/geany/with-vte.nix { }; + + geek-life = callPackage ../applications/misc/geek-life { }; + + genact = callPackage ../applications/misc/genact { }; + + genxword = callPackage ../applications/misc/genxword { }; + + geoipupdate = callPackage ../applications/misc/geoipupdate { }; + + ghostwriter = libsForQt5.callPackage ../applications/editors/ghostwriter { }; + + gitweb = callPackage ../applications/version-management/git-and-tools/gitweb { }; + + globe-cli = callPackage ../applications/misc/globe-cli { }; + + gnss-sdr = callPackage ../applications/radio/gnss-sdr { }; + + gnuradio = callPackage ../applications/radio/gnuradio/wrapper.nix { + unwrapped = callPackage ../applications/radio/gnuradio { + inherit (darwin.apple_sdk.frameworks) CoreAudio; + python = python3; + }; + }; + gnuradioPackages = lib.recurseIntoAttrs gnuradio.pkgs; + # A build without gui components and other utilites not needed for end user + # libraries + gnuradioMinimal = gnuradio.override { + doWrap = false; + unwrapped = gnuradio.unwrapped.override { + volk = volk.override { + # So it will not reference python + enableModTool = false; + }; + features = { + gnuradio-companion = false; + python-support = false; + examples = false; + gr-qtgui = false; + gr-utils = false; + gr-modtool = false; + gr-blocktool = false; + sphinx = false; + doxygen = false; + # Doesn't make it reference python eventually, but makes reverse + # depdendencies require python to use cmake files of GR. + gr-ctrlport = false; + }; + }; + }; + gnuradio3_9 = callPackage ../applications/radio/gnuradio/wrapper.nix { + unwrapped = callPackage ../applications/radio/gnuradio/3.9.nix { + inherit (darwin.apple_sdk.frameworks) CoreAudio; + python = python3; + }; + }; + gnuradio3_9Packages = lib.recurseIntoAttrs gnuradio.pkgs; + # A build without gui components and other utilites not needed for end user + # libraries + gnuradio3_9Minimal = gnuradio.override { + doWrap = false; + unwrapped = gnuradio.unwrapped.override { + volk = volk.override { + # So it will not reference python + enableModTool = false; + }; + features = { + gnuradio-companion = false; + python-support = false; + examples = false; + gr-qtgui = false; + gr-utils = false; + gr-modtool = false; + gr-blocktool = false; + sphinx = false; + doxygen = false; + # Doesn't make it reference python eventually, but makes reverse + # depdendencies require python to use cmake files of GR. + gr-ctrlport = false; + }; + }; + }; + gnuradio3_8 = callPackage ../applications/radio/gnuradio/wrapper.nix { + unwrapped = callPackage ../applications/radio/gnuradio/3.8.nix { + inherit (darwin.apple_sdk.frameworks) CoreAudio; + python = python3; + }; + }; + gnuradio3_8Packages = lib.recurseIntoAttrs gnuradio3_8.pkgs; + # A build without gui components and other utilites not needed if gnuradio is + # used as a c++ library. + gnuradio3_8Minimal = gnuradio3_8.override { + doWrap = false; + unwrapped = gnuradio3_8.unwrapped.override { + volk = volk.override { + enableModTool = false; + }; + features = { + gnuradio-companion = false; + python-support = false; + examples = false; + gr-qtgui = false; + gr-utils = false; + gr-modtool = false; + sphinx = false; + doxygen = false; + # Doesn't make it reference python eventually, but makes reverse + # depdendencies require python to use cmake files of GR. + gr-ctrlport = false; + }; + }; + }; + + grandorgue = callPackage ../applications/audio/grandorgue { }; + + greetd = recurseIntoAttrs { + greetd = callPackage ../os-specific/linux/greetd { }; + gtkgreet = callPackage ../os-specific/linux/gtkgreet { }; + dlm = callPackage ../os-specific/linux/dlm { }; + wlgreet = callPackage ../os-specific/linux/wlgreet { }; + tuigreet = callPackage ../os-specific/linux/tuigreet { }; + }; + + goldendict = libsForQt5.callPackage ../applications/misc/goldendict { + inherit (darwin) libiconv; + }; + + gomuks = callPackage ../applications/networking/instant-messengers/gomuks { }; + + inherit (ocaml-ng.ocamlPackages_4_10) google-drive-ocamlfuse; + + googler = callPackage ../applications/misc/googler { + python = python3; + }; + + gopher = callPackage ../applications/networking/gopher/gopher { }; + + gophernotes = callPackage ../applications/editors/gophernotes { }; + + goxel = callPackage ../applications/graphics/goxel { }; + + gpa = callPackage ../applications/misc/gpa { }; + + gpicview = callPackage ../applications/graphics/gpicview { + gtk2 = gtk2-x11; + }; + + gpx = callPackage ../applications/misc/gpx { }; + + gqrx = callPackage ../applications/radio/gqrx { }; + gqrx-portaudio = callPackage ../applications/radio/gqrx { + portaudioSupport = true; + pulseaudioSupport = false; + }; + gqrx-gr-audio = callPackage ../applications/radio/gqrx { + portaudioSupport = false; + pulseaudioSupport = false; + }; + + gpx-viewer = callPackage ../applications/misc/gpx-viewer { }; + + grass = callPackage ../applications/gis/grass { }; + + grepcidr = callPackage ../applications/search/grepcidr { }; + + grepm = callPackage ../applications/search/grepm { }; + + grip-search = callPackage ../tools/text/grip-search { }; + + grip = callPackage ../applications/misc/grip { }; + + gsimplecal = callPackage ../applications/misc/gsimplecal { }; + + gthumb = callPackage ../applications/graphics/gthumb { }; + + gtimelog = with python3Packages; toPythonApplication gtimelog; + + inherit (gnome) gucharmap; + + guitarix = callPackage ../applications/audio/guitarix { + fftw = fftwSinglePrec; + }; + + gurk-rs = callPackage ../applications/networking/instant-messengers/gurk-rs { }; + + gjay = callPackage ../applications/audio/gjay { }; + + photivo = callPackage ../applications/graphics/photivo { }; + + rhythmbox = callPackage ../applications/audio/rhythmbox { }; + + gradio = callPackage ../applications/audio/gradio { }; + + puddletag = libsForQt5.callPackage ../applications/audio/puddletag { }; + + w_scan = callPackage ../applications/video/w_scan { }; + + wavesurfer = callPackage ../applications/misc/audio/wavesurfer { }; + + wavrsocvt = callPackage ../applications/misc/audio/wavrsocvt { }; + + welle-io = libsForQt5.callPackage ../applications/radio/welle-io { }; + + wireshark = callPackage ../applications/networking/sniffers/wireshark { + inherit (darwin.apple_sdk.frameworks) ApplicationServices SystemConfiguration; + libpcap = libpcap.override { withBluez = stdenv.isLinux; }; + }; + wireshark-qt = wireshark; + + tshark = wireshark-cli; + wireshark-cli = wireshark.override { + withQt = false; + libpcap = libpcap.override { withBluez = stdenv.isLinux; }; + }; + + sngrep = callPackage ../applications/networking/sniffers/sngrep {}; + + termshark = callPackage ../tools/networking/termshark { }; + + fbida = callPackage ../applications/graphics/fbida { }; + + fclones = callPackage ../tools/misc/fclones { + inherit (darwin.apple_sdk.frameworks) AppKit; + }; + + fcp = callPackage ../tools/misc/fcp { }; + + fdupes = callPackage ../tools/misc/fdupes { }; + + feh = callPackage ../applications/graphics/feh { }; + + filezilla = callPackage ../applications/networking/ftp/filezilla { }; + + firefoxCommon = args: callPackage (import ../applications/networking/browsers/firefox/common.nix args) { + libpng = libpng_apng; + gnused = gnused_422; + inherit (darwin.apple_sdk.frameworks) CoreMedia ExceptionHandling + Kerberos AVFoundation MediaToolbox + CoreLocation Foundation AddressBook; + inherit (darwin) libobjc; + }; + + firefoxPackages = recurseIntoAttrs (callPackage ../applications/networking/browsers/firefox/packages.nix { }); + + firefox-unwrapped = firefoxPackages.firefox; + firefox-esr-91-unwrapped = firefoxPackages.firefox-esr-91; + firefox = wrapFirefox firefox-unwrapped { }; + firefox-wayland = wrapFirefox firefox-unwrapped { forceWayland = true; }; + firefox-esr-91 = wrapFirefox firefox-esr-91-unwrapped { }; + + firefox-esr = firefox-esr-91; + firefox-esr-unwrapped = firefoxPackages.firefox-esr-91; + firefox-esr-wayland = wrapFirefox firefox-esr-91-unwrapped { forceWayland = true; }; + + firefox-beta = wrapFirefox firefox-beta-unwrapped { }; + firefox-beta-unwrapped = firefoxPackages.firefox-beta; + + firefox-bin-unwrapped = callPackage ../applications/networking/browsers/firefox-bin { + inherit (gnome) adwaita-icon-theme; + channel = "release"; + generated = import ../applications/networking/browsers/firefox-bin/release_sources.nix; + }; + + firefox-bin = wrapFirefox firefox-bin-unwrapped { + pname = "firefox-bin"; + }; + + firefox-beta-bin-unwrapped = firefox-bin-unwrapped.override { + inherit (gnome) adwaita-icon-theme; + channel = "beta"; + generated = import ../applications/networking/browsers/firefox-bin/beta_sources.nix; + }; + + firefox-beta-bin = res.wrapFirefox firefox-beta-bin-unwrapped { + pname = "firefox-beta-bin"; + desktopName = "Firefox Beta"; + }; + + firefox-devedition-bin-unwrapped = callPackage ../applications/networking/browsers/firefox-bin { + inherit (gnome) adwaita-icon-theme; + channel = "devedition"; + generated = import ../applications/networking/browsers/firefox-bin/devedition_sources.nix; + }; + + firefox-devedition-bin = res.wrapFirefox firefox-devedition-bin-unwrapped { + nameSuffix = "-devedition"; + pname = "firefox-devedition-bin"; + desktopName = "Firefox DevEdition"; + }; + + librewolf-unwrapped = firefoxPackages.librewolf; + + librewolf = wrapFirefox librewolf-unwrapped { + inherit (librewolf-unwrapped) extraPrefsFiles extraPoliciesFiles; + libName = "librewolf"; + }; + + librewolf-wayland = librewolf.override { + forceWayland = true; + }; + + firefox_decrypt = python3Packages.callPackage ../tools/security/firefox_decrypt { }; + + flac = callPackage ../applications/audio/flac { }; + + redoflacs = callPackage ../applications/audio/redoflacs { }; + + flameshot = libsForQt5.callPackage ../tools/misc/flameshot { }; + + flex-ncat = callPackage ../applications/radio/flex-ncat { }; + + flex-ndax = callPackage ../applications/radio/flex-ndax { }; + + fluxbox = callPackage ../applications/window-managers/fluxbox { }; + + fomp = callPackage ../applications/audio/fomp { }; + + formatter = callPackage ../applications/misc/formatter { }; + + formiko = with python3Packages; callPackage ../applications/editors/formiko { + inherit buildPythonApplication; + }; + + foxotron = callPackage ../applications/graphics/foxotron { + inherit (darwin.apple_sdk.frameworks) AVFoundation Carbon Cocoa CoreAudio Kernel OpenGL; + }; + + foxtrotgps = callPackage ../applications/misc/foxtrotgps { }; + + fractal = callPackage ../applications/networking/instant-messengers/fractal { }; + + fragments = callPackage ../applications/networking/p2p/fragments { }; + + freecad = libsForQt5.callPackage ../applications/graphics/freecad { + boost = python3Packages.boost169; + inherit (python3Packages) + GitPython + matplotlib + pivy + ply + pycollada + pyside2 + pyside2-tools + python + pyyaml + scipy + shiboken2; + }; + + freedv = callPackage ../applications/radio/freedv { }; + + freemind = callPackage ../applications/misc/freemind { + jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + + freenet = callPackage ../applications/networking/p2p/freenet { + jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + + freeoffice = callPackage ../applications/office/softmaker/freeoffice.nix {}; + + freeplane = callPackage ../applications/misc/freeplane { }; + + freepv = callPackage ../applications/graphics/freepv { }; + + xfontsel = callPackage ../applications/misc/xfontsel { }; + inherit (xorg) xlsfonts; + + xrdp = callPackage ../applications/networking/remote/xrdp { }; + + freerdp = callPackage ../applications/networking/remote/freerdp { + inherit (gst_all_1) gstreamer gst-plugins-base gst-plugins-good; + }; + + freerdpUnstable = freerdp; + + friture = libsForQt5.callPackage ../applications/audio/friture { }; + + fte = callPackage ../applications/editors/fte { }; + + g933-utils = callPackage ../tools/misc/g933-utils { }; + + game-music-emu = callPackage ../applications/audio/game-music-emu { }; + + gavrasm = callPackage ../development/compilers/gavrasm { }; + + gcalcli = callPackage ../applications/misc/gcalcli { }; + + vcal = callPackage ../applications/misc/vcal { }; + + gcolor2 = callPackage ../applications/graphics/gcolor2 { }; + + gcolor3 = callPackage ../applications/graphics/gcolor3 { }; + + get_iplayer = callPackage ../applications/misc/get_iplayer {}; + + getxbook = callPackage ../applications/misc/getxbook { }; + + gimp = callPackage ../applications/graphics/gimp { + autoreconfHook = buildPackages.autoreconfHook269; + lcms = lcms2; + inherit (darwin.apple_sdk.frameworks) AppKit Cocoa; + }; + + gimp-with-plugins = callPackage ../applications/graphics/gimp/wrapper.nix { + plugins = null; # All packaged plugins enabled, if not explicit plugin list supplied + }; + + gimpPlugins = recurseIntoAttrs (callPackage ../applications/graphics/gimp/plugins {}); + + glimpse = callPackage ../applications/graphics/glimpse { + autoreconfHook = buildPackages.autoreconfHook269; + lcms = lcms2; + inherit (darwin.apple_sdk.frameworks) AppKit Cocoa; + }; + + glimpse-with-plugins = callPackage ../applications/graphics/glimpse/wrapper.nix { + plugins = null; # All packaged plugins enabled, if not explicit plugin list supplied + }; + + glimpsePlugins = recurseIntoAttrs (callPackage ../applications/graphics/glimpse/plugins {}); + + girara = callPackage ../applications/misc/girara { + gtk = gtk3; + }; + + git = callPackage ../applications/version-management/git-and-tools/git { + svnSupport = false; # for git-svn support + guiSupport = false; # requires tcl/tk + sendEmailSupport = false; # requires plenty of perl libraries + perlLibs = [perlPackages.LWP perlPackages.URI perlPackages.TermReadKey]; + smtpPerlLibs = [ + perlPackages.libnet perlPackages.NetSMTPSSL + perlPackages.IOSocketSSL perlPackages.NetSSLeay + perlPackages.AuthenSASL perlPackages.DigestHMAC + ]; + }; + + # The full-featured Git. + gitFull = git.override { + svnSupport = true; + guiSupport = true; + sendEmailSupport = true; + withLibsecret = !stdenv.isDarwin; + }; + + # Git with SVN support, but without GUI. + gitSVN = lowPrio (appendToName "with-svn" (git.override { + svnSupport = true; + })); + + git-doc = lib.addMetaAttrs { + description = "Additional documentation for Git"; + longDescription = '' + This package contains additional documentation (HTML and text files) that + is referenced in the man pages of Git. + ''; + } gitFull.doc; + + gitMinimal = appendToName "minimal" (git.override { + withManual = false; + pythonSupport = false; + withpcre2 = false; + }); + + gitRepo = callPackage ../applications/version-management/git-repo { }; + + git-quick-stats = callPackage ../development/tools/git-quick-stats {}; + + git-review = python3Packages.callPackage ../applications/version-management/git-review { }; + + github-cli = gh; + + gitolite = callPackage ../applications/version-management/gitolite { }; + + gitoxide = callPackage ../applications/version-management/gitoxide { + inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration; + }; + + inherit (gnome) gitg; + + gmrun = callPackage ../applications/misc/gmrun {}; + + gnucash = callPackage ../applications/office/gnucash { }; + + goffice = callPackage ../development/libraries/goffice { }; + + got = callPackage ../applications/version-management/got { }; + + gtkterm = callPackage ../tools/misc/gtkterm { }; + + gtk-pipe-viewer = perlPackages.callPackage ../applications/video/pipe-viewer { withGtk3 = true; }; + + hydrus = python3Packages.callPackage ../applications/graphics/hydrus { + inherit miniupnpc_2 swftools; + inherit (qt5) wrapQtAppsHook; + }; + + jetbrains = (recurseIntoAttrs (callPackages ../applications/editors/jetbrains { + vmopts = config.jetbrains.vmopts or null; + jdk = jetbrains.jdk; + }) // { + jdk = callPackage ../development/compilers/jetbrains-jdk { }; + }); + + jmusicbot = callPackage ../applications/audio/jmusicbot { }; + + lemonade = callPackage ../applications/misc/lemonade { }; + + libquvi = callPackage ../applications/video/quvi/library.nix { }; + + librespot = callPackage ../applications/audio/librespot { + withALSA = stdenv.isLinux; + withPulseAudio = config.pulseaudio or stdenv.isLinux; + withPortAudio = stdenv.isDarwin; + }; + + limesctl = callPackage ../applications/misc/limesctl { }; + + linssid = libsForQt5.callPackage ../applications/networking/linssid { }; + + deadd-notification-center = callPackage ../applications/misc/deadd-notification-center { }; + + lollypop = callPackage ../applications/audio/lollypop { }; + + losslessaudiochecker = callPackage ../applications/audio/losslessaudiochecker { }; + + m32edit = callPackage ../applications/audio/midas/m32edit.nix {}; + + manim = python3Packages.callPackage ../applications/video/manim { + opencv = python3Packages.opencv3; + }; + + manuskript = libsForQt5.callPackage ../applications/editors/manuskript { }; + + manul = callPackage ../development/tools/manul { }; + + mindforger = libsForQt5.callPackage ../applications/editors/mindforger { }; + + mi2ly = callPackage ../applications/audio/mi2ly {}; + + moe = callPackage ../applications/editors/moe { }; + + multibootusb = libsForQt514.callPackage ../applications/misc/multibootusb { qt5 = qt514; }; + + praat = callPackage ../applications/audio/praat { }; + + quvi = callPackage ../applications/video/quvi/tool.nix { + lua5_sockets = lua51Packages.luasocket; + lua5 = lua5_1; + }; + + quvi_scripts = callPackage ../applications/video/quvi/scripts.nix { }; + + rhvoice = callPackage ../applications/audio/rhvoice { }; + + svox = callPackage ../applications/audio/svox { }; + + giada = callPackage ../applications/audio/giada {}; + + giara = callPackage ../applications/networking/giara { }; + + gitit = callPackage ../applications/misc/gitit {}; + + gkrellm = callPackage ../applications/misc/gkrellm { + inherit (darwin.apple_sdk.frameworks) IOKit; + }; + + glow = callPackage ../applications/editors/glow { }; + + glowing-bear = callPackage ../applications/networking/irc/glowing-bear { }; + + gmtk = callPackage ../development/libraries/gmtk { }; + + gmu = callPackage ../applications/audio/gmu { }; + + gnaural = callPackage ../applications/audio/gnaural { }; + + gnome_mplayer = callPackage ../applications/video/gnome-mplayer { }; + + gnumeric = callPackage ../applications/office/gnumeric { }; + + gnunet = callPackage ../applications/networking/p2p/gnunet { }; + + gnunet-gtk = callPackage ../applications/networking/p2p/gnunet/gtk.nix { }; + + gocr = callPackage ../applications/graphics/gocr { }; + + gobby = callPackage ../applications/editors/gobby { }; + + gphoto2 = callPackage ../applications/misc/gphoto2 { }; + + gphoto2fs = callPackage ../applications/misc/gphoto2/gphotofs.nix { }; + + gramps = callPackage ../applications/misc/gramps { + pythonPackages = python3Packages; + }; + + graphicsmagick = callPackage ../applications/graphics/graphicsmagick { }; + graphicsmagick_q16 = graphicsmagick.override { quantumdepth = 16; }; + + graphicsmagick-imagemagick-compat = callPackage ../applications/graphics/graphicsmagick/compat.nix { }; + + grisbi = callPackage ../applications/office/grisbi { gtk = gtk3; }; + + gtkpod = callPackage ../applications/audio/gtkpod { }; + + q4wine = libsForQt5.callPackage ../applications/misc/q4wine { }; + + qrcodegen = callPackage ../development/libraries/qrcodegen { }; + + qrencode = callPackage ../development/libraries/qrencode { }; + + geeqie = callPackage ../applications/graphics/geeqie { }; + + gigedit = callPackage ../applications/audio/gigedit { }; + + gqview = callPackage ../applications/graphics/gqview { }; + + gmpc = callPackage ../applications/audio/gmpc {}; + + gmtp = callPackage ../applications/misc/gmtp {}; + + gnomecast = callPackage ../applications/video/gnomecast { }; + + celluloid = callPackage ../applications/video/celluloid { }; + + gnome-recipes = callPackage ../applications/misc/gnome-recipes { + inherit (gnome) gnome-autoar; + }; + + gollum = callPackage ../applications/misc/gollum { }; + + gonic = callPackage ../servers/gonic { + inherit (darwin.apple_sdk.frameworks) AppKit AudioToolbox; + }; + + googleearth-pro = libsForQt5.callPackage ../applications/misc/googleearth-pro { }; + + google-chrome = callPackage ../applications/networking/browsers/google-chrome { }; + + google-chrome-beta = google-chrome.override { chromium = chromiumBeta; channel = "beta"; }; + + google-chrome-dev = google-chrome.override { chromium = chromiumDev; channel = "dev"; }; + + google-play-music-desktop-player = callPackage ../applications/audio/google-play-music-desktop-player { + inherit (gnome2) GConf; + }; + + gosmore = callPackage ../applications/misc/gosmore { }; + + gpsbabel = libsForQt5.callPackage ../applications/misc/gpsbabel { + inherit (darwin) IOKit; + }; + + gpsbabel-gui = libsForQt5.callPackage ../applications/misc/gpsbabel/gui.nix { }; + + gpscorrelate = callPackage ../applications/misc/gpscorrelate { }; + + gpsd = callPackage ../servers/gpsd { }; + + gpsprune = callPackage ../applications/misc/gpsprune { }; + + gpxlab = libsForQt5.callPackage ../applications/misc/gpxlab { }; + + gpxsee = libsForQt5.callPackage ../applications/misc/gpxsee { }; + + gspell = callPackage ../development/libraries/gspell { }; + + gtk2fontsel = callPackage ../applications/misc/gtk2fontsel { }; + + guardian-agent = callPackage ../tools/networking/guardian-agent { }; + + gv = callPackage ../applications/misc/gv { }; + + gvisor = callPackage ../applications/virtualization/gvisor { + go = go_1_16; + }; + + gvisor-containerd-shim = callPackage ../applications/virtualization/gvisor/containerd-shim.nix { }; + + guvcview = libsForQt5.callPackage ../os-specific/linux/guvcview { }; + + gwc = callPackage ../applications/audio/gwc { }; + + gxmessage = callPackage ../applications/misc/gxmessage { }; + + gxmatcheq-lv2 = callPackage ../applications/audio/gxmatcheq-lv2 { }; + + gxplugins-lv2 = callPackage ../applications/audio/gxplugins-lv2 { }; + + hachoir = with python3Packages; toPythonApplication hachoir; + + hackrf = callPackage ../applications/radio/hackrf { }; + + hacksaw = callPackage ../tools/misc/hacksaw {}; + + hakuneko = callPackage ../tools/misc/hakuneko { }; + + hamster = callPackage ../applications/misc/hamster { }; + + hacpack = callPackage ../tools/compression/hacpack { }; + + hashit = callPackage ../tools/misc/hashit { }; + + hactool = callPackage ../tools/compression/hactool { }; + + hdhomerun-config-gui = callPackage ../applications/video/hdhomerun-config-gui { }; + + hdr-plus = callPackage ../applications/graphics/hdr-plus { + stdenv = clangStdenv; + }; + + heimer = libsForQt5.callPackage ../applications/misc/heimer { }; + + hello = callPackage ../applications/misc/hello { }; + + hello-wayland = callPackage ../applications/graphics/hello-wayland { }; + + hello-unfree = callPackage ../applications/misc/hello-unfree { }; + + helmholtz = callPackage ../applications/audio/pd-plugins/helmholtz { }; + + herbe = callPackage ../applications/misc/herbe { }; + + herbstluftwm = callPackage ../applications/window-managers/herbstluftwm { }; + + hercules = callPackage ../applications/emulators/hercules { }; + + hexchat = callPackage ../applications/networking/irc/hexchat { }; + + hexcurse = callPackage ../applications/editors/hexcurse { }; + + hexdino = callPackage ../applications/editors/hexdino { }; + + hexedit = callPackage ../applications/editors/hexedit { }; + + himalaya = callPackage ../applications/networking/mailreaders/himalaya { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + hipchat = callPackage ../applications/networking/instant-messengers/hipchat { }; + + hivelytracker = callPackage ../applications/audio/hivelytracker { }; + + hledger = haskell.lib.compose.justStaticExecutables haskellPackages.hledger; + hledger-check-fancyassertions = callPackage ../applications/office/hledger-check-fancyassertions { }; + hledger-iadd = haskell.lib.compose.justStaticExecutables haskellPackages.hledger-iadd; + hledger-interest = haskell.lib.compose.justStaticExecutables haskellPackages.hledger-interest; + hledger-ui = haskell.lib.compose.justStaticExecutables haskellPackages.hledger-ui; + hledger-web = haskell.lib.compose.justStaticExecutables haskellPackages.hledger-web; + + homebank = callPackage ../applications/office/homebank { + gtk = gtk3; + }; + + hors = callPackage ../development/tools/hors { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + hover = callPackage ../development/tools/hover { }; + + hovercraft = python3Packages.callPackage ../applications/misc/hovercraft { }; + + howl = callPackage ../applications/editors/howl { }; + + hdl-dump = callPackage ../tools/misc/hdl-dump { }; + + hpack = haskell.lib.compose.justStaticExecutables haskellPackages.hpack; + + hpcg = callPackage ../tools/misc/hpcg { }; + + hpl = callPackage ../tools/misc/hpl { }; + + hpmyroom = libsForQt5.callPackage ../applications/networking/hpmyroom { }; + + ht = callPackage ../applications/editors/ht { }; + + xh = callPackage ../tools/networking/xh { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + hubstaff = callPackage ../applications/misc/hubstaff { }; + + hue-cli = callPackage ../tools/networking/hue-cli { }; + + inherit (nodePackages) hueadm; + + hugin = callPackage ../applications/graphics/hugin { + wxGTK = wxGTK30; + }; + + haunt = callPackage ../applications/misc/haunt { }; + + hugo = callPackage ../applications/misc/hugo { }; + + go-org = callPackage ../applications/misc/go-org { }; + + hushboard = python3.pkgs.callPackage ../applications/audio/hushboard { }; + + hydrogen = qt5.callPackage ../applications/audio/hydrogen { }; + hydrogen_0 = callPackage ../applications/audio/hydrogen/0.nix { }; # Old stable, has GMKit. + + hydroxide = callPackage ../applications/networking/hydroxide { }; + + hyper-haskell-server-with-packages = callPackage ../development/tools/haskell/hyper-haskell/server.nix { + inherit (haskellPackages) ghcWithPackages; + packages = self: with self; []; + }; + + hyper-haskell = callPackage ../development/tools/haskell/hyper-haskell { + hyper-haskell-server = hyper-haskell-server-with-packages.override { + packages = self: with self; [ + hyper-extra diagrams csound-catalog + ]; + }; + extra-packages = [ csound ]; + }; + + hyperledger-fabric = callPackage ../tools/misc/hyperledger-fabric { }; + + indigenous-desktop = callPackage ../applications/networking/feedreaders/indigenous-desktop { }; + + jackline = callPackage ../applications/networking/instant-messengers/jackline { }; + + leftwm = callPackage ../applications/window-managers/leftwm { }; + + levant = callPackage ../applications/networking/cluster/levant { }; + + lwm = callPackage ../applications/window-managers/lwm { }; + + marker = callPackage ../applications/editors/marker { }; + + musikcube = callPackage ../applications/audio/musikcube {}; + + libmt32emu = callPackage ../applications/audio/munt/libmt32emu.nix { }; + + mt32emu-qt = libsForQt5.callPackage ../applications/audio/munt/mt32emu-qt.nix { }; + + mt32emu-smf2wav = callPackage ../applications/audio/munt/mt32emu-smf2wav.nix { }; + + p2pool = callPackage ../applications/misc/p2pool { }; + + pass2csv = python3Packages.callPackage ../tools/security/pass2csv {}; + + pass-secret-service = callPackage ../applications/misc/pass-secret-service { }; + + pinboard = with python3Packages; toPythonApplication pinboard; + + pinboard-notes-backup = haskell.lib.compose.justStaticExecutables haskellPackages.pinboard-notes-backup; + + pixelnuke = callPackage ../applications/graphics/pixelnuke { }; + + pixeluvo = callPackage ../applications/graphics/pixeluvo { }; + + pixinsight = libsForQt5.callPackage ../applications/graphics/pixinsight { }; + + pmbootstrap = python3Packages.callPackage ../tools/misc/pmbootstrap { }; + + shepherd = nodePackages."@nerdwallet/shepherd"; + + skate = callPackage ../applications/misc/skate { }; + + slack = callPackage ../applications/networking/instant-messengers/slack { }; + + slack-cli = callPackage ../tools/networking/slack-cli { }; + + slack-term = callPackage ../applications/networking/instant-messengers/slack-term { }; + + singularity = callPackage ../applications/virtualization/singularity { }; + + spectmorph = callPackage ../applications/audio/spectmorph { }; + + smallwm = callPackage ../applications/window-managers/smallwm { }; + + smooth = callPackage ../development/libraries/smooth { }; + + spectrwm = callPackage ../applications/window-managers/spectrwm { }; + + spot = callPackage ../applications/audio/spot { }; + + spotify-cli-linux = callPackage ../applications/audio/spotify-cli-linux { }; + + spotifyd = callPackage ../applications/audio/spotifyd { + withALSA = stdenv.isLinux; + withPulseAudio = config.pulseaudio or stdenv.isLinux; + withPortAudio = stdenv.isDarwin; + }; + + srain = callPackage ../applications/networking/irc/srain { }; + + super-productivity = callPackage ../applications/office/super-productivity { + electron = electron_17; + }; + + wlroots = wlroots_0_15; + wlroots_0_14 = callPackage ../development/libraries/wlroots/0.14.nix { + inherit (xorg) xcbutilrenderutil; + }; + wlroots_0_15 = callPackage ../development/libraries/wlroots/0.15.nix { + inherit (xorg) xcbutilrenderutil; + }; + + sway-unwrapped = callPackage ../applications/window-managers/sway { }; + sway = callPackage ../applications/window-managers/sway/wrapper.nix { }; + swaybg = callPackage ../applications/window-managers/sway/bg.nix { }; + swayidle = callPackage ../applications/window-managers/sway/idle.nix { }; + swaylock = callPackage ../applications/window-managers/sway/lock.nix { }; + swaywsr = callPackage ../applications/window-managers/sway/wsr.nix { }; + sway-contrib = recurseIntoAttrs (callPackages ../applications/window-managers/sway/contrib.nix { }); + + swaylock-fancy = callPackage ../applications/window-managers/sway/lock-fancy.nix { }; + + swaylock-effects = callPackage ../applications/window-managers/sway/lock-effects.nix { }; + + swaynotificationcenter = callPackage ../applications/misc/swaynotificationcenter { }; + + tiramisu = callPackage ../applications/misc/tiramisu { }; + + rootbar = callPackage ../applications/misc/rootbar {}; + + waybar = callPackage ../applications/misc/waybar {}; + + wbg = callPackage ../applications/misc/wbg { }; + + hikari = callPackage ../applications/window-managers/hikari { + wlroots = wlroots_0_14; + }; + + i3 = callPackage ../applications/window-managers/i3 { + xcb-util-cursor = if stdenv.isDarwin then xcb-util-cursor-HEAD else xcb-util-cursor; + }; + + i3-auto-layout = callPackage ../applications/window-managers/i3/auto-layout.nix { }; + + i3-gaps = callPackage ../applications/window-managers/i3/gaps.nix { }; + + i3altlayout = callPackage ../applications/window-managers/i3/altlayout.nix { }; + + i3-balance-workspace = python3Packages.callPackage ../applications/window-managers/i3/balance-workspace.nix { }; + + i3-easyfocus = callPackage ../applications/window-managers/i3/easyfocus.nix { }; + + i3-layout-manager = callPackage ../applications/window-managers/i3/layout-manager.nix { }; + + i3-ratiosplit = callPackage ../applications/window-managers/i3/i3-ratiosplit.nix { }; + + i3-resurrect = python3Packages.callPackage ../applications/window-managers/i3/i3-resurrect.nix { }; + + i3-swallow = python3Packages.callPackage ../applications/window-managers/i3/swallow.nix { }; + + i3blocks = callPackage ../applications/window-managers/i3/blocks.nix { }; + + i3blocks-gaps = callPackage ../applications/window-managers/i3/blocks-gaps.nix { }; + + i3cat = callPackage ../tools/misc/i3cat { }; + + i3ipc-glib = callPackage ../applications/window-managers/i3/i3ipc-glib.nix { }; + + i3lock = callPackage ../applications/window-managers/i3/lock.nix { + cairo = cairo.override { xcbSupport = true; }; + }; + + i3lock-blur = callPackage ../applications/window-managers/i3/lock-blur.nix { }; + + i3lock-color = callPackage ../applications/window-managers/i3/lock-color.nix { }; + + i3lock-fancy = callPackage ../applications/window-managers/i3/lock-fancy.nix { }; + + i3lock-fancy-rapid = callPackage ../applications/window-managers/i3/lock-fancy-rapid.nix { }; + + i3lock-pixeled = callPackage ../misc/screensavers/i3lock-pixeled { }; + + betterlockscreen = callPackage ../misc/screensavers/betterlockscreen { + inherit (xorg) xdpyinfo xrandr xset; + }; + + multilockscreen = callPackage ../misc/screensavers/multilockscreen { }; + + i3minator = callPackage ../tools/misc/i3minator { }; + + i3nator = callPackage ../tools/misc/i3nator { }; + + i3pystatus = callPackage ../applications/window-managers/i3/pystatus.nix { }; + + i3status = callPackage ../applications/window-managers/i3/status.nix { }; + + i3status-rust = callPackage ../applications/window-managers/i3/status-rust.nix { }; + + i3wsr = callPackage ../applications/window-managers/i3/wsr.nix { }; + + i3-wk-switch = callPackage ../applications/window-managers/i3/wk-switch.nix { }; + + waybox = callPackage ../applications/window-managers/waybox { + wlroots = wlroots_0_14; + }; + + workstyle = callPackage ../applications/window-managers/i3/workstyle.nix { }; + + windowchef = callPackage ../applications/window-managers/windowchef { }; + + wmfocus = callPackage ../applications/window-managers/i3/wmfocus.nix { }; + + wmfs = callPackage ../applications/window-managers/wmfs { }; + + i810switch = callPackage ../os-specific/linux/i810switch { }; + + icewm = callPackage ../applications/window-managers/icewm {}; + + icon-library = callPackage ../applications/graphics/icon-library { }; + + id3v2 = callPackage ../applications/audio/id3v2 { }; + + ideamaker = libsForQt5.callPackage ../applications/misc/ideamaker { }; + + ifenslave = callPackage ../os-specific/linux/ifenslave { }; + + ii = callPackage ../applications/networking/irc/ii { + stdenv = gccStdenv; + }; + + ike = callPackage ../applications/networking/ike { }; + + ikiwiki = callPackage ../applications/misc/ikiwiki { + python = python3; + inherit (perlPackages.override { pkgs = pkgs // { imagemagick = imagemagickBig;}; }) ImageMagick; + }; + + iksemel = callPackage ../development/libraries/iksemel { + texinfo = texinfo6_7; # Uses @setcontentsaftertitlepage, removed in 6.8. + }; + + imag = callPackage ../applications/misc/imag { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + image-roll = callPackage ../applications/graphics/image-roll { }; + + imagej = callPackage ../applications/graphics/imagej { }; + + fiji = callPackage ../applications/graphics/fiji { }; + + imagemagick6_light = imagemagick6.override { + bzip2 = null; + zlib = null; + libX11 = null; + libXext = null; + libXt = null; + fontconfig = null; + freetype = null; + ghostscript = null; + libjpeg = null; + djvulibre = null; + lcms2 = null; + openexr = null; + libpng = null; + liblqr1 = null; + librsvg = null; + libtiff = null; + libxml2 = null; + openjpeg = null; + libwebp = null; + libheif = null; + libde265 = null; + }; + + imagemagick6 = callPackage ../applications/graphics/ImageMagick/6.x.nix { + inherit (darwin.apple_sdk.frameworks) ApplicationServices Foundation; + ghostscript = null; + }; + + imagemagick6Big = imagemagick6.override { inherit ghostscript; }; + + imagemagick_light = lowPrio (imagemagick.override { + bzip2 = null; + zlib = null; + libX11 = null; + libXext = null; + libXt = null; + fontconfig = null; + freetype = null; + ghostscript = null; + libjpeg = null; + djvulibre = null; + lcms2 = null; + openexr = null; + libjxl = null; + libpng = null; + liblqr1 = null; + librsvg = null; + libtiff = null; + libxml2 = null; + openjpeg = null; + libwebp = null; + libheif = null; + }); + + imagemagick = lowPrio (imagemagickBig.override { + ghostscript = null; + }); + + imagemagickBig = lowPrio (callPackage ../applications/graphics/ImageMagick/7.0.nix { + inherit (darwin.apple_sdk.frameworks) ApplicationServices Foundation; + }); + + imagination = callPackage ../applications/video/imagination { }; + + inherit (nodePackages) imapnotify; + + img2pdf = with python3Packages; toPythonApplication img2pdf; + + imgbrd-grabber = qt5.callPackage ../applications/graphics/imgbrd-grabber { + typescript = nodePackages.typescript; + }; + + imgcat = callPackage ../applications/graphics/imgcat { }; + + img-cat = callPackage ../applications/graphics/img-cat { }; + + imgp = python3Packages.callPackage ../applications/graphics/imgp { }; + + index-fm = libsForQt5.callPackage ../applications/misc/index-fm { }; + + inkcut = libsForQt5.callPackage ../applications/misc/inkcut { }; + + inkscape = callPackage ../applications/graphics/inkscape { + lcms = lcms2; + }; + + inkscape-with-extensions = callPackage ../applications/graphics/inkscape/with-extensions.nix { }; + + inkscape-extensions = recurseIntoAttrs (callPackages ../applications/graphics/inkscape/extensions.nix {}); + + inspectrum = callPackage ../applications/radio/inspectrum { }; + + inputplug = callPackage ../tools/X11/inputplug { }; + + ion3 = callPackage ../applications/window-managers/ion-3 { + lua = lua5_1; + }; + + ipe = libsForQt514.callPackage ../applications/graphics/ipe { + ghostscript = ghostscriptX; + texlive = texlive.combine { inherit (texlive) scheme-small; }; + lua5 = lua5_3; + }; + + iptraf = callPackage ../applications/networking/iptraf { }; + + iptraf-ng = callPackage ../applications/networking/iptraf-ng { }; + + irccloud = callPackage ../applications/networking/irc/irccloud { }; + + irssi = callPackage ../applications/networking/irc/irssi { }; + + irssi_fish = callPackage ../applications/networking/irc/irssi/fish { }; + + kirc = callPackage ../applications/networking/irc/kirc { }; + + ir.lv2 = callPackage ../applications/audio/ir.lv2 { }; + + istioctl = callPackage ../applications/networking/cluster/istioctl { }; + + bip = callPackage ../applications/networking/irc/bip { }; + + j4-dmenu-desktop = callPackage ../applications/misc/j4-dmenu-desktop { }; + + jabcode = callPackage ../development/libraries/jabcode { }; + + jabcode-writer = callPackage ../development/libraries/jabcode { + subproject = "writer"; + }; + + jabcode-reader = callPackage ../development/libraries/jabcode { + subproject = "reader"; + }; + + jabref = callPackage ../applications/office/jabref { }; + + jack_capture = callPackage ../applications/audio/jack-capture { }; + + jack_oscrolloscope = callPackage ../applications/audio/jack-oscrolloscope { }; + + jack_rack = callPackage ../applications/audio/jack-rack { }; + + jackmeter = callPackage ../applications/audio/jackmeter { }; + + jackmix = libsForQt5.callPackage ../applications/audio/jackmix { }; + jackmix_jack1 = jackmix.override { jack = jack1; }; + + jaeles = callPackage ../tools/security/jaeles { }; + + jalv = callPackage ../applications/audio/jalv { }; + + jameica = callPackage ../applications/office/jameica { + inherit (darwin.apple_sdk.frameworks) Cocoa; + }; + + jamin = callPackage ../applications/audio/jamin { }; + + japa = callPackage ../applications/audio/japa { }; + + dupd = callPackage ../tools/misc/dupd { }; + + jconvolver = callPackage ../applications/audio/jconvolver { }; + + jdupes = callPackage ../tools/misc/jdupes { }; + + jed = callPackage ../applications/editors/jed { }; + + jedit = callPackage ../applications/editors/jedit { }; + + jgmenu = callPackage ../applications/misc/jgmenu { }; + + jigdo = callPackage ../applications/misc/jigdo { }; + + jitsi = callPackage ../applications/networking/instant-messengers/jitsi { }; + + joe = callPackage ../applications/editors/joe { }; + + josm = callPackage ../applications/misc/josm { }; + + jwm = callPackage ../applications/window-managers/jwm { }; + + jwm-settings-manager = callPackage ../applications/window-managers/jwm/jwm-settings-manager.nix { }; + + k3s = callPackage ../applications/networking/cluster/k3s { }; + + k3sup = callPackage ../applications/networking/cluster/k3sup {}; + + kconf = callPackage ../applications/networking/cluster/kconf { }; + + kail = callPackage ../tools/networking/kail { }; + + kanboard = callPackage ../applications/misc/kanboard { }; + + kapitonov-plugins-pack = callPackage ../applications/audio/kapitonov-plugins-pack { }; + + kapow = libsForQt5.callPackage ../applications/misc/kapow { }; + + kappanhang = callPackage ../applications/radio/kappanhang { }; + + okteta = libsForQt5.callPackage ../applications/editors/okteta { }; + + k4dirstat = libsForQt5.callPackage ../applications/misc/k4dirstat { }; + + kbibtex = libsForQt5.callPackage ../applications/office/kbibtex { }; + + kbst = callPackage ../applications/networking/cluster/kbst { }; + + kaidan = libsForQt5.callPackage ../applications/networking/instant-messengers/kaidan { }; + + kde-gruvbox = callPackage ../data/themes/kde-gruvbox { }; + + kdeltachat = libsForQt5.callPackage ../applications/networking/instant-messengers/kdeltachat { }; + + kdevelop-pg-qt = libsForQt5.callPackage ../applications/editors/kdevelop5/kdevelop-pg-qt.nix { }; + + kdevelop-unwrapped = libsForQt5.callPackage ../applications/editors/kdevelop5/kdevelop.nix { + llvmPackages = llvmPackages_10; + }; + + kdev-php = libsForQt5.callPackage ../applications/editors/kdevelop5/kdev-php.nix { }; + kdev-python = libsForQt5.callPackage ../applications/editors/kdevelop5/kdev-python.nix { + python = python3; + }; + + kdevelop = libsForQt5.callPackage ../applications/editors/kdevelop5/wrapper.nix { }; + + kega-fusion = pkgsi686Linux.callPackage ../applications/emulators/kega-fusion { }; + + kepubify = callPackage ../tools/misc/kepubify { }; + + kermit = callPackage ../tools/misc/kermit { }; + + kexi = libsForQt514.callPackage ../applications/office/kexi { }; + + kgt = callPackage ../development/tools/kgt { + inherit (skawarePackages) cleanPackaging; + }; + + khronos = callPackage ../applications/office/khronos { }; + + keyfinder = libsForQt5.callPackage ../applications/audio/keyfinder { }; + + keyfinder-cli = callPackage ../applications/audio/keyfinder-cli { }; + + kgraphviewer = libsForQt5.callPackage ../applications/graphics/kgraphviewer { }; + + khal = callPackage ../applications/misc/khal { }; + + khard = callPackage ../applications/misc/khard { }; + + kid3 = libsForQt5.callPackage ../applications/audio/kid3 { }; + + kile = libsForQt5.callPackage ../applications/editors/kile { }; + + kitsas = libsForQt5.callPackage ../applications/office/kitsas { }; + + kiwix = libsForQt5.callPackage ../applications/misc/kiwix { }; + + klayout = libsForQt5.callPackage ../applications/misc/klayout { }; + + klee = callPackage ../applications/science/logic/klee { }; + + kmetronome = libsForQt5.callPackage ../applications/audio/kmetronome { }; + + kmplayer = libsForQt5.callPackage ../applications/video/kmplayer { }; + + kmymoney = libsForQt5.callPackage ../applications/office/kmymoney { }; + + kn = callPackage ../applications/networking/cluster/kn { }; + + kodestudio = callPackage ../applications/editors/kodestudio { }; + + kondo = callPackage ../applications/misc/kondo { }; + + konversation = libsForQt5.callPackage ../applications/networking/irc/konversation { }; + + kooha = callPackage ../applications/video/kooha { }; + + kotatogram-desktop = libsForQt5.callPackage ../applications/networking/instant-messengers/telegram/kotatogram-desktop { }; + + kpt = callPackage ../applications/networking/cluster/kpt { }; + + krane = callPackage ../applications/networking/cluster/krane { }; + + krita = libsForQt5.callPackage ../applications/graphics/krita { }; + + krusader = libsForQt5.callPackage ../applications/misc/krusader { }; + + ksuperkey = callPackage ../tools/X11/ksuperkey { }; + + ktimetracker = libsForQt5.callPackage ../applications/office/ktimetracker { }; + + kubedb-cli = callPackage ../applications/networking/cluster/kubedb-cli { }; + + kubecfg = callPackage ../applications/networking/cluster/kubecfg { }; + + kube-score = callPackage ../applications/networking/cluster/kube-score { }; + + kubectl-evict-pod = callPackage ../applications/networking/cluster/kubectl-evict-pod { }; + + kubeval = callPackage ../applications/networking/cluster/kubeval { }; + + kubeval-schema = callPackage ../applications/networking/cluster/kubeval/schema.nix { }; + + kubernetes = callPackage ../applications/networking/cluster/kubernetes { }; + kubectl = callPackage ../applications/networking/cluster/kubernetes/kubectl.nix { }; + + kubemqctl = callPackage ../applications/networking/cluster/kubemqctl { }; + + kubeseal = callPackage ../applications/networking/cluster/kubeseal { }; + + kubernix = callPackage ../applications/networking/cluster/kubernix { }; + + kubeconform = callPackage ../applications/networking/cluster/kubeconform { }; + + kubecolor = callPackage ../applications/networking/cluster/kubecolor { }; + + kubebuilder = callPackage ../applications/networking/cluster/kubebuilder { }; + + kuttl = callPackage ../applications/networking/cluster/kuttl { }; + + kubectl-doctor = callPackage ../applications/networking/cluster/kubectl-doctor { }; + + kubectl-example = callPackage ../applications/networking/cluster/kubectl-example { }; + + kubectl-tree = callPackage ../applications/networking/cluster/kubectl-tree { }; + + kubeless = callPackage ../applications/networking/cluster/kubeless { }; + + kubelogin = callPackage ../applications/networking/cluster/kubelogin { }; + + kubelogin-oidc = callPackage ../applications/networking/cluster/kubelogin-oidc { }; + + k9s = callPackage ../applications/networking/cluster/k9s { }; + + pgo-client = callPackage ../applications/networking/cluster/pgo-client { }; + + popeye = callPackage ../applications/networking/cluster/popeye { }; + + kube-capacity = callPackage ../applications/networking/cluster/kube-capacity { }; + + fluxctl = callPackage ../applications/networking/cluster/fluxctl { }; + + fluxcd = callPackage ../applications/networking/cluster/fluxcd { }; + + linkerd = callPackage ../applications/networking/cluster/linkerd { }; + linkerd_edge = callPackage ../applications/networking/cluster/linkerd/edge.nix { }; + linkerd_stable = linkerd; + + kuma = callPackage ../applications/networking/cluster/kuma { isFull = true; }; + kuma-experimental = callPackage ../applications/networking/cluster/kuma { + isFull = true; + enableGateway = true; + pname = "kuma-experimental"; + }; + kumactl = callPackage ../applications/networking/cluster/kuma { + components = ["kumactl"]; + pname = "kumactl"; + }; + kuma-cp = callPackage ../applications/networking/cluster/kuma { + components = ["kuma-cp"]; + pname = "kuma-cp"; + }; + kuma-dp = callPackage ../applications/networking/cluster/kuma { + components = ["kuma-dp"]; + pname = "kuma-dp"; + }; + kuma-prometheus-sd = callPackage ../applications/networking/cluster/kuma { + components = ["kuma-prometheus-sd"]; + pname = "kuma-prometheus-sd"; + }; + + kile-wl = callPackage ../applications/misc/kile-wl { }; + + kiln = callPackage ../applications/misc/kiln { }; + + kubernetes-controller-tools = callPackage ../development/tools/kubernetes-controller-tools { }; + + kubernetes-helm = callPackage ../applications/networking/cluster/helm { }; + + wrapHelm = callPackage ../applications/networking/cluster/helm/wrapper.nix { }; + + kubernetes-helm-wrapped = wrapHelm kubernetes-helm {}; + + kubernetes-helmPlugins = dontRecurseIntoAttrs (callPackage ../applications/networking/cluster/helm/plugins { }); + + chart-testing = callPackage ../applications/networking/cluster/helm/chart-testing { }; + + helm-docs = callPackage ../applications/networking/cluster/helm-docs { }; + + kubetail = callPackage ../applications/networking/cluster/kubetail { } ; + + kup = libsForQt5.callPackage ../applications/misc/kup { }; + + kupfer = callPackage ../applications/misc/kupfer { }; + + kvirc = libsForQt514.callPackage ../applications/networking/irc/kvirc { }; + + lambda-delta = callPackage ../applications/emulators/lambda-delta { }; + + lame = callPackage ../development/libraries/lame { }; + + labwc = callPackage ../applications/window-managers/labwc { + wlroots = wlroots_0_15; + }; + + larswm = callPackage ../applications/window-managers/larswm { }; + + lash = callPackage ../applications/audio/lash { }; + + ladspaH = callPackage ../applications/audio/ladspa-sdk/ladspah.nix { }; + + ladspaPlugins = callPackage ../applications/audio/ladspa-plugins { + fftw = fftwSinglePrec; + }; + + ladspa-sdk = callPackage ../applications/audio/ladspa-sdk { }; + + lazpaint = callPackage ../applications/graphics/lazpaint { }; + + caps = callPackage ../applications/audio/caps { }; + + lbdb = callPackage ../tools/misc/lbdb { abook = null; gnupg = null; goobook = null; khard = null; mu = null; }; + + lbry = callPackage ../applications/video/lbry { }; + + lbzip2 = callPackage ../tools/compression/lbzip2 { }; + + lci = callPackage ../applications/science/logic/lci {}; + + lemonbar = callPackage ../applications/window-managers/lemonbar { }; + + lemonbar-xft = callPackage ../applications/window-managers/lemonbar/xft.nix { }; + + legit = callPackage ../applications/version-management/git-and-tools/legit { }; + + lens = callPackage ../applications/networking/cluster/lens { }; + + leo-editor = libsForQt5.callPackage ../applications/editors/leo-editor { }; + + libowfat = callPackage ../development/libraries/libowfat { }; + + libowlevelzs = callPackage ../development/libraries/libowlevelzs { }; + + librecad = libsForQt514.callPackage ../applications/misc/librecad { + boost = boost175; + }; + + libreoffice = if stdenv.isDarwin + then callPackage ../applications/office/libreoffice/darwin.nix {} + else hiPrio libreoffice-still; + libreoffice-unwrapped = (hiPrio libreoffice-still).libreoffice; + + libreoffice-args = { + inherit (perlPackages) ArchiveZip IOCompress; + zip = zip.override { enableNLS = false; }; + fontsConf = makeFontsConf { + fontDirectories = [ + carlito dejavu_fonts + freefont_ttf xorg.fontmiscmisc + liberation_ttf_v1 + liberation_ttf_v2 + ]; + }; + clucene_core = clucene_core_2; + lcms = lcms2; + harfbuzz = harfbuzz.override { + withIcu = true; withGraphite2 = true; + }; + }; + + libreoffice-qt = lowPrio (callPackage ../applications/office/libreoffice/wrapper.nix { + libreoffice = libsForQt5.callPackage ../applications/office/libreoffice + (libreoffice-args // { + kdeIntegration = true; + variant = "fresh"; + }); + }); + + libreoffice-fresh = lowPrio (callPackage ../applications/office/libreoffice/wrapper.nix { + libreoffice = callPackage ../applications/office/libreoffice + (libreoffice-args // { + variant = "fresh"; + }); + }); + libreoffice-fresh-unwrapped = libreoffice-fresh.libreoffice; + + libreoffice-still = lowPrio (callPackage ../applications/office/libreoffice/wrapper.nix { + libreoffice = callPackage ../applications/office/libreoffice + (libreoffice-args // { + variant = "still"; + }); + }); + libreoffice-still-unwrapped = libreoffice-still.libreoffice; + + libresprite = callPackage ../applications/editors/libresprite { + inherit (darwin.apple_sdk.frameworks) AppKit Cocoa Foundation; + }; + + libvmi = callPackage ../development/libraries/libvmi { }; + + libutp = callPackage ../applications/networking/p2p/libutp { }; + + lifelines = callPackage ../applications/misc/lifelines { }; + + liferea = callPackage ../applications/networking/newsreaders/liferea { }; + + lightworks = callPackage ../applications/video/lightworks { }; + + lingot = callPackage ../applications/audio/lingot { }; + + littlegptracker = callPackage ../applications/audio/littlegptracker { + inherit (darwin.apple_sdk.frameworks) Foundation; + }; + + ledger = callPackage ../applications/office/ledger { }; + + ledger-autosync = callPackage ../applications/office/ledger-autosync { }; + + ledger-web = callPackage ../applications/office/ledger-web { }; + + ledger2beancount = callPackage ../tools/text/ledger2beancount { }; + + lightburn = libsForQt5.callPackage ../applications/graphics/lightburn { }; + + lighthouse = callPackage ../applications/misc/lighthouse { }; + + lighthouse-steamvr = callPackage ../tools/misc/lighthouse-steamvr { }; + + lighttable = callPackage ../applications/editors/lighttable {}; + + libdsk = callPackage ../applications/emulators/libdsk { }; + + liblinphone = callPackage ../development/libraries/liblinphone { }; + + links2 = callPackage ../applications/networking/browsers/links2 { }; + + linphone = libsForQt5.callPackage ../applications/networking/instant-messengers/linphone { }; + + linuxsampler = callPackage ../applications/audio/linuxsampler { }; + + llpp = callPackage ../applications/misc/llpp { + inherit (ocaml-ng.ocamlPackages_4_09) ocaml; + }; + + lmms = libsForQt5.callPackage ../applications/audio/lmms { + lame = null; + libsoundio = null; + portaudio = null; + }; + + losslesscut-bin = callPackage ../applications/video/losslesscut-bin { }; + + loxodo = callPackage ../applications/misc/loxodo { }; + + lsd2dsl = libsForQt5.callPackage ../applications/misc/lsd2dsl { }; + + lrzsz = callPackage ../tools/misc/lrzsz { }; + + lsp-plugins = callPackage ../applications/audio/lsp-plugins { php = php74; }; + + luminanceHDR = libsForQt5.callPackage ../applications/graphics/luminance-hdr { }; + + lxdvdrip = callPackage ../applications/video/lxdvdrip { }; + + handbrake = callPackage ../applications/video/handbrake { + inherit (darwin.apple_sdk.frameworks) AudioToolbox Foundation VideoToolbox; + inherit (darwin) libobjc; + }; + + handlr = callPackage ../tools/misc/handlr { }; + + jftui = callPackage ../applications/video/jftui { }; + + lime = callPackage ../development/libraries/lime { }; + + luakit = callPackage ../applications/networking/browsers/luakit { + inherit (luajitPackages) luafilesystem; + }; + + lookatme = callPackage ../tools/misc/lookatme {}; + + looking-glass-client = callPackage ../applications/virtualization/looking-glass-client { }; + + ltc-tools = callPackage ../applications/audio/ltc-tools { }; + + lscolors = callPackage ../applications/misc/lscolors { }; + + lucky-commit = callPackage ../applications/version-management/git-and-tools/lucky-commit { + inherit (darwin.apple_sdk.frameworks) OpenCL; + }; + + luddite = with python3Packages; toPythonApplication luddite; + + lumail = callPackage ../applications/networking/mailreaders/lumail { + lua = lua5_1; + }; + + luppp = callPackage ../applications/audio/luppp { }; + + lutris-unwrapped = python3.pkgs.callPackage ../applications/misc/lutris { + inherit (gnome) gnome-desktop; + wine = wineWowPackages.staging; + }; + lutris = callPackage ../applications/misc/lutris/fhsenv.nix { + buildFHSUserEnv = buildFHSUserEnvBubblewrap; + }; + lutris-free = lutris.override { + steamSupport = false; + }; + + lv2bm = callPackage ../applications/audio/lv2bm { }; + + lv2-cpp-tools = callPackage ../applications/audio/lv2-cpp-tools { }; + + lxi-tools = callPackage ../tools/networking/lxi-tools { }; + + lynx = callPackage ../applications/networking/browsers/lynx { }; + + lyrebird = callPackage ../applications/audio/lyrebird { }; + + lyx = libsForQt5.callPackage ../applications/misc/lyx { }; + + m4acut = callPackage ../applications/audio/m4acut { }; + + mac = callPackage ../development/libraries/mac { }; + + macdylibbundler = callPackage ../development/tools/misc/macdylibbundler { inherit (darwin) cctools; }; + + magic-wormhole = with python3Packages; toPythonApplication magic-wormhole; + + magnetophonDSP = lib.recurseIntoAttrs { + CharacterCompressor = callPackage ../applications/audio/magnetophonDSP/CharacterCompressor { }; + CompBus = callPackage ../applications/audio/magnetophonDSP/CompBus { }; + ConstantDetuneChorus = callPackage ../applications/audio/magnetophonDSP/ConstantDetuneChorus { }; + faustCompressors = callPackage ../applications/audio/magnetophonDSP/faustCompressors { }; + LazyLimiter = callPackage ../applications/audio/magnetophonDSP/LazyLimiter { }; + MBdistortion = callPackage ../applications/audio/magnetophonDSP/MBdistortion { }; + pluginUtils = callPackage ../applications/audio/magnetophonDSP/pluginUtils { }; + RhythmDelay = callPackage ../applications/audio/magnetophonDSP/RhythmDelay { }; + VoiceOfFaust = callPackage ../applications/audio/magnetophonDSP/VoiceOfFaust { }; + shelfMultiBand = callPackage ../applications/audio/magnetophonDSP/shelfMultiBand { }; + }; + + makeself = callPackage ../applications/misc/makeself { }; + + mako = callPackage ../applications/misc/mako { }; + + mandelbulber = libsForQt5.callPackage ../applications/graphics/mandelbulber { }; + + mapmap = libsForQt5.callPackage ../applications/video/mapmap { }; + + marathonctl = callPackage ../tools/virtualization/marathonctl { } ; + + markdown-pp = callPackage ../tools/text/markdown-pp { }; + + mark = callPackage ../tools/text/mark { }; + + markets = callPackage ../applications/misc/markets { }; + + markmind = callPackage ../applications/misc/markmind { + electron = electron_9; + }; + + marp = callPackage ../applications/office/marp { }; + + magnetico = callPackage ../applications/networking/p2p/magnetico { }; + + mastodon-bot = nodePackages.mastodon-bot; + + matchbox = callPackage ../applications/window-managers/matchbox { }; + + matrixcli = callPackage ../applications/networking/instant-messengers/matrixcli { + inherit (python3Packages) buildPythonApplication buildPythonPackage + pygobject3 pytest-runner requests responses pytest python-olm + canonicaljson; + }; + + matrix-commander = callPackage ../applications/networking/instant-messengers/matrix-commander { }; + + matrix-dl = callPackage ../applications/networking/instant-messengers/matrix-dl { }; + + matrix-recorder = callPackage ../applications/networking/instant-messengers/matrix-recorder {}; + + mblaze = callPackage ../applications/networking/mailreaders/mblaze { }; + + mbrola = callPackage ../applications/audio/mbrola { }; + + mcomix3 = callPackage ../applications/graphics/mcomix3 {}; + + mcpp = callPackage ../development/compilers/mcpp { }; + + mda_lv2 = callPackage ../applications/audio/mda-lv2 { }; + + mdzk = callPackage ../applications/misc/mdzk { + inherit (darwin.apple_sdk.frameworks) CoreServices; + }; + + mediaelch = libsForQt5.callPackage ../applications/misc/mediaelch { }; + + mediainfo = callPackage ../applications/misc/mediainfo { }; + + mediainfo-gui = callPackage ../applications/misc/mediainfo-gui { }; + + mediathekview = callPackage ../applications/video/mediathekview { jre = adoptopenjdk-hotspot-bin-16; }; + + megapixels = callPackage ../applications/graphics/megapixels { }; + + meteo = callPackage ../applications/networking/weather/meteo { }; + + meld = callPackage ../applications/version-management/meld { }; + + meli = callPackage ../applications/networking/mailreaders/meli { }; + + melmatcheq.lv2 = callPackage ../applications/audio/melmatcheq.lv2 { }; + + melonDS = libsForQt5.callPackage ../applications/emulators/melonDS { }; + + meme-image-generator = callPackage ../applications/graphics/meme-image-generator { }; + + meme-suite = callPackage ../applications/science/biology/meme-suite { }; + + # Needs qtwebkit which is broken on qt5.15 + mendeley = libsForQt514.callPackage ../applications/office/mendeley { + gconf = gnome2.GConf; + }; + + menumaker = callPackage ../applications/misc/menumaker { }; + + menyoki = callPackage ../applications/graphics/menyoki { + inherit (xorg) libX11 libXrandr; + inherit (darwin.apple_sdk.frameworks) AppKit; + }; + + mercurial = callPackage ../applications/version-management/mercurial { + inherit (darwin.apple_sdk.frameworks) ApplicationServices; + }; + + mercurialFull = mercurial.override { fullBuild = true; }; + + merkaartor = libsForQt5.callPackage ../applications/misc/merkaartor { }; + + mepo = callPackage ../applications/misc/mepo { + zig = zig_0_8_1; + }; + + meshcentral = callPackage ../tools/admin/meshcentral { }; + + meshlab = libsForQt5.callPackage ../applications/graphics/meshlab { }; + + metadata-cleaner = callPackage ../applications/misc/metadata-cleaner { }; + + metersLv2 = callPackage ../applications/audio/meters_lv2 { }; + + mhwaveedit = callPackage ../applications/audio/mhwaveedit { + autoreconfHook = buildPackages.autoreconfHook269; + }; + + michabo = libsForQt5.callPackage ../applications/misc/michabo { }; + + mid2key = callPackage ../applications/audio/mid2key { }; + + midori-unwrapped = callPackage ../applications/networking/browsers/midori { }; + midori = wrapFirefox midori-unwrapped { }; + + mikmod = callPackage ../applications/audio/mikmod { }; + + miniaudicle = callPackage ../applications/audio/miniaudicle { }; + + minicom = callPackage ../tools/misc/minicom { }; + + minigalaxy = callPackage ../applications/misc/minigalaxy { }; + + minimodem = callPackage ../applications/radio/minimodem { }; + + minidjvu = callPackage ../applications/graphics/minidjvu { }; + + minikube = callPackage ../applications/networking/cluster/minikube { + inherit (darwin.apple_sdk.frameworks) vmnet; + }; + + minishift = callPackage ../applications/networking/cluster/minishift { }; + + minitube = libsForQt5.callPackage ../applications/video/minitube { }; + + mimic = callPackage ../applications/audio/mimic { }; + + meh = callPackage ../applications/graphics/meh {}; + + mixxx = libsForQt5.callPackage ../applications/audio/mixxx { }; + + mjpg-streamer = callPackage ../applications/video/mjpg-streamer { }; + + mldonkey = callPackage ../applications/networking/p2p/mldonkey { + ocamlPackages = ocaml-ng.ocamlPackages_4_08; + }; + + mlvwm = callPackage ../applications/window-managers/mlvwm { }; + + MMA = callPackage ../applications/audio/MMA { }; + + mmex = callPackage ../applications/office/mmex { + wxGTK30 = wxGTK30.override { + withWebKit = true; + withGtk2 = false; + }; + }; + + mmsd = callPackage ../tools/networking/mmsd { }; + + mmtc = callPackage ../applications/audio/mmtc { }; + + mnamer = callPackage ../applications/misc/mnamer { }; + + moc = callPackage ../applications/audio/moc { }; + + mod-arpeggiator-lv2 = callPackage ../applications/audio/mod-arpeggiator-lv2 { }; + + mod-distortion = callPackage ../applications/audio/mod-distortion { }; + + xmr-stak = callPackage ../applications/misc/xmr-stak { + stdenvGcc6 = gcc6Stdenv; + }; + + xmrig = callPackage ../applications/misc/xmrig { }; + + xmrig-mo = callPackage ../applications/misc/xmrig/moneroocean.nix { }; + + xmrig-proxy = callPackage ../applications/misc/xmrig/proxy.nix { }; + + molot-lite = callPackage ../applications/audio/molot-lite { }; + + monkeysAudio = callPackage ../applications/audio/monkeys-audio { }; + + monkeysphere = callPackage ../tools/security/monkeysphere { }; + + monotone = callPackage ../applications/version-management/monotone { + lua = lua5; + boost = boost170; + }; + + monotoneViz = callPackage ../applications/version-management/monotone-viz { + ocamlPackages = ocaml-ng.ocamlPackages_4_01_0; + }; + + monitor = callPackage ../applications/system/monitor { + libXNVCtrl = linuxPackages.nvidia_x11.settings.libXNVCtrl; + }; + + moolticute = libsForQt5.callPackage ../applications/misc/moolticute { }; + + moonlight-embedded = callPackage ../applications/misc/moonlight-embedded { }; + + moonlight-qt = libsForQt5.callPackage ../applications/misc/moonlight-qt { }; + + mooSpace = callPackage ../applications/audio/mooSpace { }; + + mop = callPackage ../applications/misc/mop { }; + + mopidyPackages = callPackages ../applications/audio/mopidy { + python = python3; + }; + + inherit (mopidyPackages) + mopidy + mopidy-iris + mopidy-jellyfin + mopidy-local + mopidy-moped + mopidy-mopify + mopidy-mpd + mopidy-mpris + mopidy-muse + mopidy-musicbox-webclient + mopidy-podcast + mopidy-scrobbler + mopidy-somafm + mopidy-soundcloud + mopidy-spotify + mopidy-spotify-tunigo + mopidy-subidy + mopidy-tunein + mopidy-youtube + mopidy-ytmusic; + + motif = callPackage ../development/libraries/motif { }; + + mousai = callPackage ../applications/audio/mousai { }; + + mozjpeg = callPackage ../applications/graphics/mozjpeg { }; + + edgetx = libsForQt5.callPackage ../applications/misc/edgetx { }; + + easytag = callPackage ../applications/audio/easytag { }; + + mp3gain = callPackage ../applications/audio/mp3gain { }; + + mp3info = callPackage ../applications/audio/mp3info { }; + + mp3splt = callPackage ../applications/audio/mp3splt { }; + + mp3val = callPackage ../applications/audio/mp3val { }; + + mpc123 = callPackage ../applications/audio/mpc123 { }; + + mpg123 = callPackage ../applications/audio/mpg123 { + inherit (darwin.apple_sdk.frameworks) AudioUnit AudioToolbox; + jack = libjack2; + }; + + mpg321 = callPackage ../applications/audio/mpg321 { }; + + mpc-cli = callPackage ../applications/audio/mpc { + inherit (python3Packages) sphinx; + }; + + clerk = callPackage ../applications/audio/clerk { }; + + jujutsu = callPackage ../applications/version-management/jujutsu { + inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration; + inherit (darwin) libiconv; + }; + + nbstripout = callPackage ../applications/version-management/nbstripout { python = python3; }; + + ncmpc = callPackage ../applications/audio/ncmpc { }; + + ncmpcpp = callPackage ../applications/audio/ncmpcpp { }; + + pragha = libsForQt5.callPackage ../applications/audio/pragha { }; + + rofi-mpd = callPackage ../applications/audio/rofi-mpd { }; + + rofi-calc = callPackage ../applications/science/math/rofi-calc { }; + + rofi-emoji = callPackage ../applications/misc/rofi-emoji { }; + + rofi-file-browser = callPackage ../applications/misc/rofi-file-browser { }; + + rofi-power-menu = callPackage ../applications/misc/rofi-power-menu { }; + + rofi-pulse-select = callPackage ../applications/audio/rofi-pulse-select { }; + + rofi-vpn = callPackage ../applications/networking/rofi-vpn { }; + + ympd = callPackage ../applications/audio/ympd { }; + + # a somewhat more maintained fork of ympd + mympd = callPackage ../applications/audio/mympd { }; + + nload = callPackage ../applications/networking/nload { }; + + nali = callPackage ../applications/networking/nali { }; + + normalize = callPackage ../applications/audio/normalize { }; + + mailspring = callPackage ../applications/networking/mailreaders/mailspring {}; + + mm = callPackage ../applications/networking/instant-messengers/mm { }; + + mm-common = callPackage ../development/libraries/mm-common { }; + + mpc-qt = libsForQt5.callPackage ../applications/video/mpc-qt { }; + + mps-youtube = callPackage ../applications/misc/mps-youtube { }; + + mplayer = callPackage ../applications/video/mplayer ({ + libdvdnav = libdvdnav_4_2_1; + } // (config.mplayer or {})); + + mpv-unwrapped = callPackage ../applications/video/mpv { + inherit lua; + inherit (darwin.apple_sdk.frameworks) CoreFoundation Cocoa CoreAudio MediaPlayer; + }; + + # Wraps without trigerring a rebuild + wrapMpv = callPackage ../applications/video/mpv/wrapper.nix { }; + mpv = wrapMpv mpv-unwrapped {}; + + mpvScripts = recurseIntoAttrs { + autoload = callPackage ../applications/video/mpv/scripts/autoload.nix {}; + convert = callPackage ../applications/video/mpv/scripts/convert.nix {}; + mpris = callPackage ../applications/video/mpv/scripts/mpris.nix {}; + mpv-playlistmanager = callPackage ../applications/video/mpv/scripts/mpv-playlistmanager.nix {}; + mpvacious = callPackage ../applications/video/mpv/scripts/mpvacious.nix {}; + simple-mpv-webui = callPackage ../applications/video/mpv/scripts/simple-mpv-webui.nix {}; + sponsorblock = callPackage ../applications/video/mpv/scripts/sponsorblock.nix {}; + thumbnail = callPackage ../applications/video/mpv/scripts/thumbnail.nix { }; + youtube-quality = callPackage ../applications/video/mpv/scripts/youtube-quality.nix { }; + cutter = callPackage ../applications/video/mpv/scripts/cutter.nix { }; + }; + + mrpeach = callPackage ../applications/audio/pd-plugins/mrpeach { }; + + mtpaint = callPackage ../applications/graphics/mtpaint { }; + + mu-repo = python3Packages.callPackage ../applications/misc/mu-repo { }; + + mucommander = callPackage ../applications/misc/mucommander { }; + + multimarkdown = callPackage ../tools/typesetting/multimarkdown { }; + + multimon-ng = callPackage ../applications/radio/multimon-ng { }; + + murmur = (callPackages ../applications/networking/mumble { + avahi = avahi-compat; + pulseSupport = config.pulseaudio or false; + iceSupport = config.murmur.iceSupport or true; + grpcSupport = config.murmur.grpcSupport or true; + }).murmur; + + mumble = (callPackages ../applications/networking/mumble { + avahi = avahi-compat; + jackSupport = config.mumble.jackSupport or false; + speechdSupport = config.mumble.speechdSupport or false; + }).mumble; + + mumble_overlay = callPackage ../applications/networking/mumble/overlay.nix { + mumble_i686 = if stdenv.hostPlatform.system == "x86_64-linux" + then pkgsi686Linux.mumble + else null; + }; + + mup = callPackage ../applications/audio/mup { + autoreconfHook = buildPackages.autoreconfHook269; + }; + + # TODO: we should probably merge these 2 + musescore = + if stdenv.isDarwin then + callPackage ../applications/audio/musescore/darwin.nix { } + else + libsForQt5.callPackage ../applications/audio/musescore { }; + + mmh = callPackage ../applications/networking/mailreaders/mmh { }; + mutt = callPackage ../applications/networking/mailreaders/mutt { }; + mutt-with-sidebar = mutt.override { + withSidebar = true; + }; + mutt-wizard = callPackage ../tools/misc/mutt-wizard { }; + + mwic = callPackage ../applications/misc/mwic { + pythonPackages = python3Packages; + }; + + n8n = callPackage ../applications/networking/n8n {}; + + neomutt = callPackage ../applications/networking/mailreaders/neomutt { }; + + natron = callPackage ../applications/video/natron { }; + + natural-docs = callPackage ../applications/misc/natural-docs { }; + + neocomp = callPackage ../applications/window-managers/neocomp { }; + + nerd-font-patcher = callPackage ../applications/misc/nerd-font-patcher { }; + + newsflash = callPackage ../applications/networking/feedreaders/newsflash { }; + + nicotine-plus = callPackage ../applications/networking/soulseek/nicotine-plus { }; + + nice-dcv-client = callPackage ../applications/networking/remote/nice-dcv-client { }; + + nixos-shell = callPackage ../tools/virtualization/nixos-shell {}; + + noaa-apt = callPackage ../applications/radio/noaa-apt { }; + + node-problem-detector = callPackage ../applications/networking/cluster/node-problem-detector { }; + + ninjas2 = callPackage ../applications/audio/ninjas2 {}; + + nncp = callPackage ../tools/misc/nncp { }; + + notion = callPackage ../applications/window-managers/notion { }; + + nootka = qt5.callPackage ../applications/audio/nootka { }; + nootka-unstable = qt5.callPackage ../applications/audio/nootka/unstable.nix { }; + + novnc = callPackage ../applications/networking/novnc { }; + + nwg-drawer = callPackage ../applications/misc/nwg-drawer { }; + + nwg-launchers = callPackage ../applications/misc/nwg-launchers { }; + + nwg-menu = callPackage ../applications/misc/nwg-menu { }; + + nwg-panel = callPackage ../applications/misc/nwg-panel { }; + + nwg-wrapper = callPackage ../applications/misc/nwg-wrapper { }; + + ocenaudio = callPackage ../applications/audio/ocenaudio { }; + + odo = callPackage ../applications/networking/cluster/odo { }; + + onlyoffice-bin = callPackage ../applications/office/onlyoffice-bin { }; + + open-policy-agent = callPackage ../development/tools/open-policy-agent { }; + + openshift = callPackage ../applications/networking/cluster/openshift { }; + + opsdroid = callPackage ../applications/networking/opsdroid { }; + + oroborus = callPackage ../applications/window-managers/oroborus {}; + + osm2pgsql = callPackage ../tools/misc/osm2pgsql { }; + + ostinato = libsForQt5.callPackage ../applications/networking/ostinato { }; + + p4 = callPackage ../applications/version-management/p4 { }; + # Broken with Qt5.15 because qtwebkit is broken with it + p4v = libsForQt514.callPackage ../applications/version-management/p4v { }; + + partio = callPackage ../development/libraries/partio {}; + + pc-ble-driver = callPackage ../development/libraries/pc-ble-driver { + inherit (darwin.apple_sdk.frameworks) IOKit; + }; + + pbis-open = callPackage ../tools/security/pbis { }; + + pcmanfm = callPackage ../applications/misc/pcmanfm { }; + + pcmanfm-qt = lxqt.pcmanfm-qt; + + pcmanx-gtk2 = callPackage ../applications/misc/pcmanx-gtk2 { }; + + pdfmixtool = libsForQt5.callPackage ../applications/office/pdfmixtool { }; + + pig = callPackage ../applications/networking/cluster/pig { }; + + pijul = callPackage ../applications/version-management/pijul { }; + + pijuice = with python3Packages; toPythonApplication pijuice; + + pinegrow = callPackage ../applications/editors/pinegrow { }; + + ping = callPackage ../applications/networking/ping { }; + + piper = callPackage ../os-specific/linux/piper { }; + + pipe-viewer = perlPackages.callPackage ../applications/video/pipe-viewer {}; + + plank = callPackage ../applications/misc/plank { }; + + playonlinux = callPackage ../applications/misc/playonlinux + { stdenv = stdenv_32bit; }; + + pleroma-bot = python3Packages.callPackage ../development/python-modules/pleroma-bot { }; + + polybar = callPackage ../applications/misc/polybar { }; + + polybarFull = callPackage ../applications/misc/polybar { + alsaSupport = true; + githubSupport = true; + mpdSupport = true; + pulseSupport = true; + iwSupport = false; + nlSupport = true; + i3Support = true; + i3GapsSupport = false; + }; + + yambar = callPackage ../applications/misc/yambar { }; + + polyphone = libsForQt514.callPackage ../applications/audio/polyphone { }; + + portfolio = callPackage ../applications/office/portfolio { + jre = openjdk11; + }; + + prevo = callPackage ../applications/misc/prevo { }; + prevo-data = callPackage ../applications/misc/prevo/data.nix { }; + prevo-tools = callPackage ../applications/misc/prevo/tools.nix { }; + + psi-notify = callPackage ../applications/misc/psi-notify { }; + + ptex = callPackage ../development/libraries/ptex {}; + + pyright = nodePackages.pyright; + + qbec = callPackage ../applications/networking/cluster/qbec { }; + + qemacs = callPackage ../applications/editors/qemacs { }; + + rqbit = callPackage ../applications/networking/p2p/rqbit { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + rssguard = libsForQt5.callPackage ../applications/networking/feedreaders/rssguard { }; + + scudcloud = callPackage ../applications/networking/instant-messengers/scudcloud { }; + + shotcut = libsForQt5.callPackage ../applications/video/shotcut { }; + + shogun = callPackage ../applications/science/machine-learning/shogun { + opencv = opencv3; + }; + + smplayer = libsForQt5.callPackage ../applications/video/smplayer { }; + + smtube = libsForQt514.callPackage ../applications/video/smtube {}; + + softmaker-office = callPackage ../applications/office/softmaker/softmaker_office.nix {}; + + songrec = callPackage ../applications/audio/songrec {}; + + storrent = callPackage ../applications/networking/p2p/storrent { }; + + spacegun = callPackage ../applications/networking/cluster/spacegun {}; + + stride = callPackage ../applications/networking/instant-messengers/stride { }; + + sudolikeaboss = callPackage ../tools/security/sudolikeaboss { }; + + speedread = callPackage ../applications/misc/speedread { }; + + station = callPackage ../applications/networking/station { }; + + stochas = callPackage ../applications/audio/stochas { }; + + synapse = callPackage ../applications/misc/synapse { }; + + synapse-bt = callPackage ../applications/networking/p2p/synapse-bt { + inherit (darwin.apple_sdk.frameworks) CoreServices Security; + }; + + synfigstudio = callPackage ../applications/graphics/synfigstudio { + mlt-qt5 = libsForQt514.mlt; + }; + + taxi = callPackage ../applications/networking/ftp/taxi { }; + + librep = callPackage ../development/libraries/librep { }; + + rep-gtk = callPackage ../development/libraries/rep-gtk { }; + + reproc = callPackage ../development/libraries/reproc { }; + + sawfish = callPackage ../applications/window-managers/sawfish { }; + + sc68 = callPackage ../applications/audio/sc68 { }; + + sidplayfp = callPackage ../applications/audio/sidplayfp { }; + + sndpeek = callPackage ../applications/audio/sndpeek { }; + + sxhkd = callPackage ../applications/window-managers/sxhkd { }; + + mpop = callPackage ../applications/networking/mpop { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + msmtp = callPackage ../applications/networking/msmtp { + inherit (darwin.apple_sdk.frameworks) Security; + autoreconfHook = buildPackages.autoreconfHook269; + }; + + imapfilter = callPackage ../applications/networking/mailreaders/imapfilter.nix { + lua = lua5; + }; + + maxlib = callPackage ../applications/audio/pd-plugins/maxlib { }; + + maxscale = callPackage ../tools/networking/maxscale { + stdenv = gcc6Stdenv; + }; + + pdfdiff = callPackage ../applications/misc/pdfdiff { }; + + pdfsam-basic = callPackage ../applications/misc/pdfsam-basic { }; + + mupdf = callPackage ../applications/misc/mupdf { }; + mupdf_1_17 = callPackage ../applications/misc/mupdf/1.17.nix { }; + + muso = callPackage ../applications/audio/muso { + inherit (darwin.apple_sdk.frameworks) CoreServices; + }; + + mystem = callPackage ../applications/misc/mystem { }; + + diffpdf = libsForQt5.callPackage ../applications/misc/diffpdf { }; + + diff-pdf = callPackage ../applications/misc/diff-pdf { wxGTK = wxGTK31; }; + + mlocate = callPackage ../tools/misc/mlocate { }; + + plocate = callPackage ../tools/misc/plocate { }; + + mypaint = callPackage ../applications/graphics/mypaint { }; + + mypaint-brushes1 = callPackage ../development/libraries/mypaint-brushes/1.0.nix { }; + + mypaint-brushes = callPackage ../development/libraries/mypaint-brushes { }; + + mythtv = libsForQt514.callPackage ../applications/video/mythtv { }; + + micro = callPackage ../applications/editors/micro { }; + + mle = callPackage ../applications/editors/mle { }; + + nano = callPackage ../applications/editors/nano { }; + + nanoblogger = callPackage ../applications/misc/nanoblogger { }; + + nanorc = callPackage ../applications/editors/nano/nanorc { }; + + navipowm = callPackage ../applications/misc/navipowm { }; + + netbeans = callPackage ../applications/editors/netbeans { + jdk = jdk17; + }; + + netcoredbg = callPackage ../development/tools/misc/netcoredbg { }; + + ncdu = callPackage ../tools/misc/ncdu { }; + + ncdc = callPackage ../applications/networking/p2p/ncdc { }; + + ncspot = callPackage ../applications/audio/ncspot { + withALSA = stdenv.isLinux; + withPulseAudio = config.pulseaudio or stdenv.isLinux; + withPortAudio = stdenv.isDarwin; + withMPRIS = stdenv.isLinux; + }; + + ncview = callPackage ../tools/X11/ncview { } ; + + ne = callPackage ../applications/editors/ne { }; + + nedit = callPackage ../applications/editors/nedit { }; + + ngt = callPackage ../development/libraries/ngt { }; + + nheko = libsForQt5.callPackage ../applications/networking/instant-messengers/nheko { }; + + nomacs = libsForQt5.callPackage ../applications/graphics/nomacs { }; + + notepadqq = libsForQt514.callPackage ../applications/editors/notepadqq { }; + + notbit = callPackage ../applications/networking/mailreaders/notbit { }; + + notmuch = callPackage ../applications/networking/mailreaders/notmuch { + gmime = gmime3; + pythonPackages = python3Packages; + }; + + notejot = callPackage ../applications/misc/notejot { }; + + notmuch-mutt = callPackage ../applications/networking/mailreaders/notmuch/mutt.nix { }; + + muchsync = callPackage ../applications/networking/mailreaders/notmuch/muchsync.nix { }; + + nufraw = callPackage ../applications/graphics/nufraw { }; + + nufraw-thumbnailer = callPackage ../applications/graphics/nufraw { + addThumbnailer = true; + }; + + notmuch-addrlookup = callPackage ../applications/networking/mailreaders/notmuch-addrlookup { }; + + nova-filters = callPackage ../applications/audio/nova-filters { + boost = boost172; + }; + + nvi = callPackage ../applications/editors/nvi { }; + + nvpy = callPackage ../applications/editors/nvpy { }; + + obconf = callPackage ../tools/X11/obconf { }; + + oberon-risc-emu = callPackage ../applications/emulators/oberon-risc-emu { }; + + gnome-obfuscate = callPackage ../applications/graphics/gnome-obfuscate { }; + + obs-studio = libsForQt5.callPackage ../applications/video/obs-studio { + ffmpeg_4 = ffmpeg-full; + }; + obs-studio-plugins = recurseIntoAttrs (callPackage ../applications/video/obs-studio/plugins {}); + wrapOBS = callPackage ../applications/video/obs-studio/wrapper.nix {}; + + obsidian = callPackage ../applications/misc/obsidian { }; + + octoprint = callPackage ../applications/misc/octoprint { }; + + ocr-a = callPackage ../data/fonts/ocr-a {}; + + ocrad = callPackage ../applications/graphics/ocrad { }; + + offrss = callPackage ../applications/networking/offrss { }; + + ogmtools = callPackage ../applications/video/ogmtools { }; + + omegat = callPackage ../applications/misc/omegat.nix { }; + + omxplayer = callPackage ../applications/video/omxplayer { }; + + inherit (python3Packages.callPackage ../applications/networking/onionshare { }) onionshare onionshare-gui; + + openambit = qt5.callPackage ../applications/misc/openambit { }; + + openbox = callPackage ../applications/window-managers/openbox { }; + + openbox-menu = callPackage ../applications/misc/openbox-menu { + stdenv = gccStdenv; + }; + + openbrf = libsForQt5.callPackage ../applications/misc/openbrf { }; + + opencpn = callPackage ../applications/misc/opencpn { }; + + openfx = callPackage ../development/libraries/openfx {}; + + openimageio = callPackage ../applications/graphics/openimageio { + boost = boost175; + }; + + openimageio2 = callPackage ../applications/graphics/openimageio/2.x.nix { }; + + openjump = callPackage ../applications/misc/openjump { }; + + openorienteering-mapper = libsForQt5.callPackage ../applications/gis/openorienteering-mapper { }; + + openscad = libsForQt5.callPackage ../applications/graphics/openscad {}; + + opentimestamps-client = python3Packages.callPackage ../tools/misc/opentimestamps-client {}; + + opentoonz = let + opentoonz-libtiff = callPackage ../applications/graphics/opentoonz/libtiff.nix { }; + in qt5.callPackage ../applications/graphics/opentoonz { + libtiff = opentoonz-libtiff; + opencv = opencv.override { libtiff = opentoonz-libtiff; }; + }; + + opentabletdriver = callPackage ../tools/X11/opentabletdriver { }; + + opentx = libsForQt5.callPackage ../applications/misc/opentx { }; + + opera = callPackage ../applications/networking/browsers/opera {}; + + orca = python3Packages.callPackage ../applications/misc/orca { + inherit pkg-config; + }; + + orca-c = callPackage ../applications/audio/orca-c {}; + + osm2xmap = callPackage ../applications/misc/osm2xmap { + libyamlcpp = libyamlcpp_0_3; + }; + + osmctools = callPackage ../applications/misc/osmctools { }; + + osmium-tool = callPackage ../applications/misc/osmium-tool { }; + + owamp = callPackage ../applications/networking/owamp { }; + + vieb = callPackage ../applications/networking/browsers/vieb { }; + + vivaldi = callPackage ../applications/networking/browsers/vivaldi {}; + + vivaldi-ffmpeg-codecs = callPackage ../applications/networking/browsers/vivaldi/ffmpeg-codecs.nix {}; + + vivaldi-widevine = callPackage ../applications/networking/browsers/vivaldi/widevine.nix { }; + + libopenmpt = callPackage ../applications/audio/libopenmpt { }; + + openrazer-daemon = with python3Packages; toPythonApplication openrazer-daemon; + + opusfile = callPackage ../applications/audio/opusfile { }; + + opustags = callPackage ../applications/audio/opustags { }; + + opusTools = callPackage ../applications/audio/opus-tools { }; + + orpie = callPackage ../applications/misc/orpie { + ocamlPackages = ocaml-ng.ocamlPackages_4_12; + }; + + osmo = callPackage ../applications/office/osmo { }; + + osmscout-server = libsForQt5.callPackage ../applications/misc/osmscout-server { }; + + palemoon = callPackage ../applications/networking/browsers/palemoon { }; + + webbrowser = callPackage ../applications/networking/browsers/webbrowser {}; + + pamix = callPackage ../applications/audio/pamix { }; + + pamixer = callPackage ../applications/audio/pamixer { }; + + myxer = callPackage ../applications/audio/myxer { }; + + ncpamixer = callPackage ../applications/audio/ncpamixer { }; + + pan = callPackage ../applications/networking/newsreaders/pan { }; + + panotools = callPackage ../applications/graphics/panotools { }; + + paprefs = callPackage ../applications/audio/paprefs { }; + + pantalaimon = python3Packages.callPackage ../applications/networking/instant-messengers/pantalaimon { }; + + pantalaimon-headless = python3Packages.callPackage ../applications/networking/instant-messengers/pantalaimon { + enableDbusUi = false; + }; + + pavucontrol = callPackage ../applications/audio/pavucontrol { }; + + paraview = libsForQt5.callPackage ../applications/graphics/paraview { }; + + parlatype = callPackage ../applications/audio/parlatype { }; + + packet = callPackage ../development/tools/packet { }; + + packet-sd = callPackage ../development/tools/packet-sd { }; + + metal-cli = callPackage ../development/tools/metal-cli { }; + + pb_cli = callPackage ../tools/misc/pb_cli {}; + + capture = callPackage ../tools/misc/capture {}; + + patchmatrix = callPackage ../applications/audio/patchmatrix { }; + + pbrt = callPackage ../applications/graphics/pbrt { }; + + pcloud = callPackage ../applications/networking/pcloud { }; + + pcsxr = callPackage ../applications/emulators/pcsxr { }; + + pcsx2 = callPackage ../applications/emulators/pcsx2 { + wxGTK = wxGTK30-gtk3; + }; + + jpsxdec = callPackage ../tools/games/jpsxdec { + jdk = openjdk8; + }; + + pdfslicer = callPackage ../applications/misc/pdfslicer { }; + + pekwm = callPackage ../applications/window-managers/pekwm { + awk = gawk; + grep = gnugrep; + sed = gnused; + }; + + pencil = callPackage ../applications/graphics/pencil { + }; + + perseus = callPackage ../applications/science/math/perseus {}; + + petrifoo = callPackage ../applications/audio/petrifoo { + inherit (gnome2) libgnomecanvas; + }; + + pdfchain = callPackage ../tools/typesetting/pdfchain { }; + + pdfcpu = callPackage ../applications/graphics/pdfcpu { }; + pdftk = callPackage ../tools/typesetting/pdftk { + jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + pdftk-legacy = lowPrio (callPackage ../tools/typesetting/pdftk/legacy.nix { }); + pdfgrep = callPackage ../tools/typesetting/pdfgrep { }; + + pdfpc = callPackage ../applications/misc/pdfpc { + inherit (gst_all_1) gstreamer gst-plugins-base gst-plugins-good gst-libav; + }; + + peach = callPackage ../servers/peach { }; + + peaclock = callPackage ../applications/misc/peaclock { + stdenv = gccStdenv; + }; + + peek = callPackage ../applications/video/peek { }; + + peertube = callPackage ../servers/peertube { + nodejs = nodejs-16_x; + }; + + pflask = callPackage ../os-specific/linux/pflask {}; + + pfsshell = callPackage ../tools/misc/pfsshell { }; + + photoqt = libsForQt5.callPackage ../applications/graphics/photoqt { }; + + photoflare = libsForQt5.callPackage ../applications/graphics/photoflare { }; + + photoflow = callPackage ../applications/graphics/photoflow { }; + + phototonic = libsForQt5.callPackage ../applications/graphics/phototonic { }; + + phrasendrescher = callPackage ../tools/security/phrasendrescher { }; + + phrase-cli = callPackage ../tools/misc/phrase-cli { }; + + phraseapp-client = callPackage ../tools/misc/phraseapp-client { }; + + phwmon = callPackage ../applications/misc/phwmon { }; + + pianobar = callPackage ../applications/audio/pianobar { }; + + pianobooster = qt5.callPackage ../applications/audio/pianobooster { }; + + pianoteq = callPackage ../applications/audio/pianoteq { }; + + picard = callPackage ../applications/audio/picard { }; + + picocom = callPackage ../tools/misc/picocom { + inherit (darwin.apple_sdk.frameworks) IOKit; + }; + + picoloop = callPackage ../applications/audio/picoloop { }; + + pidgin = callPackage ../applications/networking/instant-messengers/pidgin { + withOpenssl = config.pidgin.openssl or true; + withGnutls = config.pidgin.gnutls or false; + plugins = []; + }; + + pidgin-indicator = callPackage ../applications/networking/instant-messengers/pidgin-plugins/pidgin-indicator { }; + + pidgin-latex = callPackage ../applications/networking/instant-messengers/pidgin-plugins/pidgin-latex { + texLive = texlive.combined.scheme-basic; + }; + + pidgin-msn-pecan = callPackage ../applications/networking/instant-messengers/pidgin-plugins/msn-pecan { }; + + pidgin-mra = callPackage ../applications/networking/instant-messengers/pidgin-plugins/pidgin-mra { }; + + pidgin-skypeweb = callPackage ../applications/networking/instant-messengers/pidgin-plugins/pidgin-skypeweb { }; + + pidgin-carbons = callPackage ../applications/networking/instant-messengers/pidgin-plugins/carbons { }; + + pidgin-xmpp-receipts = callPackage ../applications/networking/instant-messengers/pidgin-plugins/pidgin-xmpp-receipts { }; + + pidgin-otr = callPackage ../applications/networking/instant-messengers/pidgin-plugins/otr { }; + + pidgin-osd = callPackage ../applications/networking/instant-messengers/pidgin-plugins/pidgin-osd { }; + + pidgin-sipe = callPackage ../applications/networking/instant-messengers/pidgin-plugins/sipe { }; + + pidgin-window-merge = callPackage ../applications/networking/instant-messengers/pidgin-plugins/window-merge { }; + + pika-backup = callPackage ../applications/backup/pika-backup { }; + + pur = callPackage ../development/tools/pur { }; + + purple-discord = callPackage ../applications/networking/instant-messengers/pidgin-plugins/purple-discord { }; + + purple-googlechat = callPackage ../applications/networking/instant-messengers/pidgin-plugins/purple-googlechat { }; + + purple-hangouts = callPackage ../applications/networking/instant-messengers/pidgin-plugins/purple-hangouts { }; + + purple-lurch = callPackage ../applications/networking/instant-messengers/pidgin-plugins/purple-lurch { }; + + purple-matrix = callPackage ../applications/networking/instant-messengers/pidgin-plugins/purple-matrix { }; + + purple-mm-sms = callPackage ../applications/networking/instant-messengers/pidgin-plugins/purple-mm-sms { }; + + purple-plugin-pack = callPackage ../applications/networking/instant-messengers/pidgin-plugins/purple-plugin-pack { }; + + purple-slack = callPackage ../applications/networking/instant-messengers/pidgin-plugins/purple-slack { }; + + purple-vk-plugin = callPackage ../applications/networking/instant-messengers/pidgin-plugins/purple-vk-plugin { }; + + purple-xmpp-http-upload = callPackage ../applications/networking/instant-messengers/pidgin-plugins/purple-xmpp-http-upload { }; + + telegram-purple = callPackage ../applications/networking/instant-messengers/pidgin-plugins/telegram-purple { }; + + toxprpl = callPackage ../applications/networking/instant-messengers/pidgin-plugins/tox-prpl { + libtoxcore = libtoxcore-new; + }; + + pidgin-opensteamworks = callPackage ../applications/networking/instant-messengers/pidgin-plugins/pidgin-opensteamworks { }; + + purple-facebook = callPackage ../applications/networking/instant-messengers/pidgin-plugins/purple-facebook { }; + + purpur = callPackage ../games/purpur { }; + + pikopixel = callPackage ../applications/graphics/pikopixel { }; + + pithos = callPackage ../applications/audio/pithos { + pythonPackages = python3Packages; + }; + + pinfo = callPackage ../applications/misc/pinfo { }; + + pinpoint = callPackage ../applications/office/pinpoint { }; + + pinta = callPackage ../applications/graphics/pinta { }; + + pistol = callPackage ../tools/misc/pistol { }; + + piston-cli = callPackage ../tools/misc/piston-cli { python3Packages = python39Packages; }; + + plater = libsForQt5.callPackage ../applications/misc/plater { }; + + plexamp = callPackage ../applications/audio/plexamp { }; + + plex-media-player = libsForQt5.callPackage ../applications/video/plex-media-player { }; + + plex-mpv-shim = python3Packages.callPackage ../applications/video/plex-mpv-shim { }; + + plover = recurseIntoAttrs (libsForQt5.callPackage ../applications/misc/plover { }); + + plugin-torture = callPackage ../applications/audio/plugin-torture { }; + + poke = callPackage ../applications/editors/poke { }; + + polar-bookshelf = callPackage ../applications/misc/polar-bookshelf { }; + + poezio = python3Packages.poezio; + + pommed_light = callPackage ../os-specific/linux/pommed-light {}; + + polylith = callPackage ../development/tools/misc/polylith { }; + + polymake = callPackage ../applications/science/math/polymake { }; + + pomotroid = callPackage ../applications/misc/pomotroid { + electron = electron_9; + }; + + pond = callPackage ../applications/networking/instant-messengers/pond { }; + + ponymix = callPackage ../applications/audio/ponymix { }; + + portfolio-filemanager = callPackage ../applications/misc/portfolio-filemanager { }; + + pothos = libsForQt5.callPackage ../applications/radio/pothos { }; + + potrace = callPackage ../applications/graphics/potrace {}; + + posterazor = callPackage ../applications/misc/posterazor { }; + + pqiv = callPackage ../applications/graphics/pqiv { }; + + qiv = callPackage ../applications/graphics/qiv { }; + + premid = callPackage ../applications/misc/premid { }; + + processing = callPackage ../applications/graphics/processing { + jdk = oraclejdk8; + }; + + # perhaps there are better apps for this task? It's how I had configured my preivous system. + # And I don't want to rewrite all rules + procmail = callPackage ../applications/misc/procmail { }; + + profanity = callPackage ../applications/networking/instant-messengers/profanity ({ + gtk = gtk3; + python = python3; + } // (config.profanity or {})); + + properties-cpp = callPackage ../development/libraries/properties-cpp { }; + + protonmail-bridge = callPackage ../applications/networking/protonmail-bridge { }; + + protonvpn-cli = callPackage ../applications/networking/protonvpn-cli { }; + + protonvpn-gui = callPackage ../applications/networking/protonvpn-gui { }; + + ps2client = callPackage ../applications/networking/ps2client { }; + + psi = libsForQt5.callPackage ../applications/networking/instant-messengers/psi { }; + + psi-plus = libsForQt5.callPackage ../applications/networking/instant-messengers/psi-plus { }; + + psol = callPackage ../development/libraries/psol { }; + + pstree = callPackage ../applications/misc/pstree { }; + + pt2-clone = callPackage ../applications/audio/pt2-clone { }; + + ptask = callPackage ../applications/misc/ptask { }; + + pulseaudio-ctl = callPackage ../applications/audio/pulseaudio-ctl { }; + + pulseaudio-dlna = callPackage ../applications/audio/pulseaudio-dlna { }; + + pulseview = libsForQt514.callPackage ../applications/science/electronics/pulseview { }; + + puredata = callPackage ../applications/audio/puredata { }; + puredata-with-plugins = plugins: callPackage ../applications/audio/puredata/wrapper.nix { inherit plugins; }; + + puremapping = callPackage ../applications/audio/pd-plugins/puremapping { }; + + pure-maps = libsForQt5.callPackage ../applications/misc/pure-maps { }; + + pwdsafety = callPackage ../tools/security/pwdsafety { }; + + qbittorrent = libsForQt5.callPackage ../applications/networking/p2p/qbittorrent { }; + qbittorrent-nox = qbittorrent.override { + guiSupport = false; + }; + + qcad = libsForQt5.callPackage ../applications/misc/qcad { }; + + qcomicbook = libsForQt5.callPackage ../applications/graphics/qcomicbook { }; + + eiskaltdcpp = libsForQt5.callPackage ../applications/networking/p2p/eiskaltdcpp { }; + + qdirstat = libsForQt5.callPackage ../applications/misc/qdirstat {}; + + qemu = callPackage ../applications/virtualization/qemu { + inherit (darwin.apple_sdk.frameworks) CoreServices Cocoa Hypervisor; + inherit (darwin.stubs) rez setfile; + inherit (darwin) sigtool; + }; + + qemu-utils = callPackage ../applications/virtualization/qemu/utils.nix {}; + + wrapQemuBinfmtP = callPackage ../applications/virtualization/qemu/binfmt-p-wrapper.nix { }; + + qgis-ltr = callPackage ../applications/gis/qgis/ltr.nix { }; + + qgis = callPackage ../applications/gis/qgis { }; + + qgroundcontrol = libsForQt5.callPackage ../applications/science/robotics/qgroundcontrol { }; + + qjackctl = libsForQt5.callPackage ../applications/audio/qjackctl { }; + + qimgv = libsForQt5.callPackage ../applications/graphics/qimgv { }; + + qlandkartegt = libsForQt514.callPackage ../applications/misc/qlandkartegt { + gdal = gdal.override { + libgeotiff = libgeotiff.override { proj = proj_7; }; + libspatialite = libspatialite.override { proj = proj_7; }; + proj = proj_7; + }; + proj = proj_7; + }; + + garmindev = callPackage ../applications/misc/qlandkartegt/garmindev.nix {}; + + qmapshack = libsForQt5.callPackage ../applications/gis/qmapshack { }; + + qmediathekview = libsForQt5.callPackage ../applications/video/qmediathekview { }; + + qmplay2 = libsForQt5.callPackage ../applications/video/qmplay2 { }; + + qmetro = callPackage ../applications/misc/qmetro { }; + + qmidiarp = callPackage ../applications/audio/qmidiarp {}; + + qmidinet = libsForQt5.callPackage ../applications/audio/qmidinet { }; + + qmidiroute = callPackage ../applications/audio/qmidiroute { }; + + qmmp = libsForQt5.callPackage ../applications/audio/qmmp { }; + + qnotero = libsForQt5.callPackage ../applications/office/qnotero { }; + + qpwgraph = libsForQt5.callPackage ../applications/audio/qpwgraph { }; + + qrcode = callPackage ../tools/graphics/qrcode {}; + + qsampler = libsForQt5.callPackage ../applications/audio/qsampler { }; + + qscreenshot = callPackage ../applications/graphics/qscreenshot { + inherit (darwin.apple_sdk.frameworks) Carbon; + qt = qt4; + }; + + qsstv = qt5.callPackage ../applications/radio/qsstv { }; + + qsyncthingtray = libsForQt5.callPackage ../applications/misc/qsyncthingtray { }; + + qstopmotion = libsForQt5.callPackage ../applications/video/qstopmotion { + guvcview = guvcview.override { + useQt = true; + useGtk = false; + }; + }; + + qsudo = libsForQt5.callPackage ../applications/misc/qsudo { }; + + qsynth = libsForQt5.callPackage ../applications/audio/qsynth { }; + + qtbitcointrader = libsForQt5.callPackage ../applications/misc/qtbitcointrader { }; + + qtchan = libsForQt5.callPackage ../applications/networking/browsers/qtchan { }; + + qtemu = libsForQt5.callPackage ../applications/virtualization/qtemu { }; + + qtox = libsForQt5.callPackage ../applications/networking/instant-messengers/qtox { + inherit (darwin.apple_sdk.frameworks) AVFoundation; + }; + + qtpass = libsForQt5.callPackage ../applications/misc/qtpass { }; + + qtractor = libsForQt5.callPackage ../applications/audio/qtractor { }; + + qtscrobbler = callPackage ../applications/audio/qtscrobbler { }; + + quantomatic = callPackage ../applications/science/physics/quantomatic { }; + + quassel = libsForQt5.callPackage ../applications/networking/irc/quassel { }; + + quasselClient = quassel.override { + monolithic = false; + client = true; + tag = "-client-kf5"; + }; + + quasselDaemon = quassel.override { + monolithic = false; + enableDaemon = true; + withKDE = false; + tag = "-daemon-qt5"; + }; + + quill-qr = callPackage ../tools/security/quill-qr { }; + + quirc = callPackage ../tools/graphics/quirc {}; + + quisk = python38Packages.callPackage ../applications/radio/quisk { }; + + quiterss = libsForQt514.callPackage ../applications/networking/newsreaders/quiterss {}; + + falkon = libsForQt5.callPackage ../applications/networking/browsers/falkon { }; + + quodlibet = callPackage ../applications/audio/quodlibet { + keybinder3 = null; + libmodplug = null; + kakasi = null; + libappindicator-gtk3 = null; + }; + + quodlibet-without-gst-plugins = quodlibet.override { + withGstPlugins = false; + tag = "-without-gst-plugins"; + }; + + quodlibet-xine = quodlibet.override { xineBackend = true; tag = "-xine"; }; + + quodlibet-full = quodlibet.override { + inherit gtksourceview webkitgtk; + withDbusPython = true; + withPyInotify = true; + withMusicBrainzNgs = true; + withPahoMqtt = true; + keybinder3 = keybinder3; + libmodplug = libmodplug; + kakasi = kakasi; + libappindicator-gtk3 = libappindicator-gtk3; + tag = "-full"; + }; + + quodlibet-xine-full = quodlibet-full.override { xineBackend = true; tag = "-xine-full"; }; + + qutebrowser = libsForQt5.callPackage ../applications/networking/browsers/qutebrowser { }; + + qxw = callPackage ../applications/editors/qxw {}; + + rabbitvcs = callPackage ../applications/version-management/rabbitvcs {}; + + rakarrack = callPackage ../applications/audio/rakarrack { + fltk = fltk13; + }; + + renoise = callPackage ../applications/audio/renoise {}; + + redux = callPackage ../applications/audio/redux { }; + + roomeqwizard = callPackage ../applications/audio/roomeqwizard { }; + + radiotray-ng = callPackage ../applications/audio/radiotray-ng { + wxGTK = wxGTK30; + }; + + railcar = callPackage ../applications/virtualization/railcar {}; + + raiseorlaunch = callPackage ../applications/misc/raiseorlaunch {}; + + rapcad = libsForQt514.callPackage ../applications/graphics/rapcad { boost = boost159; }; + + rapid-photo-downloader = libsForQt5.callPackage ../applications/graphics/rapid-photo-downloader { }; + + rapidsvn = callPackage ../applications/version-management/rapidsvn { }; + + ratmen = callPackage ../tools/X11/ratmen {}; + + ratox = callPackage ../applications/networking/instant-messengers/ratox { }; + + ratpoison = callPackage ../applications/window-managers/ratpoison { }; + + rawtherapee = callPackage ../applications/graphics/rawtherapee { + fftw = fftwSinglePrec; + }; + + rclone = callPackage ../applications/networking/sync/rclone { }; + + rclone-browser = libsForQt5.callPackage ../applications/networking/sync/rclone/browser.nix { }; + + rcs = callPackage ../applications/version-management/rcs { }; + + rdesktop = callPackage ../applications/networking/remote/rdesktop { }; + + rdedup = callPackage ../tools/backup/rdedup { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + rdup = callPackage ../tools/backup/rdup { }; + + reaper = callPackage ../applications/audio/reaper { }; + + recapp = callPackage ../applications/video/recapp { }; + + recode = callPackage ../tools/text/recode { }; + + reddsaver = callPackage ../applications/misc/reddsaver { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + rednotebook = python3Packages.callPackage ../applications/editors/rednotebook { }; + + remotebox = callPackage ../applications/virtualization/remotebox { }; + + restique = libsForQt5.callPackage ../applications/backup/restique { }; + + retroshare = libsForQt5.callPackage ../applications/networking/p2p/retroshare { }; + + rgp = libsForQt5.callPackage ../development/tools/rgp { }; + + ricochet = libsForQt5.callPackage ../applications/networking/instant-messengers/ricochet { }; + + ries = callPackage ../applications/science/math/ries { }; + + ripcord = if stdenv.isLinux then + qt5.callPackage ../applications/networking/instant-messengers/ripcord { } + else + callPackage ../applications/networking/instant-messengers/ripcord/darwin.nix { }; + + ripser = callPackage ../applications/science/math/ripser { }; + + rkdeveloptool = callPackage ../misc/rkdeveloptool { }; + + rocketchat-desktop = callPackage ../applications/networking/instant-messengers/rocketchat-desktop { }; + + rofi-unwrapped = callPackage ../applications/misc/rofi { }; + rofi = callPackage ../applications/misc/rofi/wrapper.nix { }; + rofi-wayland-unwrapped = callPackage ../applications/misc/rofi/wayland.nix { }; + rofi-wayland = callPackage ../applications/misc/rofi/wrapper.nix { + rofi-unwrapped = rofi-wayland-unwrapped; + }; + + rofi-pass = callPackage ../tools/security/pass/rofi-pass.nix { }; + + rofi-menugen = callPackage ../applications/misc/rofi-menugen { }; + + rofi-systemd = callPackage ../tools/system/rofi-systemd { }; + + rofimoji = callPackage ../applications/misc/rofimoji { + inherit (python3Packages) buildPythonApplication configargparse; + }; + + rootlesskit = callPackage ../tools/virtualization/rootlesskit {}; + + rpcs3 = libsForQt5.callPackage ../applications/emulators/rpcs3 { }; + + rsclock = callPackage ../applications/misc/rsclock { }; + + rstudio = libsForQt5.callPackage ../applications/editors/rstudio { + jdk = jdk8; + }; + + rstudio-server = rstudio.override { server = true; }; + + rsync = callPackage ../applications/networking/sync/rsync (config.rsync or {}); + rrsync = callPackage ../applications/networking/sync/rsync/rrsync.nix {}; + + rtl_433 = callPackage ../applications/radio/rtl_433 { }; + + rtl-ais = callPackage ../applications/radio/rtl-ais { }; + + # librtlsdr is a friendly fork with additional features + rtl-sdr = callPackage ../applications/radio/rtl-sdr { }; + librtlsdr = callPackage ../development/libraries/librtlsdr { }; + + rubyripper = callPackage ../applications/audio/rubyripper {}; + + rucredstash = callPackage ../tools/security/rucredstash { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + runc = callPackage ../applications/virtualization/runc {}; + + rymcast = callPackage ../applications/audio/rymcast { + inherit (gnome) zenity; + }; + + uade123 = callPackage ../applications/audio/uade123 {}; + + udevil = callPackage ../applications/misc/udevil {}; + + udiskie = python3.pkgs.callPackage ../applications/misc/udiskie { }; + + sacc = callPackage ../applications/networking/gopher/sacc { }; + + sameboy = callPackage ../applications/emulators/sameboy { }; + + sayonara = libsForQt514.callPackage ../applications/audio/sayonara { }; + + sbagen = callPackage ../applications/misc/sbagen { }; + + scantailor = callPackage ../applications/graphics/scantailor { }; + + scantailor-advanced = libsForQt514.callPackage ../applications/graphics/scantailor/advanced.nix { }; + + sc-im = callPackage ../applications/misc/sc-im { }; + + scite = callPackage ../applications/editors/scite { }; + + scli = callPackage ../applications/misc/scli { }; + + scribus = callPackage ../applications/office/scribus { + inherit (gnome2) libart_lgpl; + }; + + scribusUnstable = libsForQt5.callPackage ../applications/office/scribus/unstable.nix { }; + + seafile-client = libsForQt5.callPackage ../applications/networking/seafile-client { }; + + seahub = callPackage ../applications/networking/seahub { }; + + seatd = callPackage ../applications/misc/seatd { }; + + secretscanner = callPackage ../tools/security/secretscanner { }; + + semiphemeral = callPackage ../tools/misc/semiphemeral { }; + + sent = callPackage ../applications/misc/sent { }; + + seq24 = callPackage ../applications/audio/seq24 { }; + + seq66 = qt5.callPackage ../applications/audio/seq66 { }; + + setbfree = callPackage ../applications/audio/setbfree { }; + + sfizz = callPackage ../applications/audio/sfizz { }; + + sfxr = callPackage ../applications/audio/sfxr { }; + + sfxr-qt = libsForQt5.callPackage ../applications/audio/sfxr-qt { }; + + shadowfox = callPackage ../tools/networking/shadowfox { }; + + shfmt = callPackage ../tools/text/shfmt { }; + + shortwave = callPackage ../applications/audio/shortwave { }; + + shotgun = callPackage ../tools/graphics/shotgun {}; + + shutter = callPackage ../applications/graphics/shutter { }; + + sic-image-cli = callPackage ../tools/graphics/sic-image-cli { }; + + simple-scan = gnome.simple-scan; + + siproxd = callPackage ../applications/networking/siproxd { }; + + sish = callPackage ../tools/networking/sish { }; + + skypeforlinux = callPackage ../applications/networking/instant-messengers/skypeforlinux { }; + + SkypeExport = callPackage ../applications/networking/instant-messengers/SkypeExport { }; + + slmenu = callPackage ../applications/misc/slmenu {}; + + slop = callPackage ../tools/misc/slop {}; + + slowhttptest = callPackage ../tools/security/slowhttptest { }; + + slrn = callPackage ../applications/networking/newsreaders/slrn { }; + + sniproxy = callPackage ../applications/networking/sniproxy { }; + + snixembed = callPackage ../applications/misc/snixembed { }; + + sooperlooper = callPackage ../applications/audio/sooperlooper { }; + + sops = callPackage ../tools/security/sops { }; + + sorcer = callPackage ../applications/audio/sorcer { }; + + sound-juicer = callPackage ../applications/audio/sound-juicer { }; + + soundtracker = callPackage ../applications/audio/soundtracker { }; + + spice-vdagent = callPackage ../applications/virtualization/spice-vdagent { }; + + spike = callPackage ../applications/virtualization/spike { }; + + tensorman = callPackage ../tools/misc/tensorman { }; + + spideroak = callPackage ../applications/networking/spideroak { }; + + split2flac = callPackage ../applications/audio/split2flac { + inherit (python3.pkgs) mutagen; + }; + + spotify-qt = libsForQt5.callPackage ../applications/audio/spotify-qt { }; + + spotify-tray = callPackage ../applications/misc/spotify-tray { }; + + spotify-tui = callPackage ../applications/audio/spotify-tui { + inherit (darwin.apple_sdk.frameworks) AppKit Security; + }; + + sptlrx = callPackage ../applications/audio/sptlrx { }; + + squishyball = callPackage ../applications/audio/squishyball { + ncurses = ncurses5; + }; + + styx = callPackage ../applications/misc/styx { }; + + sway-launcher-desktop = callPackage ../applications/misc/sway-launcher-desktop { }; + + tecoc = callPackage ../applications/editors/tecoc { }; + + viber = callPackage ../applications/networking/instant-messengers/viber { }; + + wavebox = callPackage ../applications/networking/instant-messengers/wavebox { }; + + sonic-pi = libsForQt5.callPackage ../applications/audio/sonic-pi { }; + + stag = callPackage ../applications/misc/stag { + curses = ncurses; + }; + + stella = callPackage ../applications/emulators/stella { }; + + linuxstopmotion = libsForQt5.callPackage ../applications/video/linuxstopmotion { }; + + sweethome3d = recurseIntoAttrs ( + (callPackage ../applications/misc/sweethome3d { }) // + (callPackage ../applications/misc/sweethome3d/editors.nix { + sweethome3dApp = sweethome3d.application; + }) + ); + + swingsane = callPackage ../applications/graphics/swingsane { }; + + sxiv = callPackage ../applications/graphics/sxiv { }; + + nsxiv = callPackage ../applications/graphics/nsxiv { }; + + resilio-sync = callPackage ../applications/networking/resilio-sync { }; + + dropbox = callPackage ../applications/networking/dropbox { }; + + dropbox-cli = callPackage ../applications/networking/dropbox/cli.nix { }; + + synology-drive-client = callPackage ../applications/networking/synology-drive-client { }; + + maestral = with python3Packages; toPythonApplication maestral; + + maestral-gui = libsForQt5.callPackage ../applications/networking/maestral-qt { }; + + insync = callPackage ../applications/networking/insync { }; + + insync-v3 = libsForQt515.callPackage ../applications/networking/insync/v3.nix { }; + + libstrangle = callPackage ../tools/X11/libstrangle { + stdenv = stdenv_32bit; + }; + + lightdm = libsForQt5.callPackage ../applications/display-managers/lightdm { }; + + lightdm_qt = lightdm.override { withQt5 = true; }; + + lightdm-enso-os-greeter = callPackage ../applications/display-managers/lightdm-enso-os-greeter { + inherit (xorg) libX11 libXdmcp libpthreadstubs; + }; + + lightdm_gtk_greeter = callPackage ../applications/display-managers/lightdm/gtk-greeter.nix { + inherit (xfce) xfce4-dev-tools; + }; + + lightdm-mini-greeter = callPackage ../applications/display-managers/lightdm-mini-greeter { }; + + lightdm-tiny-greeter = callPackage ../applications/display-managers/lightdm-tiny-greeter { + conf = config.lightdm-tiny-greeter.conf or ""; + }; + + ly = callPackage ../applications/display-managers/ly { }; + + slic3r = callPackage ../applications/misc/slic3r { + boost = boost172; # Building fails with Boost >1.72 due to boost/detail/endian.hpp missing + }; + + curaengine_stable = callPackage ../applications/misc/curaengine/stable.nix { }; + cura_stable = callPackage ../applications/misc/cura/stable.nix { + curaengine = curaengine_stable; + }; + + curaengine = callPackage ../applications/misc/curaengine { inherit (python3.pkgs) libarcus; }; + + cura = libsForQt5.callPackage ../applications/misc/cura { }; + + curaPlugins = callPackage ../applications/misc/cura/plugins.nix { }; + + peru = callPackage ../applications/version-management/peru {}; + + petrinizer = haskellPackages.callPackage ../applications/science/logic/petrinizer {}; + + pmidi = callPackage ../applications/audio/pmidi { }; + + printrun = callPackage ../applications/misc/printrun { }; + + prusa-slicer = callPackage ../applications/misc/prusa-slicer { }; + + super-slicer = callPackage ../applications/misc/prusa-slicer/super-slicer.nix { }; + + super-slicer-latest = (callPackage ../applications/misc/prusa-slicer/super-slicer.nix { }).latest; + + snapmaker-luban = callPackage ../applications/misc/snapmaker-luban { }; + + robustirc-bridge = callPackage ../servers/irc/robustirc-bridge { }; + + skrooge = libsForQt5.callPackage ../applications/office/skrooge {}; + + smartgithg = callPackage ../applications/version-management/smartgithg { + jre = openjdk11; + }; + + smartdeblur = callPackage ../applications/graphics/smartdeblur { }; + + snapper = callPackage ../tools/misc/snapper { }; + snapper-gui = callPackage ../applications/misc/snapper-gui { }; + + snd = callPackage ../applications/audio/snd { + inherit (darwin.apple_sdk.frameworks) CoreServices CoreMIDI; + }; + + shntool = callPackage ../applications/audio/shntool { }; + + sipp = callPackage ../development/tools/misc/sipp { }; + + skanpage = libsForQt5.callPackage ../applications/graphics/skanpage { }; + + soci = callPackage ../development/libraries/soci { }; + + socialscan = with python3.pkgs; toPythonApplication socialscan; + + sonic-lineup = libsForQt5.callPackage ../applications/audio/sonic-lineup { }; + + sonic-visualiser = libsForQt5.callPackage ../applications/audio/sonic-visualiser { }; + + soulseekqt = libsForQt5.callPackage ../applications/networking/p2p/soulseekqt { }; + + sox = callPackage ../applications/misc/audio/sox { + inherit (darwin.apple_sdk.frameworks) CoreAudio; + }; + + soxr = callPackage ../applications/misc/audio/soxr { }; + + spek = callPackage ../applications/audio/spek { + autoreconfHook = buildPackages.autoreconfHook269; + }; + + spotify-unwrapped = callPackage ../applications/audio/spotify { + curl = curl.override { + opensslSupport = false; gnutlsSupport = true; + }; + }; + + spotify = callPackage ../applications/audio/spotify/wrapper.nix { }; + + libspotify = callPackage ../development/libraries/libspotify (config.libspotify or {}); + + sourcetrail = let + llvmPackages = llvmPackages_10; + in libsForQt5.callPackage ../development/tools/sourcetrail { + stdenv = if stdenv.cc.isClang then llvmPackages.stdenv else stdenv; + jdk = jdk8; + pythonPackages = python3Packages; + inherit llvmPackages; + boost = boost16x; # Filesystem tests in the checkPhase fail with Boost 1.77 + }; + + spotifywm = callPackage ../applications/audio/spotifywm { }; + + psst = callPackage ../applications/audio/psst { }; + + squeezelite = callPackage ../applications/audio/squeezelite { audioBackend = "alsa"; }; + + squeezelite-pulse = callPackage ../applications/audio/squeezelite { audioBackend = "pulse"; }; + + ltunify = callPackage ../tools/misc/ltunify { }; + + src = callPackage ../applications/version-management/src { + git = gitMinimal; + python = python3; + }; + + sslyze = with python3Packages; toPythonApplication sslyze; + + ssr = callPackage ../applications/audio/soundscape-renderer { + autoreconfHook = buildPackages.autoreconfHook269; + }; + + ssrc = callPackage ../applications/audio/ssrc { }; + + stalonetray = callPackage ../applications/window-managers/stalonetray {}; + + inherit (ocaml-ng.ocamlPackages_4_12) stog; + + stp = callPackage ../applications/science/logic/stp { }; + + stretchly = callPackage ../applications/misc/stretchly { }; + + stumpish = callPackage ../applications/window-managers/stumpish {}; + + stumpwm = lispPackages.stumpwm; + + sublime = callPackage ../applications/editors/sublime/2 { }; + + sublime3Packages = recurseIntoAttrs (callPackage ../applications/editors/sublime/3/packages.nix { }); + + sublime3 = sublime3Packages.sublime3; + + sublime3-dev = sublime3Packages.sublime3-dev; + + inherit (recurseIntoAttrs (callPackage ../applications/editors/sublime/4/packages.nix { })) + sublime4 + sublime4-dev; + + inherit (callPackage ../applications/version-management/sublime-merge {}) + sublime-merge + sublime-merge-dev; + + inherit (callPackages ../applications/version-management/subversion { sasl = cyrus_sasl; }) + subversion_1_10 subversion; + + subversionClient = appendToName "client" (subversion.override { + bdbSupport = false; + perlBindings = true; + pythonBindings = true; + }); + + sublime-music = callPackage ../applications/audio/sublime-music { }; + + subunit = callPackage ../development/libraries/subunit { }; + + surf = callPackage ../applications/networking/browsers/surf { gtk = gtk2; }; + + surf-display = callPackage ../desktops/surf-display { }; + + surge = callPackage ../applications/audio/surge { + inherit (gnome) zenity; + git = gitMinimal; + }; + + surge-XT = callPackage ../applications/audio/surge-XT { }; + + survex = callPackage ../applications/misc/survex { + inherit (darwin.apple_sdk.frameworks) Carbon Cocoa; + }; + + sunvox = callPackage ../applications/audio/sunvox { }; + + svkbd = callPackage ../applications/accessibility/svkbd { }; + + swaglyrics = callPackage ../tools/misc/swaglyrics { }; + + swh_lv2 = callPackage ../applications/audio/swh-lv2 { }; + + swift-im = libsForQt514.callPackage ../applications/networking/instant-messengers/swift-im { + inherit (gnome2) GConf; + boost = boost168; + }; + + sylpheed = callPackage ../applications/networking/mailreaders/sylpheed { }; + + symbolic-preview = callPackage ../applications/graphics/symbolic-preview { + libhandy = libhandy_0; + }; + + symlinks = callPackage ../tools/system/symlinks { }; + + syncplay = python3.pkgs.callPackage ../applications/networking/syncplay { }; + + syncterm = callPackage ../applications/terminal-emulators/syncterm { }; + + inherit (callPackages ../applications/networking/syncthing { }) + syncthing + syncthing-discovery + syncthing-relay; + + syncthing-gtk = python2Packages.callPackage ../applications/networking/syncthing-gtk { }; + + syncthing-tray = callPackage ../applications/misc/syncthing-tray { }; + + syncthingtray = libsForQt5.callPackage ../applications/misc/syncthingtray { }; + syncthingtray-minimal = libsForQt5.callPackage ../applications/misc/syncthingtray { + webviewSupport = false; + jsSupport = false; + kioPluginSupport = false; + plasmoidSupport = false; + systemdSupport = true; + }; + + synergy = libsForQt5.callPackage ../applications/misc/synergy { + inherit (darwin.apple_sdk.frameworks) ApplicationServices Carbon Cocoa CoreServices ScreenSaver; + }; + + synergyWithoutGUI = synergy.override { withGUI = false; }; + + tabbed = callPackage ../applications/window-managers/tabbed { + # if you prefer a custom config, write the config.h in tabbed.config.h + # and enable + # customConfig = builtins.readFile ./tabbed.config.h; + }; + + taffybar = callPackage ../applications/window-managers/taffybar { + inherit (haskellPackages) ghcWithPackages taffybar; + }; + + tagainijisho = callPackage ../applications/office/tagainijisho {}; + + tahoe-lafs = callPackage ../tools/networking/p2p/tahoe-lafs {}; + + tailor = callPackage ../applications/version-management/tailor {}; + + taizen = callPackage ../applications/misc/taizen { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + talosctl = callPackage ../applications/networking/cluster/talosctl { }; + + talentedhack = callPackage ../applications/audio/talentedhack { }; + + tambura = callPackage ../applications/audio/tambura { }; + + tamgamp.lv2 = callPackage ../applications/audio/tamgamp.lv2 { }; + + tanka = callPackage ../applications/networking/cluster/tanka { }; + + teams = callPackage ../applications/networking/instant-messengers/teams { }; + + teamspeak_client = libsForQt5.callPackage ../applications/networking/instant-messengers/teamspeak/client.nix { }; + teamspeak_server = callPackage ../applications/networking/instant-messengers/teamspeak/server.nix { }; + + taskell = haskell.lib.compose.justStaticExecutables haskellPackages.taskell; + + tap-plugins = callPackage ../applications/audio/tap-plugins { }; + + taskjuggler = callPackage ../applications/misc/taskjuggler { }; + + tabula = callPackage ../applications/misc/tabula { }; + + tabula-java = callPackage ../applications/misc/tabula-java { }; + + tasknc = callPackage ../applications/misc/tasknc { }; + + taskwarrior = callPackage ../applications/misc/taskwarrior { }; + + taskwarrior-tui = callPackage ../applications/misc/taskwarrior-tui { }; + + dstask = callPackage ../applications/misc/dstask { }; + + tasksh = callPackage ../applications/misc/tasksh { }; + + taskserver = callPackage ../servers/misc/taskserver { }; + + taskopen = callPackage ../applications/misc/taskopen { }; + + tdesktop = libsForQt5.callPackage ../applications/networking/instant-messengers/telegram/tdesktop { + abseil-cpp = abseil-cpp_202111; + }; + + tektoncd-cli = callPackage ../applications/networking/cluster/tektoncd-cli { }; + + telegram-cli = callPackage ../applications/networking/instant-messengers/telegram/telegram-cli { }; + + telepathy-gabble = callPackage ../applications/networking/instant-messengers/telepathy/gabble { }; + + telepathy-haze = callPackage ../applications/networking/instant-messengers/telepathy/haze {}; + + telepathy-logger = callPackage ../applications/networking/instant-messengers/telepathy/logger {}; + + telepathy-mission-control = callPackage ../applications/networking/instant-messengers/telepathy/mission-control { }; + + telepathy-salut = callPackage ../applications/networking/instant-messengers/telepathy/salut {}; + + telepathy-idle = callPackage ../applications/networking/instant-messengers/telepathy/idle {}; + + teleprompter = callPackage ../applications/misc/teleprompter {}; + + tempo = callPackage ../servers/tracing/tempo {}; + + temporal = callPackage ../applications/networking/cluster/temporal { }; + + tenacity = callPackage ../applications/audio/tenacity { wxGTK = wxGTK31-gtk3; }; + + tendermint = callPackage ../tools/networking/tendermint { }; + + termdbms = callPackage ../development/tools/database/termdbms { }; + + termdown = python3Packages.callPackage ../applications/misc/termdown { }; + + terminal-notifier = callPackage ../applications/misc/terminal-notifier {}; + + textplots = callPackage ../tools/graphics/textplots { }; + + texture-synthesis = callPackage ../tools/graphics/texture-synthesis { }; + + tty-solitaire = callPackage ../applications/misc/tty-solitaire { }; + + termtosvg = callPackage ../tools/misc/termtosvg { }; + + inherit (callPackage ../applications/graphics/tesseract {}) + tesseract3 + tesseract4; + tesseract = tesseract3; + + tetraproc = callPackage ../applications/audio/tetraproc { }; + + tev = callPackage ../applications/graphics/tev { }; + + themechanger = callPackage ../applications/misc/themechanger { }; + + thinkingRock = callPackage ../applications/misc/thinking-rock { }; + + thonny = callPackage ../applications/editors/thonny { }; + + thunderbirdPackages = recurseIntoAttrs (callPackage ../applications/networking/mailreaders/thunderbird/packages.nix { + callPackage = newScope { + inherit (rustPackages) cargo rustc; + libpng = libpng_apng; + gnused = gnused_422; + inherit (darwin.apple_sdk.frameworks) CoreMedia ExceptionHandling + Kerberos AVFoundation MediaToolbox + CoreLocation Foundation AddressBook; + inherit (darwin) libobjc; + }; + }); + + thunderbird-unwrapped = thunderbirdPackages.thunderbird; + thunderbird = wrapThunderbird thunderbird-unwrapped { }; + thunderbird-wayland = wrapThunderbird thunderbird-unwrapped { forceWayland = true; }; + + thunderbird-bin = thunderbird-bin-91; + thunderbird-bin-unwrapped = thunderbird-bin-91-unwrapped; + + thunderbird-bin-91 = wrapThunderbird thunderbird-bin-91-unwrapped { + applicationName = "thunderbird"; + pname = "thunderbird-bin"; + desktopName = "Thunderbird"; + }; + thunderbird-bin-91-unwrapped = callPackage ../applications/networking/mailreaders/thunderbird-bin { + inherit (gnome) adwaita-icon-theme; + }; + + thunderbolt = callPackage ../os-specific/linux/thunderbolt {}; + + ticpp = callPackage ../development/libraries/ticpp { }; + + ticker = callPackage ../applications/misc/ticker { }; + + tickrs = callPackage ../applications/misc/tickrs { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + tig = callPackage ../applications/version-management/git-and-tools/tig { }; + + timbreid = callPackage ../applications/audio/pd-plugins/timbreid { + fftw = fftwSinglePrec; + }; + + timelimit = callPackage ../tools/misc/timelimit { }; + + timewarrior = callPackage ../applications/misc/timewarrior { }; + + timew-sync-server = callPackage ../applications/misc/timew-sync-server { }; + + timg = callPackage ../tools/graphics/timg { }; + + timidity = callPackage ../tools/misc/timidity { + inherit (darwin.apple_sdk.frameworks) CoreAudio; + }; + + tint2 = callPackage ../applications/misc/tint2 { }; + + tiny = callPackage ../applications/networking/irc/tiny { + inherit (darwin.apple_sdk.frameworks) Foundation; + }; + + tipp10 = qt5.callPackage ../applications/misc/tipp10 { }; + + tixati = callPackage ../applications/networking/p2p/tixati { }; + + tkrev = callPackage ../applications/version-management/tkrev { }; + + tla = callPackage ../applications/version-management/arch { }; + + tlf = callPackage ../applications/radio/tlf { }; + + tlp = callPackage ../tools/misc/tlp { + inherit (linuxPackages) x86_energy_perf_policy; + }; + + tippecanoe = callPackage ../applications/misc/tippecanoe { }; + + tmatrix = callPackage ../applications/misc/tmatrix { }; + + tnef = callPackage ../applications/misc/tnef { }; + + todiff = callPackage ../applications/misc/todiff { }; + + todo-txt-cli = callPackage ../applications/office/todo.txt-cli { }; + + todofi-sh = callPackage ../applications/office/todofi.sh { }; + + todoman = callPackage ../applications/office/todoman { }; + + toggldesktop = libsForQt514.callPackage ../applications/misc/toggldesktop { }; + + topydo = callPackage ../applications/misc/topydo {}; + + torchat = callPackage ../applications/networking/instant-messengers/torchat { }; + + torrential = callPackage ../applications/networking/p2p/torrential { }; + + tortoisehg = callPackage ../applications/version-management/tortoisehg { }; + + tonelib-gfx = callPackage ../applications/audio/tonelib-gfx { }; + + tonelib-jam = callPackage ../applications/audio/tonelib-jam { }; + + tonelib-zoom = callPackage ../applications/audio/tonelib-zoom { }; + + tony = libsForQt514.callPackage ../applications/audio/tony { }; + + toot = callPackage ../applications/misc/toot { }; + + tootle = callPackage ../applications/misc/tootle { }; + + toxic = callPackage ../applications/networking/instant-messengers/toxic { }; + + toxiproxy = callPackage ../development/tools/toxiproxy { }; + + tqsl = callPackage ../applications/radio/tqsl { }; + trustedqsl = tqsl; # Alias added 2019-02-10 + + transcode = callPackage ../applications/audio/transcode { }; + + transcribe = callPackage ../applications/audio/transcribe { }; + + transmission = callPackage ../applications/networking/p2p/transmission { }; + libtransmission = transmission.override { + installLib = true; + enableDaemon = false; + enableCli = false; + }; + transmission-gtk = transmission.override { enableGTK3 = true; }; + transmission-qt = transmission.override { enableQt = true; }; + + transmission-remote-gtk = callPackage ../applications/networking/p2p/transmission-remote-gtk {}; + + transgui = callPackage ../applications/networking/p2p/transgui { }; + + traverso = libsForQt5.callPackage ../applications/audio/traverso { }; + + trayer = callPackage ../applications/window-managers/trayer { }; + + tinywl = callPackage ../applications/window-managers/tinywl { }; + + tinywm = callPackage ../applications/window-managers/tinywm { }; + + tree-from-tags = callPackage ../applications/audio/tree-from-tags { }; + + tdrop = callPackage ../applications/misc/tdrop { }; + + tre-command = callPackage ../tools/system/tre-command {}; + + tree = callPackage ../tools/system/tree {}; + + treesheets = callPackage ../applications/office/treesheets { + wxGTK = wxGTK31-gtk3; + }; + + tremc = callPackage ../applications/networking/p2p/tremc { }; + + tribler = callPackage ../applications/networking/p2p/tribler { }; + + trojita = libsForQt5.callPackage ../applications/networking/mailreaders/trojita { }; + + ttyper = callPackage ../applications/misc/ttyper { }; + + tudu = callPackage ../applications/office/tudu { }; + + tuna = python3Packages.callPackage ../os-specific/linux/tuna { }; + + tunefish = callPackage ../applications/audio/tunefish { + stdenv = clangStdenv; # https://github.com/jpcima/tunefish/issues/4 + }; + + tut = callPackage ../applications/misc/tut { }; + + tuxguitar = callPackage ../applications/editors/music/tuxguitar { + jre = jre8; + swt = swt_jdk8; + }; + + twister = callPackage ../applications/networking/p2p/twister { + boost = boost16x; + }; + + twmn = libsForQt5.callPackage ../applications/misc/twmn { }; + + testssl = callPackage ../applications/networking/testssl { }; + + lavalauncher = callPackage ../applications/misc/lavalauncher { }; + + t-rec = callPackage ../misc/t-rec { + inherit (darwin.apple_sdk.frameworks) Foundation; + }; + + ulauncher = callPackage ../applications/misc/ulauncher { }; + + twinkle = qt5.callPackage ../applications/networking/instant-messengers/twinkle { }; + + terminal-typeracer = callPackage ../applications/misc/terminal-typeracer { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + ueberzug = with python3Packages; toPythonApplication ueberzug; + + uhhyou.lv2 = callPackage ../applications/audio/uhhyou.lv2 { }; + + umurmur = callPackage ../applications/networking/umurmur { }; + + udocker = callPackage ../tools/virtualization/udocker { }; + + uefitoolPackages = recurseIntoAttrs (callPackage ../tools/system/uefitool/variants.nix {}); + uefitool = uefitoolPackages.new-engine; + + ungoogled-chromium = callPackage ../applications/networking/browsers/chromium ((config.chromium or {}) // { + ungoogled = true; + channel = "ungoogled-chromium"; + }); + + unigine-valley = callPackage ../applications/graphics/unigine-valley { }; + + unipicker = callPackage ../applications/misc/unipicker { }; + + unison = callPackage ../applications/networking/sync/unison { + enableX11 = config.unison.enableX11 or true; + }; + + unpaper = callPackage ../tools/graphics/unpaper { }; + + unison-ucm = callPackage ../development/compilers/unison { }; + + urh = callPackage ../applications/radio/urh { }; + + uroboros = callPackage ../tools/system/uroboros { }; + + uuagc = haskell.lib.compose.justStaticExecutables haskellPackages.uuagc; + + uucp = callPackage ../tools/misc/uucp { }; + + uvccapture = callPackage ../applications/video/uvccapture { }; + + uwimap = callPackage ../tools/networking/uwimap { }; + + utox = callPackage ../applications/networking/instant-messengers/utox { }; + + valentina = libsForQt512.callPackage ../applications/misc/valentina { }; + + vbindiff = callPackage ../applications/editors/vbindiff { }; + + vcprompt = callPackage ../applications/version-management/vcprompt { + autoconf = buildPackages.autoconf269; + }; + + vcs = callPackage ../applications/video/vcs { }; + + vcv-rack = callPackage ../applications/audio/vcv-rack { }; + + vdirsyncer = with python3Packages; toPythonApplication vdirsyncer; + + vdpauinfo = callPackage ../tools/X11/vdpauinfo { }; + + vengi-tools = callPackage ../applications/graphics/vengi-tools { + inherit (darwin.apple_sdk.frameworks) Carbon CoreServices OpenCL; + }; + + verbiste = callPackage ../applications/misc/verbiste { + inherit (gnome2) libgnomeui; + }; + + veusz = libsForQt5.callPackage ../applications/graphics/veusz { }; + + vim = callPackage ../applications/editors/vim { + inherit (darwin.apple_sdk.frameworks) Carbon Cocoa; + }; + + vimiv = callPackage ../applications/graphics/vimiv { }; + + vimiv-qt = callPackage ../applications/graphics/vimiv-qt { }; + + macvim = callPackage ../applications/editors/vim/macvim-configurable.nix { stdenv = clangStdenv; }; + + vimHugeX = vim_configurable; + + vim_configurable = vimUtils.makeCustomizable (callPackage ../applications/editors/vim/configurable.nix { + inherit (darwin.apple_sdk.frameworks) CoreServices Cocoa Foundation CoreData; + inherit (darwin) libobjc; + gtk2 = if stdenv.isDarwin then gtk2-x11 else gtk2; + gtk3 = if stdenv.isDarwin then gtk3-x11 else gtk3; + }); + + vim-darwin = (vim_configurable.override { + config = { + vim = { + gui = "none"; + darwin = true; + }; + }; + }).overrideAttrs (_: rec { + pname = "vim-darwin"; + meta = { + platforms = lib.platforms.darwin; + }; + }); + + vimacs = callPackage ../applications/editors/vim/vimacs.nix { }; + + vimv = callPackage ../tools/misc/vimv { }; + + qpdfview = libsForQt5.callPackage ../applications/misc/qpdfview {}; + + qtile = callPackage ../applications/window-managers/qtile { }; + + vimgolf = callPackage ../games/vimgolf { }; + + vimpc = callPackage ../applications/audio/vimpc { }; + + # this is a lower-level alternative to wrapNeovim conceived to handle + # more usecases when wrapping neovim. The interface is being actively worked on + # so expect breakage. use wrapNeovim instead if you want a stable alternative + wrapNeovimUnstable = callPackage ../applications/editors/neovim/wrapper.nix { }; + wrapNeovim = neovim-unwrapped: lib.makeOverridable (neovimUtils.legacyWrapper neovim-unwrapped); + neovim-unwrapped = callPackage ../applications/editors/neovim { + lua = luajit; + }; + + neovimUtils = callPackage ../applications/editors/neovim/utils.nix { }; + neovim = wrapNeovim neovim-unwrapped { }; + + neovim-qt-unwrapped = libsForQt5.callPackage ../applications/editors/neovim/neovim-qt.nix { }; + neovim-qt = libsForQt5.callPackage ../applications/editors/neovim/qt.nix { }; + + gnvim-unwrapped = callPackage ../applications/editors/neovim/gnvim { + gtk = gtk3; + }; + + gnvim = callPackage ../applications/editors/neovim/gnvim/wrapper.nix { }; + + neovide = callPackage ../applications/editors/neovim/neovide { }; + + neovim-remote = callPackage ../applications/editors/neovim/neovim-remote.nix { }; + + vis = callPackage ../applications/editors/vis { }; + + viw = callPackage ../applications/editors/viw { }; + + virt-viewer = callPackage ../applications/virtualization/virt-viewer { }; + + virt-top = callPackage ../applications/virtualization/virt-top { }; + + virt-what = callPackage ../applications/virtualization/virt-what { }; + + virt-manager = callPackage ../applications/virtualization/virt-manager { + system-libvirt = libvirt; + }; + + virt-manager-qt = libsForQt5.callPackage ../applications/virtualization/virt-manager/qt.nix { + qtermwidget = lxqt.qtermwidget; + }; + + virtscreen = callPackage ../tools/admin/virtscreen {}; + + virtual-ans = callPackage ../applications/audio/virtual-ans {}; + + virtualbox = libsForQt514.callPackage ../applications/virtualization/virtualbox { + stdenv = stdenv_32bit; + inherit (gnome2) libIDL; + jdk = openjdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + + virtualboxHardened = lowPrio (virtualbox.override { + enableHardening = true; + }); + + virtualboxHeadless = lowPrio (virtualbox.override { + enableHardening = true; + headless = true; + }); + + virtualboxExtpack = callPackage ../applications/virtualization/virtualbox/extpack.nix { }; + + virtualboxWithExtpack = lowPrio (virtualbox.override { + extensionPack = virtualboxExtpack; + }); + + virtualglLib = callPackage ../tools/X11/virtualgl/lib.nix { + fltk = fltk13; + }; + + virtualgl = callPackage ../tools/X11/virtualgl { + virtualglLib_i686 = if stdenv.hostPlatform.system == "x86_64-linux" + then pkgsi686Linux.virtualglLib + else null; + }; + + vpcs = callPackage ../applications/virtualization/vpcs { }; + + primusLib = callPackage ../tools/X11/primus/lib.nix { + nvidia_x11 = linuxPackages.nvidia_x11.override { libsOnly = true; }; + }; + + primus = callPackage ../tools/X11/primus { + stdenv_i686 = pkgsi686Linux.stdenv; + primusLib_i686 = if stdenv.hostPlatform.system == "x86_64-linux" + then pkgsi686Linux.primusLib + else null; + }; + + bumblebee = callPackage ../tools/X11/bumblebee { + nvidia_x11 = linuxPackages.nvidia_x11; + nvidia_x11_i686 = if stdenv.hostPlatform.system == "x86_64-linux" + then pkgsi686Linux.linuxPackages.nvidia_x11.override { libsOnly = true; } + else null; + libglvnd_i686 = if stdenv.hostPlatform.system == "x86_64-linux" + then pkgsi686Linux.libglvnd + else null; + }; + + uvcdynctrl = callPackage ../os-specific/linux/uvcdynctrl { }; + + vkeybd = callPackage ../applications/audio/vkeybd {}; + + vlc = libsForQt5.callPackage ../applications/video/vlc { + # Newest libcaca changed the API, and libvlc didn't catch it. Until next + # version arrives, it is safer to disable it. + # Upstream thread: https://code.videolan.org/videolan/vlc/-/issues/26389 + libcaca = null; + }; + + libvlc = vlc.override { + withQt5 = false; + qtbase = null; + qtsvg = null; + qtx11extras = null; + wrapQtAppsHook = null; + onlyLibVLC = true; + }; + + vmpk = libsForQt5.callPackage ../applications/audio/vmpk { }; + + vmware-horizon-client = callPackage ../applications/networking/remote/vmware-horizon-client { }; + + vocproc = callPackage ../applications/audio/vocproc { }; + + vnstat = callPackage ../applications/networking/vnstat { }; + + vocal = callPackage ../applications/audio/vocal { }; + + vogl = libsForQt5.callPackage ../development/tools/vogl { }; + + volnoti = callPackage ../applications/misc/volnoti { }; + + vorbis-tools = callPackage ../applications/audio/vorbis-tools { + autoreconfHook = buildPackages.autoreconfHook269; + }; + + vscode = callPackage ../applications/editors/vscode/vscode.nix { }; + vscode-fhs = vscode.fhs; + vscode-fhsWithPackages = vscode.fhsWithPackages; + + vscode-with-extensions = callPackage ../applications/editors/vscode/with-extensions.nix { }; + + vscode-utils = callPackage ../applications/editors/vscode/extensions/vscode-utils.nix { }; + + vscode-extensions = recurseIntoAttrs (callPackage ../applications/editors/vscode/extensions { }); + + vscodium = callPackage ../applications/editors/vscode/vscodium.nix { }; + vscodium-fhs = vscodium.fhs; + vscodium-fhsWithPackages = vscodium.fhsWithPackages; + + openvscode-server = callPackage ../servers/openvscode-server { + inherit (darwin.apple_sdk.frameworks) AppKit Cocoa Security; + inherit (darwin) cctools; + }; + + code-server = callPackage ../servers/code-server { + inherit (darwin.apple_sdk.frameworks) AppKit Cocoa CoreServices Security; + inherit (darwin) cctools; + inherit (nodePackages) node-gyp; + }; + + vue = callPackage ../applications/misc/vue { }; + + vuze = callPackage ../applications/networking/p2p/vuze { + jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + + vwm = callPackage ../applications/window-managers/vwm { }; + + yeahwm = callPackage ../applications/window-managers/yeahwm { }; + + vym = qt5.callPackage ../applications/misc/vym { }; + + wad = callPackage ../tools/security/wad { }; + + wafw00f = callPackage ../tools/security/wafw00f { }; + + whispers = callPackage ../tools/security/whispers { }; + + waon = callPackage ../applications/audio/waon { }; + + w3m = callPackage ../applications/networking/browsers/w3m { }; + + # Should always be the version with the most features + w3m-full = w3m; + + # Version without X11 + w3m-nox = w3m.override { + x11Support = false; + imlib2 = imlib2-nox; + }; + + # Version without X11 or graphics + w3m-nographics = w3m.override { + x11Support = false; + graphicsSupport = false; + }; + + # Version for batch text processing, not a good browser + w3m-batch = w3m.override { + graphicsSupport = false; + mouseSupport = false; + x11Support = false; + imlib2 = imlib2-nox; + }; + + watson = callPackage ../applications/office/watson { }; + + wapiti = callPackage ../tools/security/wapiti { }; + + wayfireApplications = wayfireApplications-unwrapped.withPlugins (plugins: [ plugins.wf-shell ]); + inherit (wayfireApplications) wayfire wcm; + wayfireApplications-unwrapped = recurseIntoAttrs ( + (callPackage ../applications/window-managers/wayfire/applications.nix { }). + extend (_: _: { wlroots = wlroots_0_14; }) + ); + wayfirePlugins = recurseIntoAttrs ( + callPackage ../applications/window-managers/wayfire/plugins.nix { + inherit (wayfireApplications-unwrapped) wayfire; + } + ); + wf-config = callPackage ../applications/window-managers/wayfire/wf-config.nix { }; + + waypipe = callPackage ../applications/networking/remote/waypipe { }; + + wayv = callPackage ../tools/X11/wayv {}; + + wayvnc = callPackage ../applications/networking/remote/wayvnc { }; + + webcamoid = libsForQt5.callPackage ../applications/video/webcamoid { }; + + webmacs = libsForQt5.callPackage ../applications/networking/browsers/webmacs {}; + + webssh = with python3Packages; toPythonApplication webssh; + + webtorrent_desktop = callPackage ../applications/video/webtorrent_desktop {}; + + wrapWeechat = callPackage ../applications/networking/irc/weechat/wrapper.nix { }; + + weechat-unwrapped = callPackage ../applications/networking/irc/weechat { + inherit (darwin) libobjc; + inherit (darwin) libresolv; + guile = guile_2_0; + }; + + weechat = wrapWeechat weechat-unwrapped { }; + + weechatScripts = recurseIntoAttrs (callPackage ../applications/networking/irc/weechat/scripts { }); + + westonLite = weston.override { + pango = null; + freerdp = null; + libunwind = null; + vaapi = null; + libva = null; + libwebp = null; + xwayland = null; + pipewire = null; + }; + + chatterino2 = libsForQt5.callPackage ../applications/networking/instant-messengers/chatterino2 {}; + + weston = callPackage ../applications/window-managers/weston { }; + + whalebird = callPackage ../applications/misc/whalebird { + electron = electron_14; + }; + + wio = callPackage ../applications/window-managers/wio { + wlroots = wlroots_0_14; + }; + + whitebox-tools = callPackage ../applications/gis/whitebox-tools { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + windowlab = callPackage ../applications/window-managers/windowlab { }; + + windowmaker = callPackage ../applications/window-managers/windowmaker { }; + dockapps = callPackage ../applications/window-managers/windowmaker/dockapps { }; + + wily = callPackage ../applications/editors/wily { }; + + wings = callPackage ../applications/graphics/wings { + erlang = erlangR21; + }; + + write_stylus = libsForQt5.callPackage ../applications/graphics/write_stylus { }; + + wlc = callPackage ../tools/misc/wlc { }; + + wllvm = callPackage ../development/tools/wllvm { }; + + wmname = callPackage ../applications/misc/wmname { }; + + wmctrl = callPackage ../tools/X11/wmctrl { }; + + wmderland = callPackage ../applications/window-managers/wmderland { }; + + wmderlandc = callPackage ../applications/window-managers/wmderlandc { }; + + wmii_hg = callPackage ../applications/window-managers/wmii-hg { }; + + wofi = callPackage ../applications/misc/wofi { }; + + wofi-emoji = callPackage ../applications/misc/wofi-emoji { }; + + cl-wordle = callPackage ../games/cl-wordle { }; + + wordnet = callPackage ../applications/misc/wordnet { + inherit (darwin.apple_sdk.frameworks) Cocoa; + }; + + wordgrinder = callPackage ../applications/office/wordgrinder { }; + + worker = callPackage ../applications/misc/worker { }; + + workrave = callPackage ../applications/misc/workrave { + inherit (python27Packages) cheetah; + inherit (gst_all_1) gstreamer gst-plugins-base gst-plugins-good; + }; + + worldengine-cli = python3Packages.worldengine; + + wpsoffice = libsForQt514.callPackage ../applications/office/wpsoffice {}; + + wrapFirefox = callPackage ../applications/networking/browsers/firefox/wrapper.nix { }; + + wrapThunderbird = callPackage ../applications/networking/mailreaders/thunderbird/wrapper.nix { }; + + wp-cli = callPackage ../development/tools/wp-cli { }; + + wsjtx = qt5.callPackage ../applications/radio/wsjtx { }; + + wxhexeditor = callPackage ../applications/editors/wxhexeditor { + wxGTK = wxGTK31; + }; + + wxcam = callPackage ../applications/video/wxcam { + inherit (gnome2) libglade; + wxGTK = wxGTK28; + gtk = gtk2; + }; + + xa = callPackage ../development/compilers/xa/xa.nix { }; + dxa = callPackage ../development/compilers/xa/dxa.nix { }; + + x11basic = callPackage ../development/compilers/x11basic { + autoconf = buildPackages.autoconf269; + }; + + x11vnc = callPackage ../tools/X11/x11vnc { }; + + x11spice = callPackage ../tools/X11/x11spice { }; + + x2goclient = libsForQt5.callPackage ../applications/networking/remote/x2goclient { }; + + x2goserver = callPackage ../applications/networking/remote/x2goserver { }; + + x2vnc = callPackage ../tools/X11/x2vnc { }; + + x32edit = callPackage ../applications/audio/midas/x32edit.nix {}; + + x42-avldrums = callPackage ../applications/audio/x42-avldrums { }; + + x42-gmsynth = callPackage ../applications/audio/x42-gmsynth { }; + + x42-plugins = callPackage ../applications/audio/x42-plugins { }; + + xannotate = callPackage ../tools/X11/xannotate {}; + + xaos = callPackage ../applications/graphics/xaos { + libpng = libpng12; + }; + + xastir = callPackage ../applications/misc/xastir { + rastermagick = imagemagick6; + inherit (xorg) libXt; + }; + + xautomation = callPackage ../tools/X11/xautomation { }; + + xawtv = callPackage ../applications/video/xawtv { }; + + xbattbar = callPackage ../applications/misc/xbattbar { }; + + xbindkeys = callPackage ../tools/X11/xbindkeys { }; + + xbindkeys-config = callPackage ../tools/X11/xbindkeys-config { + gtk = gtk2; + }; + + xxh = with python3Packages; toPythonApplication xxh; + + kodiPackages = recurseIntoAttrs (kodi.packages); + + kodi = callPackage ../applications/video/kodi { + jre_headless = jdk11_headless; + }; + + kodi-wayland = callPackage ../applications/video/kodi { + jre_headless = jdk11_headless; + waylandSupport = true; + }; + + kodi-gbm = callPackage ../applications/video/kodi { + jre_headless = jdk11_headless; + gbmSupport = true; + }; + + kodi-cli = callPackage ../tools/misc/kodi-cli { }; + + kodi-retroarch-advanced-launchers = + callPackage ../applications/emulators/retroarch/kodi-advanced-launchers.nix { }; + + xca = libsForQt5.callPackage ../applications/misc/xca { }; + + xcalib = callPackage ../tools/X11/xcalib { }; + + xcape = callPackage ../tools/X11/xcape { }; + + xcat = callPackage ../tools/security/xcat { }; + + xchainkeys = callPackage ../tools/X11/xchainkeys { }; + + xchm = callPackage ../applications/misc/xchm { }; + + inherit (xorg) xcompmgr; + + picom = callPackage ../applications/window-managers/picom {}; + + picom-next = callPackage ../applications/window-managers/picom/picom-next.nix { }; + + xd = callPackage ../applications/networking/p2p/xd {}; + + xdaliclock = callPackage ../tools/misc/xdaliclock {}; + + xdg-dbus-proxy = callPackage ../development/libraries/xdg-dbus-proxy { }; + + xdg-desktop-portal = callPackage ../development/libraries/xdg-desktop-portal { }; + + xdg-desktop-portal-gnome = callPackage ../development/libraries/xdg-desktop-portal-gnome { }; + + xdg-desktop-portal-gtk = callPackage ../development/libraries/xdg-desktop-portal-gtk { }; + + xdg-desktop-portal-wlr = callPackage ../development/libraries/xdg-desktop-portal-wlr { }; + + xdg-user-dirs = callPackage ../tools/X11/xdg-user-dirs { }; + + xdg-utils = callPackage ../tools/X11/xdg-utils { + w3m = w3m-batch; + }; + + xdgmenumaker = callPackage ../applications/misc/xdgmenumaker { }; + + xdotool = callPackage ../tools/X11/xdotool { }; + + xed-editor = callPackage ../applications/editors/xed-editor { + xapps = cinnamon.xapps; + }; + + xenPackages = recurseIntoAttrs (callPackage ../applications/virtualization/xen/packages.nix {}); + + xen = xenPackages.xen-vanilla; + xen-slim = xenPackages.xen-slim; + xen-light = xenPackages.xen-light; + + xen_4_10 = xenPackages.xen_4_10-vanilla; + xen_4_10-slim = xenPackages.xen_4_10-slim; + xen_4_10-light = xenPackages.xen_4_10-light; + + xkbset = callPackage ../tools/X11/xkbset { }; + + xkbmon = callPackage ../applications/misc/xkbmon { }; + + win-spice = callPackage ../applications/virtualization/driver/win-spice { }; + win-virtio = callPackage ../applications/virtualization/driver/win-virtio { }; + win-qemu = callPackage ../applications/virtualization/driver/win-qemu { }; + win-pvdrivers = callPackage ../applications/virtualization/driver/win-pvdrivers { }; + win-signed-gplpv-drivers = callPackage ../applications/virtualization/driver/win-signed-gplpv-drivers { }; + + xfe = callPackage ../applications/misc/xfe { + fox = fox_1_6; + }; + + xfig = callPackage ../applications/graphics/xfig { }; + + xfractint = callPackage ../applications/graphics/xfractint {}; + + xine-ui = callPackage ../applications/video/xine-ui { }; + + xlsxgrep = callPackage ../applications/search/xlsxgrep { }; + + xmind = callPackage ../applications/misc/xmind { }; + + xneur = callPackage ../applications/misc/xneur { + enchant = enchant1; + }; + + gxneur = callPackage ../applications/misc/gxneur { + inherit (gnome2) libglade GConf; + }; + + xiphos = callPackage ../applications/misc/xiphos { + gtkhtml = gnome2.gtkhtml4; + }; + + xournal = callPackage ../applications/graphics/xournal { + inherit (gnome2) libgnomeprint libgnomeprintui libgnomecanvas; + }; + + xournalpp = callPackage ../applications/graphics/xournalpp { + lua = lua5_3; + }; + + apvlv = callPackage ../applications/misc/apvlv { }; + + xpdf = libsForQt5.callPackage ../applications/misc/xpdf { }; + + xplugd = callPackage ../tools/X11/xplugd { }; + + xpointerbarrier = callPackage ../tools/X11/xpointerbarrier {}; + + xkb-switch = callPackage ../tools/X11/xkb-switch { }; + + xkb-switch-i3 = callPackage ../tools/X11/xkb-switch-i3 { }; + + xkblayout-state = callPackage ../applications/misc/xkblayout-state { }; + + xlife = callPackage ../applications/graphics/xlife { }; + + xmobar = haskellPackages.xmobar; + + xmonad-log = callPackage ../tools/misc/xmonad-log { }; + + xmonad-with-packages = callPackage ../applications/window-managers/xmonad/wrapper.nix { + inherit (haskellPackages) ghcWithPackages; + packages = _: [ haskellPackages.xmonad-contrib ]; + }; + + xmonad_log_applet = callPackage ../applications/window-managers/xmonad/log-applet { + inherit (xfce) libxfce4util xfce4-panel; + }; + + xmonad_log_applet_mate = xmonad_log_applet.override { + desktopSupport = "mate"; + }; + + xmonad_log_applet_xfce = xmonad_log_applet.override { + desktopSupport = "xfce4"; + }; + + xmountains = callPackage ../applications/graphics/xmountains { }; + + xmpp-client = callPackage ../applications/networking/instant-messengers/xmpp-client { }; + + libxpdf = callPackage ../applications/misc/xpdf/libxpdf.nix { }; + + xpra = callPackage ../tools/X11/xpra { }; + xpraWithNvenc = callPackage ../tools/X11/xpra { + withNvenc = true; + nvidia_x11 = linuxPackages.nvidia_x11.override { libsOnly = true; }; + }; + libfakeXinerama = callPackage ../tools/X11/xpra/libfakeXinerama.nix { }; + + + xplayer = callPackage ../applications/video/xplayer { + inherit (gst_all_1) gstreamer gst-plugins-base gst-plugins-good gst-plugins-bad; + inherit (cinnamon) xapps; + }; + libxplayer-plparser = callPackage ../applications/video/xplayer/plparser.nix { }; + + xrectsel = callPackage ../tools/X11/xrectsel { }; + + xrestop = callPackage ../tools/X11/xrestop { }; + + xrgears = callPackage ../applications/graphics/xrgears { }; + + xsd = callPackage ../development/libraries/xsd { + stdenv = gcc9Stdenv; + }; + + xscope = callPackage ../applications/misc/xscope { }; + + xscreensaver = callPackage ../misc/screensavers/xscreensaver { }; + + xsuspender = callPackage ../applications/misc/xsuspender { }; + + xss-lock = callPackage ../misc/screensavers/xss-lock { }; + + xloadimage = callPackage ../tools/X11/xloadimage { }; + + xssproxy = callPackage ../misc/screensavers/xssproxy { }; + + xsynth_dssi = callPackage ../applications/audio/xsynth-dssi { }; + + xtrace = callPackage ../tools/X11/xtrace { }; + + xtruss = callPackage ../tools/X11/xtruss { }; + + xtuner = callPackage ../applications/audio/xtuner { }; + + xmacro = callPackage ../tools/X11/xmacro { }; + + xmenu = callPackage ../applications/misc/xmenu { }; + + xmlcopyeditor = callPackage ../applications/editors/xmlcopyeditor { }; + + xmp = callPackage ../applications/audio/xmp { }; + + xnee = callPackage ../tools/X11/xnee { }; + + xvidcap = callPackage ../applications/video/xvidcap { + inherit (gnome2) scrollkeeper libglade; + }; + + xygrib = libsForQt514.callPackage ../applications/misc/xygrib {}; + + xzgv = callPackage ../applications/graphics/xzgv { }; + + yabar = callPackage ../applications/window-managers/yabar { }; + + yabar-unstable = callPackage ../applications/window-managers/yabar/unstable.nix { }; + + yarp = callPackage ../applications/science/robotics/yarp {}; + + yate = callPackage ../applications/misc/yate { }; + + ydiff = with python3.pkgs; toPythonApplication ydiff; + + yed = callPackage ../applications/graphics/yed {}; + + yeetgif = callPackage ../applications/graphics/yeetgif { }; + + inherit (gnome) yelp; + + yelp-tools = callPackage ../development/misc/yelp-tools { }; + + yokadi = python3Packages.callPackage ../applications/misc/yokadi {}; + + yoshimi = callPackage ../applications/audio/yoshimi { }; + + your-editor = callPackage ../applications/editors/your-editor { stdenv = gccStdenv; }; + + youtube-dl = with python3Packages; toPythonApplication youtube-dl; + + youtube-dl-light = with python3Packages; toPythonApplication youtube-dl-light; + + yt-dlp = with python3Packages; toPythonApplication yt-dlp; + + yt-dlp-light = with python3Packages; toPythonApplication yt-dlp-light; + + youtube-viewer = perlPackages.WWWYoutubeViewer; + + ytalk = callPackage ../applications/networking/instant-messengers/ytalk { }; + + ytarchive = callPackage ../tools/misc/ytarchive { }; + + ytcc = callPackage ../tools/networking/ytcc { }; + + ytmdesktop = callPackage ../applications/audio/ytmdesktop { }; + + ytmdl = callPackage ../tools/misc/ytmdl { }; + + zam-plugins = callPackage ../applications/audio/zam-plugins { }; + + zammad = callPackage ../applications/networking/misc/zammad { }; + + zathuraPkgs = callPackage ../applications/misc/zathura { }; + zathura = zathuraPkgs.zathuraWrapper; + + zdns = callPackage ../tools/security/zdns { }; + + zerobin = callPackage ../applications/networking/zerobin { }; + + zeroc-ice = callPackage ../development/libraries/zeroc-ice { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + zeroc-ice-cpp11 = zeroc-ice.override { cpp11 = true; }; + + zeroc-ice-36 = callPackage ../development/libraries/zeroc-ice/3.6.nix { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + zeronet = callPackage ../applications/networking/p2p/zeronet { }; + + zexy = callPackage ../applications/audio/pd-plugins/zexy { + autoconf = buildPackages.autoconf269; + }; + + zgrab2 = callPackage ../tools/security/zgrab2 { }; + + zgrviewer = callPackage ../applications/graphics/zgrviewer { }; + + zgv = callPackage ../applications/graphics/zgv { + # Enable the below line for terminal display. Note + # that it requires sixel graphics compatible terminals like mlterm + # or xterm -ti 340 + SDL = SDL_sixel; + }; + + zim = callPackage ../applications/office/zim { }; + + zita-ajbridge = callPackage ../applications/audio/zita-ajbridge { }; + + zita-at1 = callPackage ../applications/audio/zita-at1 { }; + + zita-njbridge = callPackage ../applications/audio/zita-njbridge { }; + + zola = callPackage ../applications/misc/zola { + inherit (darwin.apple_sdk.frameworks) CoreServices; + }; + + zombietrackergps = libsForQt5.callPackage ../applications/gis/zombietrackergps { }; + + zoom-us = callPackage ../applications/networking/instant-messengers/zoom-us { }; + + zotero = callPackage ../applications/office/zotero { }; + + zscroll = callPackage ../applications/misc/zscroll {}; + + zsteg = callPackage ../tools/security/zsteg { }; + + inherit (nodePackages) zx; + + zynaddsubfx = zyn-fusion; + + zynaddsubfx-fltk = callPackage ../applications/audio/zynaddsubfx { + guiModule = "fltk"; + }; + + zynaddsubfx-ntk = callPackage ../applications/audio/zynaddsubfx { + guiModule = "ntk"; + }; + + zyn-fusion = callPackage ../applications/audio/zynaddsubfx { + guiModule = "zest"; + }; + + ### BLOCKCHAINS / CRYPTOCURRENCIES / WALLETS + + aeon = callPackage ../applications/blockchains/aeon { + boost = boost172; + }; + + alfis = callPackage ../applications/blockchains/alfis { + inherit (darwin.apple_sdk.frameworks) Cocoa Security WebKit; + inherit (gnome) zenity; + }; + alfis-nogui = alfis.override { + withGui = false; + }; + + balanceofsatoshis = nodePackages.balanceofsatoshis; + + bitcoin = libsForQt5.callPackage ../applications/blockchains/bitcoin { + boost = boost17x; + miniupnpc = miniupnpc_2; + withGui = true; + inherit (darwin) autoSignDarwinBinariesHook; + }; + + bitcoind = callPackage ../applications/blockchains/bitcoin { + boost = boost17x; + miniupnpc = miniupnpc_2; + withGui = false; + inherit (darwin) autoSignDarwinBinariesHook; + }; + + bitcoind-knots = callPackage ../applications/blockchains/bitcoin-knots { + boost = boost17x; + miniupnpc = miniupnpc_2; + withGui = false; + inherit (darwin) autoSignDarwinBinariesHook; + }; + + cgminer = callPackage ../applications/blockchains/cgminer { }; + + chia = callPackage ../applications/blockchains/chia { }; + + chia-plotter = callPackage ../applications/blockchains/chia-plotter { }; + + clightning = callPackage ../applications/blockchains/clightning { }; + + besu = callPackage ../applications/blockchains/besu { }; + + bitcoin-abc = libsForQt5.callPackage ../applications/blockchains/bitcoin-abc { + boost = boost165; + withGui = true; + }; + bitcoind-abc = callPackage ../applications/blockchains/bitcoin-abc { + boost = boost165; + mkDerivation = stdenv.mkDerivation; + withGui = false; + }; + + bitcoin-unlimited = libsForQt514.callPackage ../applications/blockchains/bitcoin-unlimited { + inherit (darwin.apple_sdk.frameworks) Foundation ApplicationServices AppKit; + withGui = true; + }; + bitcoind-unlimited = callPackage ../applications/blockchains/bitcoin-unlimited { + inherit (darwin.apple_sdk.frameworks) Foundation ApplicationServices AppKit; + withGui = false; + }; + + bitcoin-classic = libsForQt514.callPackage ../applications/blockchains/bitcoin-classic { + boost = boost165; + withGui = true; + }; + bitcoind-classic = callPackage ../applications/blockchains/bitcoin-classic { + boost = boost165; + withGui = false; + }; + + bitcoin-gold = libsForQt514.callPackage ../applications/blockchains/bitcoin-gold { + boost = boost165; + withGui = true; + }; + bitcoind-gold = callPackage ../applications/blockchains/bitcoin-gold { + boost = boost165; + withGui = false; + }; + + btcpayserver = callPackage ../applications/blockchains/btcpayserver { }; + + charge-lnd = callPackage ../applications/blockchains/charge-lnd { }; + + cryptop = python3.pkgs.callPackage ../applications/blockchains/cryptop { }; + + dashpay = callPackage ../applications/blockchains/dashpay { }; + + dcrd = callPackage ../applications/blockchains/dcrd { }; + dcrwallet = callPackage ../applications/blockchains/dcrwallet { }; + + digibyte = libsForQt514.callPackage ../applications/blockchains/digibyte { + withGui = true; + boost = boost170; + }; + digibyted = callPackage ../applications/blockchains/digibyte { + withGui = false; + boost = boost170; + }; + + dogecoin = callPackage ../applications/blockchains/dogecoin { + boost = boost165; + withGui = true; + }; + dogecoind = callPackage ../applications/blockchains/dogecoin { + boost = boost165; + withGui = false; + }; + + eclair = callPackage ../applications/blockchains/eclair { }; + + electrs = callPackage ../applications/blockchains/electrs { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + elements = libsForQt5.callPackage ../applications/blockchains/elements { + miniupnpc = miniupnpc_2; + withGui = true; + boost = boost175; + }; + elementsd = callPackage ../applications/blockchains/elements { + miniupnpc = miniupnpc_2; + withGui = false; + boost = boost175; + }; + + ergo = callPackage ../applications/blockchains/ergo { }; + + erigon = callPackage ../applications/blockchains/erigon.nix { }; + + exodus = callPackage ../applications/blockchains/exodus { }; + + faraday = callPackage ../applications/blockchains/faraday { }; + + fulcrum = libsForQt5.callPackage ../applications/blockchains/fulcrum { }; + + go-ethereum = callPackage ../applications/blockchains/go-ethereum { + inherit (darwin) libobjc; + inherit (darwin.apple_sdk.frameworks) IOKit; + }; + + groestlcoin = libsForQt5.callPackage ../applications/blockchains/groestlcoin { + boost = boost17x; + withGui = true; + inherit (darwin) autoSignDarwinBinariesHook; + }; + + groestlcoind = callPackage ../applications/blockchains/groestlcoin { + boost = boost17x; + inherit (darwin) autoSignDarwinBinariesHook; + }; + + ledger_agent = with python3Packages; toPythonApplication ledger_agent; + + ledger-live-desktop = callPackage ../applications/blockchains/ledger-live-desktop { }; + + lightning-loop = callPackage ../applications/blockchains/lightning-loop { }; + + lightning-pool = callPackage ../applications/blockchains/lightning-pool { }; + + litecoin = libsForQt514.callPackage ../applications/blockchains/litecoin { + inherit (darwin.apple_sdk.frameworks) AppKit; + }; + litecoind = litecoin.override { withGui = false; }; + + livedl = callPackage ../tools/misc/livedl { }; + + lnd = callPackage ../applications/blockchains/lnd { }; + + lndconnect = callPackage ../applications/blockchains/lndconnect { }; + + lndmanage = callPackage ../applications/blockchains/lndmanage { }; + + monero-cli = callPackage ../applications/blockchains/monero-cli { + inherit (darwin.apple_sdk.frameworks) CoreData IOKit PCSC; + }; + + monero-gui = libsForQt5.callPackage ../applications/blockchains/monero-gui { + boost = boost17x; + }; + + oxen = callPackage ../applications/blockchains/oxen { + boost = boost17x; + }; + + masari = callPackage ../applications/blockchains/masari { boost = boost165; }; + + napari = with python3Packages; toPythonApplication napari; + + nano-wallet = libsForQt5.callPackage ../applications/blockchains/nano-wallet { + boost = boost172; + }; + + namecoin = callPackage ../applications/blockchains/namecoin { withGui = true; }; + namecoind = callPackage ../applications/blockchains/namecoin { withGui = false; }; + + nbxplorer = callPackage ../applications/blockchains/nbxplorer { }; + + pivx = libsForQt5.callPackage ../applications/blockchains/pivx { withGui = true; }; + pivxd = callPackage ../applications/blockchains/pivx { + withGui = false; + qtbase = null; + qttools = null; + wrapQtAppsHook = null; + autoreconfHook = buildPackages.autoreconfHook269; + }; + + ethabi = callPackage ../applications/blockchains/ethabi { }; + + pycoin = with python3Packages; toPythonApplication pycoin; + + stellar-core = callPackage ../applications/blockchains/stellar-core { }; + + sumokoin = callPackage ../applications/blockchains/sumokoin { boost = boost165; }; + + solana-testnet = callPackage ../applications/blockchains/solana { + inherit (darwin.apple_sdk.frameworks) IOKit Security AppKit; + }; + + snarkos = callPackage ../applications/blockchains/snarkos { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + tessera = callPackage ../applications/blockchains/tessera { }; + + vertcoin = libsForQt514.callPackage ../applications/blockchains/vertcoin { + boost = boost165; + withGui = true; + }; + vertcoind = callPackage ../applications/blockchains/vertcoin { + boost = boost165; + withGui = false; + }; + + wasabiwallet = callPackage ../applications/blockchains/wasabiwallet { }; + + wasabibackend = callPackage ../applications/blockchains/wasabibackend { }; + + wownero = callPackage ../applications/blockchains/wownero { + boost = boost175; + }; + + zcash = callPackage ../applications/blockchains/zcash { }; + + lightwalletd = callPackage ../applications/blockchains/lightwalletd { }; + + openethereum = callPackage ../applications/blockchains/openethereum { }; + + polkadot = callPackage ../applications/blockchains/polkadot { }; + + particl-core = callPackage ../applications/blockchains/particl-core { miniupnpc = miniupnpc_2; }; + + quorum = callPackage ../applications/blockchains/quorum { }; + + saga = libsForQt5.callPackage ../applications/gis/saga { + inherit (darwin.apple_sdk.frameworks) Cocoa; + }; + + samplv1 = libsForQt5.callPackage ../applications/audio/samplv1 { }; + + scaleft = callPackage ../applications/networking/scaleft { }; + + scaleway-cli = callPackage ../tools/admin/scaleway-cli { }; + + beancount = with python3.pkgs; toPythonApplication beancount; + + bean-add = callPackage ../applications/office/beancount/bean-add.nix { }; + + bench = haskell.lib.compose.justStaticExecutables haskellPackages.bench; + + cri-o = callPackage ../applications/virtualization/cri-o/wrapper.nix { }; + cri-o-unwrapped = callPackage ../applications/virtualization/cri-o { }; + + confd = callPackage ../tools/system/confd { }; + + conmon = callPackage ../applications/virtualization/conmon { }; + + digikam = libsForQt5.callPackage ../applications/graphics/digikam {}; + + drumkv1 = libsForQt5.callPackage ../applications/audio/drumkv1 { }; + + gshhg-gmt = callPackage ../applications/gis/gmt/gshhg.nix { }; + + eureka-editor = callPackage ../applications/misc/eureka-editor { }; + + eureka-ideas = callPackage ../applications/misc/eureka-ideas { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + fava = callPackage ../applications/office/fava {}; + + nux = callPackage ../tools/misc/nux { }; + + tts = callPackage ../tools/audio/tts { }; + + ### GAMES + + _1oom = callPackage ../games/1oom { }; + + _2048-in-terminal = callPackage ../games/2048-in-terminal { }; + + _20kly = callPackage ../games/20kly { }; + + _90secondportraits = callPackage ../games/90secondportraits { love = love_0_10; }; + + ace-of-penguins = callPackage ../games/ace-of-penguins { }; + + among-sus = callPackage ../games/among-sus { }; + + antsimulator = callPackage ../games/antsimulator { }; + + augustus = callPackage ../games/augustus { }; + + ballerburg = callPackage ../games/ballerburg { } ; + + blockattack = callPackage ../games/blockattack { } ; + + colobot = callPackage ../games/colobot { }; + + doom-bcc = callPackage ../games/zdoom/bcc-git.nix { }; + + enigma = callPackage ../games/enigma { }; + + ezquake = callPackage ../games/ezquake { }; + + fmodex = callPackage ../games/zandronum/fmod.nix { }; + + freedroid = callPackage ../games/freedroid { }; + + freedroidrpg = callPackage ../games/freedroidrpg { }; + + freenukum = callPackage ../games/freenukum { }; + + gnome-hexgl = callPackage ../games/gnome-hexgl { }; + + gotypist = callPackage ../games/gotypist { }; + + heroic = callPackage ../games/heroic { }; + + julius = callPackage ../games/julius { }; + + jumpnbump = callPackage ../games/jumpnbump { }; + + keeperrl = callPackage ../games/keeperrl { }; + + lbreakout2 = callPackage ../games/lbreakout2 { }; + + ltris = callPackage ../games/ltris { }; + + lunar-client = callPackage ../games/lunar-client { }; + + maelstrom = callPackage ../games/maelstrom { }; + + mar1d = callPackage ../games/mar1d { } ; + + meritous = callPackage ../games/meritous { }; + + oh-my-git = callPackage ../games/oh-my-git { }; + + opendune = callPackage ../games/opendune { }; + + openrct2 = callPackage ../games/openrct2 { }; + + osu-lazer = callPackage ../games/osu-lazer { }; + + pro-office-calculator = libsForQt5.callPackage ../games/pro-office-calculator { }; + + qgo = libsForQt5.callPackage ../games/qgo { }; + + rpg-cli = callPackage ../games/rpg-cli { }; + + runelite = callPackage ../games/runelite { }; + + runescape = callPackage ../games/runescape-launcher { }; + + sm64ex = callPackage ../games/sm64ex { }; + + snipes = callPackage ../games/snipes { }; + + unvanquished = callPackage ../games/unvanquished { }; + + xbill = callPackage ../games/xbill { }; + + xmage = callPackage ../games/xmage { }; + + abbaye-des-morts = callPackage ../games/abbaye-des-morts { }; + + abuse = callPackage ../games/abuse { }; + + adom = callPackage ../games/adom { }; + + airshipper = callPackage ../games/airshipper { }; + + airstrike = callPackage ../games/airstrike { }; + + alephone = callPackage ../games/alephone { }; + alephone-durandal = callPackage ../games/alephone/durandal { }; + alephone-eternal = callPackage ../games/alephone/eternal { }; + alephone-evil = callPackage ../games/alephone/evil { }; + alephone-infinity = callPackage ../games/alephone/infinity { }; + alephone-marathon = callPackage ../games/alephone/marathon { }; + alephone-pheonix = callPackage ../games/alephone/pheonix { }; + alephone-red = callPackage ../games/alephone/red { }; + alephone-rubicon-x = callPackage ../games/alephone/rubicon-x { }; + alephone-pathways-into-darkness = + callPackage ../games/alephone/pathways-into-darkness { }; + + alienarena = callPackage ../games/alienarena { }; + + amoeba = callPackage ../games/amoeba { }; + amoeba-data = callPackage ../games/amoeba/data.nix { }; + + andyetitmoves = callPackage ../games/andyetitmoves { }; + + angband = callPackage ../games/angband { }; + + anki = python3Packages.callPackage ../games/anki { + inherit (darwin.apple_sdk.frameworks) CoreAudio; + }; + anki-bin = callPackage ../games/anki/bin.nix { buildFHSUserEnv = buildFHSUserEnvBubblewrap; }; + + armagetronad = callPackage ../games/armagetronad { }; + + armagetronad-dedicated = callPackage ../games/armagetronad { dedicatedServer = true; }; + + arena = callPackage ../games/arena { }; + + arx-libertatis = libsForQt5.callPackage ../games/arx-libertatis { }; + + asc = callPackage ../games/asc { + lua = lua5_1; + libsigcxx = libsigcxx12; + physfs = physfs_2; + }; + + assaultcube = callPackage ../games/assaultcube { }; + + astromenace = callPackage ../games/astromenace { }; + + atanks = callPackage ../games/atanks { }; + + azimuth = callPackage ../games/azimuth { }; + + ballAndPaddle = callPackage ../games/ball-and-paddle { + guile = guile_1_8; + }; + + banner = callPackage ../games/banner { }; + + bastet = callPackage ../games/bastet { }; + + black-hole-solver = callPackage ../games/black-hole-solver { + inherit (perlPackages) PathTiny; + }; + + blackshades = callPackage ../games/blackshades { }; + + blobby = callPackage ../games/blobby { }; + + blobwars = callPackage ../games/blobwars { }; + + boohu = callPackage ../games/boohu { }; + + braincurses = callPackage ../games/braincurses { }; + + brogue = callPackage ../games/brogue { }; + + brutalmaze = callPackage ../games/brutalmaze { }; + + bsdgames = callPackage ../games/bsdgames { }; + + btanks = callPackage ../games/btanks { }; + + bzflag = callPackage ../games/bzflag { + inherit (darwin.apple_sdk.frameworks) Carbon CoreServices; + }; + + cataclysmDDA = callPackage ../games/cataclysm-dda { }; + + cataclysm-dda = cataclysmDDA.stable.tiles; + + cataclysm-dda-git = cataclysmDDA.git.tiles; + + cbonsai = callPackage ../games/cbonsai { }; + + cdogs-sdl = callPackage ../games/cdogs-sdl { }; + + cgoban = callPackage ../games/cgoban { }; + + chessdb = callPackage ../games/chessdb { }; + + chessx = libsForQt5.callPackage ../games/chessx { }; + + chiaki = libsForQt5.callPackage ../games/chiaki { }; + + chromium-bsu = callPackage ../games/chromium-bsu { }; + + chocolateDoom = callPackage ../games/chocolate-doom { }; + + clonehero-unwrapped = callPackage ../games/clonehero { }; + + clonehero = callPackage ../games/clonehero/fhs-wrapper.nix { }; + + crispyDoom = callPackage ../games/crispy-doom { }; + + vintagestory = callPackage ../games/vintagestory { }; + + ckan = callPackage ../games/ckan { }; + + cockatrice = libsForQt5.callPackage ../games/cockatrice { }; + + commandergenius = callPackage ../games/commandergenius { }; + + construoBase = lowPrio (callPackage ../games/construo { + libGL = null; + libGLU = null; + freeglut = null; + }); + + construo = construoBase.override { + inherit libGL libGLU freeglut; + }; + + crack_attack = callPackage ../games/crack-attack { }; + + crawlTiles = callPackage ../games/crawl { + tileMode = true; + }; + + crawl = callPackage ../games/crawl { }; + + inherit (import ../games/crossfire pkgs) + crossfire-server crossfire-arch crossfire-maps crossfire-client; + + crrcsim = callPackage ../games/crrcsim { }; + + curseofwar = callPackage ../games/curseofwar { SDL = null; }; + curseofwar-sdl = callPackage ../games/curseofwar { ncurses = null; }; + + cutemaze = libsForQt5.callPackage ../games/cutemaze { }; + + cuyo = callPackage ../games/cuyo { }; + + inherit (import ../games/deliantra pkgs) + deliantra-server deliantra-arch deliantra-maps deliantra-data; + + ddnet = callPackage ../games/ddnet { }; + + devilutionx = callPackage ../games/devilutionx { + SDL2 = SDL2.override { + withStatic = true; + }; + }; + + dhewm3 = callPackage ../games/dhewm3 { }; + + domination = callPackage ../games/domination { }; + + duckmarines = callPackage ../games/duckmarines { love = love_0_10; }; + + dwarf-fortress-packages = recurseIntoAttrs (callPackage ../games/dwarf-fortress { }); + + dwarf-fortress = dwarf-fortress-packages.dwarf-fortress; + + dwarf-therapist = dwarf-fortress-packages.dwarf-therapist; + + dxx-rebirth = callPackage ../games/dxx-rebirth { + physfs = physfs_2; + }; + + inherit (callPackages ../games/dxx-rebirth/assets.nix { }) + descent1-assets + descent2-assets; + + inherit (callPackages ../games/dxx-rebirth/full.nix { }) + d1x-rebirth-full + d2x-rebirth-full; + + easyrpg-player = callPackage ../games/easyrpg-player { }; + + eboard = callPackage ../games/eboard { }; + + ecwolf = callPackage ../games/ecwolf { }; + + eduke32 = callPackage ../games/eduke32 { + inherit (darwin.apple_sdk.frameworks) AGL Cocoa GLUT OpenGL; + }; + + egoboo = callPackage ../games/egoboo { }; + + eidolon = callPackage ../games/eidolon { }; + + EmptyEpsilon = callPackage ../games/empty-epsilon { }; + + endgame-singularity = callPackage ../games/endgame-singularity { }; + + endless-sky = callPackage ../games/endless-sky { }; + + enyo-doom = libsForQt5.callPackage ../games/enyo-doom { }; + + eternity = callPackage ../games/eternity-engine { }; + + extremetuxracer = callPackage ../games/extremetuxracer { + libpng = libpng12; + }; + + exult = callPackage ../games/exult { }; + + flare = callPackage ../games/flare { + inherit (darwin.apple_sdk.frameworks) Cocoa; + }; + + fltrator = callPackage ../games/fltrator { + fltk = fltk-minimal; + }; + + factorio = callPackage ../games/factorio { releaseType = "alpha"; }; + + factorio-experimental = factorio.override { releaseType = "alpha"; experimental = true; }; + + factorio-headless = factorio.override { releaseType = "headless"; }; + + factorio-headless-experimental = factorio.override { releaseType = "headless"; experimental = true; }; + + factorio-demo = factorio.override { releaseType = "demo"; }; + + factorio-mods = callPackage ../games/factorio/mods.nix { }; + + factorio-utils = callPackage ../games/factorio/utils.nix { }; + + fairymax = callPackage ../games/fairymax { }; + + fheroes2 = callPackage ../games/fheroes2 { }; + + fish-fillets-ng = callPackage ../games/fish-fillets-ng { }; + + fishfight = callPackage ../games/fishfight { + inherit (xorg) libX11 libXi; + inherit (darwin.apple_sdk.frameworks) AudioToolbox Cocoa CoreAudio OpenGL; + }; + + flightgear = libsForQt5.callPackage ../games/flightgear { }; + + flock = callPackage ../development/tools/flock { }; + + freecell-solver = callPackage ../games/freecell-solver { }; + + freeciv = callPackage ../games/freeciv { + autoreconfHook = buildPackages.autoreconfHook269; + qt5 = qt514; + }; + + freeciv_gtk = freeciv.override { + gtkClient = true; + sdlClient = false; + }; + + freeciv_qt = freeciv.override { + qtClient = true; + sdlClient = false; + }; + + freedink = callPackage ../games/freedink { }; + + freeorion = callPackage ../games/freeorion { }; + + freesweep = callPackage ../games/freesweep { }; + + frotz = callPackage ../games/frotz { }; + + frogatto = callPackage ../games/frogatto { }; + + frozen-bubble = callPackage ../games/frozen-bubble { }; + + fsg = callPackage ../games/fsg { + wxGTK = wxGTK28.override { + unicode = false; + }; + }; + + galaxis = callPackage ../games/galaxis { }; + + gambatte = callPackage ../games/gambatte { }; + + garden-of-coloured-lights = callPackage ../games/garden-of-coloured-lights { allegro = allegro4; }; + + gargoyle = callPackage ../games/gargoyle { + inherit (darwin) cctools; + }; + + gav = callPackage ../games/gav { }; + + gcs = callPackage ../games/gcs { }; + + gcompris = libsForQt5.callPackage ../games/gcompris { }; + + gemrb = callPackage ../games/gemrb { }; + + gimx = callPackage ../games/gimx { }; + + gl117 = callPackage ../games/gl-117 { }; + + globulation2 = callPackage ../games/globulation { + boost = boost155; + }; + + gltron = callPackage ../games/gltron { }; + + gl-gsync-demo = callPackage ../games/gl-gsync-demo { + libXNVCtrl = linuxPackages.nvidia_x11.settings.libXNVCtrl; + }; + + gmad = callPackage ../games/gmad { }; + + gnonograms = callPackage ../games/gnonograms { }; + + gnubg = callPackage ../games/gnubg { }; + + gnuchess = callPackage ../games/gnuchess { }; + + gnugo = callPackage ../games/gnugo { }; + + gnujump = callPackage ../games/gnujump { }; + + gnushogi = callPackage ../games/gnushogi { }; + + gogui = callPackage ../games/gogui { }; + + gscrabble = python3Packages.callPackage ../games/gscrabble { }; + + gshogi = python3Packages.callPackage ../games/gshogi { }; + + qtads = qt5.callPackage ../games/qtads { }; + + grapejuice = callPackage ../games/grapejuice { + wine = wineWowPackages.unstable; + }; + + gtetrinet = callPackage ../games/gtetrinet { + inherit (gnome2) GConf libgnome libgnomeui; + }; + + gtypist = callPackage ../games/gtypist { }; + + gweled = callPackage ../games/gweled { }; + + gzdoom = callPackage ../games/gzdoom { }; + + harmonist = callPackage ../games/harmonist { }; + + hedgewars = libsForQt514.callPackage ../games/hedgewars { + inherit (haskellPackages) ghcWithPackages; + }; + + holdingnuts = callPackage ../games/holdingnuts { }; + + hyperrogue = callPackage ../games/hyperrogue { }; + + icbm3d = callPackage ../games/icbm3d { }; + + ingen = callPackage ../applications/audio/ingen { }; + + ideogram = callPackage ../applications/graphics/ideogram { }; + + instead = callPackage ../games/instead { }; + + instead-launcher = callPackage ../games/instead-launcher { }; + + iortcw = callPackage ../games/iortcw { }; + # used as base package for iortcw forks + iortcw_sp = callPackage ../games/iortcw/sp.nix { }; + + ivan = callPackage ../games/ivan { }; + + ja2-stracciatella = callPackage ../games/ja2-stracciatella { + inherit (darwin.apple_sdk.frameworks) Carbon Cocoa; + }; + + katago = callPackage ../games/katago { }; + + katagoWithCuda = katago.override { + enableCuda = true; + cudnn = cudnn_8_3_cudatoolkit_11; + cudatoolkit = cudatoolkit_11; + }; + + katagoCPU = katago.override { + enableGPU = false; + }; + + klavaro = callPackage ../games/klavaro { }; + + kobodeluxe = callPackage ../games/kobodeluxe { }; + + koboredux = callPackage ../games/koboredux { }; + + koboredux-free = callPackage ../games/koboredux { + useProprietaryAssets = false; + }; + + leela-zero = libsForQt5.callPackage ../games/leela-zero { }; + + legendary-gl = python38Packages.callPackage ../games/legendary-gl { }; + + left4gore-bin = callPackage ../games/left4gore { }; + + lgogdownloader = callPackage ../games/lgogdownloader { }; + + liberal-crime-squad = callPackage ../games/liberal-crime-squad { }; + + liberation-circuit = callPackage ../games/liberation-circuit { }; + + lincity = callPackage ../games/lincity { }; + + lincity_ng = callPackage ../games/lincity/ng.nix { + # https://github.com/lincity-ng/lincity-ng/issues/25 + physfs = physfs_2; + }; + + liquidwar = callPackage ../games/liquidwar { + guile = guile_2_0; + }; + + liquidwar5 = callPackage ../games/liquidwar/5.nix { + }; + + lugaru = callPackage ../games/lugaru { }; + + macopix = callPackage ../games/macopix { + gtk = gtk2; + }; + + mari0 = callPackage ../games/mari0 { }; + + manaplus = callPackage ../games/manaplus { }; + + mars = callPackage ../games/mars { }; + + megaglest = callPackage ../games/megaglest { }; + + methane = callPackage ../games/methane { }; + + mindustry = callPackage ../games/mindustry { + jdk = adoptopenjdk-hotspot-bin-15; + }; + mindustry-wayland = callPackage ../games/mindustry { + jdk = adoptopenjdk-hotspot-bin-15; + glew = glew-egl; + }; + + mindustry-server = callPackage ../games/mindustry { + jdk = adoptopenjdk-hotspot-bin-15; + enableClient = false; + enableServer = true; + }; + + minecraft = callPackage ../games/minecraft { }; + + minecraftServers = import ../games/minecraft-servers { inherit callPackage lib javaPackages; }; + minecraft-server = minecraftServers.vanilla; # backwards compatibility + + moon-buggy = callPackage ../games/moon-buggy { }; + + inherit (callPackages ../games/minetest { + inherit (darwin) libiconv; + inherit (darwin.apple_sdk.frameworks) OpenGL OpenAL Carbon Cocoa Kernel; + }) + minetestclient_5 minetestserver_5; + + minetest = minetestclient; + minetestclient = minetestclient_5; + minetestserver = minetestserver_5; + + mnemosyne = callPackage ../games/mnemosyne { + python = python3; + }; + + mrrescue = callPackage ../games/mrrescue { }; + + mudlet = libsForQt5.callPackage ../games/mudlet { + lua = lua5_1; + }; + + blightmud = callPackage ../games/blightmud { }; + + blightmud-tts = callPackage ../games/blightmud { withTTS = true; }; + + n2048 = callPackage ../games/n2048 { }; + + naev = callPackage ../games/naev { }; + + nanosaur = callPackage ../games/nanosaur { }; + + nethack = callPackage ../games/nethack { }; + + nethack-qt = callPackage ../games/nethack { + qtMode = true; + stdenv = gccStdenv; + }; + + nethack-x11 = callPackage ../games/nethack { x11Mode = true; }; + + netris = callPackage ../games/netris { }; + + neverball = callPackage ../games/neverball { }; + + nexuiz = callPackage ../games/nexuiz { }; + + ninvaders = callPackage ../games/ninvaders { }; + + njam = callPackage ../games/njam { }; + + npush = callPackage ../games/npush { }; + run-npush = callPackage ../games/npush/run.nix { }; + + newtonwars = callPackage ../games/newtonwars { }; + + nudoku = callPackage ../games/nudoku { }; + + nxengine-evo = callPackage ../games/nxengine-evo { }; + + odamex = callPackage ../games/odamex { }; + + oilrush = callPackage ../games/oilrush { }; + + onscripter-en = callPackage ../games/onscripter-en { }; + + openarena = callPackage ../games/openarena { }; + + opendungeons = callPackage ../games/opendungeons { + ogre = ogre1_10; + }; + + openlierox = callPackage ../games/openlierox { }; + + openclonk = callPackage ../games/openclonk { }; + + openjk = callPackage ../games/openjk { }; + + openmw = libsForQt5.callPackage ../games/openmw { }; + + openmw-tes3mp = libsForQt5.callPackage ../games/openmw/tes3mp.nix { }; + + portmod = callPackage ../games/portmod { }; + + tetrio-desktop = callPackage ../games/tetrio-desktop { }; + + tr-patcher = callPackage ../games/tr-patcher { }; + + tes3cmd = callPackage ../games/tes3cmd { }; + + otto-matic = callPackage ../games/otto-matic { }; + + openraPackages = import ../games/openra pkgs; + + openra = openraPackages.engines.release; + + openrw = callPackage ../games/openrw { + inherit (darwin.apple_sdk.frameworks) Cocoa OpenAL; + }; + + openspades = callPackage ../games/openspades { + inherit (darwin.apple_sdk.frameworks) Cocoa; + }; + + openttd = callPackage ../games/openttd { + zlib = zlib.override { + static = true; + }; + }; + openttd-jgrpp = callPackage ../games/openttd/jgrpp.nix { + zlib = zlib.override { + static = true; + }; + }; + openttd-grfcodec = callPackage ../games/openttd/grfcodec.nix { }; + openttd-nml = callPackage ../games/openttd/nml.nix { }; + + opentyrian = callPackage ../games/opentyrian { }; + + openxcom = callPackage ../games/openxcom { }; + + openxray = callPackage ../games/openxray { }; + + orthorobot = callPackage ../games/orthorobot { }; + + pacvim = callPackage ../games/pacvim { }; + + papermc = callPackage ../games/papermc { }; + + pentobi = libsForQt5.callPackage ../games/pentobi { }; + + performous = callPackage ../games/performous { + boost = boost166; + }; + + pinball = callPackage ../games/pinball { }; + + pingus = callPackage ../games/pingus { }; + + pioneer = callPackage ../games/pioneer { }; + + pioneers = callPackage ../games/pioneers { }; + + planetary_annihilation = callPackage ../games/planetaryannihilation { }; + + polymc = libsForQt5.callPackage ../games/polymc { }; + + pong3d = callPackage ../games/pong3d { }; + + pokerth = libsForQt5.callPackage ../games/pokerth { + boost = boost16x; + }; + + pokerth-server = libsForQt5.callPackage ../games/pokerth { + boost = boost16x; + target = "server"; + }; + + powermanga = callPackage ../games/powermanga { }; + + prboom = callPackage ../games/prboom { }; + + pysolfc = python3Packages.callPackage ../games/pysolfc { }; + + qqwing = callPackage ../games/qqwing { }; + + quake3wrapper = callPackage ../games/quake3/wrapper { }; + + quake3demo = quake3wrapper { + name = "quake3-demo-${lib.getVersion quake3demodata}"; + description = "Demo of Quake 3 Arena, a classic first-person shooter"; + paks = [ quake3pointrelease quake3demodata ]; + }; + + quake3demodata = callPackage ../games/quake3/content/demo.nix { }; + + quake3pointrelease = callPackage ../games/quake3/content/pointrelease.nix { }; + + quake3hires = callPackage ../games/quake3/content/hires.nix { }; + + quakespasm = callPackage ../games/quakespasm { + inherit (darwin.apple_sdk.frameworks) Cocoa CoreAudio CoreFoundation IOKit OpenGL; + }; + vkquake = callPackage ../games/quakespasm/vulkan.nix { }; + + ioquake3 = callPackage ../games/quake3/ioquake { }; + quake3e = callPackage ../games/quake3/quake3e { }; + + quantumminigolf = callPackage ../games/quantumminigolf { }; + + r2mod_cli = callPackage ../games/r2mod_cli { }; + + racer = callPackage ../games/racer { }; + + randtype = callPackage ../games/randtype { }; + + redeclipse = callPackage ../games/redeclipse { }; + + rftg = callPackage ../games/rftg { }; + + rigsofrods = callPackage ../games/rigsofrods { + angelscript = angelscript_2_22; + ogre = ogre1_9; + ogrepaged = ogrepaged.override { + ogre = ogre1_9; + }; + mygui = mygui.override { + withOgre = true; + }; + }; + + riko4 = callPackage ../games/riko4 { }; + + rili = callPackage ../games/rili { }; + + rogue = callPackage ../games/rogue { + ncurses = ncurses5; + }; + + robotfindskitten = callPackage ../games/robotfindskitten { }; + + rocksndiamonds = callPackage ../games/rocksndiamonds { }; + + rott = callPackage ../games/rott { }; + + rott-shareware = rott.override { + buildShareware = true; + }; + + rrootage = callPackage ../games/rrootage { }; + + space-cadet-pinball = callPackage ../games/space-cadet-pinball { }; + + starsector = callPackage ../games/starsector { + openjdk = openjdk8; + }; + + sauerbraten = callPackage ../games/sauerbraten { }; + + scid = callPackage ../games/scid { + tcl = tcl-8_5; + tk = tk-8_5; + }; + + scid-vs-pc = callPackage ../games/scid-vs-pc { + tcl = tcl-8_6; + tk = tk-8_6; + }; + + scummvm = callPackage ../games/scummvm { + inherit (darwin) cctools; + inherit (darwin.apple_sdk.frameworks) Cocoa AudioToolbox Carbon CoreMIDI AudioUnit; + }; + + inherit (callPackage ../games/scummvm/games.nix { }) + beneath-a-steel-sky + broken-sword-25 + drascula-the-vampire-strikes-back + dreamweb + flight-of-the-amazon-queen + lure-of-the-temptress; + + scorched3d = callPackage ../games/scorched3d { }; + + scrolls = callPackage ../games/scrolls { }; + + service-wrapper = callPackage ../os-specific/linux/service-wrapper { }; + + sfrotz = callPackage ../games/sfrotz { }; + + sgtpuzzles = callPackage ../games/sgt-puzzles { }; + + shattered-pixel-dungeon = callPackage ../games/shattered-pixel-dungeon { }; + + shticker-book-unwritten = callPackage ../games/shticker-book-unwritten { }; + + sienna = callPackage ../games/sienna { love = love_0_10; }; + + sil = callPackage ../games/sil { }; + + simutrans = callPackage ../games/simutrans { }; + # get binaries without data built by Hydra + simutrans_binaries = lowPrio simutrans.binaries; + + snake4 = callPackage ../games/snake4 { }; + + soi = callPackage ../games/soi { + lua = lua5_1; + }; + + # solarus and solarus-quest-editor must use the same version of Qt. + solarus = libsForQt5.callPackage ../games/solarus { }; + solarus-quest-editor = libsForQt5.callPackage ../development/tools/solarus-quest-editor { }; + + soldat-unstable = callPackage ../games/soldat-unstable { }; + + sollya = callPackage ../development/interpreters/sollya { }; + + # You still can override by passing more arguments. + space-orbit = callPackage ../games/space-orbit { }; + + spring = callPackage ../games/spring { + asciidoc = asciidoc-full; + boost = boost155; + }; + + springLobby = callPackage ../games/spring/springlobby.nix { }; + + ssl-cert-check = callPackage ../tools/admin/ssl-cert-check { }; + + stardust = callPackage ../games/stardust { }; + + starspace = callPackage ../applications/science/machine-learning/starspace { }; + + stockfish = callPackage ../games/stockfish { }; + + steamPackages = dontRecurseIntoAttrs (callPackage ../games/steam { + buildFHSUserEnv = buildFHSUserEnvBubblewrap; + }); + + steam = steamPackages.steam-fhsenv; + + steam-run = steam.run; + + steam-tui = callPackage ../games/steam-tui { }; + + steamcmd = steamPackages.steamcmd; + + steam-acf = callPackage ../tools/games/steam-acf { }; + + protontricks = python3Packages.callPackage ../tools/package-management/protontricks { + inherit winetricks steam-run yad; + }; + + protonup = with python3Packages; toPythonApplication protonup; + + sdlpop = callPackage ../games/sdlpop { }; + + stepmania = callPackage ../games/stepmania { }; + + streamlit = python3Packages.callPackage ../applications/science/machine-learning/streamlit { }; + + stt = callPackage ../tools/audio/stt { }; + + stuntrally = callPackage ../games/stuntrally { + ogre = ogre1_9; + mygui = mygui.override { + withOgre = true; + }; + }; + + superTux = callPackage ../games/supertux { }; + + superTuxKart = callPackage ../games/super-tux-kart { + inherit (darwin.apple_sdk.frameworks) Cocoa IOKit OpenAL; + }; + + synthv1 = libsForQt5.callPackage ../applications/audio/synthv1 { }; + + snis = callPackage ../games/snis { }; + + system-syzygy = callPackage ../games/system-syzygy { }; + + t4kcommon = callPackage ../games/t4kcommon { }; + + taisei = callPackage ../games/taisei { }; + + tcl2048 = callPackage ../games/tcl2048 { }; + + the-legend-of-edgar = callPackage ../games/the-legend-of-edgar { }; + + the-powder-toy = callPackage ../games/the-powder-toy { + lua = lua5_1; + }; + + tbe = libsForQt5.callPackage ../games/the-butterfly-effect { }; + + tecnoballz = callPackage ../games/tecnoballz { }; + + teetertorture = callPackage ../games/teetertorture { }; + + teeworlds = callPackage ../games/teeworlds { }; + + tengine = callPackage ../servers/http/tengine { + modules = with nginxModules; [ rtmp dav moreheaders modsecurity-nginx ]; + }; + + tennix = callPackage ../games/tennix { }; + + terraria-server = callPackage ../games/terraria-server { }; + + tibia = pkgsi686Linux.callPackage ../games/tibia { }; + + tintin = callPackage ../games/tintin { }; + + tinyfugue = callPackage ../games/tinyfugue { }; + + tome2 = callPackage ../games/tome2 { }; + + tome4 = callPackage ../games/tome4 { }; + + toppler = callPackage ../games/toppler { }; + + torus-trooper = callPackage ../games/torus-trooper { }; + + trackballs = callPackage ../games/trackballs { }; + + tremulous = callPackage ../games/tremulous { }; + + tumiki-fighters = callPackage ../games/tumiki-fighters { }; + + tuxpaint = callPackage ../games/tuxpaint { }; + + tuxtype = callPackage ../games/tuxtype { }; + + tworld2 = callPackage ../games/tworld2 { }; + + speed_dreams = callPackage ../games/speed-dreams { + # Torcs wants to make shared libraries linked with plib libraries (it provides static). + # i686 is the only platform I know than can do that linking without plib built with -fPIC + libpng = libpng12; + }; + + torcs = callPackage ../games/torcs { }; + + trigger = callPackage ../games/trigger { }; + + typespeed = callPackage ../games/typespeed { }; + + uchess = callPackage ../games/uchess { }; + + udig = callPackage ../applications/gis/udig { }; + + ufoai = callPackage ../games/ufoai { }; + + uhexen2 = callPackage ../games/uhexen2 { }; + + ultimatestunts = callPackage ../games/ultimatestunts { }; + + ultrastar-creator = libsForQt5.callPackage ../tools/misc/ultrastar-creator { }; + + ultrastar-manager = libsForQt5.callPackage ../tools/misc/ultrastar-manager { }; + + ultrastardx = callPackage ../games/ultrastardx { }; + + unciv = callPackage ../games/unciv { }; + + unnethack = callPackage ../games/unnethack { }; + + uqm = callPackage ../games/uqm { }; + + urbanterror = callPackage ../games/urbanterror { }; + + ue4 = callPackage ../games/ue4 { }; + + ue4demos = recurseIntoAttrs (callPackage ../games/ue4demos { }); + + ut2004Packages = dontRecurseIntoAttrs (callPackage ../games/ut2004 { }); + + ut2004demo = res.ut2004Packages.ut2004 [ res.ut2004Packages.ut2004-demo ]; + + vassal = callPackage ../games/vassal { }; + + vdrift = callPackage ../games/vdrift { }; + + # To ensure vdrift's code is built on hydra + vdrift-bin = vdrift.bin; + + vectoroids = callPackage ../games/vectoroids { }; + + vessel = pkgsi686Linux.callPackage ../games/vessel { }; + + vitetris = callPackage ../games/vitetris { }; + + vms-empire = callPackage ../games/vms-empire { }; + + voxelands = callPackage ../games/voxelands { + libpng = libpng12; + }; + + wargus = callPackage ../games/wargus { }; + + warmux = callPackage ../games/warmux { }; + + warsow-engine = callPackage ../games/warsow/engine.nix { }; + + warsow = callPackage ../games/warsow { }; + + warzone2100 = callPackage ../games/warzone2100 { }; + + wesnoth = callPackage ../games/wesnoth { + inherit (darwin.apple_sdk.frameworks) Cocoa Foundation; + }; + + wesnoth-dev = wesnoth; + + widelands = callPackage ../games/widelands { }; + + worldofgoo = callPackage ../games/worldofgoo { }; + + xboard = callPackage ../games/xboard { }; + + xbomb = callPackage ../games/xbomb { }; + + xconq = callPackage ../games/xconq { + tcl = tcl-8_5; + tk = tk-8_5; + }; + + xcowsay = callPackage ../games/xcowsay { }; + + xjump = callPackage ../games/xjump { }; + # TODO: the corresponding nix file is missing + # xracer = callPackage ../games/xracer { }; + + xmoto = callPackage ../games/xmoto { }; + + + inherit (callPackage ../games/xonotic { }) + xonotic-data + xonotic; + + xonotic-glx = (callPackage ../games/xonotic { + withSDL = false; + withGLX = true; + }).xonotic; + + xonotic-dedicated = (callPackage ../games/xonotic { + withSDL = false; + withDedicated = true; + }).xonotic; + + xonotic-sdl = xonotic; + xonotic-sdl-unwrapped = xonotic-sdl.xonotic-unwrapped; + xonotic-glx-unwrapped = xonotic-glx.xonotic-unwrapped; + xonotic-dedicated-unwrapped = xonotic-dedicated.xonotic-unwrapped; + + + xpilot-ng = callPackage ../games/xpilot { }; + bloodspilot-server = callPackage ../games/xpilot/bloodspilot-server.nix { }; + bloodspilot-client = callPackage ../games/xpilot/bloodspilot-client.nix { }; + + xskat = callPackage ../games/xskat { }; + + xsnow = callPackage ../games/xsnow { }; + + xsok = callPackage ../games/xsok { }; + + xsokoban = callPackage ../games/xsokoban { }; + + xtris = callPackage ../games/xtris { }; + + inherit (callPackage ../games/quake2/yquake2 { + inherit (darwin.apple_sdk.frameworks) Cocoa OpenAL; + }) + yquake2 + yquake2-ctf + yquake2-ground-zero + yquake2-the-reckoning + yquake2-all-games; + + zandronum = callPackage ../games/zandronum { }; + + zandronum-server = zandronum.override { + serverOnly = true; + }; + + zangband = callPackage ../games/zangband { }; + + zaz = callPackage ../games/zaz { }; + + zdbsp = callPackage ../games/zdoom/zdbsp.nix { }; + + zdoom = callPackage ../games/zdoom { }; + + zod = callPackage ../games/zod { }; + + zoom = callPackage ../games/zoom { }; + + keen4 = callPackage ../games/keen4 { }; + + zeroadPackages = recurseIntoAttrs (callPackage ../games/0ad { + wxGTK = wxGTK31; + }); + + zeroad = zeroadPackages.zeroad; + + _0verkill = callPackage ../games/0verkill { }; + + _7kaa = callPackage ../games/7kaa { }; + + hhexen = callPackage ../games/hhexen { }; + + wyvern = callPackage ../games/wyvern { }; + + ### DESKTOP ENVIRONMENTS + + cdesktopenv = callPackage ../desktops/cdesktopenv { }; + + cinnamon = recurseIntoAttrs (callPackage ../desktops/cinnamon { }); + + inherit (cinnamon) mint-x-icons mint-y-icons; + + enlightenment = recurseIntoAttrs (callPackage ../desktops/enlightenment { + callPackage = newScope enlightenment; + }); + + gnome2 = recurseIntoAttrs (callPackage ../desktops/gnome-2 { }); + + gnome = recurseIntoAttrs (callPackage ../desktops/gnome { }); + + inherit (callPackage ../desktops/gnome/extensions { }) + gnomeExtensions + gnome38Extensions + gnome40Extensions + gnome41Extensions + ; + + gnome-connections = callPackage ../desktops/gnome/apps/gnome-connections { }; + + gnome-text-editor = callPackage ../desktops/gnome/apps/gnome-text-editor { }; + + gnome-tour = callPackage ../desktops/gnome/core/gnome-tour { }; + + hsetroot = callPackage ../tools/X11/hsetroot { }; + + imwheel = callPackage ../tools/X11/imwheel { }; + + kakasi = callPackage ../tools/text/kakasi { }; + + lumina = recurseIntoAttrs (callPackage ../desktops/lumina { }); + + lxqt = recurseIntoAttrs (import ../desktops/lxqt { + inherit pkgs; + inherit (lib) makeScope; + inherit qt5 libsForQt5; + }); + + mate = recurseIntoAttrs (callPackage ../desktops/mate { }); + + pantheon = recurseIntoAttrs (callPackage ../desktops/pantheon { }); + + plasma-applet-volumewin7mixer = libsForQt5.callPackage ../applications/misc/plasma-applet-volumewin7mixer { }; + + plasma-theme-switcher = libsForQt5.callPackage ../applications/misc/plasma-theme-switcher {}; + + plasma-pass = libsForQt5.callPackage ../tools/security/plasma-pass { }; + + inherit (callPackages ../applications/misc/redshift { + inherit (python3Packages) python pygobject3 pyxdg wrapPython; + inherit (darwin.apple_sdk.frameworks) CoreLocation ApplicationServices Foundation Cocoa; + geoclue = geoclue2; + }) redshift gammastep; + + redshift-plasma-applet = libsForQt5.callPackage ../applications/misc/redshift-plasma-applet { }; + + latte-dock = libsForQt5.callPackage ../applications/misc/latte-dock { }; + + gnome-themes-extra = gnome.gnome-themes-extra; + + rox-filer = callPackage ../desktops/rox/rox-filer { + gtk = gtk2; + }; + + arcan = recurseIntoAttrs (callPackage ../desktops/arcan { + callPackage = newScope arcan; + }); + + xfce = recurseIntoAttrs (callPackage ../desktops/xfce { }); + + xrandr-invert-colors = callPackage ../applications/misc/xrandr-invert-colors { }; + + ### SCIENCE/CHEMISTY + + avogadro = callPackage ../applications/science/chemistry/avogadro { + openbabel = openbabel2; + eigen = eigen2; + }; + + avogadrolibs = libsForQt5.callPackage ../development/libraries/science/chemistry/avogadrolibs { }; + + molequeue = libsForQt5.callPackage ../development/libraries/science/chemistry/molequeue { }; + + avogadro2 = libsForQt5.callPackage ../applications/science/chemistry/avogadro2 { }; + + chemtool = callPackage ../applications/science/chemistry/chemtool { }; + + cp2k = callPackage ../applications/science/chemistry/cp2k { }; + + d-seams = callPackage ../applications/science/chemistry/d-seams {}; + + ergoscf = callPackage ../applications/science/chemistry/ergoscf { }; + + gwyddion = callPackage ../applications/science/chemistry/gwyddion {}; + + jmol = callPackage ../applications/science/chemistry/jmol { + jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + + marvin = callPackage ../applications/science/chemistry/marvin { }; + + molden = callPackage ../applications/science/chemistry/molden { }; + + octopus = callPackage ../applications/science/chemistry/octopus { }; + + openlp = libsForQt5.callPackage ../applications/misc/openlp { }; + openlpFull = openlp.override { + pdfSupport = true; + presentationSupport = true; + vlcSupport = true; + gstreamerSupport = true; + }; + + dkh = callPackage ../applications/science/chemistry/dkh { }; + + openmolcas = callPackage ../applications/science/chemistry/openmolcas { }; + + pymol = callPackage ../applications/science/chemistry/pymol { }; + + quantum-espresso = callPackage ../applications/science/chemistry/quantum-espresso { }; + + quantum-espresso-mpi = callPackage ../applications/science/chemistry/quantum-espresso { useMpi = true; }; + + siesta = callPackage ../applications/science/chemistry/siesta { }; + + siesta-mpi = callPackage ../applications/science/chemistry/siesta { useMpi = true; }; + + ### SCIENCE/GEOMETRY + + antiprism = callPackage ../applications/science/geometry/antiprism { }; + + gama = callPackage ../applications/science/geometry/gama { }; + + drgeo = callPackage ../applications/science/geometry/drgeo { + inherit (gnome2) libglade; + guile = guile_1_8; + }; + + tetgen = callPackage ../applications/science/geometry/tetgen { }; # AGPL3+ + tetgen_1_4 = callPackage ../applications/science/geometry/tetgen/1.4.nix { }; # MIT + + ### SCIENCE/BENCHMARK + + papi = callPackage ../development/libraries/science/benchmark/papi { }; + + ### SCIENCE/BIOLOGY + + alliance = callPackage ../applications/science/electronics/alliance { }; + + angsd = callPackage ../applications/science/biology/angsd { }; + + ants = callPackage ../applications/science/biology/ants { + inherit (darwin.apple_sdk.frameworks) Cocoa; + }; + + aragorn = callPackage ../applications/science/biology/aragorn { }; + + archimedes = callPackage ../applications/science/electronics/archimedes { + stdenv = gcc6Stdenv; + }; + + bayescan = callPackage ../applications/science/biology/bayescan { }; + + bedops = callPackage ../applications/science/biology/bedops { }; + + bedtools = callPackage ../applications/science/biology/bedtools { }; + + bcftools = callPackage ../applications/science/biology/bcftools { }; + + bftools = callPackage ../applications/science/biology/bftools { }; + + blast = callPackage ../applications/science/biology/blast { + inherit (darwin.apple_sdk.frameworks) ApplicationServices; + }; + + bpp-core = callPackage ../development/libraries/science/biology/bpp-core { }; + + bpp-phyl = callPackage ../development/libraries/science/biology/bpp-phyl { }; + + bpp-popgen = callPackage ../development/libraries/science/biology/bpp-popgen { }; + + bpp-seq = callPackage ../development/libraries/science/biology/bpp-seq { }; + + bppsuite = callPackage ../applications/science/biology/bppsuite { }; + + cd-hit = callPackage ../applications/science/biology/cd-hit { + inherit (llvmPackages) openmp; + }; + + cmtk = callPackage ../applications/science/biology/cmtk { }; + + clustal-omega = callPackage ../applications/science/biology/clustal-omega { }; + + conglomerate = callPackage ../applications/science/biology/conglomerate { }; + + dalfox = callPackage ../tools/security/dalfox { }; + + dcm2niix = callPackage ../applications/science/biology/dcm2niix { }; + + deepdiff = with python3Packages; toPythonApplication deepdiff; + + deepsea = callPackage ../tools/security/deepsea { }; + + deeptools = callPackage ../applications/science/biology/deeptools { python = python3; }; + + deep-translator = with python3Packages; toPythonApplication deep-translator; + + delly = callPackage ../applications/science/biology/delly { }; + + diamond = callPackage ../applications/science/biology/diamond { }; + + ecopcr = callPackage ../applications/science/biology/ecopcr { }; + + eggnog-mapper = callPackage ../applications/science/biology/eggnog-mapper { }; + + emboss = callPackage ../applications/science/biology/emboss { }; + + est-sfs = callPackage ../applications/science/biology/est-sfs { }; + + ezminc = callPackage ../applications/science/biology/EZminc { }; + + exonerate = callPackage ../applications/science/biology/exonerate { }; + + fastp = callPackage ../applications/science/biology/fastp { }; + + febio-studio = libsForQt5.callPackage ../applications/science/biology/febio-studio { }; + + hisat2 = callPackage ../applications/science/biology/hisat2 { }; + + htslib = callPackage ../development/libraries/science/biology/htslib { }; + + igv = callPackage ../applications/science/biology/igv { }; + + inormalize = callPackage ../applications/science/biology/inormalize { }; + + itsx = callPackage ../applications/science/biology/itsx { }; + + iv = callPackage ../applications/science/biology/iv { + neuron-version = neuron.version; + }; + + kallisto = callPackage ../applications/science/biology/kallisto { + autoconf = buildPackages.autoconf269; + }; + + kssd = callPackage ../applications/science/biology/kssd { }; + + last = callPackage ../applications/science/biology/last { }; + + macse = callPackage ../applications/science/biology/macse { }; + + MACS2 = callPackage ../applications/science/biology/MACS2 { }; + + migrate = callPackage ../applications/science/biology/migrate { }; + + minia = callPackage ../applications/science/biology/minia { }; + + mirtk = callPackage ../development/libraries/science/biology/mirtk { + boost = boost16x; + }; + + muscle = callPackage ../applications/science/biology/muscle { }; + + n3 = callPackage ../applications/science/biology/N3 { }; + + neuron = callPackage ../applications/science/biology/neuron { python = null; }; + + neuron-mpi = neuron.override {useMpi = true; }; + + neuron-full = neuron-mpi.override { python = python2; }; + + mrbayes = callPackage ../applications/science/biology/mrbayes { }; + + mrtrix = callPackage ../applications/science/biology/mrtrix { python = python3; }; + + megahit = callPackage ../applications/science/biology/megahit { }; + + messer-slim = callPackage ../applications/science/biology/messer-slim { }; + + minc_tools = callPackage ../applications/science/biology/minc-tools { + inherit (perlPackages) perl TextFormat; + }; + + minc_widgets = callPackage ../applications/science/biology/minc-widgets { }; + + mni_autoreg = callPackage ../applications/science/biology/mni_autoreg { }; + + minimap2 = callPackage ../applications/science/biology/minimap2 { }; + + mosdepth = callPackage ../applications/science/biology/mosdepth { }; + + ncbi_tools = callPackage ../applications/science/biology/ncbi-tools { }; + + niftyreg = callPackage ../applications/science/biology/niftyreg { }; + + niftyseg = callPackage ../applications/science/biology/niftyseg { }; + + manta = callPackage ../applications/science/biology/manta { }; + + obitools3 = callPackage ../applications/science/biology/obitools/obitools3.nix { }; + + octopus-caller = callPackage ../applications/science/biology/octopus { }; + + paml = callPackage ../applications/science/biology/paml { }; + + picard-tools = callPackage ../applications/science/biology/picard-tools { }; + + platypus = callPackage ../applications/science/biology/platypus { }; + + plink-ng = callPackage ../applications/science/biology/plink-ng { }; + + prodigal = callPackage ../applications/science/biology/prodigal { }; + + quast = callPackage ../applications/science/biology/quast { }; + + raxml = callPackage ../applications/science/biology/raxml { }; + + raxml-mpi = raxml.override { useMpi = true; }; + + sambamba = callPackage ../applications/science/biology/sambamba { }; + + samblaster = callPackage ../applications/science/biology/samblaster { }; + + samtools = callPackage ../applications/science/biology/samtools { }; + samtools_0_1_19 = callPackage ../applications/science/biology/samtools/samtools_0_1_19.nix { + stdenv = gccStdenv; + }; + + snpeff = callPackage ../applications/science/biology/snpeff { }; + + somafm-cli = callPackage ../tools/misc/somafm-cli { }; + + somatic-sniper = callPackage ../applications/science/biology/somatic-sniper { }; + + sortmerna = callPackage ../applications/science/biology/sortmerna { }; + + stacks = callPackage ../applications/science/biology/stacks { }; + + star = callPackage ../applications/science/biology/star { }; + + strelka = callPackage ../applications/science/biology/strelka { }; + + inherit (callPackages ../applications/science/biology/sumatools {}) + sumalibs + sumaclust + sumatra; + + seaview = callPackage ../applications/science/biology/seaview { }; + + SPAdes = callPackage ../applications/science/biology/spades { }; + + svaba = callPackage ../applications/science/biology/svaba { }; + + tebreak = callPackage ../applications/science/biology/tebreak { }; + + trimal = callPackage ../applications/science/biology/trimal { }; + + truvari = callPackage ../applications/science/biology/truvari { }; + + varscan = callPackage ../applications/science/biology/varscan { }; + + whisper = callPackage ../applications/science/biology/whisper { }; + + xenomapper = callPackage ../applications/science/biology/xenomapper { }; + + hmmer = callPackage ../applications/science/biology/hmmer { }; + + bwa = callPackage ../applications/science/biology/bwa { }; + + ### SCIENCE/MACHINE LEARNING + + nengo-gui = callPackage ../applications/science/machine-learning/nengo-gui { }; + + sc2-headless = callPackage ../applications/science/machine-learning/sc2-headless { }; + + ### SCIENCE/MATH + + _4ti2 = callPackage ../applications/science/math/4ti2 { }; + + almonds = callPackage ../applications/science/math/almonds { }; + + amd-blis = callPackage ../development/libraries/science/math/amd-blis { }; + + amd-libflame = callPackage ../development/libraries/science/math/amd-libflame { }; + + arpack = callPackage ../development/libraries/science/math/arpack { }; + + blas = callPackage ../build-support/alternatives/blas { }; + + blas-reference = callPackage ../development/libraries/science/math/blas { }; + + bonmin = callPackage ../development/libraries/science/math/bonmin { }; + + brial = callPackage ../development/libraries/science/math/brial { }; + + clblas = callPackage ../development/libraries/science/math/clblas { + inherit (darwin.apple_sdk.frameworks) Accelerate CoreGraphics CoreVideo OpenCL; + }; + + cliquer = callPackage ../development/libraries/science/math/cliquer { }; + + ecos = callPackage ../development/libraries/science/math/ecos { }; + + flintqs = callPackage ../development/libraries/science/math/flintqs { }; + + getdp = callPackage ../applications/science/math/getdp { }; + + gurobi = callPackage ../applications/science/math/gurobi { }; + + jags = callPackage ../applications/science/math/jags { }; + + lapack = callPackage ../build-support/alternatives/lapack { }; + + lapack-reference = callPackage ../development/libraries/science/math/liblapack { }; + liblapack = lapack-reference; + + libamplsolver = callPackage ../development/libraries/science/math/libamplsolver { }; + + libbraiding = callPackage ../development/libraries/science/math/libbraiding { }; + + libhomfly = callPackage ../development/libraries/science/math/libhomfly { }; + + liblbfgs = callPackage ../development/libraries/science/math/liblbfgs { }; + + lrs = callPackage ../development/libraries/science/math/lrs { }; + + m4ri = callPackage ../development/libraries/science/math/m4ri { }; + + m4rie = callPackage ../development/libraries/science/math/m4rie { }; + + mkl = callPackage ../development/libraries/science/math/mkl { }; + + nasc = callPackage ../applications/science/math/nasc { }; + + nota = haskellPackages.callPackage ../applications/science/math/nota { }; + + notus-scanner = with python3Packages; toPythonApplication notus-scanner; + + openblas = callPackage ../development/libraries/science/math/openblas { }; + + # A version of OpenBLAS using 32-bit integers on all platforms for compatibility with + # standard BLAS and LAPACK. + openblasCompat = openblas.override { blas64 = false; }; + + openlibm = callPackage ../development/libraries/science/math/openlibm {}; + + openspecfun = callPackage ../development/libraries/science/math/openspecfun {}; + + planarity = callPackage ../development/libraries/science/math/planarity { }; + + scalapack = callPackage ../development/libraries/science/math/scalapack { }; + + rankwidth = callPackage ../development/libraries/science/math/rankwidth { }; + + lcalc = callPackage ../development/libraries/science/math/lcalc { }; + + lrcalc = callPackage ../applications/science/math/lrcalc { }; + + lie = callPackage ../applications/science/math/LiE { }; + + magma = callPackage ../development/libraries/science/math/magma { }; + clmagma = callPackage ../development/libraries/science/math/clmagma { }; + + mathematica = callPackage ../applications/science/math/mathematica { }; + mathematica9 = callPackage ../applications/science/math/mathematica/9.nix { }; + mathematica10 = callPackage ../applications/science/math/mathematica/10.nix { }; + mathematica11 = callPackage ../applications/science/math/mathematica/11.nix { }; + + metis = callPackage ../development/libraries/science/math/metis {}; + + nauty = callPackage ../applications/science/math/nauty {}; + + osi = callPackage ../development/libraries/science/math/osi { }; + + or-tools = callPackage ../development/libraries/science/math/or-tools { + python = python3; + # or-tools builds with -std=c++17, so abseil-cpp must + # also be built that way + abseil-cpp = abseil-cpp.override { + static = true; + cxxStandard = "17"; + }; + }; + + rubiks = callPackage ../development/libraries/science/math/rubiks { }; + + p4est-sc = callPackage ../development/libraries/science/math/p4est-sc { + p4est-sc-debugEnable = false; + }; + + p4est-sc-dbg = callPackage ../development/libraries/science/math/p4est-sc { }; + + p4est = callPackage ../development/libraries/science/math/p4est { }; + + p4est-dbg = callPackage ../development/libraries/science/math/p4est { + p4est-sc = p4est-sc-dbg; + }; + + petsc = callPackage ../development/libraries/science/math/petsc { }; + + parmetis = callPackage ../development/libraries/science/math/parmetis { }; + + QuadProgpp = callPackage ../development/libraries/science/math/QuadProgpp { }; + + scs = callPackage ../development/libraries/science/math/scs { }; + + sage = callPackage ../applications/science/math/sage { }; + sageWithDoc = sage.override { withDoc = true; }; + + sagetex = callPackage ../misc/sagetex { }; + + subread = callPackage ../applications/science/biology/subread { }; + + suitesparse_4_2 = callPackage ../development/libraries/science/math/suitesparse/4.2.nix { }; + suitesparse_4_4 = callPackage ../development/libraries/science/math/suitesparse/4.4.nix {}; + suitesparse_5_3 = callPackage ../development/libraries/science/math/suitesparse {}; + suitesparse = suitesparse_5_3; + + suitesparse-graphblas = callPackage ../development/libraries/science/math/suitesparse-graphblas {}; + + superlu = callPackage ../development/libraries/science/math/superlu {}; + + symmetrica = callPackage ../applications/science/math/symmetrica {}; + + sympow = callPackage ../development/libraries/science/math/sympow { }; + + trilinos = callPackage ../development/libraries/science/math/trilinos {}; + + trilinos-mpi = callPackage ../development/libraries/science/math/trilinos { withMPI = true; }; + + ipopt = callPackage ../development/libraries/science/math/ipopt { }; + + gmsh = callPackage ../applications/science/math/gmsh { }; + + zn_poly = callPackage ../development/libraries/science/math/zn_poly { }; + + ### SCIENCE/MOLECULAR-DYNAMICS + + dl-poly-classic-mpi = callPackage ../applications/science/molecular-dynamics/dl-poly-classic { }; + + lammps = callPackage ../applications/science/molecular-dynamics/lammps { + fftw = fftw; + }; + + lammps-mpi = lowPrio (lammps.override { withMPI = true; }); + + gromacs = callPackage ../applications/science/molecular-dynamics/gromacs { + singlePrec = true; + fftw = fftwSinglePrec; + }; + + gromacsMpi = lowPrio (gromacs.override { + singlePrec = true; + enableMpi = true; + fftw = fftwSinglePrec; + }); + + gromacsDouble = lowPrio (gromacs.override { + singlePrec = false; + fftw = fftw; + }); + + gromacsDoubleMpi = lowPrio (gromacs.override { + singlePrec = false; + enableMpi = true; + fftw = fftw; + }); + + gromacsCudaMpi = lowPrio (gromacs.override { + singlePrec = true; + enableMpi = true; + enableCuda = true; + cudatoolkit = cudatoolkit_11; + fftw = fftwSinglePrec; + }); + + zegrapher = libsForQt5.callPackage ../applications/science/math/zegrapher { }; + + ### SCIENCE/MEDICINE + + aliza = callPackage ../applications/science/medicine/aliza { }; + + dcmtk = callPackage ../applications/science/medicine/dcmtk { }; + + xmedcon = callPackage ../applications/science/medicine/xmedcon { }; + + ### SCIENCE/PHYSICS + + elmerfem = callPackage ../applications/science/physics/elmerfem {}; + + mcfm = callPackage ../applications/science/physics/MCFM { + stdenv = gccStdenv; + lhapdf = lhapdf.override { stdenv = gccStdenv; }; + }; + + professor = callPackage ../applications/science/physics/professor { }; + + sacrifice = callPackage ../applications/science/physics/sacrifice {}; + + sherpa = callPackage ../applications/science/physics/sherpa {}; + + shtns = callPackage ../applications/science/physics/shtns { }; + + xfitter = callPackage ../applications/science/physics/xfitter {}; + + xflr5 = libsForQt5.callPackage ../applications/science/physics/xflr5 { }; + + ### SCIENCE/PROGRAMMING + + dafny = dotnetPackages.Dafny; + + groove = callPackage ../applications/science/programming/groove { }; + + plm = callPackage ../applications/science/programming/plm { }; + + ### SCIENCE/LOGIC + + abc-verifier = callPackage ../applications/science/logic/abc {}; + + abella = callPackage ../applications/science/logic/abella { + ocamlPackages = ocaml-ng.ocamlPackages_4_12; + }; + + acgtk = callPackage ../applications/science/logic/acgtk {}; + + alt-ergo = callPackage ../applications/science/logic/alt-ergo {}; + + aspino = callPackage ../applications/science/logic/aspino {}; + + beluga = callPackage ../applications/science/logic/beluga {}; + + boogie = dotnetPackages.Boogie; + + cadical = callPackage ../applications/science/logic/cadical {}; + + inherit (callPackage ./coq-packages.nix { + inherit (ocaml-ng) ocamlPackages_4_05 ocamlPackages_4_09 ocamlPackages_4_10 ocamlPackages_4_12; + }) mkCoqPackages + coqPackages_8_5 coq_8_5 + coqPackages_8_6 coq_8_6 + coqPackages_8_7 coq_8_7 + coqPackages_8_8 coq_8_8 + coqPackages_8_9 coq_8_9 + coqPackages_8_10 coq_8_10 + coqPackages_8_11 coq_8_11 + coqPackages_8_12 coq_8_12 + coqPackages_8_13 coq_8_13 + coqPackages_8_14 coq_8_14 + coqPackages_8_15 coq_8_15 + coqPackages coq + ; + + coq2html = callPackage ../tools/typesetting/coq2html { }; + + cryptoverif = callPackage ../applications/science/logic/cryptoverif { }; + + crypto-org-wallet = callPackage ../applications/blockchains/crypto-org-wallet { }; + + caprice32 = callPackage ../applications/emulators/caprice32 { }; + + cubicle = callPackage ../applications/science/logic/cubicle { + ocamlPackages = ocaml-ng.ocamlPackages_4_05; + }; + + cvc3 = callPackage ../applications/science/logic/cvc3 { + gmp = lib.overrideDerivation gmp (_: { dontDisableStatic = true; }); + stdenv = gccStdenv; + }; + cvc4 = callPackage ../applications/science/logic/cvc4 { + jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + + drat-trim = callPackage ../applications/science/logic/drat-trim {}; + + ekrhyper = callPackage ../applications/science/logic/ekrhyper { + inherit (ocaml-ng.ocamlPackages_4_02) ocaml; + }; + + eprover = callPackage ../applications/science/logic/eprover { }; + + eprover-ho = callPackage ../applications/science/logic/eprover { enableHO = true; }; + + formula = callPackage ../applications/science/logic/formula { }; + + gappa = callPackage ../applications/science/logic/gappa { }; + + gfan = callPackage ../applications/science/math/gfan {}; + + giac = callPackage ../applications/science/math/giac { }; + giac-with-xcas = giac.override { enableGUI = true; }; + + ginac = callPackage ../applications/science/math/ginac { }; + + glom = callPackage ../applications/misc/glom { }; + + glucose = callPackage ../applications/science/logic/glucose { }; + glucose-syrup = callPackage ../applications/science/logic/glucose/syrup.nix { }; + + hol = callPackage ../applications/science/logic/hol { }; + + inherit (ocaml-ng.ocamlPackages_4_12) hol_light; + + hologram = callPackage ../tools/security/hologram { }; + + honeytrap = callPackage ../tools/security/honeytrap { }; + + kissat = callPackage ../applications/science/logic/kissat {}; + + tini = callPackage ../applications/virtualization/tini {}; + + ifstat-legacy = callPackage ../tools/networking/ifstat-legacy { }; + + isabelle = callPackage ../applications/science/logic/isabelle { + polyml = lib.overrideDerivation polyml (_: { + configureFlags = [ "--enable-intinf-as-int" "--with-gmp" "--disable-shared" ]; + }); + + java = openjdk17; + z3 = z3_4_4_0; + }; + + iprover = callPackage ../applications/science/logic/iprover { }; + + jonprl = callPackage ../applications/science/logic/jonprl { }; + + key = callPackage ../applications/science/logic/key { }; + + keymapviz = callPackage ../tools/misc/keymapviz { }; + + lean = callPackage ../applications/science/logic/lean {}; + lean2 = callPackage ../applications/science/logic/lean2 {}; + lean3 = lean; + elan = callPackage ../applications/science/logic/elan {}; + mathlibtools = with python3Packages; toPythonApplication mathlibtools; + + leo2 = callPackage ../applications/science/logic/leo2 + { inherit (ocaml-ng.ocamlPackages_4_05) ocaml camlp4; }; + + leo3-bin = callPackage ../applications/science/logic/leo3/binary.nix {}; + + logisim = callPackage ../applications/science/logic/logisim {}; + + logisim-evolution = callPackage ../applications/science/logic/logisim-evolution {}; + + ltl2ba = callPackage ../applications/science/logic/ltl2ba {}; + + metis-prover = callPackage ../applications/science/logic/metis-prover { }; + + mcrl2 = callPackage ../applications/science/logic/mcrl2 { }; + + minisat = callPackage ../applications/science/logic/minisat {}; + + monosat = callPackage ../applications/science/logic/monosat {}; + + opensmt = callPackage ../applications/science/logic/opensmt { }; + + ott = callPackage ../applications/science/logic/ott { }; + + otter = callPackage ../applications/science/logic/otter {}; + + picosat = callPackage ../applications/science/logic/picosat {}; + + libpoly = callPackage ../applications/science/logic/poly {}; + + prooftree = callPackage ../applications/science/logic/prooftree { + ocamlPackages = ocaml-ng.ocamlPackages_4_12; + }; + + prover9 = callPackage ../applications/science/logic/prover9 { }; + + proverif = callPackage ../applications/science/logic/proverif { }; + + satallax = callPackage ../applications/science/logic/satallax { + ocaml = ocaml-ng.ocamlPackages_4_01_0.ocaml; + }; + + saw-tools = callPackage ../applications/science/logic/saw-tools {}; + + spass = callPackage ../applications/science/logic/spass { + stdenv = gccStdenv; + }; + + statverif = callPackage ../applications/science/logic/statverif { + inherit (ocaml-ng.ocamlPackages_4_05) ocaml; + }; + + tptp = callPackage ../applications/science/logic/tptp {}; + + celf = callPackage ../applications/science/logic/celf { }; + + fast-downward = callPackage ../applications/science/logic/fast-downward { }; + + twelf = callPackage ../applications/science/logic/twelf { }; + + verifast = callPackage ../applications/science/logic/verifast {}; + + veriT = callPackage ../applications/science/logic/verit {}; + + why3 = callPackage ../applications/science/logic/why3 { }; + + workcraft = callPackage ../applications/science/logic/workcraft {}; + + yices = callPackage ../applications/science/logic/yices { + gmp-static = gmp.override { withStatic = true; }; + }; + + z3 = callPackage ../applications/science/logic/z3 { python = python2; }; + z3_4_4_0 = callPackage ../applications/science/logic/z3/4.4.0.nix { + python = python2; + stdenv = gcc49Stdenv; + }; + z3-tptp = callPackage ../applications/science/logic/z3/tptp.nix {}; + + tlaplus = callPackage ../applications/science/logic/tlaplus { + jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + tlaps = callPackage ../applications/science/logic/tlaplus/tlaps.nix { + inherit (ocaml-ng.ocamlPackages_4_05) ocaml; + }; + tlaplusToolbox = callPackage ../applications/science/logic/tlaplus/toolbox.nix {}; + + aiger = callPackage ../applications/science/logic/aiger {}; + + avy = callPackage ../applications/science/logic/avy {}; + + btor2tools = callPackage ../applications/science/logic/btor2tools {}; + + boolector = callPackage ../applications/science/logic/boolector {}; + + bitwuzla = callPackage ../applications/science/logic/bitwuzla {}; + + symbiyosys = callPackage ../applications/science/logic/symbiyosys {}; + + mcy = callPackage ../applications/science/logic/mcy {}; + + lingeling = callPackage ../applications/science/logic/lingeling {}; + + ### SCIENCE / ELECTRONICS + + adms = callPackage ../applications/science/electronics/adms { }; + + appcsxcad = libsForQt5.callPackage ../applications/science/electronics/appcsxcad { }; + + # Since version 8 Eagle requires an Autodesk account and a subscription + # in contrast to single payment for the charged editions. + # This is the last version with the old model. + eagle7 = callPackage ../applications/science/electronics/eagle/eagle7.nix { + openssl = openssl_1_0_2; + }; + + eagle = libsForQt5.callPackage ../applications/science/electronics/eagle/eagle.nix { }; + + caneda = libsForQt5.callPackage ../applications/science/electronics/caneda { }; + + csxcad = callPackage ../applications/science/electronics/csxcad { }; + + diylc = callPackage ../applications/science/electronics/diylc { }; + + flatcam = callPackage ../applications/science/electronics/flatcam { }; + + fparser = callPackage ../applications/science/electronics/fparser { }; + + geda = callPackage ../applications/science/electronics/geda { + guile = guile_2_0; + }; + + gerbv = callPackage ../applications/science/electronics/gerbv { }; + + gtkwave = callPackage ../applications/science/electronics/gtkwave { }; + + hyp2mat = callPackage ../applications/science/electronics/hyp2mat { }; + + fped = callPackage ../applications/science/electronics/fped { }; + + gaw = callPackage ../applications/science/electronics/gaw {}; + + horizon-eda = callPackage ../applications/science/electronics/horizon-eda {}; + + # this is a wrapper for kicad.base and kicad.libraries + kicad = callPackage ../applications/science/electronics/kicad { }; + kicad-small = kicad.override { pname = "kicad-small"; with3d = false; }; + kicad-unstable = kicad.override { pname = "kicad-unstable"; stable = false; }; + # mostly here so the kicad-unstable components (except packages3d) get built + kicad-unstable-small = kicad.override { + pname = "kicad-unstable-small"; + stable = false; + with3d = false; + }; + + librepcb = libsForQt5.callPackage ../applications/science/electronics/librepcb { }; + + ngspice = callPackage ../applications/science/electronics/ngspice { }; + + openems = callPackage ../applications/science/electronics/openems { + qcsxcad = libsForQt5.qcsxcad; + }; + + openroad = libsForQt5.callPackage ../applications/science/electronics/openroad { }; + + pcb = callPackage ../applications/science/electronics/pcb { }; + + qucs = callPackage ../applications/science/electronics/qucs { }; + + qucs-s = callPackage ../applications/science/electronics/qucs-s { }; + + xcircuit = callPackage ../applications/science/electronics/xcircuit { }; + + xoscope = callPackage ../applications/science/electronics/xoscope { }; + + xschem = callPackage ../applications/science/electronics/xschem { }; + + xyce = callPackage ../applications/science/electronics/xyce { }; + + xyce-parallel = callPackage ../applications/science/electronics/xyce { + withMPI = true; + trilinos = trilinos-mpi; + }; + + ### SCIENCE / MATH + + caffe = callPackage ../applications/science/math/caffe ({ + opencv3 = opencv3WithoutCuda; # Used only for image loading. + blas = openblas; + inherit (darwin.apple_sdk.frameworks) Accelerate CoreGraphics CoreVideo; + } // (config.caffe or {})); + + caffe2 = callPackage ../development/libraries/science/math/caffe2 (rec { + inherit (python3Packages) python future six numpy pydot; + protobuf = protobuf3_1; + python-protobuf = python3Packages.protobuf.override { inherit protobuf; }; + opencv3 = opencv3WithoutCuda; # Used only for image loading. + }); + + caffeine-ng = callPackage ../tools/X11/caffeine-ng {}; + + cntk = callPackage ../applications/science/math/cntk { + stdenv = gcc7Stdenv; + inherit (linuxPackages) nvidia_x11; + opencv3 = opencv3WithoutCuda; # Used only for image loading. + cudaSupport = config.cudaSupport or false; + }; + + dap = callPackage ../applications/science/math/dap { }; + + ecm = callPackage ../applications/science/math/ecm { }; + + eukleides = callPackage ../applications/science/math/eukleides { }; + + form = callPackage ../applications/science/math/form { }; + + fricas = callPackage ../applications/science/math/fricas { }; + + gap = callPackage ../applications/science/math/gap { }; + + gap-minimal = lowPrio (gap.override { packageSet = "minimal"; }); + + gap-full = lowPrio (gap.override { packageSet = "full"; }); + + geogebra = callPackage ../applications/science/math/geogebra { }; + geogebra6 = callPackage ../applications/science/math/geogebra/geogebra6.nix { + electron = electron_14; + }; + + maxima = callPackage ../applications/science/math/maxima { + lisp-compiler = sbcl; + }; + maxima-ecl = maxima.override { + lisp-compiler = ecl; + }; + + mxnet = callPackage ../applications/science/math/mxnet { + inherit (linuxPackages) nvidia_x11; + }; + + wxmaxima = callPackage ../applications/science/math/wxmaxima { wxGTK = wxGTK30; }; + + pari = callPackage ../applications/science/math/pari { tex = texlive.combined.scheme-basic; }; + gp2c = callPackage ../applications/science/math/pari/gp2c.nix { }; + + palp = callPackage ../applications/science/math/palp { }; + + ratpoints = callPackage ../applications/science/math/ratpoints {}; + + calc = callPackage ../applications/science/math/calc { }; + + pcalc = callPackage ../applications/science/math/pcalc { }; + + programmer-calculator = callPackage ../applications/science/math/programmer-calculator { }; + + bcal = callPackage ../applications/science/math/bcal { }; + + pspp = callPackage ../applications/science/math/pspp { }; + + ssw = callPackage ../applications/misc/ssw { }; + + pynac = callPackage ../applications/science/math/pynac { }; + + singular = callPackage ../applications/science/math/singular { }; + + scilab = callPackage ../applications/science/math/scilab { }; + + scilab-bin = callPackage ../applications/science/math/scilab-bin {}; + + scilla = callPackage ../tools/security/scilla { }; + + scotch = callPackage ../applications/science/math/scotch { }; + + mininet = callPackage ../tools/virtualization/mininet { }; + + msieve = callPackage ../applications/science/math/msieve { }; + + weka = callPackage ../applications/science/math/weka { }; + + yad = callPackage ../tools/misc/yad { }; + + yacas = libsForQt5.callPackage ../applications/science/math/yacas { }; + + yacas-gui = yacas.override { + enableGui = true; + enableJupyter = false; + }; + + speedcrunch = libsForQt5.callPackage ../applications/science/math/speedcrunch { }; + + ### SCIENCE / MISC + + boinc = callPackage ../applications/science/misc/boinc { }; + + celestia = callPackage ../applications/science/astronomy/celestia { + autoreconfHook = buildPackages.autoreconfHook269; + inherit (gnome2) gtkglext; + }; + + convertall = qt5.callPackage ../applications/science/misc/convertall { }; + + cytoscape = callPackage ../applications/science/misc/cytoscape { + jre = openjdk11; + }; + + fityk = callPackage ../applications/science/misc/fityk { }; + + galario = callPackage ../development/libraries/galario { }; + + gildas = callPackage ../applications/science/astronomy/gildas { }; + + gplates = libsForQt5.callPackage ../applications/science/misc/gplates { + boost = boost175; + }; + + gravit = callPackage ../applications/science/astronomy/gravit { }; + + golly = callPackage ../applications/science/misc/golly { wxGTK = wxGTK30; }; + golly-beta = callPackage ../applications/science/misc/golly/beta.nix { wxGTK = wxGTK30; }; + + megam = callPackage ../applications/science/misc/megam { + inherit (ocaml-ng.ocamlPackages_4_07) ocaml; + }; + + netlogo = callPackage ../applications/science/misc/netlogo { }; + + nextinspace = python3Packages.callPackage ../applications/science/misc/nextinspace { }; + + ns-3 = callPackage ../development/libraries/science/networking/ns-3 { python = python3; }; + + root = callPackage ../applications/science/misc/root { + python = python3; + inherit (darwin.apple_sdk.frameworks) Cocoa CoreSymbolication OpenGL; + }; + + root5 = lowPrio (callPackage ../applications/science/misc/root/5.nix { + inherit (darwin.apple_sdk.frameworks) Cocoa OpenGL; + stdenv = if stdenv.cc.isClang then llvmPackages_5.stdenv else stdenv; + }); + + rink = callPackage ../applications/science/misc/rink { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + simgrid = callPackage ../applications/science/misc/simgrid { }; + + sumo = callPackage ../applications/science/networking/sumo { }; + + spyder = with python3.pkgs; toPythonApplication spyder; + + spyre = callPackage ../tools/security/spyre { }; + + openspace = callPackage ../applications/science/astronomy/openspace { }; + + stellarium = libsForQt5.callPackage ../applications/science/astronomy/stellarium { }; + + stellarsolver = libsForQt5.callPackage ../development/libraries/science/astronomy/stellarsolver { }; + + astrolabe-generator = callPackage ../applications/science/astronomy/astrolabe-generator { }; + + tulip = libsForQt5.callPackage ../applications/science/misc/tulip { }; + + vite = callPackage ../applications/science/misc/vite { }; + + xearth = callPackage ../applications/science/astronomy/xearth { }; + xplanet = callPackage ../applications/science/astronomy/xplanet { }; + + ### SCIENCE / PHYSICS + + apfelgrid = callPackage ../development/libraries/physics/apfelgrid { }; + + apfel = callPackage ../development/libraries/physics/apfel { }; + + applgrid = callPackage ../development/libraries/physics/applgrid { }; + + hoppet = callPackage ../development/libraries/physics/hoppet { }; + + fastjet = callPackage ../development/libraries/physics/fastjet { }; + + fastjet-contrib = callPackage ../development/libraries/physics/fastjet-contrib { }; + + fastnlo_toolkit = callPackage ../development/libraries/physics/fastnlo_toolkit { }; + + geant4 = libsForQt5.callPackage ../development/libraries/physics/geant4 { }; + + cernlib = callPackage ../development/libraries/physics/cernlib { }; + + hepmc2 = callPackage ../development/libraries/physics/hepmc2 { }; + + hepmc3 = callPackage ../development/libraries/physics/hepmc3 { + python = null; + }; + + herwig = callPackage ../development/libraries/physics/herwig { }; + + lhapdf = callPackage ../development/libraries/physics/lhapdf { + python = python3; + }; + + mela = callPackage ../development/libraries/physics/mela { }; + + nlojet = callPackage ../development/libraries/physics/nlojet { }; + + pythia = callPackage ../development/libraries/physics/pythia { + hepmc = hepmc2; + }; + + rivet = callPackage ../development/libraries/physics/rivet { + hepmc = hepmc2; + imagemagick = graphicsmagick-imagemagick-compat; + }; + + thepeg = callPackage ../development/libraries/physics/thepeg { }; + + yoda = callPackage ../development/libraries/physics/yoda { + python = python3; + }; + yoda-with-root = lowPrio (yoda.override { + withRootSupport = true; + }); + + qcdnum = callPackage ../development/libraries/physics/qcdnum { }; + + ### SCIENCE/ROBOTICS + + apmplanner2 = libsForQt514.callPackage ../applications/science/robotics/apmplanner2 { }; + + betaflight-configurator = callPackage ../applications/science/robotics/betaflight-configurator { }; + + emuflight-configurator = callPackage ../applications/science/robotics/emuflight-configurator { }; + + inav-configurator = callPackage ../applications/science/robotics/inav-configurator { }; + + mission-planner = callPackage ../applications/science/robotics/mission-planner { }; + + ### MISC + + acpilight = callPackage ../misc/acpilight { }; + + android-file-transfer = libsForQt5.callPackage ../tools/filesystems/android-file-transfer { }; + + antimicrox = libsForQt5.callPackage ../tools/misc/antimicrox { }; + + ares = callPackage ../applications/emulators/ares { }; + + atari800 = callPackage ../applications/emulators/atari800 { }; + + ataripp = callPackage ../applications/emulators/atari++ { }; + + atlantis = callPackage ../applications/networking/cluster/atlantis { }; + + fn-cli = callPackage ../applications/networking/cluster/fn-cli { }; + + auctex = callPackage ../tools/typesetting/tex/auctex { }; + + areca = callPackage ../applications/backup/areca { + jdk = jdk8; + jre = jre8; + swt = swt_jdk8; + }; + + attract-mode = callPackage ../applications/emulators/attract-mode { }; + + autotiling = python3Packages.callPackage ../misc/autotiling { }; + + avell-unofficial-control-center = python3Packages.callPackage ../applications/misc/avell-unofficial-control-center { }; + + beep = callPackage ../misc/beep { }; + + bees = callPackage ../tools/filesystems/bees { }; + + bootil = callPackage ../development/libraries/bootil { }; + + brgenml1lpr = pkgsi686Linux.callPackage ../misc/cups/drivers/brgenml1lpr {}; + + brgenml1cupswrapper = callPackage ../misc/cups/drivers/brgenml1cupswrapper {}; + + brightnessctl = callPackage ../misc/brightnessctl { }; + + cached-nix-shell = callPackage ../tools/nix/cached-nix-shell {}; + + calaos_installer = libsForQt5.callPackage ../misc/calaos/installer {}; + + ccemux = callPackage ../applications/emulators/ccemux { }; + + click = callPackage ../applications/networking/cluster/click { }; + + clinfo = callPackage ../tools/system/clinfo { + inherit (darwin.apple_sdk.frameworks) OpenCL; + }; + + clpeak = callPackage ../tools/misc/clpeak { }; + + cups = callPackage ../misc/cups { }; + + cups-filters = callPackage ../misc/cups/filters.nix { }; + + cups-pk-helper = callPackage ../misc/cups/cups-pk-helper.nix { }; + + cups-kyocera = callPackage ../misc/cups/drivers/kyocera {}; + + cups-kyocera-ecosys-m2x35-40-p2x35-40dnw = callPackage ../misc/cups/drivers/kyocera-ecosys-m2x35-40-p2x35-40dnw {}; + + cups-kyocera-ecosys-m552x-p502x = callPackage ../misc/cups/drivers/kyocera-ecosys-m552x-p502x {}; + + cups-kyodialog3 = callPackage ../misc/cups/drivers/kyodialog3 {}; + + cups-dymo = callPackage ../misc/cups/drivers/dymo {}; + + cups-toshiba-estudio = callPackage ../misc/cups/drivers/estudio {}; + + cups-zj-58 = callPackage ../misc/cups/drivers/zj-58 { }; + + colort = callPackage ../applications/misc/colort { }; + + terminal-parrot = callPackage ../applications/misc/terminal-parrot { }; + + epson-alc1100 = callPackage ../misc/drivers/epson-alc1100 { }; + + epson-escpr = callPackage ../misc/drivers/epson-escpr { }; + epson-escpr2 = callPackage ../misc/drivers/epson-escpr2 { }; + + epson_201207w = callPackage ../misc/drivers/epson_201207w { }; + + epson-201401w = callPackage ../misc/drivers/epson-201401w { }; + + epson-201106w = callPackage ../misc/drivers/epson-201106w { }; + + epson-workforce-635-nx625-series = callPackage ../misc/drivers/epson-workforce-635-nx625-series { }; + + gutenprint = callPackage ../misc/drivers/gutenprint { }; + + gutenprintBin = callPackage ../misc/drivers/gutenprint/bin.nix { }; + + carps-cups = callPackage ../misc/cups/drivers/carps-cups { }; + + cups-bjnp = callPackage ../misc/cups/drivers/cups-bjnp { }; + + dcp9020cdwlpr = (pkgsi686Linux.callPackage ../misc/cups/drivers/brother/dcp9020cdw { }).driver; + + dcp9020cdw-cupswrapper = (callPackage ../misc/cups/drivers/brother/dcp9020cdw { }).cupswrapper; + + cups-brother-hl1110 = pkgsi686Linux.callPackage ../misc/cups/drivers/hl1110 { }; + + cups-brother-hl1210w = pkgsi686Linux.callPackage ../misc/cups/drivers/hl1210w { }; + + cups-brother-hl3140cw = pkgsi686Linux.callPackage ../misc/cups/drivers/hl3140cw { }; + + cups-brother-hll2340dw = pkgsi686Linux.callPackage ../misc/cups/drivers/hll2340dw { }; + + cups-brother-hll2350dw = callPackage ../misc/cups/drivers/hll2350dw { }; + + cups-drv-rastertosag-gdi = callPackage ../misc/cups/drivers/cups-drv-rastertosag-gdi { }; + + # this driver ships with pre-compiled 32-bit binary libraries + cnijfilter_2_80 = pkgsi686Linux.callPackage ../misc/cups/drivers/cnijfilter_2_80 { }; + + cnijfilter_4_00 = callPackage ../misc/cups/drivers/cnijfilter_4_00 { }; + + cnijfilter2 = callPackage ../misc/cups/drivers/cnijfilter2 { }; + + darcnes = callPackage ../applications/emulators/darcnes { }; + + darling-dmg = callPackage ../tools/filesystems/darling-dmg { }; + + depotdownloader = callPackage ../tools/misc/depotdownloader { }; + + desmume = callPackage ../applications/emulators/desmume { }; + + dbacl = callPackage ../tools/misc/dbacl { }; + + dblatex = callPackage ../tools/typesetting/tex/dblatex { }; + + dblatexFull = dblatex.override { enableAllFeatures = true; }; + + dbus-map = callPackage ../tools/misc/dbus-map { }; + + dell-530cdn = callPackage ../misc/drivers/dell-530cdn {}; + + dockutil = callPackage ../os-specific/darwin/dockutil { }; + + dosbox = callPackage ../applications/emulators/dosbox { }; + + dosbox-staging = callPackage ../applications/emulators/dosbox-staging { }; + + emu2 = callPackage ../applications/emulators/emu2 { }; + + apt = callPackage ../tools/package-management/apt { }; + + dpkg = callPackage ../tools/package-management/dpkg { }; + + dumb = callPackage ../misc/dumb { }; + + dump = callPackage ../tools/backup/dump { }; + + dxvk = callPackage ../misc/dxvk { }; + + ecdsatool = callPackage ../tools/security/ecdsatool { }; + + emulationstation = callPackage ../applications/emulators/emulationstation { }; + + electricsheep = callPackage ../misc/screensavers/electricsheep { }; + + aaphoto = callPackage ../tools/graphics/aaphoto {}; + + flam3 = callPackage ../tools/graphics/flam3 { }; + + glee = callPackage ../tools/graphics/glee { }; + + fakenes = callPackage ../applications/emulators/fakenes { }; + + faust = res.faust2; + + faust1 = callPackage ../applications/audio/faust/faust1.nix { }; + + faust2 = callPackage ../applications/audio/faust/faust2.nix { + llvm = llvm_10; + }; + + faust2alqt = callPackage ../applications/audio/faust/faust2alqt.nix { }; + + faust2alsa = callPackage ../applications/audio/faust/faust2alsa.nix { }; + + faust2csound = callPackage ../applications/audio/faust/faust2csound.nix { }; + + faust2firefox = callPackage ../applications/audio/faust/faust2firefox.nix { }; + + faust2jack = callPackage ../applications/audio/faust/faust2jack.nix { }; + + faust2jackrust = callPackage ../applications/audio/faust/faust2jackrust.nix { }; + + faust2jaqt = callPackage ../applications/audio/faust/faust2jaqt.nix { }; + + faust2ladspa = callPackage ../applications/audio/faust/faust2ladspa.nix { }; + + faust2lv2 = callPackage ../applications/audio/faust/faust2lv2.nix { }; + + faustlive = callPackage ../applications/audio/faust/faustlive.nix { }; + + faustPhysicalModeling = callPackage ../applications/audio/faustPhysicalModeling { }; + + faustStk = callPackage ../applications/audio/faustStk { }; + + fceux = libsForQt5.callPackage ../applications/emulators/fceux { }; + + flockit = callPackage ../tools/backup/flockit { }; + + fahclient = callPackage ../applications/science/misc/foldingathome/client.nix {}; + fahcontrol = callPackage ../applications/science/misc/foldingathome/control.nix {}; + fahviewer = callPackage ../applications/science/misc/foldingathome/viewer.nix {}; + + fbmark = callPackage ../tools/misc/fbmark { }; + + foma = callPackage ../tools/misc/foma { }; + + foo2zjs = callPackage ../misc/drivers/foo2zjs {}; + + foomatic-filters = callPackage ../misc/drivers/foomatic-filters {}; + + fuse-emulator = callPackage ../applications/emulators/fuse-emulator {}; + + gajim = callPackage ../applications/networking/instant-messengers/gajim { + inherit (gst_all_1) gstreamer gst-plugins-base gst-libav; + gst-plugins-good = gst_all_1.gst-plugins-good.override { gtkSupport = true; }; + }; + + gammu = callPackage ../applications/misc/gammu { }; + + gensgs = pkgsi686Linux.callPackage ../applications/emulators/gens-gs { }; + + ghostscript = callPackage ../misc/ghostscript { }; + + ghostscriptX = appendToName "with-X" (ghostscript.override { + cupsSupport = true; + x11Support = true; + }); + + glava = callPackage ../applications/misc/glava {}; + + gnuk = callPackage ../misc/gnuk { + gcc-arm-embedded = pkgsCross.arm-embedded.buildPackages.gcc; + binutils-arm-embedded = pkgsCross.arm-embedded.buildPackages.binutils; + }; + + go365 = callPackage ../tools/security/go365 { }; + + gobuster = callPackage ../tools/security/gobuster { }; + + gotestwaf = callPackage ../tools/security/gotestwaf { }; + + guetzli = callPackage ../applications/graphics/guetzli { }; + + gummi = callPackage ../applications/misc/gummi { }; + + gxemul = callPackage ../applications/emulators/gxemul { }; + + hatari = callPackage ../applications/emulators/hatari { }; + + hck = callPackage ../tools/text/hck { + inherit (darwin.apple_sdk.frameworks) CoreFoundation Security; + }; + + helm = callPackage ../applications/audio/helm { }; + + helmfile = callPackage ../applications/networking/cluster/helmfile { }; + + helmsman = callPackage ../applications/networking/cluster/helmsman { }; + + velero = callPackage ../applications/networking/cluster/velero { }; + + HentaiAtHome = callPackage ../applications/misc/HentaiAtHome { }; + + hplip = callPackage ../misc/drivers/hplip { }; + + hplipWithPlugin = hplip.override { withPlugin = true; }; + + hyperfine = callPackage ../tools/misc/hyperfine { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + webcat = callPackage ../tools/misc/webcat { }; + + websocat = callPackage ../tools/misc/websocat { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + vector = callPackage ../tools/misc/vector { + inherit (darwin.apple_sdk.frameworks) Security CoreServices; + }; + + hjson = with python3Packages; toPythonApplication hjson; + + hjson-go = callPackage ../development/tools/hjson-go { }; + + epkowa = callPackage ../misc/drivers/epkowa { }; + + utsushi = callPackage ../misc/drivers/utsushi { }; + + utsushi-networkscan = callPackage ../misc/drivers/utsushi/networkscan.nix { }; + + idsk = callPackage ../tools/filesystems/idsk { }; + + colima = callPackage ../applications/virtualization/colima { }; + + lima = callPackage ../applications/virtualization/lima { }; + + logtop = callPackage ../tools/misc/logtop { }; + + igraph = callPackage ../development/libraries/igraph { }; + + igprof = callPackage ../development/tools/misc/igprof { }; + + illum = callPackage ../tools/system/illum { }; + + image_optim = callPackage ../applications/graphics/image_optim { inherit (nodePackages) svgo; }; + + infnoise = callPackage ../misc/drivers/infnoise { }; + + # using the new configuration style proposal which is unstable + jack1 = callPackage ../misc/jackaudio/jack1.nix { }; + + jack2 = callPackage ../misc/jackaudio { + libopus = libopus.override { withCustomModes = true; }; + inherit (darwin.apple_sdk.frameworks) AudioUnit CoreAudio Accelerate; + inherit (darwin) libobjc; + }; + + libjack2 = jack2.override { prefix = "lib"; }; + + j2cli = with python3Packages; toPythonApplication j2cli; + + jquake = callPackage ../applications/misc/jquake { }; + + jstest-gtk = callPackage ../tools/misc/jstest-gtk { }; + + k40-whisperer = callPackage ../applications/misc/k40-whisperer { }; + + keynav = callPackage ../tools/X11/keynav { }; + + kgx = callPackage ../applications/terminal-emulators/kgx { }; + + kmon = callPackage ../tools/system/kmon { }; + + kompose = callPackage ../applications/networking/cluster/kompose { }; + + kontemplate = callPackage ../applications/networking/cluster/kontemplate { }; + + # In general we only want keep the last three minor versions around that + # correspond to the last three supported kubernetes versions: + # https://kubernetes.io/docs/setup/release/version-skew-policy/#supported-versions + # Exceptions are versions that we need to keep to allow upgrades from older NixOS releases + inherit (callPackage ../applications/networking/cluster/kops {}) + mkKops + kops_1_20 + kops_1_21 + kops_1_22 + ; + kops = kops_1_22; + + lguf-brightness = callPackage ../misc/lguf-brightness { }; + + lilypond = callPackage ../misc/lilypond { guile = guile_1_8; }; + + lilypond-with-fonts = callPackage ../misc/lilypond/with-fonts.nix { }; + + openlilylib-fonts = callPackage ../misc/lilypond/fonts.nix { }; + + loop = callPackage ../tools/misc/loop { }; + + maiko = callPackage ../applications/emulators/maiko { inherit (xorg) libX11; }; + + mailcore2 = callPackage ../development/libraries/mailcore2 { + icu = icu58; + }; + + mamba = callPackage ../applications/audio/mamba { }; + + mame = libsForQt514.callPackage ../applications/emulators/mame { + inherit (darwin.apple_sdk.frameworks) CoreAudioKit ForceFeedback; + }; + + martyr = callPackage ../development/libraries/martyr { }; + + mas = callPackage ../os-specific/darwin/mas { }; + + micromamba = callPackage ../tools/package-management/micromamba { }; + + moltengamepad = callPackage ../misc/drivers/moltengamepad { }; + + openzwave = callPackage ../development/libraries/openzwave { }; + + mongoc = callPackage ../development/libraries/mongoc { }; + + mongoose = callPackage ../development/libraries/science/math/mongoose {}; + + morph = callPackage ../tools/package-management/morph { }; + + mupen64plus = callPackage ../applications/emulators/mupen64plus { }; + + muse = libsForQt5.callPackage ../applications/audio/muse { }; + + musly = callPackage ../applications/audio/musly { }; + + mynewt-newt = callPackage ../tools/package-management/mynewt-newt { }; + + mysides = callPackage ../os-specific/darwin/mysides { }; + + nar-serve = callPackage ../tools/nix/nar-serve { }; + + neo = callPackage ../applications/misc/neo { }; + + nixVersions = recurseIntoAttrs (callPackage ../tools/package-management/nix { + storeDir = config.nix.storeDir or "/nix/store"; + stateDir = config.nix.stateDir or "/nix/var"; + inherit (darwin.apple_sdk.frameworks) Security; + }); + + nix = nixVersions.stable; + + nixStatic = pkgsStatic.nix; + + nixops = callPackage ../tools/package-management/nixops { }; + + nixops_unstable = lowPrio (callPackage ../applications/networking/cluster/nixops { }); + + nixops-dns = callPackage ../tools/package-management/nixops/nixops-dns.nix { }; + + /* + Evaluate a NixOS configuration using this evaluation of Nixpkgs. + + With this function you can write, for example, a package that + depends on a custom virtual machine image. + + Parameter: A module, path or list of those that represent the + configuration of the NixOS system to be constructed. + + Result: An attribute set containing packages produced by this + evaluation of NixOS, such as toplevel, kernel and + initialRamdisk. + The result can be extended in the modules by defining + extra attributes in system.build. + Alternatively, you may use the result's config and + options attributes to query any option. + + Example: + + let + myOS = pkgs.nixos ({ lib, pkgs, config, ... }: { + + config.services.nginx = { + enable = true; + # ... + }; + + # Use config.system.build to exports relevant parts of a + # configuration. The runner attribute should not be + # considered a fully general replacement for systemd + # functionality. + config.system.build.run-nginx = config.systemd.services.nginx.runner; + }); + in + myOS.run-nginx + + Unlike in plain NixOS, the nixpkgs.config and + nixpkgs.system options will be ignored by default. Instead, + nixpkgs.pkgs will have the default value of pkgs as it was + constructed right after invoking the nixpkgs function (e.g. the + value of import <nixpkgs> { overlays = [./my-overlay.nix]; } + but not the value of (import <nixpkgs> {} // { extra = ...; }). + + If you do want to use the config.nixpkgs options, you are + probably better off by calling nixos/lib/eval-config.nix + directly, even though it is possible to set config.nixpkgs.pkgs. + + For more information about writing NixOS modules, see + https://nixos.org/nixos/manual/index.html#sec-writing-modules + + Note that you will need to have called Nixpkgs with the system + parameter set to the right value for your deployment target. + */ + nixos = + configuration: + let + c = import (path + "/nixos/lib/eval-config.nix") { + inherit (stdenv.hostPlatform) system; + modules = + [( + { lib, ... }: { + config.nixpkgs.pkgs = lib.mkDefault pkgs; + } + )] ++ ( + if builtins.isList configuration + then configuration + else [configuration] + ); + }; + in + c.config.system.build // c; + + /* + A NixOS/home-manager/arion/... module that sets the `pkgs` module argument. + */ + pkgsModule = { lib, options, ... }: { + config = + if options?nixpkgs.pkgs then { + # legacy / nixpkgs.nix style + nixpkgs.pkgs = pkgs; + } + else { + # minimal + _module.args.pkgs = pkgs; + }; + }; + + /* + * Run a NixOS VM network test using this evaluation of Nixpkgs. + * + * It is mostly equivalent to `import ./make-test-python.nix` from the + * NixOS manual[1], except that your `pkgs` will be used instead of + * letting NixOS invoke Nixpkgs again. If a test machine needs to + * set NixOS options under `nixpkgs`, it must set only the + * `nixpkgs.pkgs` option. For the details, see the Nixpkgs + * `pkgs.nixos` documentation. + * + * Parameter: + * A NixOS VM test network, or path to it. Example: + * + * { lib, ... }: + * { name = "my-test"; + * nodes = { + * machine-1 = someNixOSConfiguration; + * machine-2 = ...; + * } + * } + * + * Result: + * A derivation that runs the VM test. + * + * [1]: For writing NixOS tests, see + * https://nixos.org/nixos/manual/index.html#sec-nixos-tests + */ + nixosTest = + let + /* The nixos/lib/testing-python.nix module, preapplied with arguments that + * make sense for this evaluation of Nixpkgs. + */ + nixosTesting = + (import ../../nixos/lib/testing-python.nix { + inherit (stdenv.hostPlatform) system; + inherit pkgs; + extraConfigurations = [( + { lib, ... }: { + config.nixpkgs.pkgs = lib.mkDefault pkgs; + } + )]; + }); + in + test: + let + loadedTest = if builtins.typeOf test == "path" + then import test + else test; + calledTest = if lib.isFunction loadedTest + then callPackage loadedTest {} + else loadedTest; + in + nixosTesting.makeTest calledTest; + + nixosOptionsDoc = attrs: + (import ../../nixos/lib/make-options-doc) + ({ inherit pkgs lib; } // attrs); + + nixos-install-tools = callPackage ../tools/nix/nixos-install-tools { }; + + nixui = callPackage ../tools/package-management/nixui { node_webkit = nwjs_0_12; }; + + nixdoc = callPackage ../tools/nix/nixdoc {}; + + dnadd = callPackage ../tools/nix/dnadd { }; + + nix-eval-jobs = callPackage ../tools/package-management/nix-eval-jobs { }; + + nix-doc = callPackage ../tools/package-management/nix-doc { nix = nixVersions.nix_2_5; }; + + nix-bundle = callPackage ../tools/package-management/nix-bundle { }; + + nix-delegate = haskell.lib.compose.justStaticExecutables haskellPackages.nix-delegate; + nix-deploy = haskell.lib.compose.justStaticExecutables haskellPackages.nix-deploy; + nix-diff = haskell.lib.compose.justStaticExecutables haskellPackages.nix-diff; + + nix-du = callPackage ../tools/package-management/nix-du { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + nix-info = callPackage ../tools/nix/info { }; + nix-info-tested = nix-info.override { doCheck = true; }; + + nix-index-unwrapped = callPackage ../tools/package-management/nix-index { + inherit (darwin.apple_sdk.frameworks) Security; + }; + nix-index = callPackage ../tools/package-management/nix-index/wrapper.nix { }; + + nix-linter = haskell.lib.compose.justStaticExecutables (haskellPackages.nix-linter); + + nixos-option = callPackage ../tools/nix/nixos-option { nix = nixVersions.nix_2_3; }; + + nix-pin = callPackage ../tools/package-management/nix-pin { }; + + nix-prefetch = callPackage ../tools/package-management/nix-prefetch { }; + + nix-prefetch-github = with python3Packages; + toPythonApplication nix-prefetch-github; + + inherit (callPackages ../tools/package-management/nix-prefetch-scripts { }) + nix-prefetch-bzr + nix-prefetch-cvs + nix-prefetch-git + nix-prefetch-hg + nix-prefetch-svn + nix-prefetch-scripts; + + nix-query-tree-viewer = callPackage ../tools/nix/nix-query-tree-viewer { }; + + nix-update = python3Packages.callPackage ../tools/package-management/nix-update { }; + + nix-update-source = callPackage ../tools/package-management/nix-update-source {}; + + nix-script = callPackage ../tools/nix/nix-script {}; + + nix-template-rpm = callPackage ../build-support/templaterpm { inherit (python2Packages) python toposort; }; + + nix-top = callPackage ../tools/package-management/nix-top { }; + + nix-tree = haskell.lib.compose.justStaticExecutables (haskellPackages.nix-tree); + + nix-universal-prefetch = callPackage ../tools/package-management/nix-universal-prefetch { }; + + nix-repl = throw ( + "nix-repl has been removed because it's not maintained anymore, " + + (lib.optionalString (!lib.versionAtLeast "2" (lib.versions.major builtins.nixVersion)) "ugrade your Nix installation to a newer version and ") + + "use `nix repl` instead. Also see https://github.com/NixOS/nixpkgs/pull/44903" + ); + + nixpkgs-review = callPackage ../tools/package-management/nixpkgs-review { }; + + nix-serve = callPackage ../tools/package-management/nix-serve { }; + + nix-simple-deploy = callPackage ../tools/package-management/nix-simple-deploy { }; + + alejandra = callPackage ../tools/nix/alejandra { }; + + nixfmt = haskell.lib.compose.justStaticExecutables haskellPackages.nixfmt; + + nixpkgs-fmt = callPackage ../tools/nix/nixpkgs-fmt { }; + + rnix-hashes = callPackage ../tools/nix/rnix-hashes { }; + + nixos-artwork = callPackage ../data/misc/nixos-artwork { }; + nixos-icons = callPackage ../data/misc/nixos-artwork/icons.nix { }; + nixos-grub2-theme = callPackage ../data/misc/nixos-artwork/grub2-theme.nix { }; + + nixos-container = callPackage ../tools/virtualization/nixos-container { }; + + nixos-generators = callPackage ../tools/nix/nixos-generators { }; + + nixos-rebuild = callPackage ../os-specific/linux/nixos-rebuild { }; + + extra-container = callPackage ../tools/virtualization/extra-container { }; + + norwester-font = callPackage ../data/fonts/norwester {}; + + nut = callPackage ../applications/misc/nut { }; + + nhentai = callPackage ../applications/misc/nhentai { }; + + nvd = callPackage ../tools/package-management/nvd { }; + + solfege = python3Packages.callPackage ../misc/solfege { }; + + disnix = callPackage ../tools/package-management/disnix { }; + + dysnomia = callPackage ../tools/package-management/disnix/dysnomia (config.disnix or { + inherit (python2Packages) supervisor; + }); + + dydisnix = callPackage ../tools/package-management/disnix/dydisnix { }; + + disnixos = callPackage ../tools/package-management/disnix/disnixos { }; + + DisnixWebService = callPackage ../tools/package-management/disnix/DisnixWebService { }; + + i3a = callPackage ../misc/i3a { }; + + lkproof = callPackage ../tools/typesetting/tex/lkproof { }; + + lice = python3Packages.callPackage ../tools/misc/lice {}; + + m33-linux = callPackage ../misc/drivers/m33-linux { }; + + mnemonicode = callPackage ../misc/mnemonicode { }; + + mysql-workbench = callPackage ../applications/misc/mysql-workbench (let mysql = mysql57; in { + gdal = gdal.override { + libmysqlclient = mysql // { + lib = { dev = mysql; } + ;} + ;}; + mysql = mysql; + pcre = pcre-cpp; + jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }); + + r128gain = callPackage ../applications/audio/r128gain { }; + + redis-desktop-manager = libsForQt5.callPackage ../applications/misc/redis-desktop-manager { }; + + robin-map = callPackage ../development/libraries/robin-map { }; + + robo3t = callPackage ../applications/misc/robo3t { }; + + rucksack = callPackage ../development/tools/rucksack { }; + + sam-ba = callPackage ../tools/misc/sam-ba { }; + + sndio = callPackage ../misc/sndio { }; + + stork = callPackage ../applications/misc/stork { }; + + oclgrind = callPackage ../development/tools/analysis/oclgrind { }; + + opkg = callPackage ../tools/package-management/opkg { }; + + opkg-utils = callPackage ../tools/package-management/opkg-utils { }; + + OSCAR = qt5.callPackage ../applications/misc/OSCAR { }; + + pcem = callPackage ../applications/emulators/pcem { }; + + pgmanage = callPackage ../applications/misc/pgmanage { }; + + pgadmin4 = callPackage ../tools/admin/pgadmin { }; + + pgadmin3 = callPackage ../tools/admin/pgadmin/3.nix { + openssl = openssl_1_0_2; + }; + + pgmodeler = libsForQt5.callPackage ../applications/misc/pgmodeler { }; + + pgf = pgf2; + + # Keep the old PGF since some documents don't render properly with + # the new one. + pgf1 = callPackage ../tools/typesetting/tex/pgf/1.x.nix { }; + + pgf2 = callPackage ../tools/typesetting/tex/pgf/2.x.nix { }; + + pgf3 = callPackage ../tools/typesetting/tex/pgf/3.x.nix { }; + + pgfplots = callPackage ../tools/typesetting/tex/pgfplots { }; + + physlock = callPackage ../misc/screensavers/physlock { }; + + pjsip = callPackage ../applications/networking/pjsip { + inherit (darwin.apple_sdk.frameworks) AppKit; + }; + + pounce = callPackage ../servers/pounce { }; + + ppsspp = libsForQt5.callPackage ../applications/emulators/ppsspp { }; + + pt = callPackage ../applications/misc/pt { }; + + protocol = python3Packages.callPackage ../applications/networking/protocol { }; + + punes = libsForQt5.callPackage ../applications/emulators/punes { }; + + pykms = callPackage ../tools/networking/pykms { }; + + pyupgrade = with python3Packages; toPythonApplication pyupgrade; + + pwncat = python3Packages.callPackage ../tools/security/pwncat { }; + + pwntools = with python3Packages; toPythonApplication pwntools; + + uae = callPackage ../applications/emulators/uae { }; + + fsuae = callPackage ../applications/emulators/fs-uae { }; + + fsuae-launcher = callPackage ../applications/emulators/fs-uae/launcher.nix { }; + + putty = callPackage ../applications/networking/remote/putty { + gtk2 = gtk2-x11; + }; + + qMasterPassword = libsForQt5.callPackage ../applications/misc/qMasterPassword { }; + + qtrvsim = libsForQt5.callPackage ../applications/science/computer-architecture/qtrvsim { }; + + py-wmi-client = callPackage ../tools/networking/py-wmi-client { }; + + qdl = callPackage ../tools/misc/qdl { }; + + rates = callPackage ../tools/misc/rates { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + rargs = callPackage ../tools/misc/rargs { }; + + rancher = callPackage ../applications/networking/cluster/rancher { }; + + rauc = callPackage ../tools/misc/rauc { }; + + redprl = callPackage ../applications/science/logic/redprl { }; + + renderizer = callPackage ../development/tools/renderizer {}; + + retroarchBare = callPackage ../applications/emulators/retroarch { + inherit (darwin) libobjc; + inherit (darwin.apple_sdk.frameworks) AppKit Foundation; + }; + + wrapRetroArch = { retroarch }: callPackage ../applications/emulators/retroarch/wrapper.nix { + inherit retroarch; + }; + + retroarch = wrapRetroArch { retroarch = retroarchBare; }; + + retroarchFull = retroarch.override { + cores = builtins.filter + # Remove cores not supported on platform + (c: c ? libretroCore && (lib.meta.availableOn stdenv.hostPlatform c)) + (builtins.attrValues libretro); + }; + + libretro = recurseIntoAttrs (callPackage ../applications/emulators/retroarch/cores.nix { + retroarch = retroarchBare; + }); + + retrofe = callPackage ../applications/emulators/retrofe { }; + + rfc-bibtex = python3Packages.callPackage ../development/python-modules/rfc-bibtex { }; + + pick-colour-picker = python3Packages.callPackage ../applications/graphics/pick-colour-picker { + inherit glib gtk3 gobject-introspection wrapGAppsHook; + }; + + rpl = callPackage ../tools/text/rpl { }; + + ricty = callPackage ../data/fonts/ricty { }; + + rmfakecloud = callPackage ../servers/rmfakecloud { }; + + rmfuse = callPackage ../tools/filesystems/rmfuse {}; + + rmount = callPackage ../tools/filesystems/rmount {}; + + romdirfs = callPackage ../tools/filesystems/romdirfs { + stdenv = gccStdenv; + }; + + rss-glx = callPackage ../misc/screensavers/rss-glx { }; + + run-scaled = callPackage ../tools/X11/run-scaled { }; + + runiq = callPackage ../tools/text/runiq { }; + + runit = callPackage ../tools/system/runit { }; + + refind = callPackage ../tools/bootloaders/refind { }; + + spectrojack = callPackage ../applications/audio/spectrojack { }; + + sift = callPackage ../tools/text/sift { }; + + xdragon = lowPrio (callPackage ../applications/misc/xdragon { }); + + xlockmore = callPackage ../misc/screensavers/xlockmore { }; + + xtrlock-pam = callPackage ../misc/screensavers/xtrlock-pam { }; + + sailsd = callPackage ../misc/sailsd { }; + + shc = callPackage ../tools/security/shc { }; + + shellz = callPackage ../tools/security/shellz { }; + + canon-cups-ufr2 = callPackage ../misc/cups/drivers/canon { }; + + hll2390dw-cups = callPackage ../misc/cups/drivers/hll2390dw-cups { }; + + mfcj470dw-cupswrapper = callPackage ../misc/cups/drivers/mfcj470dwcupswrapper { }; + mfcj470dwlpr = pkgsi686Linux.callPackage ../misc/cups/drivers/mfcj470dwlpr { }; + + mfcj6510dw-cupswrapper = callPackage ../misc/cups/drivers/mfcj6510dwcupswrapper { }; + mfcj6510dwlpr = pkgsi686Linux.callPackage ../misc/cups/drivers/mfcj6510dwlpr { }; + + mfcl2700dncupswrapper = callPackage ../misc/cups/drivers/mfcl2700dncupswrapper { }; + mfcl2700dnlpr = pkgsi686Linux.callPackage ../misc/cups/drivers/mfcl2700dnlpr { }; + + mfcl2720dwcupswrapper = callPackage ../misc/cups/drivers/mfcl2720dwcupswrapper { }; + mfcl2720dwlpr = callPackage ../misc/cups/drivers/mfcl2720dwlpr { }; + + mfcl2740dwcupswrapper = callPackage ../misc/cups/drivers/mfcl2740dwcupswrapper { }; + mfcl2740dwlpr = callPackage ../misc/cups/drivers/mfcl2740dwlpr { }; + + # This driver is only available as a 32 bit proprietary binary driver + mfcl3770cdwlpr = (callPackage ../misc/cups/drivers/brother/mfcl3770cdw { }).driver; + mfcl3770cdwcupswrapper = (callPackage ../misc/cups/drivers/brother/mfcl3770cdw { }).cupswrapper; + + mfcl8690cdwcupswrapper = callPackage ../misc/cups/drivers/mfcl8690cdwcupswrapper { }; + mfcl8690cdwlpr = callPackage ../misc/cups/drivers/mfcl8690cdwlpr { }; + + mfc9140cdncupswrapper = callPackage ../misc/cups/drivers/mfc9140cdncupswrapper { }; + mfc9140cdnlpr = callPackage ../misc/cups/drivers/mfc9140cdnlpr { }; + + samsung-unified-linux-driver_1_00_36 = callPackage ../misc/cups/drivers/samsung/1.00.36 { }; + samsung-unified-linux-driver_1_00_37 = callPackage ../misc/cups/drivers/samsung/1.00.37.nix { }; + samsung-unified-linux-driver_4_00_39 = callPackage ../misc/cups/drivers/samsung/4.00.39 { }; + samsung-unified-linux-driver_4_01_17 = callPackage ../misc/cups/drivers/samsung/4.01.17.nix { }; + samsung-unified-linux-driver = res.samsung-unified-linux-driver_4_01_17; + + sane-backends = callPackage ../applications/graphics/sane/backends (config.sane or {}); + + sane-drivers = callPackage ../applications/graphics/sane/drivers.nix {}; + + senv = callPackage ../applications/misc/senv { }; + + brlaser = callPackage ../misc/cups/drivers/brlaser { }; + + fxlinuxprint = callPackage ../misc/cups/drivers/fxlinuxprint { }; + + brscan4 = callPackage ../applications/graphics/sane/backends/brscan4 { }; + + brscan5 = callPackage ../applications/graphics/sane/backends/brscan5 { }; + + dsseries = callPackage ../applications/graphics/sane/backends/dsseries { }; + + sane-airscan = callPackage ../applications/graphics/sane/backends/airscan { }; + + mkSaneConfig = callPackage ../applications/graphics/sane/config.nix { }; + + sane-frontends = callPackage ../applications/graphics/sane/frontends.nix { }; + + sanoid = callPackage ../tools/backup/sanoid { }; + + satysfi = callPackage ../tools/typesetting/satysfi { }; + + sc-controller = python3Packages.callPackage ../misc/drivers/sc-controller { + inherit libusb1; # Shadow python.pkgs.libusb1. + }; + + sct = callPackage ../tools/X11/sct {}; + + scylladb = callPackage ../servers/scylladb { + thrift = thrift-0_10; + }; + + seafile-server = callPackage ../servers/seafile-server { }; + + seafile-shared = callPackage ../misc/seafile-shared { }; + + ser2net = callPackage ../servers/ser2net {}; + + serviio = callPackage ../servers/serviio {}; + selinux-python = callPackage ../os-specific/linux/selinux-python { }; + + slock = callPackage ../misc/screensavers/slock { + conf = config.slock.conf or null; + }; + + smokeping = callPackage ../tools/networking/smokeping { }; + + snapraid = callPackage ../tools/filesystems/snapraid { }; + + snscrape = with python3Packages; toPythonApplication snscrape; + + soundmodem = callPackage ../applications/radio/soundmodem {}; + + soundOfSorting = callPackage ../misc/sound-of-sorting { }; + + sourceAndTags = callPackage ../misc/source-and-tags { + hasktags = haskellPackages.hasktags; + }; + + spacenavd = callPackage ../misc/drivers/spacenavd { + inherit (darwin.apple_sdk.frameworks) IOKit; + }; + + spacenav-cube-example = callPackage ../applications/misc/spacenav-cube-example { }; + + spnavcfg = callPackage ../applications/misc/spnavcfg { }; + + splix = callPackage ../misc/cups/drivers/splix { }; + + steamcontroller = callPackage ../misc/drivers/steamcontroller { }; + + stern = callPackage ../applications/networking/cluster/stern { }; + + streamripper = callPackage ../applications/audio/streamripper { }; + + sqsh = callPackage ../development/tools/sqsh { }; + + sumneko-lua-language-server = callPackage ../development/tools/sumneko-lua-language-server { }; + + sysz = callPackage ../tools/misc/sysz { }; + + go-swag = callPackage ../development/tools/go-swag { }; + + go-swagger = callPackage ../development/tools/go-swagger { }; + + jx = callPackage ../applications/networking/cluster/jx {}; + + prow = callPackage ../applications/networking/cluster/prow { }; + + tagref = callPackage ../tools/misc/tagref { }; + + tellico = libsForQt5.callPackage ../applications/misc/tellico { }; + + termpdfpy = python3Packages.callPackage ../applications/misc/termpdf.py {}; + + inherit (callPackage ../applications/networking/cluster/terraform { }) + mkTerraform + terraform_0_13 + terraform_0_14 + terraform_0_15 + terraform_1 + terraform_plugins_test + ; + + terraform = terraform_1; + # deprecated + terraform-full = terraform.full; + + terraform-providers = recurseIntoAttrs ( + callPackage ../applications/networking/cluster/terraform-providers { } + ); + + terraforming = callPackage ../applications/networking/cluster/terraforming { }; + + terraform-compliance = python3Packages.callPackage ../applications/networking/cluster/terraform-compliance {}; + + terraform-docs = callPackage ../applications/networking/cluster/terraform-docs {}; + + terraform-inventory = callPackage ../applications/networking/cluster/terraform-inventory {}; + + terraform-landscape = callPackage ../applications/networking/cluster/terraform-landscape {}; + + terragrunt = callPackage ../applications/networking/cluster/terragrunt {}; + + terranix = callPackage ../applications/networking/cluster/terranix {}; + + tfswitch = callPackage ../applications/networking/cluster/tfswitch {}; + + tgswitch = callPackage ../applications/networking/cluster/tgswitch {}; + + tilt = callPackage ../applications/networking/cluster/tilt { }; + + timeular = callPackage ../applications/office/timeular {}; + + tetex = callPackage ../tools/typesetting/tex/tetex { libpng = libpng12; }; + + tewi-font = callPackage ../data/fonts/tewi + { inherit (buildPackages.xorg) fonttosfnt mkfontscale; }; + + texFunctions = callPackage ../tools/typesetting/tex/nix pkgs; + + # TeX Live; see https://nixos.org/nixpkgs/manual/#sec-language-texlive + texlive = recurseIntoAttrs + (callPackage ../tools/typesetting/tex/texlive { }); + + ib-tws = callPackage ../applications/office/ib/tws { jdk=oraclejdk8; }; + + ib-controller = callPackage ../applications/office/ib/controller { jdk=oraclejdk8; }; + + vcluster = callPackage ../applications/networking/cluster/vcluster {}; + + vnote = libsForQt5.callPackage ../applications/office/vnote { }; + + sshportal = callPackage ../servers/sshportal { }; + + ssh-audit = callPackage ../tools/security/ssh-audit { }; + + ssh-tools = callPackage ../applications/misc/ssh-tools { }; + + auto-cpufreq = callPackage ../tools/system/auto-cpufreq { }; + + thermald = callPackage ../tools/system/thermald { }; + + throttled = callPackage ../tools/system/throttled { }; + + thinkfan = callPackage ../tools/system/thinkfan { }; + + tp-auto-kbbl = callPackage ../tools/system/tp-auto-kbbl { }; + + tup = callPackage ../development/tools/build-managers/tup { }; + + tusk = callPackage ../applications/office/tusk { }; + + trufflehog = callPackage ../tools/security/trufflehog { }; + + tvbrowser-bin = callPackage ../applications/misc/tvbrowser/bin.nix { }; + + tvheadend = callPackage ../servers/tvheadend { }; + + ums = callPackage ../servers/ums { }; + + unity3d = callPackage ../development/tools/unity3d { + stdenv = stdenv_32bit; + gcc_32bit = pkgsi686Linux.gcc; + inherit (gnome2) GConf; + }; + + unityhub = callPackage ../development/tools/unityhub { }; + + urbit = callPackage ../misc/urbit { }; + + usb-reset = callPackage ../applications/misc/usb-reset { }; + + usql = callPackage ../applications/misc/usql { }; + + utf8cpp = callPackage ../development/libraries/utf8cpp { }; + + utf8proc = callPackage ../development/libraries/utf8proc { }; + + unicode-paracode = callPackage ../tools/misc/unicode { }; + + unixcw = libsForQt5.callPackage ../applications/radio/unixcw { }; + + vault = callPackage ../tools/security/vault { }; + + vault-bin = callPackage ../tools/security/vault/vault-bin.nix { }; + + vaultenv = haskell.lib.justStaticExecutables haskellPackages.vaultenv; + + vazir-code-font = callPackage ../data/fonts/vazir-code-font { }; + + vaultwarden = callPackage ../tools/security/vaultwarden { + inherit (darwin.apple_sdk.frameworks) Security CoreServices; + }; + vaultwarden-sqlite = vaultwarden; + vaultwarden-mysql = vaultwarden.override { dbBackend = "mysql"; }; + vaultwarden-postgresql = vaultwarden.override { dbBackend = "postgresql"; }; + + vaultwarden-vault = callPackage ../tools/security/vaultwarden/vault.nix { }; + + vazir-fonts = callPackage ../data/fonts/vazir-fonts { }; + + vbam = callPackage ../applications/emulators/vbam { }; + + vgmstream = callPackage ../applications/audio/vgmstream { }; + + vice = callPackage ../applications/emulators/vice { }; + + viddy = callPackage ../tools/misc/viddy { }; + + ViennaRNA = callPackage ../applications/science/molecular-dynamics/viennarna { }; + + viewnior = callPackage ../applications/graphics/viewnior { }; + + vimUtils = callPackage ../applications/editors/vim/plugins/vim-utils.nix { + inherit (lua51Packages) hasLuaModule; + }; + + vimPlugins = recurseIntoAttrs (callPackage ../applications/editors/vim/plugins { + llvmPackages = llvmPackages_6; + luaPackages = lua51Packages; + }); + + vimb-unwrapped = callPackage ../applications/networking/browsers/vimb { }; + vimb = wrapFirefox vimb-unwrapped { }; + + vikunja-api = callPackage ../servers/web-apps/vikunja/api.nix { }; + vikunja-frontend = callPackage ../servers/web-apps/vikunja/frontend.nix { }; + + vips = callPackage ../tools/graphics/vips { + inherit (darwin.apple_sdk.frameworks) ApplicationServices Foundation; + }; + nip2 = callPackage ../tools/graphics/nip2 { }; + + virglrenderer = callPackage ../development/libraries/virglrenderer { }; + + vivid = callPackage ../tools/misc/vivid { }; + + vokoscreen = libsForQt5.callPackage ../applications/video/vokoscreen { }; + + vokoscreen-ng = libsForQt5.callPackage ../applications/video/vokoscreen-ng { + inherit (gst_all_1) gstreamer gst-plugins-base gst-plugins-good gst-plugins-bad gst-plugins-ugly; + }; + + vsh = callPackage ../tools/misc/vsh { }; + + vttest = callPackage ../tools/misc/vttest { }; + + wacomtablet = libsForQt5.callPackage ../tools/misc/wacomtablet { }; + + wasmer = callPackage ../development/interpreters/wasmer { }; + + yabasic = callPackage ../development/interpreters/yabasic { }; + + wasm-pack = callPackage ../development/tools/wasm-pack { + inherit (darwin.apple_sdk.frameworks) Security; + libressl = libressl_3_2; + }; + + wavegain = callPackage ../applications/audio/wavegain { }; + + wcalc = callPackage ../applications/misc/wcalc { }; + + webfs = callPackage ../servers/http/webfs { }; + + webkit2-sharp = callPackage ../development/libraries/webkit2-sharp { }; + + websocketd = callPackage ../applications/networking/websocketd { }; + + wike = callPackage ../applications/misc/wike { }; + + wikicurses = callPackage ../applications/misc/wikicurses { + pythonPackages = python3Packages; + }; + + wiki-js = callPackage ../servers/web-apps/wiki-js { }; + + wiki-tui = callPackage ../misc/wiki-tui { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + winePackagesFor = wineBuild: lib.makeExtensible (self: with self; { + callPackage = newScope self; + + inherit wineBuild; + + inherit (callPackage ./wine-packages.nix {}) + minimal base full stable stableFull unstable unstableFull staging stagingFull wayland waylandFull fonts; + }); + + winePackages = recurseIntoAttrs (winePackagesFor (config.wine.build or "wine32")); + wine64Packages = recurseIntoAttrs (winePackagesFor "wine64"); + wineWowPackages = recurseIntoAttrs (winePackagesFor "wineWow"); + + wine = winePackages.full; + wine64 = wine64Packages.full; + + wine-staging = lowPrio (winePackages.full.override { + wineRelease = "staging"; + }); + + wine-wayland = lowPrio (winePackages.full.override { + wineRelease = "wayland"; + }); + + winetricks = callPackage ../applications/emulators/wine/winetricks.nix { + inherit (gnome) zenity; + }; + + wishbone-tool = callPackage ../development/tools/misc/wishbone-tool { }; + + with-shell = callPackage ../applications/misc/with-shell { }; + + wmutils-core = callPackage ../tools/X11/wmutils-core { }; + + wmutils-libwm = callPackage ../tools/X11/wmutils-libwm { }; + + wmutils-opt = callPackage ../tools/X11/wmutils-opt { }; + + wordpress = callPackage ../servers/web-apps/wordpress { }; + + wprecon = callPackage ../tools/security/wprecon { }; + + wraith = callPackage ../applications/networking/irc/wraith { }; + + wxsqlite3 = callPackage ../development/libraries/wxsqlite3 { + wxGTK = wxGTK30; + inherit (darwin.apple_sdk.frameworks) Cocoa; + inherit (darwin.stubs) setfile rez derez; + }; + + wxsqliteplus = callPackage ../development/libraries/wxsqliteplus { + wxGTK = wxGTK30; + }; + + x11idle = callPackage ../tools/misc/x11idle {}; + + x11docker = callPackage ../applications/virtualization/x11docker { }; + + x2x = callPackage ../tools/X11/x2x { }; + + xboxdrv = callPackage ../misc/drivers/xboxdrv { }; + + xortool = python3Packages.callPackage ../tools/security/xortool { }; + + xorex = callPackage ../tools/security/xorex { }; + + xow = callPackage ../misc/drivers/xow { }; + + xbps = callPackage ../tools/package-management/xbps { }; + + xcftools = callPackage ../tools/graphics/xcftools { }; + + xhyve = callPackage ../applications/virtualization/xhyve { + inherit (darwin.apple_sdk.frameworks) Hypervisor vmnet; + inherit (darwin.apple_sdk.libs) xpc; + inherit (darwin) libobjc; + }; + + xinput_calibrator = callPackage ../tools/X11/xinput_calibrator { }; + + xlayoutdisplay = callPackage ../tools/X11/xlayoutdisplay { }; + + xlog = callPackage ../applications/radio/xlog { }; + + xmagnify = callPackage ../tools/X11/xmagnify { }; + + xosd = callPackage ../misc/xosd { }; + + xosview2 = callPackage ../tools/X11/xosview2 { }; + + xow_dongle-firmware = callPackage ../os-specific/linux/firmware/xow_dongle-firmware { }; + + xpad = callPackage ../applications/misc/xpad { }; + + xsane = callPackage ../applications/graphics/sane/xsane.nix { + libpng = libpng12; + sane-backends = sane-backends.override { libpng = libpng12; }; + }; + + xsw = callPackage ../applications/misc/xsw { + # Enable the next line to use this in terminal. + # Note that it requires sixel capable terminals such as mlterm + # or xterm -ti 340 + SDL = SDL_sixel; + }; + + xteddy = callPackage ../applications/misc/xteddy { }; + + xva-img = callPackage ../tools/virtualization/xva-img { }; + + xwiimote = callPackage ../misc/drivers/xwiimote { }; + + xzoom = callPackage ../tools/X11/xzoom {}; + + yabai = callPackage ../os-specific/darwin/yabai { }; + + yabause = libsForQt5.callPackage ../applications/emulators/yabause { + freeglut = null; + openal = null; + }; + + yacreader = libsForQt5.callPackage ../applications/graphics/yacreader { }; + + yadm = callPackage ../applications/version-management/yadm { }; + + yamale = with python3Packages; toPythonApplication yamale; + + yamdi = callPackage ../tools/video/yamdi { }; + + yandex-browser = callPackage ../applications/networking/browsers/yandex-browser { }; + + yandex-disk = callPackage ../tools/filesystems/yandex-disk { }; + + yara = callPackage ../tools/security/yara { }; + + yarGen = callPackage ../tools/security/yarGen { }; + + yaxg = callPackage ../tools/graphics/yaxg {}; + + yuzu-mainline = import ../applications/emulators/yuzu { + branch = "mainline"; + inherit libsForQt5 fetchFromGitHub; + }; + yuzu-ea = import ../applications/emulators/yuzu { + branch = "early-access"; + inherit libsForQt5 fetchFromGitHub; + }; + + zap = callPackage ../tools/networking/zap { }; + + zigbee2mqtt = callPackage ../servers/zigbee2mqtt { }; + + zopfli = callPackage ../tools/compression/zopfli { }; + + myEnvFun = callPackage ../misc/my-env { + inherit (stdenv) mkDerivation; + }; + + znc = callPackage ../applications/networking/znc { }; + + zncModules = recurseIntoAttrs ( + callPackage ../applications/networking/znc/modules.nix { } + ); + + zoneminder = callPackage ../servers/zoneminder { }; + + zsnes = pkgsi686Linux.callPackage ../applications/emulators/zsnes { }; + + xcp = callPackage ../tools/misc/xcp { }; + + xcpc = callPackage ../applications/emulators/xcpc { }; + + zxcvbn-c = callPackage ../development/libraries/zxcvbn-c { }; + + zxing-cpp = callPackage ../development/libraries/zxing-cpp { }; + + snes9x-gtk = callPackage ../applications/emulators/snes9x-gtk { }; + + openmsx = callPackage ../applications/emulators/openmsx { + python = python3; + }; + + higan = callPackage ../applications/emulators/higan { }; + + bsnes-hd = callPackage ../applications/emulators/bsnes-hd { + inherit (gnome2) gtksourceview; + inherit (darwin.apple_sdk.frameworks) Cocoa OpenAL; + }; + + yapesdl = callPackage ../applications/emulators/yapesdl { }; + + x16-emulator = callPackage ../applications/emulators/commanderx16/emulator.nix { }; + x16-rom = callPackage ../applications/emulators/commanderx16/rom.nix { }; + x16-run = (callPackage ../applications/emulators/commanderx16/run.nix { }) { + emulator = x16-emulator; + rom = x16-rom; + }; + + bullet = callPackage ../development/libraries/bullet { + inherit (darwin.apple_sdk.frameworks) Cocoa OpenGL; + }; + + bullet-roboschool = callPackage ../development/libraries/bullet/roboschool-fork.nix { + inherit (darwin.apple_sdk.frameworks) Cocoa OpenGL; + }; + + inherit (callPackages ../development/libraries/spdlog { }) + spdlog_0 spdlog_1; + + spdlog = spdlog_1; + + dart = callPackage ../development/interpreters/dart { }; + + httrack = callPackage ../tools/backup/httrack { }; + + httraqt = libsForQt5.callPackage ../tools/backup/httrack/qt.nix { }; + + mg = callPackage ../applications/editors/mg { }; + + mpvc = callPackage ../applications/misc/mpvc { }; + + discord = import ../applications/networking/instant-messengers/discord { + branch = "stable"; + inherit pkgs lib stdenv; + }; + + discord-ptb = import ../applications/networking/instant-messengers/discord { + branch = "ptb"; + inherit pkgs lib stdenv; + }; + + discord-canary = import ../applications/networking/instant-messengers/discord { + branch = "canary"; + inherit pkgs lib stdenv; + }; + + golden-cheetah = libsForQt514.callPackage ../applications/misc/golden-cheetah {}; + + linkchecker = callPackage ../tools/networking/linkchecker { }; + + tomb = callPackage ../os-specific/linux/tomb {}; + + imatix_gsl = callPackage ../development/tools/imatix_gsl {}; + + sccache = callPackage ../development/tools/misc/sccache { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + sequeler = callPackage ../applications/misc/sequeler { }; + + sequelpro = callPackage ../applications/misc/sequelpro {}; + + snowsql = callPackage ../applications/misc/snowsql {}; + + snowmachine = python3Packages.callPackage ../applications/misc/snowmachine {}; + + sidequest = callPackage ../applications/misc/sidequest {}; + + maphosts = callPackage ../tools/networking/maphosts {}; + + zimg = callPackage ../development/libraries/zimg { }; + + wtf = callPackage ../applications/misc/wtf { }; + + zk-shell = callPackage ../applications/misc/zk-shell { }; + + tora = libsForQt5.callPackage ../development/tools/tora {}; + + xulrunner = firefox-unwrapped; + + xrq = callPackage ../applications/misc/xrq { }; + + pynitrokey = callPackage ../tools/security/pynitrokey { }; + + nitrokey-app = libsForQt5.callPackage ../tools/security/nitrokey-app { }; + nitrokey-udev-rules = callPackage ../tools/security/nitrokey-app/udev-rules.nix { }; + + fpm2 = callPackage ../tools/security/fpm2 { }; + + simplenote = callPackage ../applications/misc/simplenote { }; + + hy = callPackage ../development/interpreters/hy {}; + + wmic-bin = callPackage ../servers/monitoring/plugins/wmic-bin.nix { }; + + check-uptime = callPackage ../servers/monitoring/plugins/uptime.nix { }; + + ghc-standalone-archive = callPackage ../os-specific/darwin/ghc-standalone-archive { inherit (darwin) cctools; }; + + vdr = callPackage ../applications/video/vdr { }; + vdrPlugins = recurseIntoAttrs (callPackage ../applications/video/vdr/plugins.nix { }); + wrapVdr = callPackage ../applications/video/vdr/wrapper.nix {}; + + chrome-export = callPackage ../tools/misc/chrome-export {}; + + chrome-gnome-shell = callPackage ../desktops/gnome/extensions/chrome-gnome-shell {}; + + chrome-token-signing = libsForQt5.callPackage ../tools/security/chrome-token-signing {}; + + NSPlist = callPackage ../development/libraries/NSPlist {}; + + PlistCpp = callPackage ../development/libraries/PlistCpp { + boost = boost172; + }; + + xib2nib = callPackage ../development/tools/xib2nib {}; + + linode-cli = python3Packages.callPackage ../tools/virtualization/linode-cli {}; + + hss = callPackage ../tools/networking/hss {}; + + undaemonize = callPackage ../tools/system/undaemonize {}; + + houdini = callPackage ../applications/misc/houdini {}; + + openfst = callPackage ../development/libraries/openfst {}; + + opengrm-ngram = callPackage ../development/libraries/opengrm-ngram {}; + + openring = callPackage ../applications/misc/openring { }; + + openvino = callPackage ../development/libraries/openvino { + python = python3; + }; + + phonetisaurus = callPackage ../development/libraries/phonetisaurus { + # https://github.com/AdolfVonKleist/Phonetisaurus/issues/70 + openfst = openfst.overrideAttrs (_: rec { + version = "1.7.9"; + src = fetchurl { + url = "http://www.openfst.org/twiki/pub/FST/FstDownload/openfst-${version}.tar.gz"; + sha256 = "1pmx1yhn2gknj0an0zwqmzgwjaycapi896244np50a8y3nrsw6ck"; + }; + }); + }; + + duti = callPackage ../os-specific/darwin/duti { + inherit (darwin.apple_sdk.frameworks) ApplicationServices; + }; + + dnstake = callPackage ../tools/networking/dnstake {}; + + dnstracer = callPackage ../tools/networking/dnstracer { + inherit (darwin) libresolv; + }; + + dnstwist = callPackage ../tools/networking/dnstwist {}; + + dsniff = callPackage ../tools/networking/dsniff {}; + + wal-g = callPackage ../tools/backup/wal-g { }; + + tlwg = callPackage ../data/fonts/tlwg { }; + + tt2020 = callPackage ../data/fonts/tt2020 { }; + + simplehttp2server = callPackage ../servers/simplehttp2server { }; + + simple-http-server = callPackage ../servers/simple-http-server { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + diceware = with python3Packages; toPythonApplication diceware; + + xml2rfc = with python3Packages; toPythonApplication xml2rfc; + + mmark = callPackage ../tools/typesetting/mmark { }; + + wire-desktop = callPackage ../applications/networking/instant-messengers/wire-desktop { }; + + teseq = callPackage ../applications/misc/teseq { }; + + ape = callPackage ../applications/misc/ape { }; + attemptoClex = callPackage ../applications/misc/ape/clex.nix { }; + apeClex = callPackage ../applications/misc/ape/apeclex.nix { }; + + # Unix tools + unixtools = recurseIntoAttrs (callPackages ./unixtools.nix { }); + inherit (unixtools) hexdump ps logger eject umount + mount wall hostname more sysctl getconf + getent locale killall xxd watch; + + fts = if stdenv.hostPlatform.isMusl then netbsd.fts else null; + + bsdSetupHook = makeSetupHook { + name = "bsd-setup-hook"; + } ../os-specific/bsd/setup-hook.sh; + + netbsd = callPackage ../os-specific/bsd/netbsd {}; + netbsdCross = callPackage ../os-specific/bsd/netbsd { + stdenv = crossLibcStdenv; + }; + + yrd = callPackage ../tools/networking/yrd { }; + + powershell = callPackage ../shells/powershell { }; + + doing = callPackage ../applications/misc/doing { }; + + undervolt = callPackage ../os-specific/linux/undervolt { }; + + alibuild = callPackage ../development/tools/build-managers/alibuild { + python = python3; + }; + + tsukae = callPackage ../applications/misc/tsukae { }; + + tsung = callPackage ../applications/networking/tsung {}; + + bcompare = libsForQt5.callPackage ../applications/version-management/bcompare {}; + + pentablet-driver = libsForQt5.callPackage ../misc/drivers/pentablet-driver { }; + + new-session-manager = callPackage ../applications/audio/new-session-manager { }; + + newlib = callPackage ../development/misc/newlib { }; + newlibCross = callPackage ../development/misc/newlib { + stdenv = crossLibcStdenv; + }; + + newlib-nano = callPackage ../development/misc/newlib { + nanoizeNewlib = true; + }; + newlib-nanoCross = callPackage ../development/misc/newlib { + nanoizeNewlib = true; + stdenv = crossLibcStdenv; + }; + + omnisharp-roslyn = callPackage ../development/tools/omnisharp-roslyn { }; + + wasmtime = callPackage ../development/interpreters/wasmtime {}; + + wfuzz = with python3Packages; toPythonApplication wfuzz; + + bemenu = callPackage ../applications/misc/bemenu { }; + + _9menu = callPackage ../applications/misc/9menu { }; + + dapper = callPackage ../development/tools/dapper { }; + + kube3d = callPackage ../applications/networking/cluster/kube3d {}; + + zfs-prune-snapshots = callPackage ../tools/backup/zfs-prune-snapshots {}; + + zfs-replicate = python3Packages.callPackage ../tools/backup/zfs-replicate { }; + + zrepl = callPackage ../tools/backup/zrepl { }; + + uhubctl = callPackage ../tools/misc/uhubctl {}; + + kodelife = callPackage ../applications/graphics/kodelife {}; + + bunnyfetch = callPackage ../tools/misc/bunnyfetch {}; + + _3proxy = callPackage ../applications/networking/3proxy {}; + + pigeon = callPackage ../development/tools/pigeon {}; + + verifpal = callPackage ../tools/security/verifpal {}; + + nix-store-gcs-proxy = callPackage ../tools/nix/nix-store-gcs-proxy {}; + + webwormhole = callPackage ../tools/networking/webwormhole { }; + + werf = callPackage ../applications/networking/cluster/werf { }; + + wifi-password = callPackage ../os-specific/darwin/wifi-password {}; + + qubes-core-vchan-xen = callPackage ../applications/qubes/qubes-core-vchan-xen {}; + + coz = callPackage ../development/tools/analysis/coz {}; + + keycard-cli = callPackage ../tools/security/keycard-cli {}; + + sieveshell = with python3.pkgs; toPythonApplication managesieve; + + gortr = callPackage ../servers/gortr {}; + + stayrtr = callPackage ../servers/stayrtr {}; + + sentencepiece = callPackage ../development/libraries/sentencepiece {}; + + kcli = callPackage ../development/tools/kcli { }; + + pxlib = callPackage ../development/libraries/pxlib {}; + + pxview = callPackage ../development/tools/pxview {}; + + unstick = callPackage ../os-specific/linux/unstick {}; + + quartus-prime-lite = callPackage ../applications/editors/quartus-prime {}; + + usb-blaster-udev-rules = callPackage ../os-specific/linux/usb-blaster-udev-rules {}; + + go-license-detector = callPackage ../development/tools/misc/go-license-detector { }; + + hashdeep = callPackage ../tools/security/hashdeep { }; + + pdf-parser = callPackage ../tools/misc/pdf-parser {}; + + fluxboxlauncher = callPackage ../applications/misc/fluxboxlauncher {}; + + btcdeb = callPackage ../applications/blockchains/btcdeb { }; + + inherit (callPackage ../applications/networking/instant-messengers/jami { + # TODO: remove once `udev` is `systemdMinimal` everywhere. + udev = systemdMinimal; + jack = libjack2; + }) + jami-daemon jami-libclient jami-client-gnome jami-client-qt; + + jitsi-meet-electron = callPackage ../applications/networking/instant-messengers/jitsi-meet-electron { + electron = electron_16; + }; + + zenstates = callPackage ../os-specific/linux/zenstates {}; + + ryzenadj = callPackage ../os-specific/linux/ryzenadj {}; + + vpsfree-client = callPackage ../tools/virtualization/vpsfree-client {}; + + gpio-utils = callPackage ../os-specific/linux/kernel/gpio-utils.nix { }; + + navidrome = callPackage ../servers/misc/navidrome {}; + + zalgo = callPackage ../tools/misc/zalgo { }; + + zettlr = callPackage ../applications/misc/zettlr { + texlive = texlive.combined.scheme-medium; + }; + + unifi-poller = callPackage ../servers/monitoring/unifi-poller {}; + + fac-build = callPackage ../development/tools/build-managers/fac {}; + + treefmt = callPackage ../development/tools/treefmt { }; + + bottom = callPackage ../tools/system/bottom { + inherit (darwin.apple_sdk.frameworks) DiskArbitration Foundation IOKit; + }; + + cagebreak = callPackage ../applications/window-managers/cagebreak { + wlroots = wlroots_0_14; + }; + + psftools = callPackage ../os-specific/linux/psftools {}; + + lc3tools = callPackage ../development/tools/lc3tools {}; + + xcolor = callPackage ../tools/graphics/xcolor { }; + + xcfun = callPackage ../development/libraries/science/chemistry/xcfun { }; + + xsos = callPackage ../os-specific/linux/xsos { }; + + zesarux = callPackage ../applications/emulators/zesarux { }; + + zk = callPackage ../applications/office/zk {}; + + zktree = callPackage ../applications/misc/zktree {}; + + zrythm = callPackage ../applications/audio/zrythm { + inherit (plasma5Packages) breeze-icons; + }; + + zthrottle = callPackage ../tools/misc/zthrottle { }; + + honeymarker = callPackage ../servers/tracing/honeycomb/honeymarker { }; + + honeytail = callPackage ../servers/tracing/honeycomb/honeytail { }; + + honeyvent = callPackage ../servers/tracing/honeycomb/honeyvent { }; +} diff --git a/nixpkgs/pkgs/top-level/beam-packages.nix b/nixpkgs/pkgs/top-level/beam-packages.nix new file mode 100644 index 000000000000..828545ff7fa0 --- /dev/null +++ b/nixpkgs/pkgs/top-level/beam-packages.nix @@ -0,0 +1,114 @@ +{ beam, callPackage, wxGTK30, buildPackages, stdenv +, wxSupport ? true +, systemdSupport ? stdenv.isLinux +}: + +with beam; { + lib = callPackage ../development/beam-modules/lib.nix { }; + + # R24 is the default version. + # The main switch to change default Erlang version. + defaultVersion = "erlangR24"; + + # Each + interpreters = with beam.interpreters; { + + erlang = beam.interpreters.${defaultVersion}; + erlang_odbc = beam.interpreters."${defaultVersion}_odbc"; + erlang_javac = beam.interpreters."${defaultVersion}_javac"; + erlang_odbc_javac = beam.interpreters."${defaultVersion}_odbc_javac"; + + # Standard Erlang versions, using the generic builder. + + # R24 + erlangR24 = lib.callErlang ../development/interpreters/erlang/R24.nix { + wxGTK = wxGTK30; + # Can be enabled since the bug has been fixed in https://github.com/erlang/otp/pull/2508 + parallelBuild = true; + autoconf = buildPackages.autoconf269; + inherit wxSupport systemdSupport; + }; + erlangR24_odbc = erlangR24.override { odbcSupport = true; }; + erlangR24_javac = erlangR24.override { javacSupport = true; }; + erlangR24_odbc_javac = erlangR24.override { + javacSupport = true; + odbcSupport = true; + }; + + # R23 + erlangR23 = lib.callErlang ../development/interpreters/erlang/R23.nix { + wxGTK = wxGTK30; + # Can be enabled since the bug has been fixed in https://github.com/erlang/otp/pull/2508 + parallelBuild = true; + autoconf = buildPackages.autoconf269; + inherit wxSupport systemdSupport; + }; + erlangR23_odbc = erlangR23.override { odbcSupport = true; }; + erlangR23_javac = erlangR23.override { javacSupport = true; }; + erlangR23_odbc_javac = erlangR23.override { + javacSupport = true; + odbcSupport = true; + }; + + # R22 + erlangR22 = lib.callErlang ../development/interpreters/erlang/R22.nix { + wxGTK = wxGTK30; + # Can be enabled since the bug has been fixed in https://github.com/erlang/otp/pull/2508 + parallelBuild = true; + autoconf = buildPackages.autoconf269; + inherit wxSupport systemdSupport; + }; + erlangR22_odbc = erlangR22.override { odbcSupport = true; }; + erlangR22_javac = erlangR22.override { javacSupport = true; }; + erlangR22_odbc_javac = erlangR22.override { + javacSupport = true; + odbcSupport = true; + }; + + # R21 + erlangR21 = lib.callErlang ../development/interpreters/erlang/R21.nix { + wxGTK = wxGTK30; + autoconf = buildPackages.autoconf269; + inherit wxSupport systemdSupport; + }; + erlangR21_odbc = erlangR21.override { odbcSupport = true; }; + erlangR21_javac = erlangR21.override { javacSupport = true; }; + erlangR21_odbc_javac = erlangR21.override { + javacSupport = true; + odbcSupport = true; + }; + + # Basho fork, using custom builder. + erlang_basho_R16B02 = + lib.callErlang ../development/interpreters/erlang/R16B02-basho.nix { + autoconf = buildPackages.autoconf269; + inherit wxSupport; + }; + erlang_basho_R16B02_odbc = + erlang_basho_R16B02.override { odbcSupport = true; }; + + # Other Beam languages. These are built with `beam.interpreters.erlang`. To + # access for example elixir built with different version of Erlang, use + # `beam.packages.erlangR24.elixir`. + inherit (packages.erlang) + elixir elixir_1_13 elixir_1_12 elixir_1_11 elixir_1_10 elixir_1_9 elixir_ls; + + inherit (packages.erlang) lfe lfe_1_3; + }; + + # Helper function to generate package set with a specific Erlang version. + packagesWith = erlang: + callPackage ../development/beam-modules { inherit erlang; }; + + # Each field in this tuple represents all Beam packages in nixpkgs built with + # appropriate Erlang/OTP version. + packages = { + # Packages built with default Erlang version. + erlang = packages.${defaultVersion}; + + erlangR24 = packagesWith interpreters.erlangR24; + erlangR23 = packagesWith interpreters.erlangR23; + erlangR22 = packagesWith interpreters.erlangR22; + erlangR21 = packagesWith interpreters.erlangR21; + }; +} diff --git a/nixpkgs/pkgs/top-level/config.nix b/nixpkgs/pkgs/top-level/config.nix new file mode 100644 index 000000000000..7a5b4bdd1798 --- /dev/null +++ b/nixpkgs/pkgs/top-level/config.nix @@ -0,0 +1,41 @@ +# This file defines the structure of the `config` nixpkgs option. + +{ lib, ... }: + +with lib; + +let + + mkMassRebuild = args: mkOption (builtins.removeAttrs args [ "feature" ] // { + type = args.type or (types.uniq types.bool); + default = args.default or false; + description = (args.description or '' + Whether to ${args.feature} while building nixpkgs packages. + '') + '' + Changing the default may cause a mass rebuild. + ''; + }); + + options = { + + /* Internal stuff */ + + warnings = mkOption { + type = types.listOf types.str; + default = []; + internal = true; + }; + + /* Config options */ + + doCheckByDefault = mkMassRebuild { + feature = "run <literal>checkPhase</literal> by default"; + }; + + }; + +in { + + inherit options; + +} diff --git a/nixpkgs/pkgs/top-level/coq-packages.nix b/nixpkgs/pkgs/top-level/coq-packages.nix new file mode 100644 index 000000000000..b5b7158de647 --- /dev/null +++ b/nixpkgs/pkgs/top-level/coq-packages.nix @@ -0,0 +1,163 @@ +{ lib, stdenv, callPackage, newScope, recurseIntoAttrs, ocamlPackages_4_05, ocamlPackages_4_09 +, ocamlPackages_4_10, ocamlPackages_4_12, fetchpatch, makeWrapper, coq2html +}@args: +let lib = import ../build-support/coq/extra-lib.nix {inherit (args) lib;}; in +let + mkCoqPackages' = self: coq: + let callPackage = self.callPackage; in { + inherit coq lib; + coqPackages = self; + + mkCoqDerivation = callPackage ../build-support/coq {}; + + contribs = recurseIntoAttrs + (callPackage ../development/coq-modules/contribs {}); + + aac-tactics = callPackage ../development/coq-modules/aac-tactics {}; + addition-chains = callPackage ../development/coq-modules/addition-chains {}; + autosubst = callPackage ../development/coq-modules/autosubst {}; + bignums = if lib.versionAtLeast coq.coq-version "8.6" + then callPackage ../development/coq-modules/bignums {} + else null; + category-theory = callPackage ../development/coq-modules/category-theory { }; + ceres = callPackage ../development/coq-modules/ceres {}; + Cheerios = callPackage ../development/coq-modules/Cheerios {}; + CoLoR = callPackage ../development/coq-modules/CoLoR {}; + compcert = callPackage ../development/coq-modules/compcert { + inherit fetchpatch makeWrapper coq2html lib stdenv; + }; + coq-bits = callPackage ../development/coq-modules/coq-bits {}; + coq-elpi = callPackage ../development/coq-modules/coq-elpi {}; + coq-ext-lib = callPackage ../development/coq-modules/coq-ext-lib {}; + coq-haskell = callPackage ../development/coq-modules/coq-haskell { }; + coq-record-update = callPackage ../development/coq-modules/coq-record-update { }; + coqeal = callPackage ../development/coq-modules/coqeal {}; + coqhammer = callPackage ../development/coq-modules/coqhammer {}; + coqprime = callPackage ../development/coq-modules/coqprime {}; + coqtail-math = callPackage ../development/coq-modules/coqtail-math {}; + coquelicot = callPackage ../development/coq-modules/coquelicot {}; + corn = callPackage ../development/coq-modules/corn {}; + deriving = callPackage ../development/coq-modules/deriving {}; + dpdgraph = callPackage ../development/coq-modules/dpdgraph {}; + equations = callPackage ../development/coq-modules/equations { }; + extructures = callPackage ../development/coq-modules/extructures { }; + fiat_HEAD = callPackage ../development/coq-modules/fiat/HEAD.nix {}; + flocq = callPackage ../development/coq-modules/flocq {}; + fourcolor = callPackage ../development/coq-modules/fourcolor {}; + gaia = callPackage ../development/coq-modules/gaia {}; + gaia-hydras = callPackage ../development/coq-modules/gaia-hydras {}; + gappalib = callPackage ../development/coq-modules/gappalib {}; + goedel = callPackage ../development/coq-modules/goedel {}; + graph-theory = callPackage ../development/coq-modules/graph-theory {}; + heq = callPackage ../development/coq-modules/heq {}; + hierarchy-builder = callPackage ../development/coq-modules/hierarchy-builder {}; + HoTT = callPackage ../development/coq-modules/HoTT {}; + hydra-battles = callPackage ../development/coq-modules/hydra-battles {}; + interval = callPackage ../development/coq-modules/interval {}; + InfSeqExt = callPackage ../development/coq-modules/InfSeqExt {}; + iris = callPackage ../development/coq-modules/iris {}; + itauto = callPackage ../development/coq-modules/itauto { }; + ITree = callPackage ../development/coq-modules/ITree { }; + LibHyps = callPackage ../development/coq-modules/LibHyps {}; + ltac2 = callPackage ../development/coq-modules/ltac2 {}; + math-classes = callPackage ../development/coq-modules/math-classes { }; + mathcomp = callPackage ../development/coq-modules/mathcomp {}; + ssreflect = self.mathcomp.ssreflect; + mathcomp-ssreflect = self.mathcomp.ssreflect; + mathcomp-fingroup = self.mathcomp.fingroup; + mathcomp-algebra = self.mathcomp.algebra; + mathcomp-solvable = self.mathcomp.solvable; + mathcomp-field = self.mathcomp.field; + mathcomp-character = self.mathcomp.character; + mathcomp-abel = callPackage ../development/coq-modules/mathcomp-abel {}; + mathcomp-analysis = callPackage ../development/coq-modules/mathcomp-analysis {}; + mathcomp-finmap = callPackage ../development/coq-modules/mathcomp-finmap {}; + mathcomp-bigenough = callPackage ../development/coq-modules/mathcomp-bigenough {}; + mathcomp-real-closed = callPackage ../development/coq-modules/mathcomp-real-closed {}; + mathcomp-word = callPackage ../development/coq-modules/mathcomp-word {}; + mathcomp-zify = callPackage ../development/coq-modules/mathcomp-zify {}; + mathcomp-tarjan = callPackage ../development/coq-modules/mathcomp-tarjan {}; + metalib = callPackage ../development/coq-modules/metalib { }; + multinomials = callPackage ../development/coq-modules/multinomials {}; + odd-order = callPackage ../development/coq-modules/odd-order { }; + paco = callPackage ../development/coq-modules/paco {}; + paramcoq = callPackage ../development/coq-modules/paramcoq {}; + parsec = callPackage ../development/coq-modules/parsec {}; + pocklington = callPackage ../development/coq-modules/pocklington {}; + QuickChick = callPackage ../development/coq-modules/QuickChick {}; + reglang = callPackage ../development/coq-modules/reglang {}; + relation-algebra = callPackage ../development/coq-modules/relation-algebra {}; + semantics = callPackage ../development/coq-modules/semantics {}; + serapi = callPackage ../development/coq-modules/serapi {}; + simple-io = callPackage ../development/coq-modules/simple-io { }; + smpl = callPackage ../development/coq-modules/smpl { }; + stdpp = callPackage ../development/coq-modules/stdpp { }; + StructTact = callPackage ../development/coq-modules/StructTact {}; + tlc = callPackage ../development/coq-modules/tlc {}; + topology = callPackage ../development/coq-modules/topology {}; + Velisarios = callPackage ../development/coq-modules/Velisarios {}; + Verdi = callPackage ../development/coq-modules/Verdi {}; + VST = callPackage ../development/coq-modules/VST {}; + zorns-lemma = callPackage ../development/coq-modules/zorns-lemma {}; + filterPackages = doesFilter: if doesFilter then filterCoqPackages self else self; + }; + + filterCoqPackages = set: + lib.listToAttrs ( + lib.concatMap (name: let v = set.${name} or null; in + lib.optional (! v.meta.coqFilter or false) + (lib.nameValuePair name ( + if lib.isAttrs v && v.recurseForDerivations or false + then filterCoqPackages v + else v)) + ) (lib.attrNames set) + ); + mkCoq = version: callPackage ../applications/science/logic/coq { + inherit version + ocamlPackages_4_05 + ocamlPackages_4_09 + ocamlPackages_4_10 + ocamlPackages_4_12 + ; + }; +in rec { + + /* The function `mkCoqPackages` takes as input a derivation for Coq and produces + * a set of libraries built with that specific Coq. More libraries are known to + * this function than what is compatible with that version of Coq. Therefore, + * libraries that are not known to be compatible are removed (filtered out) from + * the resulting set. For meta-programming purposes (inpecting the derivations + * rather than building the libraries) this filtering can be disabled by setting + * a `dontFilter` attribute into the Coq derivation. + */ + mkCoqPackages = coq: + let self = lib.makeScope newScope (lib.flip mkCoqPackages' coq); in + self.filterPackages (! coq.dontFilter or false); + + coq_8_5 = mkCoq "8.5"; + coq_8_6 = mkCoq "8.6"; + coq_8_7 = mkCoq "8.7"; + coq_8_8 = mkCoq "8.8"; + coq_8_9 = mkCoq "8.9"; + coq_8_10 = mkCoq "8.10"; + coq_8_11 = mkCoq "8.11"; + coq_8_12 = mkCoq "8.12"; + coq_8_13 = mkCoq "8.13"; + coq_8_14 = mkCoq "8.14"; + coq_8_15 = mkCoq "8.15"; + + coqPackages_8_5 = mkCoqPackages coq_8_5; + coqPackages_8_6 = mkCoqPackages coq_8_6; + coqPackages_8_7 = mkCoqPackages coq_8_7; + coqPackages_8_8 = mkCoqPackages coq_8_8; + coqPackages_8_9 = mkCoqPackages coq_8_9; + coqPackages_8_10 = mkCoqPackages coq_8_10; + coqPackages_8_11 = mkCoqPackages coq_8_11; + coqPackages_8_12 = mkCoqPackages coq_8_12; + coqPackages_8_13 = mkCoqPackages coq_8_13; + coqPackages_8_14 = mkCoqPackages coq_8_14; + coqPackages_8_15 = mkCoqPackages coq_8_15; + coqPackages = recurseIntoAttrs coqPackages_8_13; + coq = coqPackages.coq; + +} diff --git a/nixpkgs/pkgs/top-level/cubocore-packages.nix b/nixpkgs/pkgs/top-level/cubocore-packages.nix new file mode 100644 index 000000000000..3c6ed65e9286 --- /dev/null +++ b/nixpkgs/pkgs/top-level/cubocore-packages.nix @@ -0,0 +1,94 @@ +{ newScope, lxqt, lib, libsForQt5 }: + +let + packages = self: with self; { + + # Libs + libcprime = libsForQt5.callPackage ../applications/misc/cubocore-packages/libcprime { }; + + libcsys = libsForQt5.callPackage ../applications/misc/cubocore-packages/libcsys { }; + + # Apps + coreaction = libsForQt5.callPackage ../applications/misc/cubocore-packages/coreaction { + inherit libcprime libcsys; + }; + + corearchiver = libsForQt5.callPackage ../applications/misc/cubocore-packages/corearchiver { + inherit libcprime libcsys; + }; + + corefm = libsForQt5.callPackage ../applications/misc/cubocore-packages/corefm { + inherit libcprime libcsys; + }; + + coregarage = libsForQt5.callPackage ../applications/misc/cubocore-packages/coregarage { + inherit libcprime libcsys; + }; + + corehunt = libsForQt5.callPackage ../applications/misc/cubocore-packages/corehunt { + inherit libcprime libcsys; + }; + + coreimage = libsForQt5.callPackage ../applications/misc/cubocore-packages/coreimage { + inherit libcprime libcsys; + }; + + coreinfo = libsForQt5.callPackage ../applications/misc/cubocore-packages/coreinfo { + inherit libcprime libcsys; + }; + + corekeyboard = libsForQt5.callPackage ../applications/misc/cubocore-packages/corekeyboard { + inherit libcprime libcsys; + }; + + corepad = libsForQt5.callPackage ../applications/misc/cubocore-packages/corepad { + inherit libcprime libcsys; + }; + + corepaint = libsForQt5.callPackage ../applications/misc/cubocore-packages/corepaint { + inherit libcprime libcsys; + }; + + corepdf = libsForQt5.callPackage ../applications/misc/cubocore-packages/corepdf { + inherit libcprime libcsys; + }; + + corepins = libsForQt5.callPackage ../applications/misc/cubocore-packages/corepins { + inherit libcprime libcsys; + }; + + corerenamer = libsForQt5.callPackage ../applications/misc/cubocore-packages/corerenamer { + inherit libcprime libcsys; + }; + + coreshot = libsForQt5.callPackage ../applications/misc/cubocore-packages/coreshot { + inherit libcprime libcsys; + }; + + corestats = libsForQt5.callPackage ../applications/misc/cubocore-packages/corestats { + inherit libcprime libcsys; + }; + + corestuff = libsForQt5.callPackage ../applications/misc/cubocore-packages/corestuff { + inherit libcprime libcsys; + }; + + coreterminal = libsForQt5.callPackage ../applications/misc/cubocore-packages/coreterminal { + inherit (lxqt) qtermwidget; + inherit libcprime libcsys; + }; + + coretime = libsForQt5.callPackage ../applications/misc/cubocore-packages/coretime { + inherit libcprime libcsys; + }; + + coretoppings = libsForQt5.callPackage ../applications/misc/cubocore-packages/coretoppings { + inherit libcprime libcsys; + }; + + coreuniverse = libsForQt5.callPackage ../applications/misc/cubocore-packages/coreuniverse { + inherit libcprime libcsys; + }; + }; +in +lib.makeScope newScope packages diff --git a/nixpkgs/pkgs/top-level/darwin-packages.nix b/nixpkgs/pkgs/top-level/darwin-packages.nix new file mode 100644 index 000000000000..d6ee88bc4f5e --- /dev/null +++ b/nixpkgs/pkgs/top-level/darwin-packages.nix @@ -0,0 +1,202 @@ +{ lib +, buildPackages, pkgs, targetPackages +, pkgsBuildBuild, pkgsBuildHost, pkgsBuildTarget, pkgsHostHost, pkgsTargetTarget +, stdenv, splicePackages, newScope +, preLibcCrossHeaders +}: + +let + otherSplices = { + selfBuildBuild = pkgsBuildBuild.darwin; + selfBuildHost = pkgsBuildHost.darwin; + selfBuildTarget = pkgsBuildTarget.darwin; + selfHostHost = pkgsHostHost.darwin; + selfTargetTarget = pkgsTargetTarget.darwin or {}; # might be missing + }; + + # Prefix for binaries. Customarily ends with a dash separator. + # + # TODO(@Ericson2314) Make unconditional, or optional but always true by + # default. + targetPrefix = lib.optionalString (stdenv.targetPlatform != stdenv.hostPlatform) + (stdenv.targetPlatform.config + "-"); +in + +lib.makeScopeWithSplicing splicePackages newScope otherSplices (_: {}) (spliced: spliced.apple_sdk.frameworks) (self: let + inherit (self) mkDerivation callPackage; + + # Must use pkgs.callPackage to avoid infinite recursion. + + # Open source packages that are built from source + appleSourcePackages = pkgs.callPackage ../os-specific/darwin/apple-source-releases { } self; + + impure-cmds = pkgs.callPackage ../os-specific/darwin/impure-cmds { }; + + # macOS 10.12 SDK + apple_sdk_10_12 = pkgs.callPackage ../os-specific/darwin/apple-sdk { + inherit (buildPackages.darwin) print-reexports; + inherit (self) darwin-stubs; + }; + + # macOS 11.0 SDK + apple_sdk_11_0 = pkgs.callPackage ../os-specific/darwin/apple-sdk-11.0 { }; + + # Pick an SDK + apple_sdk = if stdenv.hostPlatform.isAarch64 then apple_sdk_11_0 else apple_sdk_10_12; + + # Pick the source of libraries: either Apple's open source releases, or the + # SDK. + useAppleSDKLibs = stdenv.hostPlatform.isAarch64; + + selectAttrs = attrs: names: + lib.listToAttrs (lib.concatMap (n: if attrs ? "${n}" then [(lib.nameValuePair n attrs."${n}")] else []) names); + + chooseLibs = ( + # There are differences in which libraries are exported. Avoid evaluation + # errors when a package is not provided. + selectAttrs ( + if useAppleSDKLibs + then apple_sdk + else appleSourcePackages + ) ["Libsystem" "LibsystemCross" "libcharset" "libunwind" "objc4" "configd" "IOKit"] + ) // { + inherit ( + if useAppleSDKLibs + then apple_sdk.frameworks + else appleSourcePackages + ) Security; + }; +in + +impure-cmds // appleSourcePackages // chooseLibs // { + + inherit apple_sdk; + + stdenvNoCF = stdenv.override { + extraBuildInputs = []; + }; + + binutils-unwrapped = callPackage ../os-specific/darwin/binutils { + inherit (pkgs) binutils-unwrapped; + inherit (pkgs.llvmPackages) llvm clang-unwrapped; + }; + + binutils = pkgs.wrapBintoolsWith { + libc = + if stdenv.targetPlatform != stdenv.hostPlatform + then pkgs.libcCross + else pkgs.stdenv.cc.libc; + bintools = self.binutils-unwrapped; + }; + + binutilsNoLibc = pkgs.wrapBintoolsWith { + libc = preLibcCrossHeaders; + bintools = self.binutils-unwrapped; + }; + + cctools = callPackage ../os-specific/darwin/cctools/port.nix { + stdenv = if stdenv.isDarwin then stdenv else pkgs.libcxxStdenv; + }; + + # TODO: remove alias. + cf-private = self.apple_sdk.frameworks.CoreFoundation; + + DarwinTools = callPackage ../os-specific/darwin/DarwinTools { }; + + darwin-stubs = callPackage ../os-specific/darwin/darwin-stubs { }; + + print-reexports = callPackage ../os-specific/darwin/print-reexports { }; + + rewrite-tbd = callPackage ../os-specific/darwin/rewrite-tbd { }; + + checkReexportsHook = pkgs.makeSetupHook { + deps = [ pkgs.darwin.print-reexports ]; + } ../os-specific/darwin/print-reexports/setup-hook.sh; + + sigtool = callPackage ../os-specific/darwin/sigtool { }; + + postLinkSignHook = pkgs.writeTextFile { + name = "post-link-sign-hook"; + executable = true; + + text = '' + CODESIGN_ALLOCATE=${targetPrefix}codesign_allocate \ + ${self.sigtool}/bin/codesign -f -s - "$linkerOutput" + ''; + }; + + signingUtils = callPackage ../os-specific/darwin/signing-utils { }; + + autoSignDarwinBinariesHook = pkgs.makeSetupHook { + deps = [ self.signingUtils ]; + } ../os-specific/darwin/signing-utils/auto-sign-hook.sh; + + maloader = callPackage ../os-specific/darwin/maloader { + }; + + insert_dylib = callPackage ../os-specific/darwin/insert_dylib { }; + + iosSdkPkgs = callPackage ../os-specific/darwin/xcode/sdk-pkgs.nix { + buildIosSdk = buildPackages.darwin.iosSdkPkgs.sdk; + targetIosSdkPkgs = targetPackages.darwin.iosSdkPkgs; + inherit (pkgs.llvmPackages) clang-unwrapped; + }; + + iproute2mac = callPackage ../os-specific/darwin/iproute2mac { }; + + libobjc = self.objc4; + + lsusb = callPackage ../os-specific/darwin/lsusb { }; + + moltenvk = callPackage ../os-specific/darwin/moltenvk { }; + + opencflite = callPackage ../os-specific/darwin/opencflite { }; + + stubs = pkgs.callPackages ../os-specific/darwin/stubs { }; + + trash = callPackage ../os-specific/darwin/trash { }; + + xattr = pkgs.python3Packages.callPackage ../os-specific/darwin/xattr { }; + + inherit (pkgs.callPackages ../os-specific/darwin/xcode { }) + xcode_8_1 xcode_8_2 + xcode_9_1 xcode_9_2 xcode_9_4 xcode_9_4_1 + xcode_10_2 xcode_10_2_1 xcode_10_3 + xcode_11 + xcode; + + CoreSymbolication = callPackage ../os-specific/darwin/CoreSymbolication { }; + + # TODO: make swift-corefoundation build with apple_sdk_11_0.Libsystem + CF = if useAppleSDKLibs + then + # This attribute (CF) is included in extraBuildInputs in the stdenv. This + # is typically the open source project. When a project refers to + # "CoreFoundation" it has an extra setup hook to force impure system + # CoreFoundation into the link step. + # + # In this branch, we only have a single "CoreFoundation" to choose from. + # To be compatible with the existing convention, we define + # CoreFoundation with the setup hook, and CF as the same package but + # with the setup hook removed. + # + # This may seem unimportant, but without it packages (e.g., bacula) will + # fail with linker errors referring ___CFConstantStringClassReference. + # It's not clear to me why some packages need this extra setup. + lib.overrideDerivation apple_sdk.frameworks.CoreFoundation (drv: { + setupHook = null; + }) + else callPackage ../os-specific/darwin/swift-corelibs/corefoundation.nix { }; + + # As the name says, this is broken, but I don't want to lose it since it's a direction we want to go in + # libdispatch-broken = callPackage ../os-specific/darwin/swift-corelibs/libdispatch.nix { }; + + darling = callPackage ../os-specific/darwin/darling/default.nix { }; + + libtapi = callPackage ../os-specific/darwin/libtapi {}; + + ios-deploy = callPackage ../os-specific/darwin/ios-deploy {}; + + discrete-scroll = callPackage ../os-specific/darwin/discrete-scroll { }; + +}) diff --git a/nixpkgs/pkgs/top-level/default.nix b/nixpkgs/pkgs/top-level/default.nix new file mode 100644 index 000000000000..e95a0db78c3c --- /dev/null +++ b/nixpkgs/pkgs/top-level/default.nix @@ -0,0 +1,133 @@ +/* This function composes the Nix Packages collection. It: + + 1. Elaborates `localSystem` and `crossSystem` with defaults as needed. + + 2. Applies the final stage to the given `config` if it is a function + + 3. Defaults to no non-standard config and no cross-compilation target + + 4. Uses the above to infer the default standard environment's (stdenv's) + stages if no stdenv's are provided + + 5. Folds the stages to yield the final fully booted package set for the + chosen stdenv + + Use `impure.nix` to also infer the `system` based on the one on which + evaluation is taking place, and the configuration from environment variables + or dot-files. */ + +{ # The system packages will be built on. See the manual for the + # subtle division of labor between these two `*System`s and the three + # `*Platform`s. + localSystem + +, # The system packages will ultimately be run on. + crossSystem ? localSystem + +, # Allow a configuration attribute set to be passed in as an argument. + config ? {} + +, # List of overlays layers used to extend Nixpkgs. + overlays ? [] + +, # List of overlays to apply to target packages only. + crossOverlays ? [] + +, # A function booting the final package set for a specific standard + # environment. See below for the arguments given to that function, the type of + # list it returns. + stdenvStages ? import ../stdenv + +, # Ignore unexpected args. + ... +} @ args: + +let # Rename the function arguments + config0 = config; + crossSystem0 = crossSystem; + +in let + lib = import ../../lib; + + inherit (lib) throwIfNot; + + checked = + throwIfNot (lib.isList overlays) "The overlays argument to nixpkgs must be a list." + lib.foldr (x: throwIfNot (lib.isFunction x) "All overlays passed to nixpkgs must be functions.") (r: r) overlays + throwIfNot (lib.isList crossOverlays) "The crossOverlays argument to nixpkgs must be a list." + lib.foldr (x: throwIfNot (lib.isFunction x) "All crossOverlays passed to nixpkgs must be functions.") (r: r) crossOverlays + ; + + localSystem = lib.systems.elaborate args.localSystem; + + # Condition preserves sharing which in turn affects equality. + crossSystem = + if crossSystem0 == null || crossSystem0 == args.localSystem + then localSystem + else lib.systems.elaborate crossSystem0; + + # Allow both: + # { /* the config */ } and + # { pkgs, ... } : { /* the config */ } + config1 = + if lib.isFunction config0 + then config0 { inherit pkgs; } + else config0; + + configEval = lib.evalModules { + modules = [ + ./config.nix + ({ options, ... }: { + _file = "nixpkgs.config"; + # filter-out known options, FIXME: remove this eventually + config = builtins.intersectAttrs options config1; + }) + ]; + }; + + # take all the rest as-is + config = lib.showWarnings configEval.config.warnings + (config1 // builtins.removeAttrs configEval.config [ "_module" ]); + + # A few packages make a new package set to draw their dependencies from. + # (Currently to get a cross tool chain, or forced-i686 package.) Rather than + # give `all-packages.nix` all the arguments to this function, even ones that + # don't concern it, we give it this function to "re-call" nixpkgs, inheriting + # whatever arguments it doesn't explicitly provide. This way, + # `all-packages.nix` doesn't know more than it needs too. + # + # It's OK that `args` doesn't include default arguments from this file: + # they'll be deterministically inferred. In fact we must *not* include them, + # because it's important that if some parameter which affects the default is + # substituted with a different argument, the default is re-inferred. + # + # To put this in concrete terms, this function is basically just used today to + # use package for a different platform for the current platform (namely cross + # compiling toolchains and 32-bit packages on x86_64). In both those cases we + # want the provided non-native `localSystem` argument to affect the stdenv + # chosen. + # + # NB!!! This thing gets its `config` argument from `args`, i.e. it's actually + # `config0`. It is important to keep it to `config0` format (as opposed to the + # result of `evalModules`, i.e. the `config` variable above) throughout all + # nixpkgs evaluations since the above function `config0 -> config` implemented + # via `evalModules` is not idempotent. In other words, if you add `config` to + # `newArgs`, expect strange very hard to debug errors! (Yes, I'm speaking from + # experience here.) + nixpkgsFun = newArgs: import ./. (args // newArgs); + + # Partially apply some arguments for building bootstraping stage pkgs + # sets. Only apply arguments which no stdenv would want to override. + allPackages = newArgs: import ./stage.nix ({ + inherit lib nixpkgsFun; + } // newArgs); + + boot = import ../stdenv/booter.nix { inherit lib allPackages; }; + + stages = stdenvStages { + inherit lib localSystem crossSystem config overlays crossOverlays; + }; + + pkgs = boot stages; + +in checked pkgs diff --git a/nixpkgs/pkgs/top-level/dhall-packages.nix b/nixpkgs/pkgs/top-level/dhall-packages.nix new file mode 100644 index 000000000000..646f2b7e9d39 --- /dev/null +++ b/nixpkgs/pkgs/top-level/dhall-packages.nix @@ -0,0 +1,49 @@ +{ lib +, newScope +, overrides ? (self: super: {}) +}: + +let + packages = self: + let + callPackage = newScope self; + + buildDhallPackage = + callPackage ../development/interpreters/dhall/build-dhall-package.nix { }; + + buildDhallGitHubPackage = + callPackage ../development/interpreters/dhall/build-dhall-github-package.nix { }; + + buildDhallDirectoryPackage = + callPackage ../development/interpreters/dhall/build-dhall-directory-package.nix { }; + + buildDhallUrl = + callPackage ../development/interpreters/dhall/build-dhall-url.nix { }; + + generateDhallDirectoryPackage = + callPackage ../development/interpreters/dhall/generate-dhall-directory-package.nix { }; + + in + { inherit + callPackage + buildDhallPackage + buildDhallGitHubPackage + buildDhallDirectoryPackage + buildDhallUrl + generateDhallDirectoryPackage + ; + + lib = import ../development/dhall-modules/lib.nix { inherit lib; }; + + dhall-grafana = + callPackage ../development/dhall-modules/dhall-grafana.nix { }; + + dhall-kubernetes = + callPackage ../development/dhall-modules/dhall-kubernetes.nix { }; + + Prelude = + callPackage ../development/dhall-modules/Prelude.nix { }; + }; + +in + lib.fix' (lib.extends overrides packages) diff --git a/nixpkgs/pkgs/top-level/dotnet-packages.nix b/nixpkgs/pkgs/top-level/dotnet-packages.nix new file mode 100644 index 000000000000..10188cee9148 --- /dev/null +++ b/nixpkgs/pkgs/top-level/dotnet-packages.nix @@ -0,0 +1,315 @@ +{ stdenv +, lib +, pkgs +, buildDotnetPackage +, fetchurl +, fetchFromGitHub +, fetchNuGet +, glib +, mono +, overrides ? {} +}: + +let self = dotnetPackages // overrides; dotnetPackages = with self; { + + # BINARY PACKAGES + + NUnit3 = fetchNuGet { + pname = "NUnit"; + version = "3.0.1"; + sha256 = "1g3j3kvg9vrapb1vjgq65nvn1vg7bzm66w7yjnaip1iww1yn1b0p"; + outputFiles = [ "lib/*" ]; + }; + + NUnit2 = fetchNuGet { + pname = "NUnit"; + version = "2.6.4"; + sha256 = "1acwsm7p93b1hzfb83ia33145x0w6fvdsfjm9xflsisljxpdx35y"; + outputFiles = [ "lib/*" ]; + }; + + NUnit = NUnit2; + + NUnitConsole = fetchNuGet { + pname = "NUnit.Console"; + version = "3.0.1"; + sha256 = "154bqwm2n95syv8nwd67qh8qsv0b0h5zap60sk64z3kd3a9ffi5p"; + outputFiles = [ "tools/*" ]; + }; + + MaxMindDb = fetchNuGet { + pname = "MaxMind.Db"; + version = "1.1.0.0"; + sha256 = "0lixl76f7k3ldiqzg94zh13gn82w5mm5dx72y97fcqvp8g6nj3ds"; + outputFiles = [ "lib/*" ]; + }; + + MaxMindGeoIP2 = fetchNuGet { + pname = "MaxMind.GeoIP2"; + version = "2.3.1"; + sha256 = "1s44dvjnmj1aimbrgkmpj6h5dn1w6acgqjch1axc76yz6hwknqgf"; + outputFiles = [ "lib/*" ]; + }; + + SharpZipLib = fetchNuGet { + pname = "SharpZipLib"; + version = "0.86.0"; + sha256 = "01w2038gckfnq31pncrlgm7d0c939pwr1x4jj5450vcqpd4c41jr"; + outputFiles = [ "lib/*" ]; + }; + + StyleCopMSBuild = fetchNuGet { + pname = "StyleCop.MSBuild"; + version = "4.7.49.0"; + sha256 = "0rpfyvcggm881ynvgr17kbx5hvj7ivlms0bmskmb2zyjlpddx036"; + outputFiles = [ "tools/*" ]; + }; + + StyleCopPlusMSBuild = fetchNuGet { + pname = "StyleCopPlus.MSBuild"; + version = "4.7.49.5"; + sha256 = "1hv4lfxw72aql8siyqc4n954vzdz8p6jx9f2wrgzz0jy1k98x2mr"; + outputFiles = [ "tools/*" ]; + }; + + RestSharp = fetchNuGet { + pname = "RestSharp"; + version = "105.2.3"; + sha256 = "1br48124ppz80x92m84sfyil1gn23hxg2ml9i9hsd0lp86vlaa1m"; + outputFiles = [ "lib/*" ]; + }; + + SharpFont = fetchNuGet { + pname = "SharpFont"; + version = "4.0.1"; + sha256 = "1yd3cm4ww0hw2k3aymf792hp6skyg8qn491m2a3fhkzvsl8z7vs8"; + outputFiles = [ "lib/*" "config/*" ]; + }; + + SmartIrc4net = fetchNuGet { + pname = "SmartIrc4net"; + version = "0.4.5.1"; + sha256 = "1d531sj39fvwmj2wgplqfify301y3cwp7kwr9ai5hgrq81jmjn2b"; + outputFiles = [ "lib/*" ]; + }; + + FuzzyLogicLibrary = fetchNuGet { + pname = "FuzzyLogicLibrary"; + version = "1.2.0"; + sha256 = "0x518i8d3rw9n51xwawa4sywvqd722adj7kpcgcm63r66s950r5l"; + outputFiles = [ "bin/*" ]; + }; + + OpenNAT = fetchNuGet { + pname = "Open.NAT"; + version = "2.1.0"; + sha256 = "1jyd30fwycdwx5ck96zhp2xf20yz0sp7g3pjbqhmay4kd322mfwk"; + outputFiles = [ "lib/*" ]; + }; + + MonoNat = fetchNuGet { + pname = "Mono.Nat"; + version = "1.2.24"; + sha256 = "0vfkach11kkcd9rcqz3s38m70d5spyb21gl99iqnkljxj5555wjs"; + outputFiles = [ "lib/*" ]; + }; + + NUnitRunners = fetchNuGet { + pname = "NUnit.Runners"; + version = "2.6.4"; + sha256 = "11nmi7vikn9idz8qcad9z7f73arsh5rw18fc1sri9ywz77mpm1s4"; + outputFiles = [ "tools/*" ]; + preInstall = "mv -v tools/lib/* tools && rmdir -v tools/lib"; + }; + + # SOURCE PACKAGES + + Boogie = buildDotnetPackage rec { + pname = "Boogie"; + version = "2.4.1"; + + src = fetchFromGitHub { + owner = "boogie-org"; + repo = "boogie"; + rev = "v${version}"; + sha256 = "13f6ifkh6gpy4bvx5zhgwmk3wd5rfxzl9wxwfhcj1c90fdrhwh1b"; + }; + + # emulate `nuget restore Source/Boogie.sln` + # which installs in $srcdir/Source/packages + preBuild = '' + mkdir -p Source/packages/NUnit.2.6.3 + ln -sn ${dotnetPackages.NUnit}/lib/dotnet/NUnit Source/packages/NUnit.2.6.3/lib + ''; + + buildInputs = [ + dotnetPackages.NUnit + dotnetPackages.NUnitRunners + ]; + + xBuildFiles = [ "Source/Boogie.sln" ]; + + outputFiles = [ "Binaries/*" ]; + + postInstall = '' + mkdir -pv "$out/lib/dotnet/${pname}" + ln -sv "${pkgs.z3}/bin/z3" "$out/lib/dotnet/${pname}/z3.exe" + + # so that this derivation can be used as a vim plugin to install syntax highlighting + vimdir=$out/share/vim-plugins/boogie + install -Dt $vimdir/syntax/ Util/vim/syntax/boogie.vim + mkdir $vimdir/ftdetect + echo 'au BufRead,BufNewFile *.bpl set filetype=boogie' > $vimdir/ftdetect/bpl.vim + ''; + + meta = with lib; { + description = "An intermediate verification language"; + homepage = "https://github.com/boogie-org/boogie"; + longDescription = '' + Boogie is an intermediate verification language (IVL), intended as a + layer on which to build program verifiers for other languages. + + This derivation may be used as a vim plugin to provide syntax highlighting. + ''; + license = licenses.mspl; + maintainers = [ maintainers.taktoa ]; + platforms = with platforms; (linux ++ darwin); + }; + }; + + Dafny = let + z3 = pkgs.z3.overrideAttrs (oldAttrs: rec { + version = "4.8.4"; + name = "z3-${version}"; + + src = fetchFromGitHub { + owner = "Z3Prover"; + repo = "z3"; + rev = "z3-${version}"; + sha256 = "014igqm5vwswz0yhz0cdxsj3a6dh7i79hvhgc3jmmmz3z0xm1gyn"; + }; + }); + self' = pkgs.dotnetPackages.override ({ + pkgs = pkgs // { inherit z3; }; + }); + Boogie = assert self'.Boogie.version == "2.4.1"; self'.Boogie; + in buildDotnetPackage rec { + pname = "Dafny"; + version = "2.3.0"; + + src = fetchurl { + url = "https://github.com/Microsoft/dafny/archive/v${version}.tar.gz"; + sha256 = "0s6ihx32kda7400lvdrq60l46c11nki8b6kalir2g4ic508f6ypa"; + }; + + postPatch = '' + sed -i \ + -e 's/ Visible="False"//' \ + -e "s/Exists(\$(CodeContractsInstallDir))/Exists('\$(CodeContractsInstallDir)')/" \ + Source/*/*.csproj + ''; + + preBuild = '' + ln -s ${z3} Binaries/z3 + ''; + + buildInputs = [ Boogie ]; + + xBuildFiles = [ "Source/Dafny.sln" ]; + xBuildFlags = [ "/p:Configuration=Checked" "/p:Platform=Any CPU" "/t:Rebuild" ]; + + outputFiles = [ "Binaries/*" ]; + + # Do not wrap the z3 executable, only dafny-related ones. + exeFiles = [ "Dafny*.exe" ]; + + # Dafny needs mono in its path. + makeWrapperArgs = "--set PATH ${mono}/bin"; + + # Boogie as an input is not enough. Boogie libraries need to be at the same + # place as Dafny ones. Same for "*.dll.mdb". No idea why or how to fix. + postFixup = '' + for lib in ${Boogie}/lib/dotnet/${Boogie.pname}/*.dll{,.mdb}; do + ln -s $lib $out/lib/dotnet/${pname}/ + done + # We generate our own executable scripts + rm -f $out/lib/dotnet/${pname}/dafny{,-server} + ''; + + meta = with lib; { + description = "A programming language with built-in specification constructs"; + homepage = "https://research.microsoft.com/dafny"; + maintainers = with maintainers; [ layus ]; + license = licenses.mit; + platforms = with platforms; (linux ++ darwin); + }; + }; + + MonoAddins = buildDotnetPackage rec { + pname = "Mono.Addins"; + version = "1.2"; + + xBuildFiles = [ + "Mono.Addins/Mono.Addins.csproj" + "Mono.Addins.Setup/Mono.Addins.Setup.csproj" + "Mono.Addins.Gui/Mono.Addins.Gui.csproj" + "Mono.Addins.CecilReflector/Mono.Addins.CecilReflector.csproj" + ]; + outputFiles = [ "bin/*" ]; + + src = fetchFromGitHub { + owner = "mono"; + repo = "mono-addins"; + rev = "mono-addins-${version}"; + sha256 = "1hnn0a2qsjcjprsxas424bzvhsdwy0yc2jj5xbp698c0m9kfk24y"; + }; + + buildInputs = [ pkgs.gtk-sharp-2_0 ]; + + meta = { + description = "A generic framework for creating extensible applications"; + homepage = "https://www.mono-project.com/Mono.Addins"; + longDescription = '' + A generic framework for creating extensible applications, + and for creating libraries which extend those applications. + ''; + license = lib.licenses.mit; + }; + }; + + NewtonsoftJson = fetchNuGet { + pname = "Newtonsoft.Json"; + version = "11.0.2"; + sha256 = "07na27n4mlw77f3hg5jpayzxll7f4gyna6x7k9cybmxpbs6l77k7"; + outputFiles = [ "*" ]; + }; + + Nuget = buildDotnetPackage rec { + pname = "Nuget"; + version = "5.6.0.6489"; + + src = fetchFromGitHub { + owner = "mono"; + repo = "linux-packaging-nuget"; + rev = "upstream/${version}.bin"; + sha256 = "sha256-71vjM7a+F0DNTY+dML3UBSkrVyXv/k5rdl7iXBKSpNM="; + }; + + # configurePhase breaks the binary and results in + # `File does not contain a valid CIL image.` + dontConfigure = true; + dontBuild = true; + dontPlacateNuget = true; + + outputFiles = [ "*" ]; + exeFiles = [ "nuget.exe" ]; + }; + + Paket = fetchNuGet { + pname = "Paket"; + version = "5.179.1"; + sha256 = "11rzna03i145qj08hwrynya548fwk8xzxmg65swyaf19jd7gzg82"; + outputFiles = [ "*" ]; + }; + +}; in self diff --git a/nixpkgs/pkgs/top-level/emacs-packages.nix b/nixpkgs/pkgs/top-level/emacs-packages.nix new file mode 100644 index 000000000000..0ac3ae8b4339 --- /dev/null +++ b/nixpkgs/pkgs/top-level/emacs-packages.nix @@ -0,0 +1,101 @@ +# package.el-based emacs packages + +## FOR USERS +# +# Recommended: simply use `emacsWithPackages` with the packages you want. +# +# Alternative: use `emacs`, install everything to a system or user profile +# and then add this at the start your `init.el`: +/* + (require 'package) + + ;; optional. makes unpure packages archives unavailable + (setq package-archives nil) + + ;; optional. use this if you install emacs packages to the system profile + (add-to-list 'package-directory-list "/run/current-system/sw/share/emacs/site-lisp/elpa") + + ;; optional. use this if you install emacs packages to user profiles (with nix-env) + (add-to-list 'package-directory-list "~/.nix-profile/share/emacs/site-lisp/elpa") + + (package-initialize) +*/ + +{ pkgs' +, emacs' +, makeScope +, makeOverridable +, dontRecurseIntoAttrs +}: + +let + + mkElpaPackages = { pkgs, lib }: import ../applications/editors/emacs/elisp-packages/elpa-packages.nix { + inherit (pkgs) stdenv texinfo writeText gcc pkgs buildPackages; + inherit lib; + }; + + mkNongnuPackages = { pkgs, lib }: import ../applications/editors/emacs/elisp-packages/nongnu-packages.nix { + inherit (pkgs) buildPackages; + inherit lib; + }; + + # Contains both melpa stable & unstable + melpaGeneric = { pkgs, lib }: import ../applications/editors/emacs/elisp-packages/melpa-packages.nix { + inherit lib pkgs; + }; + + mkManualPackages = { pkgs, lib }: import ../applications/editors/emacs/elisp-packages/manual-packages.nix { + inherit lib pkgs; + }; + + emacsWithPackages = { pkgs, lib }: import ../build-support/emacs/wrapper.nix { + inherit (pkgs) makeWrapper runCommand gcc; + inherit (pkgs.xorg) lndir; + inherit lib; + }; + +in makeScope pkgs'.newScope (self: makeOverridable ({ + pkgs ? pkgs' + , lib ? pkgs.lib + , elpaPackages ? mkElpaPackages { inherit pkgs lib; } self + , nongnuPackages ? mkNongnuPackages { inherit pkgs lib; } self + , melpaStablePackages ? melpaGeneric { inherit pkgs lib; } "stable" self + , melpaPackages ? melpaGeneric { inherit pkgs lib; } "unstable" self + , manualPackages ? mkManualPackages { inherit pkgs lib; } self +}: ({} + // elpaPackages // { inherit elpaPackages; } + // nongnuPackages // { inherit nongnuPackages; } + // melpaStablePackages // { inherit melpaStablePackages; } + // melpaPackages // { inherit melpaPackages; } + // manualPackages // { inherit manualPackages; } + // { + + # Propagate overriden scope + emacs = emacs'.overrideAttrs(old: { + passthru = (old.passthru or {}) // { + pkgs = dontRecurseIntoAttrs self; + }; + }); + + trivialBuild = pkgs.callPackage ../build-support/emacs/trivial.nix { + inherit (self) emacs; + }; + + melpaBuild = pkgs.callPackage ../build-support/emacs/melpa.nix { + inherit (self) emacs; + }; + + emacsWithPackages = emacsWithPackages { inherit pkgs lib; } self; + withPackages = emacsWithPackages { inherit pkgs lib; } self; + + } // { + + # Package specific priority overrides goes here + + # Telega uploads packages incompatible with stable tdlib to melpa + # Prefer the one from melpa stable + inherit (melpaStablePackages) telega; + + }) +) {}) diff --git a/nixpkgs/pkgs/top-level/emscripten-packages.nix b/nixpkgs/pkgs/top-level/emscripten-packages.nix new file mode 100644 index 000000000000..bc91b9e26a4f --- /dev/null +++ b/nixpkgs/pkgs/top-level/emscripten-packages.nix @@ -0,0 +1,187 @@ +{ pkgs }: + +with pkgs; + +# emscripten toolchain abstraction for nix +# https://github.com/NixOS/nixpkgs/pull/16208 + +rec { + json_c = (pkgs.json_c.override { + stdenv = pkgs.emscriptenStdenv; + }).overrideDerivation + (old: { + nativeBuildInputs = [ pkg-config cmake ]; + propagatedBuildInputs = [ zlib ]; + configurePhase = '' + HOME=$TMPDIR + emcmake cmake . $cmakeFlags -DCMAKE_INSTALL_PREFIX=$out -DCMAKE_INSTALL_INCLUDEDIR=$dev/include + ''; + checkPhase = '' + echo "================= testing json_c using node =================" + + echo "Compiling a custom test" + set -x + emcc -O2 -s EMULATE_FUNCTION_POINTER_CASTS=1 tests/test1.c \ + `pkg-config zlib --cflags` \ + `pkg-config zlib --libs` \ + -I . \ + libjson-c.a \ + -o ./test1.js + + echo "Using node to execute the test which basically outputs an error on stderr which we grep for" + ${pkgs.nodejs}/bin/node ./test1.js + + set +x + if [ $? -ne 0 ]; then + echo "test1.js execution failed -> unit test failed, please fix" + exit 1; + else + echo "test1.js execution seems to work! very good." + fi + echo "================= /testing json_c using node =================" + ''; + }); + + libxml2 = (pkgs.libxml2.override { + stdenv = emscriptenStdenv; + pythonSupport = false; + }).overrideDerivation + (old: { + propagatedBuildInputs = [ zlib ]; + buildInputs = old.buildInputs ++ [ pkg-config ]; + + # just override it with nothing so it does not fail + autoreconfPhase = "echo autoreconfPhase not used..."; + configurePhase = '' + HOME=$TMPDIR + emconfigure ./configure --prefix=$out --without-python + ''; + checkPhase = '' + echo "================= testing libxml2 using node =================" + + echo "Compiling a custom test" + set -x + emcc -O2 -s EMULATE_FUNCTION_POINTER_CASTS=1 xmllint.o \ + ./.libs/libxml2.a `pkg-config zlib --cflags` `pkg-config zlib --libs` -o ./xmllint.test.js \ + --embed-file ./test/xmlid/id_err1.xml + + echo "Using node to execute the test which basically outputs an error on stderr which we grep for" + ${pkgs.nodejs}/bin/node ./xmllint.test.js --noout test/xmlid/id_err1.xml 2>&1 | grep 0bar + + set +x + if [ $? -ne 0 ]; then + echo "xmllint unit test failed, please fix this package" + exit 1; + else + echo "since there is no stupid text containing 'foo xml:id' it seems to work! very good." + fi + echo "================= /testing libxml2 using node =================" + ''; + }); + + xmlmirror = pkgs.buildEmscriptenPackage rec { + pname = "xmlmirror"; + version = "unstable-2016-06-05"; + + buildInputs = [ pkg-config autoconf automake libtool gnumake libxml2 nodejs openjdk json_c ]; + nativeBuildInputs = [ pkg-config zlib ]; + + src = pkgs.fetchgit { + url = "https://gitlab.com/odfplugfest/xmlmirror.git"; + rev = "4fd7e86f7c9526b8f4c1733e5c8b45175860a8fd"; + sha256 = "1jasdqnbdnb83wbcnyrp32f36w3xwhwp0wq8lwwmhqagxrij1r4b"; + }; + + configurePhase = '' + rm -f fastXmlLint.js* + # a fix for ERROR:root:For asm.js, TOTAL_MEMORY must be a multiple of 16MB, was 234217728 + # https://gitlab.com/odfplugfest/xmlmirror/issues/8 + sed -e "s/TOTAL_MEMORY=234217728/TOTAL_MEMORY=268435456/g" -i Makefile.emEnv + # https://github.com/kripken/emscripten/issues/6344 + # https://gitlab.com/odfplugfest/xmlmirror/issues/9 + sed -e "s/\$(JSONC_LDFLAGS) \$(ZLIB_LDFLAGS) \$(LIBXML20_LDFLAGS)/\$(JSONC_LDFLAGS) \$(LIBXML20_LDFLAGS) \$(ZLIB_LDFLAGS) /g" -i Makefile.emEnv + # https://gitlab.com/odfplugfest/xmlmirror/issues/11 + sed -e "s/-o fastXmlLint.js/-s EXTRA_EXPORTED_RUNTIME_METHODS='[\"ccall\", \"cwrap\"]' -o fastXmlLint.js/g" -i Makefile.emEnv + ''; + + buildPhase = '' + HOME=$TMPDIR + make -f Makefile.emEnv + ''; + + outputs = [ "out" "doc" ]; + + installPhase = '' + mkdir -p $out/share + mkdir -p $doc/share/${pname} + + cp Demo* $out/share + cp -R codemirror-5.12 $out/share + cp fastXmlLint.js* $out/share + cp *.xsd $out/share + cp *.js $out/share + cp *.xhtml $out/share + cp *.html $out/share + cp *.json $out/share + cp *.rng $out/share + cp README.md $doc/share/${pname} + ''; + checkPhase = '' + ''; + }; + + zlib = (pkgs.zlib.override { + stdenv = pkgs.emscriptenStdenv; + }).overrideDerivation + (old: { + buildInputs = old.buildInputs ++ [ pkg-config ]; + # we need to reset this setting! + NIX_CFLAGS_COMPILE=""; + configurePhase = '' + # FIXME: Some tests require writing at $HOME + HOME=$TMPDIR + runHook preConfigure + + #export EMCC_DEBUG=2 + emconfigure ./configure --prefix=$out --shared + + runHook postConfigure + ''; + dontStrip = true; + outputs = [ "out" ]; + buildPhase = '' + emmake make + ''; + installPhase = '' + emmake make install + ''; + checkPhase = '' + echo "================= testing zlib using node =================" + + echo "Compiling a custom test" + set -x + emcc -O2 -s EMULATE_FUNCTION_POINTER_CASTS=1 test/example.c -DZ_SOLO \ + -L. libz.so.${old.version} -I . -o example.js + + echo "Using node to execute the test" + ${pkgs.nodejs}/bin/node ./example.js + + set +x + if [ $? -ne 0 ]; then + echo "test failed for some reason" + exit 1; + else + echo "it seems to work! very good." + fi + echo "================= /testing zlib using node =================" + ''; + + postPatch = pkgs.lib.optionalString pkgs.stdenv.isDarwin '' + substituteInPlace configure \ + --replace '/usr/bin/libtool' 'ar' \ + --replace 'AR="libtool"' 'AR="ar"' \ + --replace 'ARFLAGS="-o"' 'ARFLAGS="-r"' + ''; + }); + +} diff --git a/nixpkgs/pkgs/top-level/gnuradio-packages.nix b/nixpkgs/pkgs/top-level/gnuradio-packages.nix new file mode 100644 index 000000000000..1cd2c93da773 --- /dev/null +++ b/nixpkgs/pkgs/top-level/gnuradio-packages.nix @@ -0,0 +1,54 @@ +{ lib +, stdenv +, newScope +, gnuradio # unwrapped gnuradio +}: + +lib.makeScope newScope ( self: + +let + # Modeled after qt's + mkDerivationWith = import ../development/gnuradio-modules/mkDerivation.nix { + inherit lib; + unwrapped = gnuradio; + }; + mkDerivation = mkDerivationWith stdenv.mkDerivation; + + callPackage = self.newScope ({ + inherit (gnuradio) + # Packages that are potentially overriden and used as deps here. + boost + volk + ; + inherit mkDerivationWith mkDerivation; + } // lib.optionalAttrs (gnuradio.hasFeature "gr-uhd") { + inherit (gnuradio) uhd; + } // (if (lib.versionAtLeast gnuradio.versionAttr.major "3.10") then { + inherit (gnuradio) spdlog; + } else { + inherit (gnuradio) log4cpp; + })); +in { + + inherit callPackage mkDerivation mkDerivationWith; + + ### Packages + + inherit gnuradio; + inherit (gnuradio) python; + + osmosdr = callPackage ../development/gnuradio-modules/osmosdr/default.nix { }; + + ais = callPackage ../development/gnuradio-modules/ais/default.nix { }; + + grnet = callPackage ../development/gnuradio-modules/grnet/default.nix { }; + + gsm = callPackage ../development/gnuradio-modules/gsm/default.nix { }; + + nacl = callPackage ../development/gnuradio-modules/nacl/default.nix { }; + + rds = callPackage ../development/gnuradio-modules/rds/default.nix { }; + + limesdr = callPackage ../development/gnuradio-modules/limesdr/default.nix { }; + +}) diff --git a/nixpkgs/pkgs/top-level/haskell-packages.nix b/nixpkgs/pkgs/top-level/haskell-packages.nix new file mode 100644 index 000000000000..378c2c4385bd --- /dev/null +++ b/nixpkgs/pkgs/top-level/haskell-packages.nix @@ -0,0 +1,273 @@ +{ buildPackages, pkgsBuildTarget, pkgs, newScope, stdenv }: + +let + # These are attributes in compiler and packages that don't support integer-simple. + integerSimpleExcludes = [ + "ghc865Binary" + "ghc8102Binary" + "ghc8102BinaryMinimal" + "ghc8107Binary" + "ghc8107BinaryMinimal" + "ghcjs" + "ghcjs810" + "integer-simple" + "native-bignum" + "ghc902" + "ghc921" + "ghcHEAD" + ]; + + nativeBignumIncludes = [ + "ghc902" + "ghc921" + "ghcHEAD" + ]; + + haskellLibUncomposable = import ../development/haskell-modules/lib { + inherit (pkgs) lib; + inherit pkgs; + }; + + callPackage = newScope { + haskellLib = haskellLibUncomposable.compose; + overrides = pkgs.haskell.packageOverrides; + }; + + bootstrapPackageSet = self: super: { + mkDerivation = drv: super.mkDerivation (drv // { + doCheck = false; + doHaddock = false; + enableExecutableProfiling = false; + enableLibraryProfiling = false; + enableSharedExecutables = false; + enableSharedLibraries = false; + }); + }; + + # Use this rather than `rec { ... }` below for sake of overlays. + inherit (pkgs.haskell) compiler packages; + +in { + lib = haskellLibUncomposable; + + package-list = callPackage ../development/haskell-modules/package-list.nix {}; + + compiler = { + + ghc865Binary = callPackage ../development/compilers/ghc/8.6.5-binary.nix { + llvmPackages = pkgs.llvmPackages_6; + }; + + ghc8102Binary = callPackage ../development/compilers/ghc/8.10.2-binary.nix { + llvmPackages = pkgs.llvmPackages_9; + }; + + ghc8102BinaryMinimal = callPackage ../development/compilers/ghc/8.10.2-binary.nix { + llvmPackages = pkgs.llvmPackages_9; + minimal = true; + }; + + ghc8107Binary = callPackage ../development/compilers/ghc/8.10.7-binary.nix { + llvmPackages = pkgs.llvmPackages_12; + }; + + ghc8107BinaryMinimal = callPackage ../development/compilers/ghc/8.10.7-binary.nix { + llvmPackages = pkgs.llvmPackages_12; + minimal = true; + }; + + ghc884 = callPackage ../development/compilers/ghc/8.8.4.nix { + bootPkgs = + # aarch64 ghc865Binary gets SEGVs due to haskell#15449 or similar + # Musl bindists do not exist for ghc 8.6.5, so we use 8.10.* for them + if stdenv.isAarch64 || stdenv.hostPlatform.isMusl then + packages.ghc8102BinaryMinimal + else + packages.ghc865Binary; + inherit (buildPackages.python3Packages) sphinx; + buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_7; + llvmPackages = pkgs.llvmPackages_7; + }; + ghc8107 = callPackage ../development/compilers/ghc/8.10.7.nix { + bootPkgs = + # aarch64 ghc865Binary gets SEGVs due to haskell#15449 or similar + # the oldest ghc with aarch64-darwin support is 8.10.5 + # Musl bindists do not exist for ghc 8.6.5, so we use 8.10.* for them + if stdenv.isAarch64 || stdenv.isAarch32 then + packages.ghc8107BinaryMinimal + else + packages.ghc8107Binary; + inherit (buildPackages.python3Packages) sphinx; + # Need to use apple's patched xattr until + # https://github.com/xattr/xattr/issues/44 and + # https://github.com/xattr/xattr/issues/55 are solved. + inherit (buildPackages.darwin) xattr autoSignDarwinBinariesHook; + buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_12; + llvmPackages = pkgs.llvmPackages_12; + }; + ghc902 = callPackage ../development/compilers/ghc/9.0.2.nix { + bootPkgs = + # aarch64 ghc8107Binary exceeds max output size on hydra + # the oldest ghc with aarch64-darwin support is 8.10.5 + if stdenv.isAarch64 || stdenv.isAarch32 then + packages.ghc8107BinaryMinimal + else + packages.ghc8107Binary; + inherit (buildPackages.python3Packages) sphinx; + inherit (buildPackages.darwin) autoSignDarwinBinariesHook xattr; + buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_12; + llvmPackages = pkgs.llvmPackages_12; + }; + ghc921 = callPackage ../development/compilers/ghc/9.2.1.nix { + bootPkgs = + # aarch64 ghc8107Binary exceeds max output size on hydra + if stdenv.isAarch64 || stdenv.isAarch32 then + packages.ghc8107BinaryMinimal + else + packages.ghc8107Binary; + inherit (buildPackages.python3Packages) sphinx; + # Need to use apple's patched xattr until + # https://github.com/xattr/xattr/issues/44 and + # https://github.com/xattr/xattr/issues/55 are solved. + inherit (buildPackages.darwin) xattr autoSignDarwinBinariesHook; + buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_12; + llvmPackages = pkgs.llvmPackages_12; + }; + ghcHEAD = callPackage ../development/compilers/ghc/head.nix { + bootPkgs = packages.ghc8107Binary; + inherit (buildPackages.python3Packages) sphinx; + # Need to use apple's patched xattr until + # https://github.com/xattr/xattr/issues/44 and + # https://github.com/xattr/xattr/issues/55 are solved. + inherit (buildPackages.darwin) xattr autoSignDarwinBinariesHook; + buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_12; + llvmPackages = pkgs.llvmPackages_12; + libffi = pkgs.libffi; + }; + + ghcjs = compiler.ghcjs810; + ghcjs810 = callPackage ../development/compilers/ghcjs/8.10 { + bootPkgs = packages.ghc8107; + ghcjsSrcJson = ../development/compilers/ghcjs/8.10/git.json; + stage0 = ../development/compilers/ghcjs/8.10/stage0.nix; + }; + + # The integer-simple attribute set contains all the GHC compilers + # build with integer-simple instead of integer-gmp. + integer-simple = let + integerSimpleGhcNames = pkgs.lib.filter + (name: ! builtins.elem name integerSimpleExcludes) + (pkgs.lib.attrNames compiler); + in pkgs.recurseIntoAttrs (pkgs.lib.genAttrs + integerSimpleGhcNames + (name: compiler.${name}.override { enableIntegerSimple = true; })); + + # Starting from GHC 9, integer-{simple,gmp} is replaced by ghc-bignum + # with "native" and "gmp" backends. + native-bignum = let + nativeBignumGhcNames = pkgs.lib.filter + (name: builtins.elem name nativeBignumIncludes) + (pkgs.lib.attrNames compiler); + in pkgs.recurseIntoAttrs (pkgs.lib.genAttrs + nativeBignumGhcNames + (name: compiler.${name}.override { enableNativeBignum = true; })); + }; + + # Default overrides that are applied to all package sets. + packageOverrides = self : super : {}; + + # Always get compilers from `buildPackages` + packages = let bh = buildPackages.haskell; in { + + ghc865Binary = callPackage ../development/haskell-modules { + buildHaskellPackages = bh.packages.ghc865Binary; + ghc = bh.compiler.ghc865Binary; + compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.6.x.nix { }; + packageSetConfig = bootstrapPackageSet; + }; + ghc8102Binary = callPackage ../development/haskell-modules { + buildHaskellPackages = bh.packages.ghc8102Binary; + ghc = bh.compiler.ghc8102Binary; + compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.10.x.nix { }; + packageSetConfig = bootstrapPackageSet; + }; + ghc8102BinaryMinimal = callPackage ../development/haskell-modules { + buildHaskellPackages = bh.packages.ghc8102BinaryMinimal; + ghc = bh.compiler.ghc8102BinaryMinimal; + compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.10.x.nix { }; + packageSetConfig = bootstrapPackageSet; + }; + ghc8107Binary = callPackage ../development/haskell-modules { + buildHaskellPackages = bh.packages.ghc8107Binary; + ghc = bh.compiler.ghc8107Binary; + compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.10.x.nix { }; + packageSetConfig = bootstrapPackageSet; + }; + ghc8107BinaryMinimal = callPackage ../development/haskell-modules { + buildHaskellPackages = bh.packages.ghc8107BinaryMinimal; + ghc = bh.compiler.ghc8107BinaryMinimal; + compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.10.x.nix { }; + packageSetConfig = bootstrapPackageSet; + }; + ghc884 = callPackage ../development/haskell-modules { + buildHaskellPackages = bh.packages.ghc884; + ghc = bh.compiler.ghc884; + compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.8.x.nix { }; + }; + ghc8107 = callPackage ../development/haskell-modules { + buildHaskellPackages = bh.packages.ghc8107; + ghc = bh.compiler.ghc8107; + compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.10.x.nix { }; + }; + ghc902 = callPackage ../development/haskell-modules { + buildHaskellPackages = bh.packages.ghc902; + ghc = bh.compiler.ghc902; + compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.0.x.nix { }; + }; + ghc921 = callPackage ../development/haskell-modules { + buildHaskellPackages = bh.packages.ghc921; + ghc = bh.compiler.ghc921; + compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.2.x.nix { }; + }; + ghcHEAD = callPackage ../development/haskell-modules { + buildHaskellPackages = bh.packages.ghcHEAD; + ghc = bh.compiler.ghcHEAD; + compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-head.nix { }; + }; + + ghcjs = packages.ghcjs810; + ghcjs810 = callPackage ../development/haskell-modules rec { + buildHaskellPackages = ghc.bootPkgs; + ghc = bh.compiler.ghcjs810; + compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.10.x.nix { }; + packageSetConfig = callPackage ../development/haskell-modules/configuration-ghcjs.nix { }; + }; + + # The integer-simple attribute set contains package sets for all the GHC compilers + # using integer-simple instead of integer-gmp. + integer-simple = let + integerSimpleGhcNames = pkgs.lib.filter + (name: ! builtins.elem name integerSimpleExcludes) + (pkgs.lib.attrNames packages); + in pkgs.lib.genAttrs integerSimpleGhcNames (name: packages.${name}.override { + ghc = bh.compiler.integer-simple.${name}; + buildHaskellPackages = bh.packages.integer-simple.${name}; + overrides = _self : _super : { + integer-simple = null; + integer-gmp = null; + }; + }); + + native-bignum = let + nativeBignumGhcNames = pkgs.lib.filter + (name: builtins.elem name nativeBignumIncludes) + (pkgs.lib.attrNames compiler); + in pkgs.lib.genAttrs nativeBignumGhcNames (name: packages.${name}.override { + ghc = bh.compiler.native-bignum.${name}; + buildHaskellPackages = bh.packages.native-bignum.${name}; + overrides = _self : _super : { + integer-gmp = null; + }; + }); + }; +} diff --git a/nixpkgs/pkgs/top-level/haxe-packages.nix b/nixpkgs/pkgs/top-level/haxe-packages.nix new file mode 100644 index 000000000000..66faa6f7cdbc --- /dev/null +++ b/nixpkgs/pkgs/top-level/haxe-packages.nix @@ -0,0 +1,119 @@ +{ stdenv, lib, fetchzip, fetchFromGitHub, haxe, neko, jdk, mono }: + +let + self = haxePackages; + haxePackages = with self; { + + withCommas = lib.replaceChars ["."] [","]; + + # simulate "haxelib dev $libname ." + simulateHaxelibDev = libname: '' + devrepo=$(mktemp -d) + mkdir -p "$devrepo/${withCommas libname}" + echo $(pwd) > "$devrepo/${withCommas libname}/.dev" + export HAXELIB_PATH="$HAXELIB_PATH:$devrepo" + ''; + + installLibHaxe = { libname, version, files ? "*" }: '' + mkdir -p "$out/lib/haxe/${withCommas libname}/${withCommas version}" + echo -n "${version}" > $out/lib/haxe/${withCommas libname}/.current + cp -dpR ${files} "$out/lib/haxe/${withCommas libname}/${withCommas version}/" + ''; + + buildHaxeLib = { + libname, + version, + sha256, + meta, + ... + } @ attrs: + stdenv.mkDerivation (attrs // { + name = "${libname}-${version}"; + + buildInputs = (attrs.buildInputs or []) ++ [ haxe neko ]; # for setup-hook.sh to work + src = fetchzip rec { + name = "${libname}-${version}"; + url = "http://lib.haxe.org/files/3.0/${withCommas name}.zip"; + inherit sha256; + stripRoot = false; + }; + + installPhase = attrs.installPhase or '' + runHook preInstall + ( + if [ $(ls $src | wc -l) == 1 ]; then + cd $src/* || cd $src + else + cd $src + fi + ${installLibHaxe { inherit libname version; }} + ) + runHook postInstall + ''; + + meta = { + homepage = "http://lib.haxe.org/p/${libname}"; + license = lib.licenses.bsd2; + platforms = lib.platforms.all; + description = throw "please write meta.description"; + } // attrs.meta; + }); + + hxcpp = buildHaxeLib rec { + libname = "hxcpp"; + version = "4.1.15"; + sha256 = "1ybxcvwi4655563fjjgy6xv5c78grjxzadmi3l1ghds48k1rh50p"; + postFixup = '' + for f in $out/lib/haxe/${withCommas libname}/${withCommas version}/{,project/libs/nekoapi/}bin/Linux{,64}/*; do + chmod +w "$f" + patchelf --set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) "$f" || true + patchelf --set-rpath ${ lib.makeLibraryPath [ stdenv.cc.cc ] } "$f" || true + done + ''; + meta.description = "Runtime support library for the Haxe C++ backend"; + }; + + hxjava = buildHaxeLib { + libname = "hxjava"; + version = "3.2.0"; + sha256 = "1vgd7qvsdxlscl3wmrrfi5ipldmr4xlsiwnj46jz7n6izff5261z"; + meta.description = "Support library for the Java backend of the Haxe compiler"; + propagatedBuildInputs = [ jdk ]; + }; + + hxcs = buildHaxeLib { + libname = "hxcs"; + version = "3.4.0"; + sha256 = "0f5vgp2kqnpsbbkn2wdxmjf7xkl0qhk9lgl9kb8d5wdy89nac6q6"; + meta.description = "Support library for the C# backend of the Haxe compiler"; + propagatedBuildInputs = [ mono ]; + }; + + hxnodejs_4 = buildHaxeLib { + libname = "hxnodejs"; + version = "4.0.9"; + sha256 = "0b7ck48nsxs88sy4fhhr0x1bc8h2ja732zzgdaqzxnh3nir0bajm"; + meta.description = "Extern definitions for node.js 4.x"; + }; + + hxnodejs_6 = let + libname = "hxnodejs"; + version = "6.9.0"; + in stdenv.mkDerivation { + name = "${libname}-${version}"; + src = fetchFromGitHub { + owner = "HaxeFoundation"; + repo = "hxnodejs"; + rev = "cf80c6a"; + sha256 = "0mdiacr5b2m8jrlgyd2d3vp1fha69lcfb67x4ix7l7zfi8g460gs"; + }; + installPhase = installLibHaxe { inherit libname version; }; + meta = { + homepage = "http://lib.haxe.org/p/${libname}"; + license = lib.licenses.bsd2; + platforms = lib.platforms.all; + description = "Extern definitions for node.js 6.9"; + }; + }; + }; +in self diff --git a/nixpkgs/pkgs/top-level/impure.nix b/nixpkgs/pkgs/top-level/impure.nix new file mode 100644 index 000000000000..7a711af556aa --- /dev/null +++ b/nixpkgs/pkgs/top-level/impure.nix @@ -0,0 +1,84 @@ +/* Impure default args for `pkgs/top-level/default.nix`. See that file + for the meaning of each argument. */ + + +let + + homeDir = builtins.getEnv "HOME"; + + # Return ‘x’ if it evaluates, or ‘def’ if it throws an exception. + try = x: def: let res = builtins.tryEval x; in if res.success then res.value else def; + +in + +{ # We put legacy `system` into `localSystem`, if `localSystem` was not passed. + # If neither is passed, assume we are building packages on the current + # (build, in GNU Autotools parlance) platform. + localSystem ? { system = args.system or builtins.currentSystem; } + +# These are needed only because nix's `--arg` command-line logic doesn't work +# with unnamed parameters allowed by ... +, system ? localSystem.system +, crossSystem ? localSystem + +, # Fallback: The contents of the configuration file found at $NIXPKGS_CONFIG or + # $HOME/.config/nixpkgs/config.nix. + config ? let + configFile = builtins.getEnv "NIXPKGS_CONFIG"; + configFile2 = homeDir + "/.config/nixpkgs/config.nix"; + configFile3 = homeDir + "/.nixpkgs/config.nix"; # obsolete + in + if configFile != "" && builtins.pathExists configFile then import configFile + else if homeDir != "" && builtins.pathExists configFile2 then import configFile2 + else if homeDir != "" && builtins.pathExists configFile3 then import configFile3 + else {} + +, # Overlays are used to extend Nixpkgs collection with additional + # collections of packages. These collection of packages are part of the + # fix-point made by Nixpkgs. + overlays ? let + isDir = path: builtins.pathExists (path + "/."); + pathOverlays = try (toString <nixpkgs-overlays>) ""; + homeOverlaysFile = homeDir + "/.config/nixpkgs/overlays.nix"; + homeOverlaysDir = homeDir + "/.config/nixpkgs/overlays"; + overlays = path: + # check if the path is a directory or a file + if isDir path then + # it's a directory, so the set of overlays from the directory, ordered lexicographically + let content = builtins.readDir path; in + map (n: import (path + ("/" + n))) + (builtins.filter (n: builtins.match ".*\\.nix" n != null || builtins.pathExists (path + ("/" + n + "/default.nix"))) + (builtins.attrNames content)) + else + # it's a file, so the result is the contents of the file itself + import path; + in (if builtins.pathExists ../../../overlays then overlays ../../../overlays else []) ++ ( + if pathOverlays != "" && builtins.pathExists pathOverlays then overlays pathOverlays + else if builtins.pathExists homeOverlaysFile && builtins.pathExists homeOverlaysDir then + throw '' + Nixpkgs overlays can be specified with ${homeOverlaysFile} or ${homeOverlaysDir}, but not both. + Please remove one of them and try again. + '' + else if builtins.pathExists homeOverlaysFile then + if isDir homeOverlaysFile then + throw (homeOverlaysFile + " should be a file") + else overlays homeOverlaysFile + else if builtins.pathExists homeOverlaysDir then + if !(isDir homeOverlaysDir) then + throw (homeOverlaysDir + " should be a directory") + else overlays homeOverlaysDir + else []) + +, crossOverlays ? [] + +, ... +} @ args: + +# If `localSystem` was explicitly passed, legacy `system` should +# not be passed, and vice-versa. +assert args ? localSystem -> !(args ? system); +assert args ? system -> !(args ? localSystem); + +import ./. (builtins.removeAttrs args [ "system" ] // { + inherit config overlays localSystem; +}) diff --git a/nixpkgs/pkgs/top-level/java-packages.nix b/nixpkgs/pkgs/top-level/java-packages.nix new file mode 100644 index 000000000000..c8d9e85fbd77 --- /dev/null +++ b/nixpkgs/pkgs/top-level/java-packages.nix @@ -0,0 +1,488 @@ +{ pkgs }: + +with pkgs; + +let + mavenbuild = callPackage ../development/java-modules/build-maven-package.nix { }; + fetchMaven = callPackage ../development/java-modules/m2install.nix { }; + + openjfx11 = callPackage ../development/compilers/openjdk/openjfx/11.nix { }; + openjfx15 = callPackage ../development/compilers/openjdk/openjfx/15.nix { }; + openjfx17 = callPackage ../development/compilers/openjdk/openjfx/17.nix { }; + +in { + inherit mavenbuild fetchMaven openjfx11 openjfx15 openjfx17; + + compiler = let + + gnomeArgs = { + inherit (gnome2) GConf gnome_vfs; + }; + + bootstrapArgs = gnomeArgs // { + openjfx = openjfx11; /* need this despite next line :-( */ + enableJavaFX = false; + headless = true; + }; + + mkAdoptopenjdk = path-linux: path-darwin: let + package-linux = import path-linux { inherit lib; }; + package-darwin = import path-darwin { inherit lib; }; + package = if stdenv.isLinux + then package-linux + else package-darwin; + in rec { + inherit package-linux package-darwin; + + jdk-hotspot = callPackage package.jdk-hotspot {}; + jre-hotspot = callPackage package.jre-hotspot {}; + jdk-openj9 = callPackage package.jdk-openj9 {}; + jre-openj9 = callPackage package.jre-openj9 {}; + }; + + mkBootstrap = adoptopenjdk: path: args: + /* adoptopenjdk not available for i686, so fall back to our old builds for bootstrapping */ + if adoptopenjdk.jdk-hotspot.meta.available + then adoptopenjdk.jdk-hotspot + else callPackage path args; + + mkOpenjdk = path-linux: path-darwin: args: + if stdenv.isLinux + then mkOpenjdkLinuxOnly path-linux args + else let + openjdk = callPackage path-darwin {}; + in openjdk // { headless = openjdk; }; + + mkOpenjdkLinuxOnly = path-linux: args: let + openjdk = callPackage path-linux (gnomeArgs // args); + in openjdk // { + headless = openjdk.override { headless = true; }; + }; + + openjdkDarwinMissing = version: + abort "OpenJDK ${builtins.toString version} is currently not supported on Darwin by nixpkgs."; + + in rec { + + adoptopenjdk-8 = mkAdoptopenjdk + ../development/compilers/adoptopenjdk-bin/jdk8-linux.nix + ../development/compilers/adoptopenjdk-bin/jdk8-darwin.nix; + + adoptopenjdk-11 = mkAdoptopenjdk + ../development/compilers/adoptopenjdk-bin/jdk11-linux.nix + ../development/compilers/adoptopenjdk-bin/jdk11-darwin.nix; + + adoptopenjdk-13 = mkAdoptopenjdk + ../development/compilers/adoptopenjdk-bin/jdk13-linux.nix + ../development/compilers/adoptopenjdk-bin/jdk13-darwin.nix; + + adoptopenjdk-14 = mkAdoptopenjdk + ../development/compilers/adoptopenjdk-bin/jdk14-linux.nix + ../development/compilers/adoptopenjdk-bin/jdk14-darwin.nix; + + adoptopenjdk-15 = mkAdoptopenjdk + ../development/compilers/adoptopenjdk-bin/jdk15-linux.nix + ../development/compilers/adoptopenjdk-bin/jdk15-darwin.nix; + + adoptopenjdk-16 = mkAdoptopenjdk + ../development/compilers/adoptopenjdk-bin/jdk16-linux.nix + ../development/compilers/adoptopenjdk-bin/jdk16-darwin.nix; + + openjdk8-bootstrap = mkBootstrap adoptopenjdk-8 + ../development/compilers/openjdk/bootstrap.nix + { version = "8"; }; + + openjdk11-bootstrap = mkBootstrap adoptopenjdk-11 + ../development/compilers/openjdk/bootstrap.nix + { version = "10"; }; + + openjdk13-bootstrap = mkBootstrap adoptopenjdk-13 + ../development/compilers/openjdk/12.nix + (bootstrapArgs // { + /* build segfaults with gcc9 or newer, so use gcc8 like Debian does */ + stdenv = gcc8Stdenv; + }); + + openjdk14-bootstrap = mkBootstrap adoptopenjdk-14 + ../development/compilers/openjdk/13.nix + (bootstrapArgs // { + inherit openjdk13-bootstrap; + }); + + openjdk15-bootstrap = mkBootstrap adoptopenjdk-15 + ../development/compilers/openjdk/14.nix + (bootstrapArgs // { + inherit openjdk14-bootstrap; + }); + + openjdk16-bootstrap = mkBootstrap adoptopenjdk-16 + ../development/compilers/openjdk/15.nix + (bootstrapArgs // { + inherit openjdk15-bootstrap; + }); + + openjdk17-bootstrap = mkBootstrap adoptopenjdk-16 + ../development/compilers/openjdk/16.nix + (bootstrapArgs // { + inherit openjdk16-bootstrap; + }); + + openjdk8 = mkOpenjdk + ../development/compilers/openjdk/8.nix + ../development/compilers/openjdk/darwin/8.nix + { }; + + openjdk11 = mkOpenjdk + ../development/compilers/openjdk/11.nix + ../development/compilers/openjdk/darwin/11.nix + { openjfx = openjfx11; }; + + openjdk12 = mkOpenjdkLinuxOnly ../development/compilers/openjdk/12.nix { + /* build segfaults with gcc9 or newer, so use gcc8 like Debian does */ + stdenv = gcc8Stdenv; + openjfx = openjfx11; + }; + + openjdk13 = mkOpenjdkLinuxOnly ../development/compilers/openjdk/13.nix { + inherit openjdk13-bootstrap; + openjfx = openjfx11; + }; + + openjdk14 = mkOpenjdkLinuxOnly ../development/compilers/openjdk/14.nix { + inherit openjdk14-bootstrap; + openjfx = openjfx11; + }; + + openjdk15 = mkOpenjdkLinuxOnly ../development/compilers/openjdk/15.nix { + inherit openjdk15-bootstrap; + openjfx = openjfx15; + }; + + openjdk16 = mkOpenjdk + ../development/compilers/openjdk/16.nix + ../development/compilers/openjdk/darwin/16.nix + { + inherit openjdk16-bootstrap; + openjfx = openjfx15; + }; + + openjdk17 = mkOpenjdk + ../development/compilers/openjdk/17.nix + ../development/compilers/openjdk/darwin/17.nix + { + inherit openjdk17-bootstrap; + openjfx = openjfx17; + }; + }; + + mavenPlugins = recurseIntoAttrs (callPackage ../development/java-modules/mavenPlugins.nix { }); + + inherit (callPackage ../development/java-modules/eclipse/aether-util.nix { inherit fetchMaven; }) + aetherUtil_0_9_0_M2; + + inherit (callPackage ../development/java-modules/apache/ant.nix { inherit fetchMaven; }) + ant_1_8_2; + + inherit (callPackage ../development/java-modules/apache/ant-launcher.nix { inherit fetchMaven; }) + antLauncher_1_8_2; + + inherit (callPackage ../development/java-modules/beanshell/bsh.nix { inherit fetchMaven; }) + bsh_2_0_b4; + + inherit (callPackage ../development/java-modules/classworlds/classworlds.nix { inherit fetchMaven; }) + classworlds_1_1_alpha2 + classworlds_1_1; + + inherit (callPackage ../development/java-modules/apache/commons-cli.nix { inherit fetchMaven; }) + commonsCli_1_0 + commonsCli_1_2; + + inherit (callPackage ../development/java-modules/apache/commons-io.nix { inherit fetchMaven; }) + commonsIo_2_1; + + inherit (callPackage ../development/java-modules/apache/commons-lang.nix { inherit fetchMaven; }) + commonsLang_2_1 + commonsLang_2_3 + commonsLang_2_6; + + inherit (callPackage ../development/java-modules/apache/commons-lang3.nix { inherit fetchMaven; }) + commonsLang3_3_1; + + inherit (callPackage ../development/java-modules/apache/commons-logging-api.nix { inherit fetchMaven; }) + commonsLoggingApi_1_1; + + inherit (callPackage ../development/java-modules/findbugs/jsr305.nix { inherit fetchMaven; }) + findbugsJsr305_2_0_1; + + inherit (callPackage ../development/java-modules/google/collections.nix { inherit fetchMaven; }) + googleCollections_1_0; + + inherit (callPackage ../development/java-modules/hamcrest/all.nix { inherit fetchMaven; }) + hamcrestAll_1_3; + + inherit (callPackage ../development/java-modules/hamcrest/core.nix { inherit fetchMaven; }) + hamcrestCore_1_3; + + inherit (callPackage ../development/java-modules/junit { inherit mavenbuild fetchMaven; }) + junit_3_8_1 + junit_3_8_2 + junit_4_12; + + inherit (callPackage ../development/java-modules/jogl { }) + jogl_2_3_2; + + inherit (callPackage ../development/java-modules/log4j { inherit fetchMaven; }) + log4j_1_2_12; + + inherit (callPackage ../development/java-modules/maven/archiver.nix { inherit fetchMaven; }) + mavenArchiver_2_5; + + inherit (callPackage ../development/java-modules/maven/artifact.nix { inherit fetchMaven; }) + mavenArtifact_2_0_1 + mavenArtifact_2_0_6 + mavenArtifact_2_0_8 + mavenArtifact_2_0_9 + mavenArtifact_2_2_1 + mavenArtifact_3_0_3; + + inherit (callPackage ../development/java-modules/maven/artifact-manager.nix { inherit fetchMaven; }) + mavenArtifactManager_2_0_1 + mavenArtifactManager_2_0_6 + mavenArtifactManager_2_0_9 + mavenArtifactManager_2_2_1; + + inherit (callPackage ../development/java-modules/maven/common-artifact-filters.nix { inherit fetchMaven; }) + mavenCommonArtifactFilters_1_2 + mavenCommonArtifactFilters_1_3 + mavenCommonArtifactFilters_1_4; + + inherit (callPackage ../development/java-modules/maven/compiler-plugin.nix { inherit fetchMaven; }) + mavenCompiler_3_2; + + inherit (callPackage ../development/java-modules/maven/core.nix { inherit fetchMaven; }) + mavenCore_2_0_1 + mavenCore_2_0_6 + mavenCore_2_0_9 + mavenCore_2_2_1; + + inherit (callPackage ../development/java-modules/maven/dependency-tree.nix { inherit fetchMaven; }) + mavenDependencyTree_2_1; + + inherit (callPackage ../development/java-modules/maven/doxia-sink-api.nix { inherit fetchMaven; }) + mavenDoxiaSinkApi_1_0_alpha6 + mavenDoxiaSinkApi_1_0_alpha7 + mavenDoxiaSinkApi_1_0_alpha10; + + inherit (callPackage ../development/java-modules/maven/enforcer.nix { inherit fetchMaven; }) + mavenEnforcerApi_1_3_1 + mavenEnforcerRules_1_3_1; + + inherit (callPackage ../development/java-modules/maven/error-diagnostics.nix { inherit fetchMaven; }) + mavenErrorDiagnostics_2_0_1 + mavenErrorDiagnostics_2_0_6 + mavenErrorDiagnostics_2_0_9 + mavenErrorDiagnostics_2_2_1; + + inherit (callPackage ../development/java-modules/maven/filtering.nix { inherit fetchMaven; }) + mavenFiltering_1_1; + + inherit (callPackage ../development/java-modules/maven-hello { inherit mavenbuild; }) + mavenHello_1_0 + mavenHello_1_1; + + inherit (callPackage ../development/java-modules/maven/model.nix { inherit fetchMaven; }) + mavenModel_2_0_1 + mavenModel_2_0_6 + mavenModel_2_0_9 + mavenModel_2_2_1 + mavenModel_3_0_3; + + inherit (callPackage ../development/java-modules/maven/monitor.nix { inherit fetchMaven; }) + mavenMonitor_2_0_1 + mavenMonitor_2_0_6 + mavenMonitor_2_0_9 + mavenMonitor_2_2_1; + + inherit (callPackage ../development/java-modules/maven/plugin-annotations.nix { inherit fetchMaven; }) + mavenPluginAnnotations_3_1 + mavenPluginAnnotations_3_2; + + inherit (callPackage ../development/java-modules/maven/plugin-api.nix { inherit fetchMaven; }) + mavenPluginApi_2_0_1 + mavenPluginApi_2_0_6 + mavenPluginApi_2_0_9 + mavenPluginApi_2_2_1 + mavenPluginApi_3_0_3; + + inherit (callPackage ../development/java-modules/maven/plugin-descriptor.nix { inherit fetchMaven; }) + mavenPluginDescriptor_2_0_1 + mavenPluginDescriptor_2_0_6 + mavenPluginDescriptor_2_0_9 + mavenPluginDescriptor_2_2_1; + + inherit (callPackage ../development/java-modules/maven/plugin-parameter-documenter.nix { inherit fetchMaven; }) + mavenPluginParameterDocumenter_2_0_1 + mavenPluginParameterDocumenter_2_0_6 + mavenPluginParameterDocumenter_2_0_9 + mavenPluginParameterDocumenter_2_2_1; + + inherit (callPackage ../development/java-modules/maven/plugin-registry.nix { inherit fetchMaven; }) + mavenPluginRegistry_2_0_1 + mavenPluginRegistry_2_0_6 + mavenPluginRegistry_2_0_9 + mavenPluginRegistry_2_2_1; + + inherit (callPackage ../development/java-modules/maven/plugin-testing-harness.nix { inherit fetchMaven; }) + mavenPluginTestingHarness_1_1; + + inherit (callPackage ../development/java-modules/maven/profile.nix { inherit fetchMaven; }) + mavenProfile_2_0_1 + mavenProfile_2_0_6 + mavenProfile_2_0_9 + mavenProfile_2_2_1; + + inherit (callPackage ../development/java-modules/maven/project.nix { inherit fetchMaven; }) + mavenProject_2_0_1 + mavenProject_2_0_6 + mavenProject_2_0_8 + mavenProject_2_0_9 + mavenProject_2_2_1; + + inherit (callPackage ../development/java-modules/maven/reporting-api.nix { inherit fetchMaven; }) + mavenReportingApi_2_0_1 + mavenReportingApi_2_0_6 + mavenReportingApi_2_0_9 + mavenReportingApi_2_2_1; + + inherit (callPackage ../development/java-modules/maven/repository-metadata.nix { inherit fetchMaven; }) + mavenRepositoryMetadata_2_0_1 + mavenRepositoryMetadata_2_0_6 + mavenRepositoryMetadata_2_0_9 + mavenRepositoryMetadata_2_2_1; + + inherit (callPackage ../development/java-modules/maven/settings.nix { inherit fetchMaven; }) + mavenSettings_2_0_1 + mavenSettings_2_0_6 + mavenSettings_2_0_9 + mavenSettings_2_2_1; + + inherit (callPackage ../development/java-modules/maven/shared-incremental.nix { inherit fetchMaven; }) + mavenSharedIncremental_1_1; + + inherit (callPackage ../development/java-modules/maven/shared-utils.nix { inherit fetchMaven; }) + mavenSharedUtils_0_1; + + inherit (callPackage ../development/java-modules/maven/surefire-api.nix { inherit fetchMaven; }) + mavenSurefireApi_2_12_4 + mavenSurefireApi_2_17; + + inherit (callPackage ../development/java-modules/maven/surefire-booter.nix { inherit fetchMaven; }) + mavenSurefireBooter_2_12_4 + mavenSurefireBooter_2_17; + + inherit (callPackage ../development/java-modules/maven/surefire-common.nix { inherit fetchMaven; }) + mavenSurefireCommon_2_12_4 + mavenSurefireCommon_2_17; + + inherit (callPackage ../development/java-modules/maven/surefire-junit4.nix { inherit fetchMaven; }) + mavenSurefireJunit4_2_12_4; + + inherit (callPackage ../development/java-modules/maven/toolchain.nix { inherit fetchMaven; }) + mavenToolchain_1_0 + mavenToolchain_2_0_9 + mavenToolchain_2_2_1; + + inherit (callPackage ../development/java-modules/mojo/animal-sniffer.nix { inherit fetchMaven; }) + mojoAnimalSniffer_1_11; + + inherit (callPackage ../development/java-modules/mojo/java-boot-classpath-detector.nix { inherit fetchMaven; }) + mojoJavaBootClasspathDetector_1_11; + + inherit (callPackage ../development/java-modules/ow2/asm-all.nix { inherit fetchMaven; }) + ow2AsmAll_4_0; + + inherit (callPackage ../development/java-modules/plexus/archiver.nix { inherit fetchMaven; }) + plexusArchiver_1_0_alpha7 + plexusArchiver_2_1; + + inherit (callPackage ../development/java-modules/plexus/build-api.nix { inherit fetchMaven; }) + plexusBuildApi_0_0_4; + + inherit (callPackage ../development/java-modules/plexus/classworlds.nix { inherit fetchMaven; }) + plexusClassworlds_2_2_2 + plexusClassworlds_2_4; + + inherit (callPackage ../development/java-modules/plexus/compiler-api.nix { inherit fetchMaven; }) + plexusCompilerApi_2_2 + plexusCompilerApi_2_4; + + inherit (callPackage ../development/java-modules/plexus/compiler-javac.nix { inherit fetchMaven; }) + plexusCompilerJavac_2_2 + plexusCompilerJavac_2_4; + + inherit (callPackage ../development/java-modules/plexus/compiler-manager.nix { inherit fetchMaven; }) + plexusCompilerManager_2_2 + plexusCompilerManager_2_4; + + inherit (callPackage ../development/java-modules/plexus/component-annotations.nix { inherit fetchMaven; }) + plexusComponentAnnotations_1_5_5; + + inherit (callPackage ../development/java-modules/plexus/container-default.nix { inherit fetchMaven; }) + plexusContainerDefault_1_0_alpha9 + plexusContainerDefault_1_0_alpha9_stable1 + plexusContainerDefault_1_5_5; + + inherit (callPackage ../development/java-modules/plexus/digest.nix { inherit fetchMaven; }) + plexusDigest_1_0; + + inherit (callPackage ../development/java-modules/plexus/i18n.nix { inherit fetchMaven; }) + plexusI18n_1_0_beta6; + + inherit (callPackage ../development/java-modules/plexus/interactivity-api.nix { inherit fetchMaven; }) + plexusInteractivityApi_1_0_alpha4; + + inherit (callPackage ../development/java-modules/plexus/interpolation.nix { inherit fetchMaven; }) + plexusInterpolation_1_11 + plexusInterpolation_1_12 + plexusInterpolation_1_13 + plexusInterpolation_1_15; + + inherit (callPackage ../development/java-modules/plexus/io.nix { inherit fetchMaven; }) + plexusIo_2_0_2; + + inherit (callPackage ../development/java-modules/plexus/utils.nix { inherit fetchMaven; }) + plexusUtils_1_0_4 + plexusUtils_1_0_5 + plexusUtils_1_1 + plexusUtils_1_4_1 + plexusUtils_1_4_5 + plexusUtils_1_4_9 + plexusUtils_1_5_1 + plexusUtils_1_5_5 + plexusUtils_1_5_6 + plexusUtils_1_5_8 + plexusUtils_1_5_15 + plexusUtils_2_0_5 + plexusUtils_2_0_6 + plexusUtils_3_0 + plexusUtils_3_0_5 + plexusUtils_3_0_8; + + inherit (callPackage ../development/java-modules/sisu/guice.nix { inherit fetchMaven; }) + sisuGuice_2_9_4; + + inherit (callPackage ../development/java-modules/sisu/inject-bean.nix { inherit fetchMaven; }) + sisuInjectBean_2_1_1; + + inherit (callPackage ../development/java-modules/sisu/inject-plexus.nix { inherit fetchMaven; }) + sisuInjectPlexus_2_1_1; + + inherit (callPackage ../development/java-modules/apache/xbean-reflect.nix { inherit fetchMaven; }) + xbeanReflect_3_4; + + inherit (callPackage ../development/java-modules/xerces/impl.nix { inherit fetchMaven; }) + xercesImpl_2_8_0; + + inherit (callPackage ../development/java-modules/xml-apis { inherit fetchMaven; }) + xmlApis_1_3_03; +} diff --git a/nixpkgs/pkgs/top-level/kodi-packages.nix b/nixpkgs/pkgs/top-level/kodi-packages.nix new file mode 100644 index 000000000000..6771ffe65b1d --- /dev/null +++ b/nixpkgs/pkgs/top-level/kodi-packages.nix @@ -0,0 +1,160 @@ +{ config, lib, newScope, kodi, libretro }: + +with lib; + +let + inherit (libretro) genesis-plus-gx mgba snes9x; +in + +let self = rec { + + addonDir = "/share/kodi/addons"; + rel = "Matrix"; + + callPackage = newScope self; + + inherit kodi; + + # Convert derivation to a kodi module. Stolen from ../../../top-level/python-packages.nix + toKodiAddon = drv: drv.overrideAttrs (oldAttrs: { + # Use passthru in order to prevent rebuilds when possible. + passthru = (oldAttrs.passthru or {}) // { + kodiAddonFor = kodi; + requiredKodiAddons = requiredKodiAddons drv.propagatedBuildInputs; + }; + }); + + # Check whether a derivation provides a Kodi addon. + hasKodiAddon = drv: drv ? kodiAddonFor && drv.kodiAddonFor == kodi; + + # Get list of required Kodi addons given a list of derivations. + requiredKodiAddons = drvs: + let + modules = filter hasKodiAddon drvs; + in + unique (modules ++ concatLists (catAttrs "requiredKodiAddons" modules)); + + # package update scripts + + addonUpdateScript = callPackage ../applications/video/kodi/addons/addon-update-script { }; + + # package builders + + buildKodiAddon = callPackage ../applications/video/kodi/build-kodi-addon.nix { }; + + buildKodiBinaryAddon = callPackage ../applications/video/kodi/build-kodi-binary-addon.nix { }; + + # regular packages + + kodi-platform = callPackage ../applications/video/kodi/addons/kodi-platform { }; + + # addon packages + + a4ksubtitles = callPackage ../applications/video/kodi/addons/a4ksubtitles { }; + + arteplussept = callPackage ../applications/video/kodi/addons/arteplussept { }; + + controller-topology-project = callPackage ../applications/video/kodi/addons/controller-topology-project { }; + + iagl = callPackage ../applications/video/kodi/addons/iagl { }; + + libretro = callPackage ../applications/video/kodi/addons/libretro { }; + + libretro-genplus = callPackage ../applications/video/kodi/addons/libretro-genplus { inherit genesis-plus-gx; }; + + libretro-mgba = callPackage ../applications/video/kodi/addons/libretro-mgba { inherit mgba; }; + + libretro-snes9x = callPackage ../applications/video/kodi/addons/libretro-snes9x { inherit snes9x; }; + + jellyfin = callPackage ../applications/video/kodi/addons/jellyfin { }; + + joystick = callPackage ../applications/video/kodi/addons/joystick { }; + + keymap = callPackage ../applications/video/kodi/addons/keymap { }; + + netflix = callPackage ../applications/video/kodi/addons/netflix { }; + + orftvthek = callPackage ../applications/video/kodi/addons/orftvthek { }; + + svtplay = callPackage ../applications/video/kodi/addons/svtplay { }; + + steam-controller = callPackage ../applications/video/kodi/addons/steam-controller { }; + + steam-launcher = callPackage ../applications/video/kodi/addons/steam-launcher { }; + + steam-library = callPackage ../applications/video/kodi/addons/steam-library { }; + + pdfreader = callPackage ../applications/video/kodi/addons/pdfreader { }; + + pvr-hts = callPackage ../applications/video/kodi/addons/pvr-hts { }; + + pvr-hdhomerun = callPackage ../applications/video/kodi/addons/pvr-hdhomerun { }; + + pvr-iptvsimple = callPackage ../applications/video/kodi/addons/pvr-iptvsimple { }; + + osmc-skin = callPackage ../applications/video/kodi/addons/osmc-skin { }; + + vfs-sftp = callPackage ../applications/video/kodi/addons/vfs-sftp { }; + + vfs-libarchive = callPackage ../applications/video/kodi/addons/vfs-libarchive { }; + + youtube = callPackage ../applications/video/kodi/addons/youtube { }; + + # addon packages (dependencies) + + archive_tool = callPackage ../applications/video/kodi/addons/archive_tool { }; + + certifi = callPackage ../applications/video/kodi/addons/certifi { }; + + chardet = callPackage ../applications/video/kodi/addons/chardet { }; + + dateutil = callPackage ../applications/video/kodi/addons/dateutil { }; + + defusedxml = callPackage ../applications/video/kodi/addons/defusedxml { }; + + future = callPackage ../applications/video/kodi/addons/future { }; + + idna = callPackage ../applications/video/kodi/addons/idna { }; + + inputstream-adaptive = callPackage ../applications/video/kodi/addons/inputstream-adaptive { }; + + inputstream-ffmpegdirect = callPackage ../applications/video/kodi/addons/inputstream-ffmpegdirect { }; + + inputstream-rtmp = callPackage ../applications/video/kodi/addons/inputstream-rtmp { }; + + inputstreamhelper = callPackage ../applications/video/kodi/addons/inputstreamhelper { }; + + kodi-six = callPackage ../applications/video/kodi/addons/kodi-six { }; + + myconnpy = callPackage ../applications/video/kodi/addons/myconnpy { }; + + requests = callPackage ../applications/video/kodi/addons/requests { }; + + requests-cache = callPackage ../applications/video/kodi/addons/requests-cache { }; + + routing = callPackage ../applications/video/kodi/addons/routing { }; + + signals = callPackage ../applications/video/kodi/addons/signals { }; + + simplejson = callPackage ../applications/video/kodi/addons/simplejson { }; + + six = callPackage ../applications/video/kodi/addons/six { }; + + urllib3 = callPackage ../applications/video/kodi/addons/urllib3 { }; + + websocket = callPackage ../applications/video/kodi/addons/websocket { }; + + xbmcswift2 = callPackage ../applications/video/kodi/addons/xbmcswift2 { }; + + typing_extensions = callPackage ../applications/video/kodi/addons/typing_extensions { }; + + arrow = callPackage ../applications/video/kodi/addons/arrow { }; + + trakt-module = callPackage ../applications/video/kodi/addons/trakt-module { }; + + trakt = callPackage ../applications/video/kodi/addons/trakt { }; +}; in self // lib.optionalAttrs (config.allowAliases or true) { + # deprecated or renamed packages + + controllers = throw "kodi.packages.controllers has been replaced with kodi.packages.controller-topology-project - a package which contains a large number of controller profiles." { }; +} diff --git a/nixpkgs/pkgs/top-level/linux-kernels.nix b/nixpkgs/pkgs/top-level/linux-kernels.nix new file mode 100644 index 000000000000..dedb8f015fc4 --- /dev/null +++ b/nixpkgs/pkgs/top-level/linux-kernels.nix @@ -0,0 +1,573 @@ +{ pkgs +, linuxKernel +, config +, buildPackages +, callPackage +, makeOverridable +, recurseIntoAttrs +, dontRecurseIntoAttrs +, stdenv +, stdenvNoCC +, newScope +, lib +, fetchurl +}: + +# When adding a kernel: + # - Update packageAliases.linux_latest to the latest version + # - Update the rev in ../os-specific/linux/kernel/linux-libre.nix to the latest one. + # - Update linux_latest_hardened when the patches become available + +with linuxKernel; + +let + deblobKernel = kernel: callPackage ../os-specific/linux/kernel/linux-libre.nix { + linux = kernel; + }; + + # Hardened Linux + hardenedKernelFor = kernel': overrides: + let + kernel = kernel'.override overrides; + version = kernelPatches.hardened.${kernel.meta.branch}.version; + major = lib.versions.major version; + sha256 = kernelPatches.hardened.${kernel.meta.branch}.sha256; + modDirVersion' = builtins.replaceStrings [ kernel.version ] [ version ] kernel.modDirVersion; + in kernel.override { + structuredExtraConfig = import ../os-specific/linux/kernel/hardened/config.nix { + inherit lib version; + }; + argsOverride = { + inherit version; + src = fetchurl { + url = "mirror://kernel/linux/kernel/v${major}.x/linux-${version}.tar.xz"; + inherit sha256; + }; + }; + kernelPatches = kernel.kernelPatches ++ [ + kernelPatches.hardened.${kernel.meta.branch} + ]; + modDirVersionArg = modDirVersion' + (kernelPatches.hardened.${kernel.meta.branch}).extra; + isHardened = true; + }; +in { + kernelPatches = callPackage ../os-specific/linux/kernel/patches.nix { }; + + kernels = recurseIntoAttrs (lib.makeExtensible (self: with self; + let callPackage = newScope self; in { + + linux_mptcp_95 = callPackage ../os-specific/linux/kernel/linux-mptcp-95.nix { + kernelPatches = linux_4_19.kernelPatches; + }; + + linux_rpi1 = callPackage ../os-specific/linux/kernel/linux-rpi.nix { + kernelPatches = with kernelPatches; [ + bridge_stp_helper + request_key_helper + ]; + rpiVersion = 1; + }; + + linux_rpi2 = callPackage ../os-specific/linux/kernel/linux-rpi.nix { + kernelPatches = with kernelPatches; [ + bridge_stp_helper + request_key_helper + ]; + rpiVersion = 2; + }; + + linux_rpi3 = callPackage ../os-specific/linux/kernel/linux-rpi.nix { + kernelPatches = with kernelPatches; [ + bridge_stp_helper + request_key_helper + ]; + rpiVersion = 3; + }; + + linux_rpi4 = callPackage ../os-specific/linux/kernel/linux-rpi.nix { + kernelPatches = with kernelPatches; [ + bridge_stp_helper + request_key_helper + ]; + rpiVersion = 4; + }; + + linux_4_4 = throw "linux 4.4 was removed because it reached its end of life upstream"; + + linux_4_9 = callPackage ../os-specific/linux/kernel/linux-4.9.nix { + kernelPatches = + [ kernelPatches.bridge_stp_helper + kernelPatches.request_key_helper_updated + kernelPatches.cpu-cgroup-v2."4.9" + kernelPatches.modinst_arg_list_too_long + ]; + }; + + linux_4_14 = callPackage ../os-specific/linux/kernel/linux-4.14.nix { + kernelPatches = + [ kernelPatches.bridge_stp_helper + kernelPatches.request_key_helper + # See pkgs/os-specific/linux/kernel/cpu-cgroup-v2-patches/README.md + # when adding a new linux version + kernelPatches.cpu-cgroup-v2."4.11" + kernelPatches.modinst_arg_list_too_long + ]; + }; + + linux_4_19 = callPackage ../os-specific/linux/kernel/linux-4.19.nix { + kernelPatches = + [ kernelPatches.bridge_stp_helper + kernelPatches.request_key_helper + kernelPatches.modinst_arg_list_too_long + ]; + }; + + linux_5_4 = callPackage ../os-specific/linux/kernel/linux-5.4.nix { + kernelPatches = [ + kernelPatches.bridge_stp_helper + kernelPatches.request_key_helper + kernelPatches.rtl8761b_support + ]; + }; + + linux_rt_5_4 = callPackage ../os-specific/linux/kernel/linux-rt-5.4.nix { + kernelPatches = [ + kernelPatches.bridge_stp_helper + kernelPatches.request_key_helper + ]; + }; + + linux_5_10 = callPackage ../os-specific/linux/kernel/linux-5.10.nix { + kernelPatches = [ + kernelPatches.bridge_stp_helper + kernelPatches.request_key_helper + ]; + }; + + linux_rt_5_10 = callPackage ../os-specific/linux/kernel/linux-rt-5.10.nix { + kernelPatches = [ + kernelPatches.bridge_stp_helper + kernelPatches.request_key_helper + kernelPatches.export-rt-sched-migrate + ]; + }; + + linux_5_15 = callPackage ../os-specific/linux/kernel/linux-5.15.nix { + kernelPatches = [ + kernelPatches.bridge_stp_helper + kernelPatches.request_key_helper + ]; + }; + + linux_5_16 = callPackage ../os-specific/linux/kernel/linux-5.16.nix { + kernelPatches = [ + kernelPatches.bridge_stp_helper + kernelPatches.request_key_helper + ]; + }; + + linux_testing = let + testing = callPackage ../os-specific/linux/kernel/linux-testing.nix { + kernelPatches = [ + kernelPatches.bridge_stp_helper + kernelPatches.request_key_helper + ]; + }; + latest = packageAliases.linux_latest.kernel; + in if latest.kernelAtLeast testing.baseVersion + then latest + else testing; + + linux_testing_bcachefs = callPackage ../os-specific/linux/kernel/linux-testing-bcachefs.nix rec { + kernel = linux_5_15; + kernelPatches = kernel.kernelPatches; + }; + + linux_hardkernel_4_14 = callPackage ../os-specific/linux/kernel/linux-hardkernel-4.14.nix { + kernelPatches = [ + kernelPatches.bridge_stp_helper + kernelPatches.request_key_helper + kernelPatches.modinst_arg_list_too_long + ]; + }; + + linux_zen = callPackage ../os-specific/linux/kernel/linux-zen.nix { + kernelPatches = [ + kernelPatches.bridge_stp_helper + kernelPatches.request_key_helper + ]; + }; + + linux_lqx = callPackage ../os-specific/linux/kernel/linux-lqx.nix { + kernelPatches = [ + kernelPatches.bridge_stp_helper + kernelPatches.request_key_helper + ]; + }; + + linux_xanmod = callPackage ../os-specific/linux/kernel/linux-xanmod.nix { + kernelPatches = [ + kernelPatches.bridge_stp_helper + kernelPatches.request_key_helper + ]; + }; + + linux_libre = deblobKernel packageAliases.linux_default.kernel; + + linux_latest_libre = deblobKernel packageAliases.linux_latest.kernel; + + linux_hardened = hardenedKernelFor packageAliases.linux_default.kernel { }; + + linux_4_14_hardened = hardenedKernelFor kernels.linux_4_14 { }; + linux_4_19_hardened = hardenedKernelFor kernels.linux_4_19 { }; + linux_5_4_hardened = hardenedKernelFor kernels.linux_5_4 { }; + linux_5_10_hardened = hardenedKernelFor kernels.linux_5_10 { }; + linux_5_15_hardened = hardenedKernelFor kernels.linux_5_15 { }; + + })); + /* Linux kernel modules are inherently tied to a specific kernel. So + rather than provide specific instances of those packages for a + specific kernel, we have a function that builds those packages + for a specific kernel. This function can then be called for + whatever kernel you're using. */ + + packagesFor = kernel_: lib.makeExtensible (self: with self; + let callPackage = newScope self; in { + inherit callPackage; + kernel = kernel_; + inherit (kernel) stdenv; # in particular, use the same compiler by default + + # to help determine module compatibility + inherit (kernel) isZen isHardened isLibre; + inherit (kernel) kernelOlder kernelAtLeast; + # Obsolete aliases (these packages do not depend on the kernel). + inherit (pkgs) odp-dpdk pktgen; # added 2018-05 + inherit (pkgs) bcc bpftrace; # added 2021-12 + + acpi_call = callPackage ../os-specific/linux/acpi-call {}; + + akvcam = callPackage ../os-specific/linux/akvcam { }; + + amdgpu-pro = callPackage ../os-specific/linux/amdgpu-pro { + libffi = pkgs.libffi.overrideAttrs (orig: rec { + version = "3.3"; + src = fetchurl { + url = "https://github.com/libffi/libffi/releases/download/v${version}/${orig.pname}-${version}.tar.gz"; + sha256 = "0mi0cpf8aa40ljjmzxb7im6dbj45bb0kllcd09xgmp834y9agyvj"; + }; + }); + }; + + anbox = callPackage ../os-specific/linux/anbox/kmod.nix { }; + + apfs = callPackage ../os-specific/linux/apfs { }; + + batman_adv = callPackage ../os-specific/linux/batman-adv {}; + + bbswitch = callPackage ../os-specific/linux/bbswitch {}; + + chipsec = callPackage ../tools/security/chipsec { + inherit kernel; + withDriver = true; + }; + + cryptodev = callPackage ../os-specific/linux/cryptodev { }; + + cpupower = callPackage ../os-specific/linux/cpupower { }; + + ddcci-driver = callPackage ../os-specific/linux/ddcci { }; + + dddvb = callPackage ../os-specific/linux/dddvb { }; + + digimend = callPackage ../os-specific/linux/digimend { }; + + dpdk-kmods = callPackage ../os-specific/linux/dpdk-kmods { }; + + dpdk = pkgs.dpdk.override { inherit kernel; }; + + exfat-nofuse = callPackage ../os-specific/linux/exfat { }; + + evdi = callPackage ../os-specific/linux/evdi { }; + + fwts-efi-runtime = callPackage ../os-specific/linux/fwts/module.nix { }; + + gcadapter-oc-kmod = callPackage ../os-specific/linux/gcadapter-oc-kmod { }; + hid-nintendo = callPackage ../os-specific/linux/hid-nintendo { }; + + hyperv-daemons = callPackage ../os-specific/linux/hyperv-daemons { }; + + e1000e = if lib.versionOlder kernel.version "4.10" then callPackage ../os-specific/linux/e1000e {} else null; + + intel-speed-select = if lib.versionAtLeast kernel.version "5.3" then callPackage ../os-specific/linux/intel-speed-select { } else null; + + ixgbevf = callPackage ../os-specific/linux/ixgbevf {}; + + it87 = callPackage ../os-specific/linux/it87 {}; + + asus-ec-sensors = callPackage ../os-specific/linux/asus-ec-sensors {}; + + asus-wmi-sensors = callPackage ../os-specific/linux/asus-wmi-sensors {}; + + ena = callPackage ../os-specific/linux/ena {}; + + liquidtux = callPackage ../os-specific/linux/liquidtux {}; + + v4l2loopback = callPackage ../os-specific/linux/v4l2loopback { }; + + lttng-modules = callPackage ../os-specific/linux/lttng-modules { }; + + broadcom_sta = callPackage ../os-specific/linux/broadcom-sta { }; + + tbs = callPackage ../os-specific/linux/tbs { }; + + mbp2018-bridge-drv = callPackage ../os-specific/linux/mbp-modules/mbp2018-bridge-drv { }; + + nvidiabl = callPackage ../os-specific/linux/nvidiabl { }; + + nvidiaPackages = dontRecurseIntoAttrs (lib.makeExtensible (_: callPackage ../os-specific/linux/nvidia-x11 { })); + + nvidia_x11_legacy340 = nvidiaPackages.legacy_340; + nvidia_x11_legacy390 = nvidiaPackages.legacy_390; + nvidia_x11_legacy470 = nvidiaPackages.legacy_470; + nvidia_x11_beta = nvidiaPackages.beta; + nvidia_x11_vulkan_beta = nvidiaPackages.vulkan_beta; + nvidia_x11 = nvidiaPackages.stable; + + openrazer = callPackage ../os-specific/linux/openrazer/driver.nix { }; + + ply = callPackage ../os-specific/linux/ply { }; + + r8125 = callPackage ../os-specific/linux/r8125 { }; + + r8168 = callPackage ../os-specific/linux/r8168 { }; + + rtl8188eus-aircrack = callPackage ../os-specific/linux/rtl8188eus-aircrack { }; + + rtl8192eu = callPackage ../os-specific/linux/rtl8192eu { }; + + rtl8189es = callPackage ../os-specific/linux/rtl8189es { }; + + rtl8723bs = callPackage ../os-specific/linux/rtl8723bs { }; + + rtl8812au = callPackage ../os-specific/linux/rtl8812au { }; + + rtl8814au = callPackage ../os-specific/linux/rtl8814au { }; + + rtl88xxau-aircrack = callPackage ../os-specific/linux/rtl88xxau-aircrack {}; + + rtl8821au = callPackage ../os-specific/linux/rtl8821au { }; + + rtl8821ce = callPackage ../os-specific/linux/rtl8821ce { }; + + rtl88x2bu = callPackage ../os-specific/linux/rtl88x2bu { }; + + rtl8821cu = callPackage ../os-specific/linux/rtl8821cu { }; + + rtw88 = callPackage ../os-specific/linux/rtw88 { }; + rtlwifi_new = rtw88; + + rtw89 = if lib.versionOlder kernel.version "5.16" then callPackage ../os-specific/linux/rtw89 { } else null; + + openafs_1_8 = callPackage ../servers/openafs/1.8/module.nix { }; + openafs_1_9 = callPackage ../servers/openafs/1.9/module.nix { }; + # Current stable release; don't backport release updates! + openafs = openafs_1_8; + + facetimehd = callPackage ../os-specific/linux/facetimehd { }; + + tuxedo-keyboard = if lib.versionAtLeast kernel.version "4.14" then callPackage ../os-specific/linux/tuxedo-keyboard { } else null; + + jool = callPackage ../os-specific/linux/jool { }; + + kvmfr = callPackage ../os-specific/linux/kvmfr { }; + + mba6x_bl = callPackage ../os-specific/linux/mba6x_bl { }; + + mwprocapture = callPackage ../os-specific/linux/mwprocapture { }; + + mxu11x0 = callPackage ../os-specific/linux/mxu11x0 { }; + + # compiles but has to be integrated into the kernel somehow + # Let's have it uncommented and finish it.. + ndiswrapper = callPackage ../os-specific/linux/ndiswrapper { }; + + netatop = callPackage ../os-specific/linux/netatop { }; + + oci-seccomp-bpf-hook = if lib.versionAtLeast kernel.version "5.4" then callPackage ../os-specific/linux/oci-seccomp-bpf-hook { } else null; + + perf = if lib.versionAtLeast kernel.version "3.12" then callPackage ../os-specific/linux/kernel/perf.nix { } else null; + + phc-intel = if lib.versionAtLeast kernel.version "4.10" then callPackage ../os-specific/linux/phc-intel { } else null; + + # Disable for kernels 4.15 and above due to compatibility issues + prl-tools = if lib.versionOlder kernel.version "4.15" then callPackage ../os-specific/linux/prl-tools { } else null; + + sch_cake = callPackage ../os-specific/linux/sch_cake { }; + + isgx = callPackage ../os-specific/linux/isgx { }; + + rr-zen_workaround = callPackage ../development/tools/analysis/rr/zen_workaround.nix { }; + + sysdig = callPackage ../os-specific/linux/sysdig {}; + + systemtap = callPackage ../development/tools/profiling/systemtap { }; + + system76 = callPackage ../os-specific/linux/system76 { }; + + system76-acpi = callPackage ../os-specific/linux/system76-acpi { }; + + system76-power = callPackage ../os-specific/linux/system76-power { }; + + system76-io = callPackage ../os-specific/linux/system76-io { }; + + tmon = callPackage ../os-specific/linux/tmon { }; + + tp_smapi = callPackage ../os-specific/linux/tp_smapi { }; + + turbostat = callPackage ../os-specific/linux/turbostat { }; + + usbip = callPackage ../os-specific/linux/usbip { }; + + v86d = callPackage ../os-specific/linux/v86d { }; + + veikk-linux-driver = callPackage ../os-specific/linux/veikk-linux-driver { }; + vendor-reset = callPackage ../os-specific/linux/vendor-reset { }; + + vhba = callPackage ../applications/emulators/cdemu/vhba.nix { }; + + virtio_vmmci = callPackage ../os-specific/linux/virtio_vmmci { }; + + virtualbox = callPackage ../os-specific/linux/virtualbox { + virtualbox = pkgs.virtualboxHardened; + }; + + virtualboxGuestAdditions = callPackage ../applications/virtualization/virtualbox/guest-additions { + virtualbox = pkgs.virtualboxHardened; + }; + + vm-tools = callPackage ../os-specific/linux/vm-tools { }; + + vmm_clock = callPackage ../os-specific/linux/vmm_clock { }; + + wireguard = if lib.versionOlder kernel.version "5.6" then callPackage ../os-specific/linux/wireguard { } else null; + + x86_energy_perf_policy = callPackage ../os-specific/linux/x86_energy_perf_policy { }; + + xmm7360-pci = callPackage ../os-specific/linux/xmm7360-pci { }; + + xone = if lib.versionAtLeast kernel.version "5.4" then callPackage ../os-specific/linux/xone { } else null; + + xpadneo = callPackage ../os-specific/linux/xpadneo { }; + + zenpower = callPackage ../os-specific/linux/zenpower { }; + + inherit (callPackage ../os-specific/linux/zfs { + configFile = "kernel"; + inherit pkgs kernel; + }) zfsStable zfsUnstable; + zfs = zfsStable; + + can-isotp = callPackage ../os-specific/linux/can-isotp { }; + + } // lib.optionalAttrs (config.allowAliases or false) { + ati_drivers_x11 = throw "ati drivers are no longer supported by any kernel >=4.1"; # added 2021-05-18; + }); + + hardenedPackagesFor = kernel: overrides: packagesFor (hardenedKernelFor kernel overrides); + + vanillaPackages = { + # recurse to build modules for the kernels + linux_4_4 = throw "linux 4.4 was removed because it reached its end of life upstream"; # Added 2022-02-11 + linux_4_9 = recurseIntoAttrs (packagesFor kernels.linux_4_9); + linux_4_14 = recurseIntoAttrs (packagesFor kernels.linux_4_14); + linux_4_19 = recurseIntoAttrs (packagesFor kernels.linux_4_19); + linux_5_4 = recurseIntoAttrs (packagesFor kernels.linux_5_4); + linux_5_10 = recurseIntoAttrs (packagesFor kernels.linux_5_10); + linux_5_15 = recurseIntoAttrs (packagesFor kernels.linux_5_15); + linux_5_16 = recurseIntoAttrs (packagesFor kernels.linux_5_16); + }; + + rtPackages = { + # realtime kernel packages + linux_rt_5_4 = packagesFor kernels.linux_rt_5_4; + linux_rt_5_10 = packagesFor kernels.linux_rt_5_10; + }; + + rpiPackages = { + linux_rpi1 = packagesFor kernels.linux_rpi1; + linux_rpi2 = packagesFor kernels.linux_rpi2; + linux_rpi3 = packagesFor kernels.linux_rpi3; + linux_rpi4 = packagesFor kernels.linux_rpi4; + }; + + packages = recurseIntoAttrs (vanillaPackages // rtPackages // rpiPackages // { + linux_mptcp_95 = packagesFor kernels.linux_mptcp_95; + + # Intentionally lacks recurseIntoAttrs, as -rc kernels will quite likely break out-of-tree modules and cause failed Hydra builds. + linux_testing = packagesFor kernels.linux_testing; + linux_testing_bcachefs = recurseIntoAttrs (packagesFor kernels.linux_testing_bcachefs); + + linux_hardened = recurseIntoAttrs (hardenedPackagesFor packageAliases.linux_default.kernel { }); + + linux_4_14_hardened = recurseIntoAttrs (hardenedPackagesFor kernels.linux_4_14 { }); + linux_4_19_hardened = recurseIntoAttrs (hardenedPackagesFor kernels.linux_4_19 { }); + linux_5_4_hardened = recurseIntoAttrs (hardenedPackagesFor kernels.linux_5_4 { }); + linux_5_10_hardened = recurseIntoAttrs (hardenedPackagesFor kernels.linux_5_10 { }); + linux_5_15_hardened = recurseIntoAttrs (hardenedPackagesFor kernels.linux_5_15 { }); + + linux_zen = recurseIntoAttrs (packagesFor kernels.linux_zen); + linux_lqx = recurseIntoAttrs (packagesFor kernels.linux_lqx); + linux_xanmod = recurseIntoAttrs (packagesFor kernels.linux_xanmod); + + hardkernel_4_14 = recurseIntoAttrs (packagesFor kernels.linux_hardkernel_4_14); + + linux_libre = recurseIntoAttrs (packagesFor kernels.linux_libre); + + linux_latest_libre = recurseIntoAttrs (packagesFor kernels.linux_latest_libre); + }); + + packageAliases = { + linux_default = if stdenv.hostPlatform.isi686 then packages.linux_5_10 else packages.linux_5_15; + # Update this when adding the newest kernel major version! + linux_latest = packages.linux_5_16; + linux_mptcp = packages.linux_mptcp_95; + linux_rt_default = packages.linux_rt_5_4; + linux_rt_latest = packages.linux_rt_5_10; + linux_hardkernel_latest = packages.hardkernel_4_14; + }; + + manualConfig = makeOverridable (callPackage ../os-specific/linux/kernel/manual-config.nix {}); + + customPackage = { version, src, configfile, allowImportFromDerivation ? true }: + recurseIntoAttrs (packagesFor (manualConfig { + inherit version src configfile lib stdenv allowImportFromDerivation; + })); + + # Derive one of the default .config files + linuxConfig = { + src, + version ? (builtins.parseDrvName src.name).version, + makeTarget ? "defconfig", + name ? "kernel.config", + }: stdenvNoCC.mkDerivation { + inherit name src; + depsBuildBuild = [ buildPackages.stdenv.cc ] + ++ lib.optionals (lib.versionAtLeast version "4.16") [ buildPackages.bison buildPackages.flex ]; + postPatch = '' + patchShebangs scripts/ + ''; + buildPhase = '' + set -x + make \ + ARCH=${stdenv.hostPlatform.linuxArch} \ + HOSTCC=${buildPackages.stdenv.cc.targetPrefix}gcc \ + ${makeTarget} + ''; + installPhase = '' + cp .config $out + ''; + }; + + buildLinux = attrs: callPackage ../os-specific/linux/kernel/generic.nix attrs; + +} diff --git a/nixpkgs/pkgs/top-level/lua-packages.nix b/nixpkgs/pkgs/top-level/lua-packages.nix new file mode 100644 index 000000000000..efaf06d30a22 --- /dev/null +++ b/nixpkgs/pkgs/top-level/lua-packages.nix @@ -0,0 +1,139 @@ +/* This file defines the composition for Lua packages. It has + been factored out of all-packages.nix because there are many of + them. Also, because most Nix expressions for Lua packages are + trivial, most are actually defined here. I.e. there's no function + for each package in a separate file: the call to the function would + be almost as must code as the function itself. */ + +{ fetchurl, stdenv, lua, unzip, pkg-config +, pcre, oniguruma, gnulib, tre, glibc, sqlite, openssl, expat +, autoreconfHook, gnum4 +, postgresql, cyrus_sasl +, fetchFromGitHub, which, writeText +, pkgs +, lib +}@args: + +let + packages = ( self: + +let + callPackage = pkgs.newScope self; + + buildLuaApplication = args: buildLuarocksPackage ({namePrefix="";} // args ); + + buildLuarocksPackage = lib.makeOverridable(callPackage ../development/interpreters/lua-5/build-lua-package.nix { + inherit lua; + inherit (pkgs) lib; + inherit (luaLib) toLuaModule; + }); + + luaLib = import ../development/lua-modules/lib.nix { + inherit (pkgs) lib; + inherit pkgs lua; + }; + + #define build lua package function + buildLuaPackage = callPackage ../development/lua-modules/generic { + inherit writeText; + }; + + getPath = drv: pathListForVersion: + lib.concatMapStringsSep ";" (path: "${drv}/${path}") pathListForVersion; + +in +{ + # helper functions for dealing with LUA_PATH and LUA_CPATH + lib = luaLib; + + getLuaPath = drv: getPath drv luaLib.luaPathList; + getLuaCPath = drv: getPath drv luaLib.luaCPathList; + + inherit (callPackage ../development/interpreters/lua-5/hooks { inherit (args) lib;}) + lua-setup-hook; + + inherit lua callPackage; + inherit buildLuaPackage buildLuarocksPackage buildLuaApplication; + inherit (luaLib) luaOlder luaAtLeast isLua51 isLua52 isLua53 isLuaJIT + requiredLuaModules toLuaModule hasLuaModule; + + # wraps programs in $out/bin with valid LUA_PATH/LUA_CPATH + wrapLua = callPackage ../development/interpreters/lua-5/wrap-lua.nix { + inherit lua lib; + inherit (pkgs) makeSetupHook makeWrapper; + }; + + luarocks = callPackage ../development/tools/misc/luarocks { + inherit lua lib; + }; + + luarocks-3_7 = callPackage ../development/tools/misc/luarocks/3.7.nix { + inherit lua lib; + }; + + # a fork of luarocks used to generate nix lua derivations from rockspecs + luarocks-nix = callPackage ../development/tools/misc/luarocks/luarocks-nix.nix { }; + + luxio = buildLuaPackage { + pname = "luxio"; + version = "13"; + + src = fetchurl { + url = "https://git.gitano.org.uk/luxio.git/snapshot/luxio-luxio-13.tar.bz2"; + sha256 = "1hvwslc25q7k82rxk461zr1a2041nxg7sn3sw3w0y5jxf0giz2pz"; + }; + + nativeBuildInputs = [ which pkg-config ]; + + postPatch = '' + patchShebangs . + ''; + + preBuild = '' + makeFlagsArray=( + INST_LIBDIR="$out/lib/lua/${lua.luaversion}" + INST_LUADIR="$out/share/lua/${lua.luaversion}" + LUA_BINDIR="$out/bin" + INSTALL=install + ); + ''; + + meta = with lib; { + description = "Lightweight UNIX I/O and POSIX binding for Lua"; + homepage = "https://www.gitano.org.uk/luxio/"; + license = licenses.mit; + maintainers = with maintainers; [ richardipsum ]; + platforms = platforms.unix; + }; + }; + + vicious = luaLib.toLuaModule( stdenv.mkDerivation rec { + pname = "vicious"; + version = "2.5.0"; + + src = fetchFromGitHub { + owner = "Mic92"; + repo = "vicious"; + rev = "v${version}"; + sha256 = "0lb90334mz0my8ydsmnsnkki0xr58kinsg0hf9d6k4b0vjfi0r0a"; + }; + + buildInputs = [ lua ]; + + installPhase = '' + mkdir -p $out/lib/lua/${lua.luaversion}/ + cp -r . $out/lib/lua/${lua.luaversion}/vicious/ + printf "package.path = '$out/lib/lua/${lua.luaversion}/?/init.lua;' .. package.path\nreturn require((...) .. '.init')\n" > $out/lib/lua/${lua.luaversion}/vicious.lua + ''; + + meta = with lib; { + description = "A modular widget library for the awesome window manager"; + homepage = "https://github.com/Mic92/vicious"; + license = licenses.gpl2; + maintainers = with maintainers; [ makefu mic92 ]; + platforms = platforms.linux; + }; + }); + +}); +in packages diff --git a/nixpkgs/pkgs/top-level/make-tarball.nix b/nixpkgs/pkgs/top-level/make-tarball.nix new file mode 100644 index 000000000000..a63432236471 --- /dev/null +++ b/nixpkgs/pkgs/top-level/make-tarball.nix @@ -0,0 +1,86 @@ +/* Hydra job to build a tarball for Nixpkgs from a Git checkout. It + also builds the documentation and tests whether the Nix expressions + evaluate correctly. */ + +{ nixpkgs +, officialRelease +, supportedSystems +, pkgs ? import nixpkgs.outPath {} +, nix ? pkgs.nix +, lib-tests ? import ../../lib/tests/release.nix { inherit pkgs; } +}: + +pkgs.releaseTools.sourceTarball { + name = "nixpkgs-tarball"; + src = nixpkgs; + + inherit officialRelease; + version = pkgs.lib.fileContents ../../.version; + versionSuffix = "pre${ + if nixpkgs ? lastModified + then builtins.substring 0 8 (nixpkgs.lastModifiedDate or nixpkgs.lastModified) + else toString nixpkgs.revCount}.${nixpkgs.shortRev or "dirty"}"; + + buildInputs = with pkgs; [ nix.out jq lib-tests brotli ]; + + configurePhase = '' + eval "$preConfigure" + releaseName=nixpkgs-$VERSION$VERSION_SUFFIX + echo -n $VERSION_SUFFIX > .version-suffix + echo -n ${nixpkgs.rev or nixpkgs.shortRev or "dirty"} > .git-revision + echo "release name is $releaseName" + echo "git-revision is $(cat .git-revision)" + ''; + + nixpkgs-basic-release-checks = import ./nixpkgs-basic-release-checks.nix + { inherit nix pkgs nixpkgs supportedSystems; }; + + dontBuild = false; + + doCheck = true; + + checkPhase = '' + set -o pipefail + + export NIX_STATE_DIR=$TMPDIR + export NIX_PATH=nixpkgs=$TMPDIR/barf.nix + opts=(--option build-users-group "") + nix-store --init + + header "checking eval-release.nix" + nix-instantiate --eval --strict --show-trace ./maintainers/scripts/eval-release.nix > /dev/null + + header "checking find-tarballs.nix" + nix-instantiate --readonly-mode --eval --strict --show-trace --json \ + ./maintainers/scripts/find-tarballs.nix \ + --arg expr 'import ./maintainers/scripts/all-tarballs.nix' > $TMPDIR/tarballs.json + nrUrls=$(jq -r '.[].url' < $TMPDIR/tarballs.json | wc -l) + echo "found $nrUrls URLs" + if [ "$nrUrls" -lt 10000 ]; then + echo "suspiciously low number of URLs" + exit 1 + fi + + header "generating packages.json" + mkdir -p $out/nix-support + echo -n '{"version":2,"packages":' > tmp + nix-env -f . -I nixpkgs=$src -qa --meta --json --arg config 'import ${./packages-config.nix}' "''${opts[@]}" >> tmp + echo -n '}' >> tmp + packages=$out/packages.json.br + < tmp sed "s|$(pwd)/||g" | jq -c | brotli -9 > $packages + rm tmp + + echo "file json-br $packages" >> $out/nix-support/hydra-build-products + ''; + + distPhase = '' + mkdir -p $out/tarballs + mkdir ../$releaseName + cp -prd . ../$releaseName + (cd .. && tar cfa $out/tarballs/$releaseName.tar.xz $releaseName) || false + ''; + + meta = { + maintainers = [ pkgs.lib.maintainers.all ]; + }; +} diff --git a/nixpkgs/pkgs/top-level/metrics.nix b/nixpkgs/pkgs/top-level/metrics.nix new file mode 100644 index 000000000000..d413b881eaa7 --- /dev/null +++ b/nixpkgs/pkgs/top-level/metrics.nix @@ -0,0 +1,78 @@ +{ nixpkgs, pkgs }: + +with pkgs; + +runCommand "nixpkgs-metrics" + { nativeBuildInputs = with pkgs.lib; map getBin [ nix time jq ]; + requiredSystemFeatures = [ "benchmark" ]; # dedicated `t2a` machine, by @vcunat + } + '' + export NIX_STORE_DIR=$TMPDIR/store + export NIX_STATE_DIR=$TMPDIR/state + export NIX_PAGER= + nix-store --init + + mkdir -p $out/nix-support + touch $out/nix-support/hydra-build-products + + run() { + local name="$1" + shift + + echo "running $@" + + case "$name" in + # Redirect stdout to /dev/null to avoid hitting "Output Limit + # Exceeded" on Hydra. + nix-env.qaDrv|nix-env.qaDrvAggressive) + NIX_SHOW_STATS=1 NIX_SHOW_STATS_PATH=stats-nix time -o stats-time "$@" >/dev/null ;; + *) + NIX_SHOW_STATS=1 NIX_SHOW_STATS_PATH=stats-nix time -o stats-time "$@" ;; + esac + + cat stats-nix; echo; cat stats-time; echo + + x=$(jq '.cpuTime' < stats-nix) + [[ -n $x ]] || exit 1 + echo "$name.time $x s" >> $out/nix-support/hydra-metrics + + x=$(sed -e 's/.* \([0-9]\+\)maxresident.*/\1/ ; t ; d' < stats-time) + [[ -n $x ]] || exit 1 + echo "$name.maxresident $x KiB" >> $out/nix-support/hydra-metrics + + # nix-2.2 also outputs .symbols.bytes but that wasn't summed originally + # https://github.com/NixOS/nix/pull/2392/files#diff-8e6ba8c21672fc1a5f6f606e1e101c74L1762 + x=$(jq '[.envs,.list,.values,.sets] | map(.bytes) | add' < stats-nix) + [[ -n $x ]] || exit 1 + echo "$name.allocations $x B" >> $out/nix-support/hydra-metrics + + x=$(jq '.values.number' < stats-nix) + [[ -n $x ]] || exit 1 + echo "$name.values $x" >> $out/nix-support/hydra-metrics + } + + run nixos.smallContainer nix-instantiate --dry-run ${nixpkgs}/nixos/release.nix \ + -A closures.smallContainer.x86_64-linux --show-trace + run nixos.kde nix-instantiate --dry-run ${nixpkgs}/nixos/release.nix \ + -A closures.kde.x86_64-linux --show-trace + run nixos.lapp nix-instantiate --dry-run ${nixpkgs}/nixos/release.nix \ + -A closures.lapp.x86_64-linux --show-trace + run nix-env.qa nix-env -f ${nixpkgs} -qa + run nix-env.qaDrv nix-env -f ${nixpkgs} -qa --drv-path --meta --xml + + # It's slightly unclear which of the set to track: qaCount, qaCountDrv, qaCountBroken. + num=$(nix-env -f ${nixpkgs} -qa | wc -l) + echo "nix-env.qaCount $num" >> $out/nix-support/hydra-metrics + qaCountDrv=$(nix-env -f ${nixpkgs} -qa --drv-path | wc -l) + num=$((num - $qaCountDrv)) + echo "nix-env.qaCountBroken $num" >> $out/nix-support/hydra-metrics + + # TODO: this has been ignored for some time + # GC Warning: Bad initial heap size 128k - ignoring it. + #export GC_INITIAL_HEAP_SIZE=128k + run nix-env.qaAggressive nix-env -f ${nixpkgs} -qa + run nix-env.qaDrvAggressive nix-env -f ${nixpkgs} -qa --drv-path --meta --xml + + lines=$(find ${nixpkgs} -name "*.nix" -type f | xargs cat | wc -l) + echo "loc $lines" >> $out/nix-support/hydra-metrics + '' diff --git a/nixpkgs/pkgs/top-level/nim-packages.nix b/nixpkgs/pkgs/top-level/nim-packages.nix new file mode 100644 index 000000000000..e808ebef8540 --- /dev/null +++ b/nixpkgs/pkgs/top-level/nim-packages.nix @@ -0,0 +1,92 @@ +{ lib, pkgs, stdenv, newScope, nim, fetchFromGitHub }: + +lib.makeScope newScope (self: + let callPackage = self.callPackage; + in { + inherit nim; + nim_builder = callPackage ../development/nim-packages/nim_builder { }; + buildNimPackage = + callPackage ../development/nim-packages/build-nim-package { }; + fetchNimble = callPackage ../development/nim-packages/fetch-nimble { }; + + astpatternmatching = + callPackage ../development/nim-packages/astpatternmatching { }; + + bumpy = callPackage ../development/nim-packages/bumpy { }; + + chroma = callPackage ../development/nim-packages/chroma { }; + + c2nim = callPackage ../development/nim-packages/c2nim { }; + + docopt = callPackage ../development/nim-packages/docopt { }; + + flatty = callPackage ../development/nim-packages/flatty { }; + + frosty = callPackage ../development/nim-packages/frosty { }; + + hts-nim = callPackage ../development/nim-packages/hts-nim { }; + + jester = callPackage ../development/nim-packages/jester { }; + + jsonschema = callPackage ../development/nim-packages/jsonschema { }; + + jsony = callPackage ../development/nim-packages/jsony { }; + + karax = callPackage ../development/nim-packages/karax { }; + + lscolors = callPackage ../development/nim-packages/lscolors { }; + + markdown = callPackage ../development/nim-packages/markdown { }; + + nimcrypto = callPackage ../development/nim-packages/nimcrypto { }; + + nimbox = callPackage ../development/nim-packages/nimbox { }; + + nimsimd = callPackage ../development/nim-packages/nimsimd { }; + + noise = callPackage ../development/nim-packages/noise { }; + + packedjson = callPackage ../development/nim-packages/packedjson { }; + + pixie = callPackage ../development/nim-packages/pixie { }; + + redis = callPackage ../development/nim-packages/redis { }; + + redpool = callPackage ../development/nim-packages/redpool { }; + + regex = callPackage ../development/nim-packages/regex { }; + + rocksdb = callPackage ../development/nim-packages/rocksdb { + inherit (pkgs) rocksdb; + }; + + sass = callPackage ../development/nim-packages/sass { }; + + sdl2 = callPackage ../development/nim-packages/sdl2 { }; + + segmentation = callPackage ../development/nim-packages/segmentation { }; + + snappy = + callPackage ../development/nim-packages/snappy { inherit (pkgs) snappy; }; + + spry = callPackage ../development/nim-packages/spry { }; + + spryvm = callPackage ../development/nim-packages/spryvm { }; + + stew = callPackage ../development/nim-packages/stew { }; + + supersnappy = callPackage ../development/nim-packages/supersnappy { }; + + tempfile = callPackage ../development/nim-packages/tempfile { }; + + ui = callPackage ../development/nim-packages/ui { inherit (pkgs) libui; }; + + unicodedb = callPackage ../development/nim-packages/unicodedb { }; + + unicodeplus = callPackage ../development/nim-packages/unicodeplus { }; + + vmath = callPackage ../development/nim-packages/vmath { }; + + zippy = callPackage ../development/nim-packages/zippy { }; + + }) diff --git a/nixpkgs/pkgs/top-level/nixpkgs-basic-release-checks.nix b/nixpkgs/pkgs/top-level/nixpkgs-basic-release-checks.nix new file mode 100644 index 000000000000..28f8cf332977 --- /dev/null +++ b/nixpkgs/pkgs/top-level/nixpkgs-basic-release-checks.nix @@ -0,0 +1,84 @@ +{ supportedSystems, nixpkgs, pkgs, nix }: + +pkgs.runCommand "nixpkgs-release-checks" { src = nixpkgs; buildInputs = [nix]; } '' + set -o pipefail + + export NIX_STORE_DIR=$TMPDIR/store + export NIX_STATE_DIR=$TMPDIR/state + export NIX_PATH=nixpkgs=$TMPDIR/barf.nix + opts=(--option build-users-group "") + nix-store --init + + echo 'abort "Illegal use of <nixpkgs> in Nixpkgs."' > $TMPDIR/barf.nix + + # Make sure that Nixpkgs does not use <nixpkgs>. + badFiles=$(find $src/pkgs -type f -name '*.nix' -print | xargs grep -l '^[^#]*<nixpkgs\/' || true) + if [[ -n $badFiles ]]; then + echo "Nixpkgs is not allowed to use <nixpkgs> to refer to itself." + echo "The offending files: $badFiles" + exit 1 + fi + + src2=$TMPDIR/foo + cp -rd $src $src2 + + # Check that all-packages.nix evaluates on a number of platforms without any warnings. + for platform in ${pkgs.lib.concatStringsSep " " supportedSystems}; do + header "checking Nixpkgs on $platform" + + # To get a call trace; see https://nixos.org/manual/nixpkgs/stable/#function-library-lib.trivial.warn + # Relies on impure eval + export NIX_ABORT_ON_WARN=true + + set +e + ( + set -x + nix-env -f $src \ + --show-trace --argstr system "$platform" \ + --arg config '{ allowAliases = false; }' \ + --option experimental-features 'no-url-literals' \ + -qa --drv-path --system-filter \* --system \ + "''${opts[@]}" 2> eval-warnings.log > packages1 + ) + rc=$? + set -e + if [ "$rc" != "0" ]; then + cat eval-warnings.log + exit $rc + fi + + s1=$(sha1sum packages1 | cut -c1-40) + echo $s1 + + nix-env -f $src2 \ + --show-trace --argstr system "$platform" \ + --arg config '{ allowAliases = false; }' \ + --option experimental-features 'no-url-literals' \ + -qa --drv-path --system-filter \* --system \ + "''${opts[@]}" > packages2 + + s2=$(sha1sum packages2 | cut -c1-40) + + if [[ $s1 != $s2 ]]; then + echo "Nixpkgs evaluation depends on Nixpkgs path" + diff packages1 packages2 + exit 1 + fi + + # Catch any trace calls not caught by NIX_ABORT_ON_WARN (lib.warn) + if [ -s eval-warnings.log ]; then + echo "Nixpkgs on $platform evaluated with warnings, aborting" + exit 1 + fi + rm eval-warnings.log + + nix-env -f $src \ + --show-trace --argstr system "$platform" \ + --arg config '{ allowAliases = false; }' \ + --option experimental-features 'no-url-literals' \ + -qa --drv-path --system-filter \* --system --meta --xml \ + "''${opts[@]}" > /dev/null + done + + touch $out +'' diff --git a/nixpkgs/pkgs/top-level/ocaml-packages.nix b/nixpkgs/pkgs/top-level/ocaml-packages.nix new file mode 100644 index 000000000000..cc126dc320de --- /dev/null +++ b/nixpkgs/pkgs/top-level/ocaml-packages.nix @@ -0,0 +1,1588 @@ +{ lib, newScope, pkgs, config }: + +let + liftJaneStreet = self: super: super.janeStreet // super; + + mkOcamlPackages = ocaml: + (lib.makeScope newScope (self: with self; + { + inherit ocaml; + + # Libs + + buildOcaml = callPackage ../build-support/ocaml { }; + + buildOasisPackage = callPackage ../build-support/ocaml/oasis.nix { }; + + buildDunePackage = callPackage ../build-support/ocaml/dune.nix {}; + + afl-persistent = callPackage ../development/ocaml-modules/afl-persistent { }; + + alcotest = callPackage ../development/ocaml-modules/alcotest {}; + + alcotest-lwt = callPackage ../development/ocaml-modules/alcotest/lwt.nix {}; + + alcotest-mirage = callPackage ../development/ocaml-modules/alcotest/mirage.nix {}; + + angstrom = callPackage ../development/ocaml-modules/angstrom { }; + + angstrom-async = callPackage ../development/ocaml-modules/angstrom-async { }; + + angstrom-lwt-unix = callPackage ../development/ocaml-modules/angstrom-lwt-unix { }; + + angstrom-unix = callPackage ../development/ocaml-modules/angstrom-unix { }; + + ansiterminal = callPackage ../development/ocaml-modules/ansiterminal { }; + + apron = callPackage ../development/ocaml-modules/apron { }; + + arp = callPackage ../development/ocaml-modules/arp { }; + + asn1-combinators = callPackage ../development/ocaml-modules/asn1-combinators { }; + + astring = callPackage ../development/ocaml-modules/astring { }; + + atd = callPackage ../development/ocaml-modules/atd { }; + + atdgen = callPackage ../development/ocaml-modules/atdgen { }; + + awa = callPackage ../development/ocaml-modules/awa { }; + + awa-lwt = callPackage ../development/ocaml-modules/awa/lwt.nix { }; + + awa-mirage = callPackage ../development/ocaml-modules/awa/mirage.nix { }; + + base64 = callPackage ../development/ocaml-modules/base64 { }; + + bap = callPackage ../development/ocaml-modules/bap { + inherit (pkgs.llvmPackages_8) llvm; + }; + + batteries = callPackage ../development/ocaml-modules/batteries { }; + + bheap = callPackage ../development/ocaml-modules/bheap { }; + + bigarray-compat = callPackage ../development/ocaml-modules/bigarray-compat { }; + + bigarray-overlap = callPackage ../development/ocaml-modules/bigarray-overlap { }; + + bigstringaf = callPackage ../development/ocaml-modules/bigstringaf { }; + + bigstring = callPackage ../development/ocaml-modules/bigstring { }; + + biocaml = callPackage ../development/ocaml-modules/biocaml { }; + + bistro = callPackage ../development/ocaml-modules/bistro { }; + + bitstring = callPackage ../development/ocaml-modules/bitstring { }; + + bitv = callPackage ../development/ocaml-modules/bitv { }; + + bls12-381 = callPackage ../development/ocaml-modules/bls12-381 { }; + bls12-381-gen = callPackage ../development/ocaml-modules/bls12-381/gen.nix { }; + bls12-381-unix = callPackage ../development/ocaml-modules/bls12-381/unix.nix { }; + bls12-381-legacy = callPackage ../development/ocaml-modules/bls12-381/legacy.nix { }; + + bolt = callPackage ../development/ocaml-modules/bolt { }; + + bos = callPackage ../development/ocaml-modules/bos { }; + + bz2 = callPackage ../development/ocaml-modules/bz2 { }; + + ca-certs = callPackage ../development/ocaml-modules/ca-certs { }; + + ca-certs-nss = callPackage ../development/ocaml-modules/ca-certs-nss { }; + + carton = callPackage ../development/ocaml-modules/carton { }; + + carton-git = callPackage ../development/ocaml-modules/carton/git.nix { }; + + carton-lwt = callPackage ../development/ocaml-modules/carton/lwt.nix { + git-binary = pkgs.git; + }; + + camlidl = callPackage ../development/tools/ocaml/camlidl { }; + + camlp4 = + if lib.versionOlder "4.02" ocaml.version + then callPackage ../development/tools/ocaml/camlp4 { } + else null; + + camlp5 = callPackage ../development/tools/ocaml/camlp5 { }; + + # Compatibility alias + camlp5_strict = camlp5; + + camlpdf = callPackage ../development/ocaml-modules/camlpdf { }; + + calendar = callPackage ../development/ocaml-modules/calendar { }; + + camlzip = callPackage ../development/ocaml-modules/camlzip { }; + + camomile_0_8_2 = callPackage ../development/ocaml-modules/camomile/0.8.2.nix { }; + camomile = + if lib.versionOlder "4.02" ocaml.version + then callPackage ../development/ocaml-modules/camomile { } + else callPackage ../development/ocaml-modules/camomile/0.8.5.nix { }; + + camlimages_4_2_4 = callPackage ../development/ocaml-modules/camlimages/4.2.4.nix { }; + + camlimages = callPackage ../development/ocaml-modules/camlimages { }; + + benchmark = callPackage ../development/ocaml-modules/benchmark { }; + + biniou = + if lib.versionOlder "4.02" ocaml.version + then callPackage ../development/ocaml-modules/biniou { } + else callPackage ../development/ocaml-modules/biniou/1.0.nix { }; + + bisect_ppx = callPackage ../development/ocaml-modules/bisect_ppx { }; + + ocaml_cairo = callPackage ../development/ocaml-modules/ocaml-cairo { }; + + cairo2 = callPackage ../development/ocaml-modules/cairo2 { + inherit (pkgs.darwin.apple_sdk.frameworks) ApplicationServices; + }; + + callipyge = callPackage ../development/ocaml-modules/callipyge { }; + + caqti = callPackage ../development/ocaml-modules/caqti { }; + + caqti-async = callPackage ../development/ocaml-modules/caqti/async.nix { }; + + caqti-driver-mariadb = callPackage ../development/ocaml-modules/caqti/driver-mariadb.nix { }; + + caqti-driver-postgresql = callPackage ../development/ocaml-modules/caqti/driver-postgresql.nix { }; + + caqti-driver-sqlite3 = callPackage ../development/ocaml-modules/caqti/driver-sqlite3.nix { }; + + caqti-dynload = callPackage ../development/ocaml-modules/caqti/dynload.nix { }; + + caqti-lwt = callPackage ../development/ocaml-modules/caqti/lwt.nix { }; + + caqti-type-calendar = callPackage ../development/ocaml-modules/caqti/type-calendar.nix { }; + + cfstream = callPackage ../development/ocaml-modules/cfstream { }; + + chacha = callPackage ../development/ocaml-modules/chacha { }; + + charInfo_width = callPackage ../development/ocaml-modules/charInfo_width { }; + + checkseum = callPackage ../development/ocaml-modules/checkseum { }; + + cil = callPackage ../development/ocaml-modules/cil { }; + + cmdliner = callPackage ../development/ocaml-modules/cmdliner { }; + + cohttp = callPackage ../development/ocaml-modules/cohttp { }; + + cohttp-async = callPackage ../development/ocaml-modules/cohttp/async.nix { }; + + cohttp-lwt = callPackage ../development/ocaml-modules/cohttp/lwt.nix { }; + + cohttp-lwt-unix = callPackage ../development/ocaml-modules/cohttp/lwt-unix.nix { }; + + cohttp-mirage = callPackage ../development/ocaml-modules/cohttp/mirage.nix { }; + + color = callPackage ../development/ocaml-modules/color { }; + + conduit = callPackage ../development/ocaml-modules/conduit { }; + + conduit-async = callPackage ../development/ocaml-modules/conduit/async.nix { }; + + conduit-lwt = callPackage ../development/ocaml-modules/conduit/lwt.nix { }; + + conduit-lwt-unix = callPackage ../development/ocaml-modules/conduit/lwt-unix.nix { }; + + conduit-mirage = callPackage ../development/ocaml-modules/conduit/mirage.nix { }; + + coin = callPackage ../development/ocaml-modules/coin { }; + + config-file = callPackage ../development/ocaml-modules/config-file { }; + + containers = callPackage ../development/ocaml-modules/containers { }; + + containers-data = callPackage ../development/ocaml-modules/containers/data.nix { }; + + cooltt = callPackage ../development/ocaml-modules/cooltt { }; + + cow = callPackage ../development/ocaml-modules/cow { }; + + cpdf = callPackage ../development/ocaml-modules/cpdf { }; + + cppo = callPackage ../development/tools/ocaml/cppo { }; + + cppo_ocamlbuild = callPackage ../development/tools/ocaml/cppo/ocamlbuild.nix { }; + + cpu = callPackage ../development/ocaml-modules/cpu { }; + + cpuid = callPackage ../development/ocaml-modules/cpuid { }; + + crowbar = callPackage ../development/ocaml-modules/crowbar { }; + + crunch = callPackage ../development/tools/ocaml/crunch { }; + + cryptokit = callPackage ../development/ocaml-modules/cryptokit { }; + + csexp = callPackage ../development/ocaml-modules/csexp { }; + + cstruct = callPackage ../development/ocaml-modules/cstruct {}; + + cstruct-async = callPackage ../development/ocaml-modules/cstruct/async.nix { }; + + cstruct-lwt = callPackage ../development/ocaml-modules/cstruct/lwt.nix { }; + + cstruct-sexp = callPackage ../development/ocaml-modules/cstruct/sexp.nix {}; + + cstruct-unix = callPackage ../development/ocaml-modules/cstruct/unix.nix {}; + + csv = + if lib.versionAtLeast ocaml.version "4.2" + then callPackage ../development/ocaml-modules/csv { } + else callPackage ../development/ocaml-modules/csv/1.5.nix { }; + + csv-lwt = callPackage ../development/ocaml-modules/csv/lwt.nix { }; + + cudf = callPackage ../development/ocaml-modules/cudf { }; + + curly = callPackage ../development/ocaml-modules/curly { + inherit (pkgs) curl; + }; + + curses = callPackage ../development/ocaml-modules/curses { }; + + ctypes = callPackage ../development/ocaml-modules/ctypes { }; + + dap = callPackage ../development/ocaml-modules/dap { }; + + data-encoding = callPackage ../development/ocaml-modules/data-encoding { }; + + dbf = callPackage ../development/ocaml-modules/dbf { }; + + decompress = callPackage ../development/ocaml-modules/decompress { }; + + diet = callPackage ../development/ocaml-modules/diet { }; + + digestif = callPackage ../development/ocaml-modules/digestif { }; + + directories = callPackage ../development/ocaml-modules/directories { }; + + dispatch = callPackage ../development/ocaml-modules/dispatch { }; + + dns = callPackage ../development/ocaml-modules/dns { }; + + dns-certify = callPackage ../development/ocaml-modules/dns/certify.nix { }; + + dns-cli = callPackage ../development/ocaml-modules/dns/cli.nix { }; + + dns-client = callPackage ../development/ocaml-modules/dns/client.nix { }; + + dns-mirage = callPackage ../development/ocaml-modules/dns/mirage.nix { }; + + dns-resolver = callPackage ../development/ocaml-modules/dns/resolver.nix { }; + + dns-server = callPackage ../development/ocaml-modules/dns/server.nix { }; + + dns-stub = callPackage ../development/ocaml-modules/dns/stub.nix { }; + + dns-tsig = callPackage ../development/ocaml-modules/dns/tsig.nix { }; + + dolmen = callPackage ../development/ocaml-modules/dolmen { }; + + dolog = callPackage ../development/ocaml-modules/dolog { }; + + domain-name = callPackage ../development/ocaml-modules/domain-name { }; + + dose3 = callPackage ../development/ocaml-modules/dose3 { }; + + dtoa = callPackage ../development/ocaml-modules/dtoa { }; + + duff = callPackage ../development/ocaml-modules/duff { }; + + dum = callPackage ../development/ocaml-modules/dum { }; + + dune_1 = callPackage ../development/tools/ocaml/dune/1.nix { }; + + dune_2 = + if lib.versionAtLeast ocaml.version "4.08" + then callPackage ../development/tools/ocaml/dune/2.nix { } + else if lib.versionAtLeast ocaml.version "4.02" + then pkgs.dune_2 + else throw "dune_2 is not available for OCaml ${ocaml.version}"; + + dune_3 = callPackage ../development/tools/ocaml/dune/3.nix { }; + + dune-action-plugin = callPackage ../development/ocaml-modules/dune-action-plugin { }; + + dune-build-info = callPackage ../development/ocaml-modules/dune-build-info { }; + + dune-configurator = callPackage ../development/ocaml-modules/dune-configurator { }; + + dune-glob = callPackage ../development/ocaml-modules/dune-glob { }; + + dune-private-libs = callPackage ../development/ocaml-modules/dune-private-libs { }; + + dune-release = callPackage ../development/tools/ocaml/dune-release { + inherit (pkgs) opam git mercurial coreutils gnutar bzip2; + }; + + dune-site = callPackage ../development/ocaml-modules/dune-site { }; + + duration = callPackage ../development/ocaml-modules/duration { }; + + earley = callPackage ../development/ocaml-modules/earley { }; + + earlybird = callPackage ../development/ocaml-modules/earlybird { }; + + easy-format = callPackage ../development/ocaml-modules/easy-format { }; + + eigen = callPackage ../development/ocaml-modules/eigen { }; + + either = callPackage ../development/ocaml-modules/either { }; + + elina = callPackage ../development/ocaml-modules/elina { }; + + eliom = callPackage ../development/ocaml-modules/eliom { }; + + elpi = callPackage ../development/ocaml-modules/elpi ( + let ppxlib_0_15 = if lib.versionAtLeast ppxlib.version "0.15" + then ppxlib.override { version = "0.15.0"; } + else ppxlib; in + { + ppx_deriving_0_15 = ppx_deriving.override { ppxlib = ppxlib_0_15; }; + inherit ppxlib_0_15; + } + ); + + encore = callPackage ../development/ocaml-modules/encore { }; + + emile = callPackage ../development/ocaml-modules/emile { }; + + enumerate = callPackage ../development/ocaml-modules/enumerate { }; + + eqaf = callPackage ../development/ocaml-modules/eqaf { }; + + erm_xml = callPackage ../development/ocaml-modules/erm_xml { }; + + erm_xmpp = callPackage ../development/ocaml-modules/erm_xmpp { }; + + ethernet = callPackage ../development/ocaml-modules/ethernet { }; + + ezjsonm = callPackage ../development/ocaml-modules/ezjsonm { }; + + ezxmlm = callPackage ../development/ocaml-modules/ezxmlm { }; + + facile = callPackage ../development/ocaml-modules/facile { }; + + faraday = callPackage ../development/ocaml-modules/faraday { }; + + faraday-async = callPackage ../development/ocaml-modules/faraday/async.nix { }; + + faraday-lwt = callPackage ../development/ocaml-modules/faraday/lwt.nix { }; + + faraday-lwt-unix = callPackage ../development/ocaml-modules/faraday/lwt-unix.nix { }; + + farfadet = callPackage ../development/ocaml-modules/farfadet { }; + + fdkaac = callPackage ../development/ocaml-modules/fdkaac { }; + + ff = callPackage ../development/ocaml-modules/ff { }; + ff-pbt = callPackage ../development/ocaml-modules/ff/pbt.nix { }; + ff-sig = callPackage ../development/ocaml-modules/ff/sig.nix { }; + + ffmpeg = callPackage ../development/ocaml-modules/ffmpeg { }; + ffmpeg-avutil = callPackage ../development/ocaml-modules/ffmpeg/ffmpeg-avutil.nix { + inherit (pkgs) ffmpeg; + }; + ffmpeg-avcodec = callPackage ../development/ocaml-modules/ffmpeg/ffmpeg-avcodec.nix { + inherit (pkgs) ffmpeg; + }; + ffmpeg-avfilter = callPackage ../development/ocaml-modules/ffmpeg/ffmpeg-avfilter.nix { + inherit (pkgs) ffmpeg; + }; + ffmpeg-swscale = callPackage ../development/ocaml-modules/ffmpeg/ffmpeg-swscale.nix { + inherit (pkgs) ffmpeg; + }; + ffmpeg-swresample = callPackage ../development/ocaml-modules/ffmpeg/ffmpeg-swresample.nix { + inherit (pkgs) ffmpeg; + }; + ffmpeg-av = callPackage ../development/ocaml-modules/ffmpeg/ffmpeg-av.nix { + inherit (pkgs) ffmpeg; + }; + ffmpeg-avdevice = callPackage ../development/ocaml-modules/ffmpeg/ffmpeg-avdevice.nix { + inherit (pkgs) ffmpeg; + }; + + fiat-p256 = callPackage ../development/ocaml-modules/fiat-p256 { }; + + fileutils = callPackage ../development/ocaml-modules/fileutils { }; + + findlib = callPackage ../development/tools/ocaml/findlib { }; + + fix = callPackage ../development/ocaml-modules/fix { }; + + flac = callPackage ../development/ocaml-modules/flac { + inherit (pkgs) flac; + }; + + fmt = callPackage ../development/ocaml-modules/fmt { }; + + fontconfig = callPackage ../development/ocaml-modules/fontconfig { + inherit (pkgs) fontconfig; + }; + + fpath = callPackage ../development/ocaml-modules/fpath { }; + + functoria = callPackage ../development/ocaml-modules/functoria { }; + + functoria-runtime = callPackage ../development/ocaml-modules/functoria/runtime.nix { }; + + functory = callPackage ../development/ocaml-modules/functory { }; + + gen = callPackage ../development/ocaml-modules/gen { }; + + genspio = callPackage ../development/ocaml-modules/genspio { }; + + getopt = callPackage ../development/ocaml-modules/getopt { }; + + gluten = callPackage ../development/ocaml-modules/gluten { }; + gluten-lwt = callPackage ../development/ocaml-modules/gluten/lwt.nix { }; + gluten-lwt-unix = callPackage ../development/ocaml-modules/gluten/lwt-unix.nix { }; + + gmap = callPackage ../development/ocaml-modules/gmap { }; + + gnuplot = callPackage ../development/ocaml-modules/gnuplot { + inherit (pkgs) gnuplot; + }; + + gsl = callPackage ../development/ocaml-modules/gsl { + inherit (pkgs) gsl; + }; + + h2 = callPackage ../development/ocaml-modules/h2 { }; + + hack_parallel = callPackage ../development/ocaml-modules/hack_parallel { }; + + hacl_x25519 = callPackage ../development/ocaml-modules/hacl_x25519 { }; + + hacl-star = callPackage ../development/ocaml-modules/hacl-star { }; + hacl-star-raw = callPackage ../development/ocaml-modules/hacl-star/raw.nix { }; + + hashcons = callPackage ../development/ocaml-modules/hashcons { }; + + herelib = callPackage ../development/ocaml-modules/herelib { }; + + hidapi = callPackage ../development/ocaml-modules/hidapi { }; + + higlo = callPackage ../development/ocaml-modules/higlo { }; + + hkdf = callPackage ../development/ocaml-modules/hkdf { }; + + hmap = callPackage ../development/ocaml-modules/hmap { }; + + hpack = callPackage ../development/ocaml-modules/hpack { }; + + hxd = callPackage ../development/ocaml-modules/hxd { }; + + imagelib = callPackage ../development/ocaml-modules/imagelib { }; + + inotify = callPackage ../development/ocaml-modules/inotify { }; + + integers = callPackage ../development/ocaml-modules/integers { }; + + io-page = callPackage ../development/ocaml-modules/io-page { }; + + io-page-unix = callPackage ../development/ocaml-modules/io-page/unix.nix { }; + + ipaddr = callPackage ../development/ocaml-modules/ipaddr { }; + + ipaddr-cstruct = callPackage ../development/ocaml-modules/ipaddr/cstruct.nix { }; + + ipaddr-sexp = callPackage ../development/ocaml-modules/ipaddr/sexp.nix { }; + + iso8601 = callPackage ../development/ocaml-modules/iso8601 { }; + + iter = callPackage ../development/ocaml-modules/iter { }; + + javalib = callPackage ../development/ocaml-modules/javalib { + extlib = ocaml_extlib; + }; + + dypgen = callPackage ../development/ocaml-modules/dypgen { }; + + gapi_ocaml = callPackage ../development/ocaml-modules/gapi-ocaml { }; + + gg = callPackage ../development/ocaml-modules/gg { }; + + git = callPackage ../development/ocaml-modules/git { + git-binary = pkgs.git; + }; + + git-cohttp = callPackage ../development/ocaml-modules/git/cohttp.nix { }; + + git-cohttp-unix = callPackage ../development/ocaml-modules/git/cohttp-unix.nix { }; + + git-paf = callPackage ../development/ocaml-modules/git/paf.nix { }; + + git-unix = callPackage ../development/ocaml-modules/git/unix.nix { + git-binary = pkgs.git; + }; + + gmetadom = callPackage ../development/ocaml-modules/gmetadom { }; + + graphics = + if lib.versionOlder "4.09" ocaml.version + then callPackage ../development/ocaml-modules/graphics { } + else null; + + graphql = callPackage ../development/ocaml-modules/graphql { }; + + graphql-cohttp = callPackage ../development/ocaml-modules/graphql/cohttp.nix { }; + + graphql-lwt = callPackage ../development/ocaml-modules/graphql/lwt.nix { }; + + graphql_parser = callPackage ../development/ocaml-modules/graphql/parser.nix { }; + + graphql_ppx = callPackage ../development/ocaml-modules/graphql_ppx { }; + + hex = callPackage ../development/ocaml-modules/hex { }; + + httpaf = callPackage ../development/ocaml-modules/httpaf { }; + + index = callPackage ../development/ocaml-modules/index { }; + + inifiles = callPackage ../development/ocaml-modules/inifiles { }; + + iri = callPackage ../development/ocaml-modules/iri { }; + + irmin = callPackage ../development/ocaml-modules/irmin { }; + + irmin-chunk = callPackage ../development/ocaml-modules/irmin/chunk.nix { }; + + irmin-containers = callPackage ../development/ocaml-modules/irmin/containers.nix { }; + + irmin-fs = callPackage ../development/ocaml-modules/irmin/fs.nix { }; + + irmin-git = callPackage ../development/ocaml-modules/irmin/git.nix { }; + + irmin-graphql = callPackage ../development/ocaml-modules/irmin/graphql.nix { }; + + irmin-http = callPackage ../development/ocaml-modules/irmin/http.nix { }; + + irmin-layers = callPackage ../development/ocaml-modules/irmin/layers.nix { }; + + irmin-mirage = callPackage ../development/ocaml-modules/irmin/mirage.nix { }; + + irmin-mirage-git = callPackage ../development/ocaml-modules/irmin/mirage-git.nix { }; + + irmin-mirage-graphql = callPackage ../development/ocaml-modules/irmin/mirage-graphql.nix { }; + + irmin-pack = callPackage ../development/ocaml-modules/irmin/pack.nix { }; + + irmin-test = callPackage ../development/ocaml-modules/irmin/test.nix { }; + + irmin-unix = callPackage ../development/ocaml-modules/irmin/unix.nix { }; + + irmin-watcher = callPackage ../development/ocaml-modules/irmin-watcher { }; + + jingoo = callPackage ../development/ocaml-modules/jingoo { }; + + js_of_ocaml = callPackage ../development/tools/ocaml/js_of_ocaml { }; + + js_of_ocaml-camlp4 = callPackage ../development/tools/ocaml/js_of_ocaml/camlp4.nix {}; + + js_of_ocaml-compiler = callPackage ../development/tools/ocaml/js_of_ocaml/compiler.nix {}; + + js_of_ocaml-lwt = callPackage ../development/tools/ocaml/js_of_ocaml/lwt.nix {}; + + js_of_ocaml-ocamlbuild = callPackage ../development/tools/ocaml/js_of_ocaml/ocamlbuild.nix {}; + + js_of_ocaml-ppx = callPackage ../development/tools/ocaml/js_of_ocaml/ppx.nix {}; + + js_of_ocaml-ppx_deriving_json = callPackage ../development/tools/ocaml/js_of_ocaml/ppx_deriving_json.nix { }; + + js_of_ocaml-tyxml = callPackage ../development/tools/ocaml/js_of_ocaml/tyxml.nix {}; + + jsonm = callPackage ../development/ocaml-modules/jsonm { }; + + json-data-encoding = callPackage ../development/ocaml-modules/json-data-encoding { }; + + json-data-encoding-bson = callPackage ../development/ocaml-modules/json-data-encoding/bson.nix { }; + + junit = callPackage ../development/ocaml-modules/junit { }; + junit_ounit = callPackage ../development/ocaml-modules/junit/ounit.nix { }; + junit_alcotest = callPackage ../development/ocaml-modules/junit/alcotest.nix { }; + + jwto = callPackage ../development/ocaml-modules/jwto { }; + + kafka = callPackage ../development/ocaml-modules/kafka { }; + + kafka_lwt = callPackage ../development/ocaml-modules/kafka/lwt.nix { }; + + ke = callPackage ../development/ocaml-modules/ke { }; + + lablgl = callPackage ../development/ocaml-modules/lablgl { }; + + lablgtk3 = callPackage ../development/ocaml-modules/lablgtk3 { }; + + lablgtk3-gtkspell3 = callPackage ../development/ocaml-modules/lablgtk3/gtkspell3.nix { }; + + lablgtk3-sourceview3 = callPackage ../development/ocaml-modules/lablgtk3/sourceview3.nix { }; + + lablgtk_2_14 = callPackage ../development/ocaml-modules/lablgtk/2.14.0.nix { + inherit (pkgs.gnome2) libgnomecanvas gtksourceview; + }; + lablgtk = callPackage ../development/ocaml-modules/lablgtk { + inherit (pkgs.gnome2) libgnomecanvas gtksourceview; + }; + + lablgtk-extras = + if lib.versionOlder "4.02" ocaml.version + then callPackage ../development/ocaml-modules/lablgtk-extras { } + else callPackage ../development/ocaml-modules/lablgtk-extras/1.4.nix { }; + + labltk = callPackage ../development/ocaml-modules/labltk { }; + + lacaml = callPackage ../development/ocaml-modules/lacaml { }; + + lambdasoup = callPackage ../development/ocaml-modules/lambdasoup { }; + + lambda-term = callPackage ../development/ocaml-modules/lambda-term { }; + + lens = callPackage ../development/ocaml-modules/lens { }; + + letsencrypt = callPackage ../development/ocaml-modules/letsencrypt { }; + + letsencrypt-app = callPackage ../development/ocaml-modules/letsencrypt/app.nix { }; + + letsencrypt-dns = callPackage ../development/ocaml-modules/letsencrypt/dns.nix { }; + + linenoise = callPackage ../development/ocaml-modules/linenoise { }; + + llvm = callPackage ../development/ocaml-modules/llvm { + libllvm = pkgs.llvmPackages_10.libllvm; + }; + + logs = callPackage ../development/ocaml-modules/logs { }; + + lru = callPackage ../development/ocaml-modules/lru { }; + + lua-ml = callPackage ../development/ocaml-modules/lua-ml { }; + + lustre-v6 = callPackage ../development/ocaml-modules/lustre-v6 { }; + + lutils = callPackage ../development/ocaml-modules/lutils { }; + + luv = callPackage ../development/ocaml-modules/luv { + inherit (pkgs) file; + }; + + lwt = callPackage ../development/ocaml-modules/lwt { }; + + lwt-canceler = callPackage ../development/ocaml-modules/lwt-canceler { }; + + ocaml_lwt = lwt; + + lwt_camlp4 = callPackage ../development/ocaml-modules/lwt/camlp4.nix { }; + + lwt-dllist = callPackage ../development/ocaml-modules/lwt-dllist { }; + + lwt-exit = callPackage ../development/ocaml-modules/lwt-exit { }; + + lwt-watcher = callPackage ../development/ocaml-modules/lwt-watcher { }; + + lwt_log = callPackage ../development/ocaml-modules/lwt_log { }; + + lwt_ppx = callPackage ../development/ocaml-modules/lwt/ppx.nix { }; + + lwt_react = callPackage ../development/ocaml-modules/lwt_react { }; + + lwt_ssl = callPackage ../development/ocaml-modules/lwt_ssl { }; + + macaddr = callPackage ../development/ocaml-modules/macaddr { }; + + macaddr-cstruct = callPackage ../development/ocaml-modules/macaddr/cstruct.nix { }; + + macaddr-sexp = callPackage ../development/ocaml-modules/macaddr/sexp.nix { }; + + macaque = callPackage ../development/ocaml-modules/macaque { }; + + magic-mime = callPackage ../development/ocaml-modules/magic-mime { }; + + magick = callPackage ../development/ocaml-modules/magick { }; + + mariadb = callPackage ../development/ocaml-modules/mariadb { + inherit (pkgs) mariadb; + }; + + markup = callPackage ../development/ocaml-modules/markup { }; + + mccs = callPackage ../development/ocaml-modules/mccs { }; + + mdx = callPackage ../development/ocaml-modules/mdx { }; + + menhir = callPackage ../development/ocaml-modules/menhir { }; + + menhirLib = callPackage ../development/ocaml-modules/menhir/lib.nix { }; + + menhirSdk = callPackage ../development/ocaml-modules/menhir/sdk.nix { }; + + merlin = + if lib.versionAtLeast ocaml.version "4.11" + then callPackage ../development/tools/ocaml/merlin/4.x.nix { } + else callPackage ../development/tools/ocaml/merlin { }; + + merlin-extend = callPackage ../development/ocaml-modules/merlin-extend { }; + + dot-merlin-reader = callPackage ../development/tools/ocaml/merlin/dot-merlin-reader.nix { }; + + metrics = callPackage ../development/ocaml-modules/metrics { }; + + metrics-influx = callPackage ../development/ocaml-modules/metrics/influx.nix { }; + + metrics-lwt = callPackage ../development/ocaml-modules/metrics/lwt.nix { }; + + metrics-mirage = callPackage ../development/ocaml-modules/metrics/mirage.nix { }; + + metrics-unix = callPackage ../development/ocaml-modules/metrics/unix.nix { + inherit (pkgs) gnuplot; + }; + + mew = callPackage ../development/ocaml-modules/mew { }; + + mew_vi = callPackage ../development/ocaml-modules/mew_vi { }; + + mezzo = callPackage ../development/compilers/mezzo { }; + + mimic = callPackage ../development/ocaml-modules/mimic { }; + + minisat = callPackage ../development/ocaml-modules/minisat { }; + + mirage = callPackage ../development/ocaml-modules/mirage { }; + + mirage-block = callPackage ../development/ocaml-modules/mirage-block { }; + + mirage-block-combinators = callPackage ../development/ocaml-modules/mirage-block/combinators.nix { }; + + mirage-block-ramdisk = callPackage ../development/ocaml-modules/mirage-block-ramdisk { }; + + mirage-block-unix = callPackage ../development/ocaml-modules/mirage-block-unix { }; + + mirage-bootvar-unix = callPackage ../development/ocaml-modules/mirage-bootvar-unix { }; + + mirage-bootvar-xen = callPackage ../development/ocaml-modules/mirage-bootvar-xen { }; + + mirage-channel = callPackage ../development/ocaml-modules/mirage-channel { }; + + mirage-clock = callPackage ../development/ocaml-modules/mirage-clock { }; + + mirage-clock-freestanding = callPackage ../development/ocaml-modules/mirage-clock/freestanding.nix { }; + + mirage-clock-unix = callPackage ../development/ocaml-modules/mirage-clock/unix.nix { }; + + mirage-console = callPackage ../development/ocaml-modules/mirage-console { }; + + mirage-console-unix = callPackage ../development/ocaml-modules/mirage-console/unix.nix { }; + + mirage-crypto = callPackage ../development/ocaml-modules/mirage-crypto { }; + + mirage-crypto-ec = callPackage ../development/ocaml-modules/mirage-crypto/ec.nix { }; + + mirage-crypto-pk = callPackage ../development/ocaml-modules/mirage-crypto/pk.nix { }; + + mirage-crypto-rng = callPackage ../development/ocaml-modules/mirage-crypto/rng.nix { }; + + mirage-crypto-rng-async = callPackage ../development/ocaml-modules/mirage-crypto/rng-async.nix { }; + + mirage-crypto-rng-mirage = callPackage ../development/ocaml-modules/mirage-crypto/rng-mirage.nix { }; + + mirage-device = callPackage ../development/ocaml-modules/mirage-device { }; + + mirage-flow = callPackage ../development/ocaml-modules/mirage-flow { }; + + mirage-flow-combinators = callPackage ../development/ocaml-modules/mirage-flow/combinators.nix { }; + + mirage-flow-unix = callPackage ../development/ocaml-modules/mirage-flow/unix.nix { }; + + mirage-fs = callPackage ../development/ocaml-modules/mirage-fs { }; + + mirage-kv = callPackage ../development/ocaml-modules/mirage-kv { }; + + mirage-logs = callPackage ../development/ocaml-modules/mirage-logs { }; + + mirage-nat = callPackage ../development/ocaml-modules/mirage-nat { }; + + mirage-net = callPackage ../development/ocaml-modules/mirage-net { }; + + mirage-net-xen = callPackage ../development/ocaml-modules/mirage-net-xen { }; + + mirage-profile = callPackage ../development/ocaml-modules/mirage-profile { }; + + mirage-protocols = callPackage ../development/ocaml-modules/mirage-protocols { }; + + mirage-random = callPackage ../development/ocaml-modules/mirage-random { }; + + mirage-random-test = callPackage ../development/ocaml-modules/mirage-random-test { }; + + mirage-runtime = callPackage ../development/ocaml-modules/mirage/runtime.nix { }; + + mirage-stack = callPackage ../development/ocaml-modules/mirage-stack { }; + + mirage-time = callPackage ../development/ocaml-modules/mirage-time { }; + + mirage-time-unix = callPackage ../development/ocaml-modules/mirage-time/unix.nix { }; + + mirage-types = callPackage ../development/ocaml-modules/mirage/types.nix { }; + + mirage-types-lwt = callPackage ../development/ocaml-modules/mirage/types-lwt.nix { }; + + mirage-unix = callPackage ../development/ocaml-modules/mirage-unix { }; + + mirage-xen = callPackage ../development/ocaml-modules/mirage-xen { }; + + mirage-vnetif = callPackage ../development/ocaml-modules/mirage-vnetif { }; + + mlgmp = callPackage ../development/ocaml-modules/mlgmp { }; + + mlgmpidl = callPackage ../development/ocaml-modules/mlgmpidl { }; + + mmap = callPackage ../development/ocaml-modules/mmap { }; + + mparser = callPackage ../development/ocaml-modules/mparser { }; + + mparser-pcre = callPackage ../development/ocaml-modules/mparser/pcre.nix { }; + + mrmime = callPackage ../development/ocaml-modules/mrmime { }; + + mtime = callPackage ../development/ocaml-modules/mtime { }; + + mustache = callPackage ../development/ocaml-modules/mustache { }; + + netchannel = callPackage ../development/ocaml-modules/netchannel { }; + + nocrypto = callPackage ../development/ocaml-modules/nocrypto { }; + + noise = callPackage ../development/ocaml-modules/noise { }; + + nonstd = callPackage ../development/ocaml-modules/nonstd { }; + + notty = callPackage ../development/ocaml-modules/notty { }; + + npy = callPackage ../development/ocaml-modules/npy { + inherit (pkgs.python3Packages) numpy; + }; + + num = if lib.versionOlder "4.06" ocaml.version + then callPackage ../development/ocaml-modules/num {} + else null; + + parmap = callPackage ../development/ocaml-modules/parmap { }; + + comparelib = callPackage ../development/ocaml-modules/comparelib { }; + + ocamlbuild = + if lib.versionOlder "4.03" ocaml.version then + callPackage ../development/tools/ocaml/ocamlbuild { } + else + null; + + ocaml_cryptgps = callPackage ../development/ocaml-modules/cryptgps { }; + + ocaml_data_notation = callPackage ../development/ocaml-modules/odn { }; + + ocaml_expat = + if lib.versionAtLeast ocaml.version "4.02" + then callPackage ../development/ocaml-modules/expat { } + else callPackage ../development/ocaml-modules/expat/0.9.nix { }; + + frontc = callPackage ../development/ocaml-modules/frontc { }; + + ocamlformat-rpc-lib = callPackage ../development/ocaml-modules/ocamlformat-rpc-lib { }; + + ocamlfuse = callPackage ../development/ocaml-modules/ocamlfuse { }; + + ocaml-freestanding = callPackage ../development/ocaml-modules/ocaml-freestanding { }; + + ocaml_gettext = callPackage ../development/ocaml-modules/ocaml-gettext { }; + + gettext-camomile = callPackage ../development/ocaml-modules/ocaml-gettext/camomile.nix { }; + + gettext-stub = callPackage ../development/ocaml-modules/ocaml-gettext/stub.nix { }; + + ocamlgraph = callPackage ../development/ocaml-modules/ocamlgraph { }; + ocamlgraph_gtk = callPackage ../development/ocaml-modules/ocamlgraph/gtk.nix { }; + + ocaml_libvirt = callPackage ../development/ocaml-modules/ocaml-libvirt { }; + + ocamlify = callPackage ../development/tools/ocaml/ocamlify { }; + + jsonrpc = callPackage ../development/ocaml-modules/ocaml-lsp/jsonrpc.nix { }; + lsp = callPackage ../development/ocaml-modules/ocaml-lsp/lsp.nix { }; + ocaml-lsp = callPackage ../development/ocaml-modules/ocaml-lsp { }; + + ocaml-migrate-parsetree = ocaml-migrate-parsetree-1-8; + + ocaml-migrate-parsetree-1-8 = callPackage ../development/ocaml-modules/ocaml-migrate-parsetree/1.8.x.nix { }; + + ocaml-migrate-parsetree-2 = callPackage ../development/ocaml-modules/ocaml-migrate-parsetree/2.x.nix { }; + + ocamlmod = callPackage ../development/tools/ocaml/ocamlmod { }; + + ocaml-monadic = callPackage ../development/ocaml-modules/ocaml-monadic { }; + + ocaml_mysql = callPackage ../development/ocaml-modules/mysql { }; + + ocamlnet = callPackage ../development/ocaml-modules/ocamlnet { }; + + ocaml_oasis = callPackage ../development/tools/ocaml/oasis { }; + + ocaml_pcre = callPackage ../development/ocaml-modules/pcre {}; + + ocaml-print-intf = callPackage ../development/ocaml-modules/ocaml-print-intf { }; + + ocaml-recovery-parser = callPackage ../development/tools/ocaml/ocaml-recovery-parser { }; + + pgocaml = callPackage ../development/ocaml-modules/pgocaml {}; + + pgocaml_ppx = callPackage ../development/ocaml-modules/pgocaml/ppx.nix {}; + + ocaml-r = callPackage ../development/ocaml-modules/ocaml-r { }; + + ocaml-sat-solvers = callPackage ../development/ocaml-modules/ocaml-sat-solvers { }; + + ocamlscript = callPackage ../development/tools/ocaml/ocamlscript { }; + + ocamlsdl= callPackage ../development/ocaml-modules/ocamlsdl { }; + + ocaml_sqlite3 = callPackage ../development/ocaml-modules/sqlite3 { }; + + ocaml-syntax-shims = callPackage ../development/ocaml-modules/ocaml-syntax-shims { }; + + syslog = callPackage ../development/ocaml-modules/syslog { }; + + syslog-message = callPackage ../development/ocaml-modules/syslog-message { }; + + ocaml-version = callPackage ../development/ocaml-modules/ocaml-version { }; + + ocf = callPackage ../development/ocaml-modules/ocf { }; + + ocf_ppx = callPackage ../development/ocaml-modules/ocf/ppx.nix { }; + + ocp-build = callPackage ../development/tools/ocaml/ocp-build { }; + + ocp-indent = callPackage ../development/tools/ocaml/ocp-indent { }; + + ocp-index = callPackage ../development/tools/ocaml/ocp-index { }; + + ocp-ocamlres = callPackage ../development/ocaml-modules/ocp-ocamlres { }; + + ocplib-endian = callPackage ../development/ocaml-modules/ocplib-endian { }; + + ocplib-json-typed = callPackage ../development/ocaml-modules/ocplib-json-typed { }; + + ocplib-json-typed-browser = callPackage ../development/ocaml-modules/ocplib-json-typed/browser.nix { }; + + ocplib-json-typed-bson = callPackage ../development/ocaml-modules/ocplib-json-typed/bson.nix { }; + + ocplib-simplex = callPackage ../development/ocaml-modules/ocplib-simplex { }; + + ocsigen_server = callPackage ../development/ocaml-modules/ocsigen-server { }; + + ocsigen-start = callPackage ../development/ocaml-modules/ocsigen-start { }; + + ocsigen-toolkit = callPackage ../development/ocaml-modules/ocsigen-toolkit { }; + + octavius = callPackage ../development/ocaml-modules/octavius { }; + + odate = callPackage ../development/ocaml-modules/odate { }; + + odoc = callPackage ../development/ocaml-modules/odoc { }; + + odoc-parser = callPackage ../development/ocaml-modules/odoc-parser { }; + + omd = callPackage ../development/ocaml-modules/omd { }; + + opam-core = callPackage ../development/ocaml-modules/opam-core { + inherit (pkgs) opam unzip; + }; + + opam-file-format = callPackage ../development/ocaml-modules/opam-file-format { }; + + opam-format = callPackage ../development/ocaml-modules/opam-format { + inherit (pkgs) unzip; + }; + + opam-repository = callPackage ../development/ocaml-modules/opam-repository { + inherit (pkgs) unzip; + }; + + opam-state = callPackage ../development/ocaml-modules/opam-state { + inherit (pkgs) unzip; + }; + + opium = callPackage ../development/ocaml-modules/opium { }; + + opium_kernel = callPackage ../development/ocaml-modules/opium_kernel { }; + + opti = callPackage ../development/ocaml-modules/opti { }; + + optint = callPackage ../development/ocaml-modules/optint { }; + + opus = callPackage ../development/ocaml-modules/opus { }; + + otfm = callPackage ../development/ocaml-modules/otfm { }; + + otoml = callPackage ../development/ocaml-modules/otoml { }; + + otr = callPackage ../development/ocaml-modules/otr { }; + + owee = callPackage ../development/ocaml-modules/owee { }; + + owl-base = callPackage ../development/ocaml-modules/owl-base { }; + + owl = callPackage ../development/ocaml-modules/owl { }; + + ounit = callPackage ../development/ocaml-modules/ounit { }; + + ounit2 = callPackage ../development/ocaml-modules/ounit2 { }; + + paf = callPackage ../development/ocaml-modules/paf { }; + + paf-cohttp = callPackage ../development/ocaml-modules/paf/cohttp.nix { }; + + paf-le = callPackage ../development/ocaml-modules/paf/le.nix { }; + + parse-argv = callPackage ../development/ocaml-modules/parse-argv { }; + + path_glob = callPackage ../development/ocaml-modules/path_glob { }; + + pbkdf = callPackage ../development/ocaml-modules/pbkdf { }; + + pcap-format = callPackage ../development/ocaml-modules/pcap-format { }; + + pecu = callPackage ../development/ocaml-modules/pecu { }; + + pgsolver = callPackage ../development/ocaml-modules/pgsolver { }; + + phylogenetics = callPackage ../development/ocaml-modules/phylogenetics { }; + + piaf = callPackage ../development/ocaml-modules/piaf { }; + + piqi = callPackage ../development/ocaml-modules/piqi { }; + + piqi-ocaml = callPackage ../development/ocaml-modules/piqi-ocaml { }; + + posix-base = callPackage ../development/ocaml-modules/posix/base.nix { }; + + posix-socket = callPackage ../development/ocaml-modules/posix/socket.nix { }; + + posix-types = callPackage ../development/ocaml-modules/posix/types.nix { }; + + postgresql = callPackage ../development/ocaml-modules/postgresql { + inherit (pkgs) postgresql; + }; + + pp = callPackage ../development/ocaml-modules/pp { }; + + ppx_bap = callPackage ../development/ocaml-modules/ppx_bap { }; + + ppx_bitstring = callPackage ../development/ocaml-modules/bitstring/ppx.nix { }; + + ppxlib = callPackage ../development/ocaml-modules/ppxlib { }; + + psmt2-frontend = callPackage ../development/ocaml-modules/psmt2-frontend { }; + + psq = callPackage ../development/ocaml-modules/psq { }; + + ptime = callPackage ../development/ocaml-modules/ptime { }; + + resource-pooling = callPackage ../development/ocaml-modules/resource-pooling { }; + + repr = callPackage ../development/ocaml-modules/repr { }; + + result = callPackage ../development/ocaml-modules/ocaml-result { }; + + secp256k1 = callPackage ../development/ocaml-modules/secp256k1 { + inherit (pkgs) secp256k1; + }; + + secp256k1-internal = callPackage ../development/ocaml-modules/secp256k1-internal { }; + + seq = callPackage ../development/ocaml-modules/seq { }; + + shine = callPackage ../development/ocaml-modules/shine { + inherit (pkgs) shine; + }; + + sosa = callPackage ../development/ocaml-modules/sosa { }; + + spacetime_lib = callPackage ../development/ocaml-modules/spacetime_lib { }; + + speex = callPackage ../development/ocaml-modules/speex { + inherit (pkgs) speex; + }; + + tar-unix = callPackage ../development/ocaml-modules/tar/unix.nix { }; + + tar = callPackage ../development/ocaml-modules/tar { }; + + tcpip = callPackage ../development/ocaml-modules/tcpip { }; + + tsort = callPackage ../development/ocaml-modules/tsort { }; + + tuntap = callPackage ../development/ocaml-modules/tuntap { }; + + tyxml = callPackage ../development/ocaml-modules/tyxml { }; + + ulex = callPackage ../development/ocaml-modules/ulex { }; + + tls = callPackage ../development/ocaml-modules/tls { }; + + tls-async = callPackage ../development/ocaml-modules/tls/async.nix { }; + + tls-mirage = callPackage ../development/ocaml-modules/tls/mirage.nix { }; + + torch = callPackage ../development/ocaml-modules/torch { + inherit (pkgs.python3Packages) pytorch; + }; + + type_conv_108_08_00 = callPackage ../development/ocaml-modules/type_conv/108.08.00.nix { }; + type_conv_109_60_01 = callPackage ../development/ocaml-modules/type_conv/109.60.01.nix { }; + type_conv_112_01_01 = callPackage ../development/ocaml-modules/type_conv/112.01.01.nix { }; + type_conv = + if lib.versionOlder "4.02" ocaml.version + then type_conv_112_01_01 + else if lib.versionOlder "4.00" ocaml.version + then type_conv_109_60_01 + else if lib.versionOlder "3.12" ocaml.version + then type_conv_108_08_00 + else null; + + ocaml-protoc = callPackage ../development/ocaml-modules/ocaml-protoc { }; + + ocaml_extlib = ocaml_extlib-1-7-8; + + ocaml_extlib-1-7-8 = callPackage ../development/ocaml-modules/extlib { }; + + ocaml_extlib-1-7-7 = callPackage ../development/ocaml-modules/extlib/1.7.7.nix { }; + + ocb-stubblr = callPackage ../development/ocaml-modules/ocb-stubblr { }; + + ocurl = callPackage ../development/ocaml-modules/ocurl { }; + + ogg = callPackage ../development/ocaml-modules/ogg { }; + + parany = callPackage ../development/ocaml-modules/parany { }; + + pipebang = callPackage ../development/ocaml-modules/pipebang { }; + + pprint = callPackage ../development/ocaml-modules/pprint { }; + + ppx_blob = callPackage ../development/ocaml-modules/ppx_blob { }; + + ppx_cstruct = callPackage ../development/ocaml-modules/cstruct/ppx.nix { }; + + ppx_cstubs = callPackage ../development/ocaml-modules/ppx_cstubs { }; + + ppx_derivers = callPackage ../development/ocaml-modules/ppx_derivers {}; + + ppx_deriving = callPackage ../development/ocaml-modules/ppx_deriving {}; + + ppx_deriving_protobuf = callPackage ../development/ocaml-modules/ppx_deriving_protobuf {}; + + ppx_deriving_rpc = callPackage ../development/ocaml-modules/ppx_deriving_rpc { }; + + ppx_deriving_yojson = callPackage ../development/ocaml-modules/ppx_deriving_yojson {}; + + ppx_deriving_yaml = callPackage ../development/ocaml-modules/ppx_deriving_yaml {}; + + ppx_deriving_cmdliner = callPackage ../development/ocaml-modules/ppx_deriving_cmdliner {}; + + ppx_gen_rec = callPackage ../development/ocaml-modules/ppx_gen_rec {}; + + ppx_import = callPackage ../development/ocaml-modules/ppx_import {}; + + ppx_irmin = callPackage ../development/ocaml-modules/irmin/ppx.nix { + }; + + ppx_repr = callPackage ../development/ocaml-modules/repr/ppx.nix { }; + + ppx_tools = + if lib.versionAtLeast ocaml.version "4.02" + then callPackage ../development/ocaml-modules/ppx_tools {} + else null; + + ppx_tools_versioned = callPackage ../development/ocaml-modules/ppx_tools_versioned { }; + + ppx_yojson_conv_lib = callPackage ../development/ocaml-modules/ppx_yojson_conv_lib {}; + + prettym = callPackage ../development/ocaml-modules/prettym { }; + + printbox = callPackage ../development/ocaml-modules/printbox { }; + + printbox-text = callPackage ../development/ocaml-modules/printbox/text.nix { }; + + process = callPackage ../development/ocaml-modules/process { }; + + prof_spacetime = callPackage ../development/ocaml-modules/prof_spacetime { }; + + progress = callPackage ../development/ocaml-modules/progress { }; + + ptmap = callPackage ../development/ocaml-modules/ptmap { }; + + ptset = callPackage ../development/ocaml-modules/ptset { }; + + pyml = callPackage ../development/ocaml-modules/pyml { }; + + qcheck-alcotest = callPackage ../development/ocaml-modules/qcheck/alcotest.nix { }; + + qcheck-core = callPackage ../development/ocaml-modules/qcheck/core.nix { }; + + qcheck-ounit = callPackage ../development/ocaml-modules/qcheck/ounit.nix { }; + + qcheck = callPackage ../development/ocaml-modules/qcheck { }; + + qtest = callPackage ../development/ocaml-modules/qtest { }; + + randomconv = callPackage ../development/ocaml-modules/randomconv { }; + + rdbg = callPackage ../development/ocaml-modules/rdbg { }; + + re = callPackage ../development/ocaml-modules/re { }; + + react = callPackage ../development/ocaml-modules/react { }; + + reactivedata = callPackage ../development/ocaml-modules/reactivedata {}; + + reason = callPackage ../development/compilers/reason { }; + + reason-native = lib.recurseIntoAttrs (callPackage ../development/ocaml-modules/reason-native { }); + + rfc7748 = callPackage ../development/ocaml-modules/rfc7748 { }; + + ezresto = callPackage ../development/ocaml-modules/resto/ezresto.nix { }; + ezresto-directory = callPackage ../development/ocaml-modules/resto/ezresto-directory.nix { }; + + resto = callPackage ../development/ocaml-modules/resto { }; + resto-acl = callPackage ../development/ocaml-modules/resto/acl.nix { }; + resto-cohttp = callPackage ../development/ocaml-modules/resto/cohttp.nix { }; + resto-cohttp-client = callPackage ../development/ocaml-modules/resto/cohttp-client.nix { }; + resto-cohttp-self-serving-client = callPackage ../development/ocaml-modules/resto/cohttp-self-serving-client.nix { }; + resto-cohttp-server = callPackage ../development/ocaml-modules/resto/cohttp-server.nix { }; + resto-directory = callPackage ../development/ocaml-modules/resto/directory.nix { }; + resto-json = callPackage ../development/ocaml-modules/resto/json.nix { }; + + ringo = callPackage ../development/ocaml-modules/ringo { }; + ringo-lwt = callPackage ../development/ocaml-modules/ringo/lwt.nix { }; + + rope = callPackage ../development/ocaml-modules/rope { }; + + rosetta = callPackage ../development/ocaml-modules/rosetta { }; + + routes = callPackage ../development/ocaml-modules/routes { }; + + rpclib = callPackage ../development/ocaml-modules/rpclib { }; + + rpclib-lwt = callPackage ../development/ocaml-modules/rpclib/lwt.nix { }; + + rresult = callPackage ../development/ocaml-modules/rresult { }; + + safepass = callPackage ../development/ocaml-modules/safepass { }; + + sedlex = callPackage ../development/ocaml-modules/sedlex { }; + + sedlex_2 = callPackage ../development/ocaml-modules/sedlex/2.nix { }; + + semaphore-compat = callPackage ../development/ocaml-modules/semaphore-compat { }; + + sha = callPackage ../development/ocaml-modules/sha { }; + + shared-memory-ring = callPackage ../development/ocaml-modules/shared-memory-ring { }; + + shared-memory-ring-lwt = callPackage ../development/ocaml-modules/shared-memory-ring/lwt.nix { }; + + sodium = callPackage ../development/ocaml-modules/sodium { }; + + spelll = callPackage ../development/ocaml-modules/spelll { }; + + sqlite3EZ = callPackage ../development/ocaml-modules/sqlite3EZ { }; + + srt = callPackage ../development/ocaml-modules/srt { + inherit (pkgs) srt; + }; + + ssl = callPackage ../development/ocaml-modules/ssl { }; + + stdcompat = callPackage ../development/ocaml-modules/stdcompat { }; + + stdlib-shims = callPackage ../development/ocaml-modules/stdlib-shims { }; + + stog = callPackage ../applications/misc/stog { }; + + stringext = callPackage ../development/ocaml-modules/stringext { }; + + tcslib = callPackage ../development/ocaml-modules/tcslib { }; + + terminal = callPackage ../development/ocaml-modules/terminal { }; + + terminal_size = callPackage ../development/ocaml-modules/terminal_size { }; + + tezos-010-PtGRANAD-test-helpers = callPackage ../development/ocaml-modules/tezos/010-PtGRANAD-test-helpers.nix { }; + tezos-011-PtHangz2-test-helpers = callPackage ../development/ocaml-modules/tezos/011-PtHangz2-test-helpers.nix { }; + tezos-base = callPackage ../development/ocaml-modules/tezos/base.nix { }; + tezos-base-test-helpers = callPackage ../development/ocaml-modules/tezos/base-test-helpers.nix { }; + tezos-clic = callPackage ../development/ocaml-modules/tezos/clic.nix { }; + tezos-client-010-PtGRANAD = callPackage ../development/ocaml-modules/tezos/client-010-PtGRANAD.nix { }; + tezos-client-011-PtHangz2 = callPackage ../development/ocaml-modules/tezos/client-011-PtHangz2.nix { }; + tezos-client-base = callPackage ../development/ocaml-modules/tezos/client-base.nix { }; + tezos-context = callPackage ../development/ocaml-modules/tezos/context.nix { }; + tezos-crypto = callPackage ../development/ocaml-modules/tezos/crypto.nix { }; + tezos-embedded-protocol-010-PtGRANAD = callPackage ../development/ocaml-modules/tezos/embedded-protocol-010-PtGRANAD.nix { }; + tezos-embedded-protocol-demo-noops = callPackage ../development/ocaml-modules/tezos/embedded-protocol-demo-noops.nix { }; + tezos-error-monad = callPackage ../development/ocaml-modules/tezos/error-monad.nix { }; + tezos-event-logging = callPackage ../development/ocaml-modules/tezos/event-logging.nix { }; + tezos-event-logging-test-helpers = callPackage ../development/ocaml-modules/tezos/event-logging-test-helpers.nix { }; + tezos-legacy-store = callPackage ../development/ocaml-modules/tezos/legacy-store.nix { }; + tezos-lmdb = callPackage ../development/ocaml-modules/tezos/lmdb.nix { }; + tezos-hacl-glue = callPackage ../development/ocaml-modules/tezos/hacl-glue.nix { }; + tezos-hacl-glue-unix = callPackage ../development/ocaml-modules/tezos/hacl-glue-unix.nix { }; + tezos-lwt-result-stdlib = callPackage ../development/ocaml-modules/tezos/lwt-result-stdlib.nix { }; + tezos-micheline = callPackage ../development/ocaml-modules/tezos/micheline.nix { }; + tezos-mockup-proxy = callPackage ../development/ocaml-modules/tezos/mockup-proxy.nix { }; + tezos-mockup-registration = callPackage ../development/ocaml-modules/tezos/mockup-registration.nix { }; + tezos-p2p-services = callPackage ../development/ocaml-modules/tezos/p2p-services.nix { }; + tezos-p2p = callPackage ../development/ocaml-modules/tezos/p2p.nix { }; + tezos-protocol-010-PtGRANAD = callPackage ../development/ocaml-modules/tezos/protocol-010-PtGRANAD.nix { }; + tezos-protocol-010-PtGRANAD-parameters = callPackage ../development/ocaml-modules/tezos/protocol-010-PtGRANAD-parameters.nix { }; + tezos-protocol-011-PtHangz2 = callPackage ../development/ocaml-modules/tezos/protocol-011-PtHangz2.nix { }; + tezos-protocol-011-PtHangz2-parameters = callPackage ../development/ocaml-modules/tezos/protocol-011-PtHangz2-parameters.nix { }; + tezos-protocol-alpha = callPackage ../development/ocaml-modules/tezos/protocol-alpha.nix { }; + tezos-protocol-compiler = callPackage ../development/ocaml-modules/tezos/protocol-compiler.nix { }; + tezos-protocol-demo-noops = callPackage ../development/ocaml-modules/tezos/protocol-demo-noops.nix { }; + tezos-protocol-environment-packer = callPackage ../development/ocaml-modules/tezos/protocol-environment-packer.nix { }; + tezos-protocol-environment-sigs = callPackage ../development/ocaml-modules/tezos/protocol-environment-sigs.nix { }; + tezos-protocol-environment-structs = callPackage ../development/ocaml-modules/tezos/protocol-environment-structs.nix { }; + tezos-protocol-environment = callPackage ../development/ocaml-modules/tezos/protocol-environment.nix { }; + tezos-protocol-plugin-010-PtGRANAD = callPackage ../development/ocaml-modules/tezos/protocol-plugin-010-PtGRANAD.nix { }; + tezos-protocol-plugin-011-PtHangz2 = callPackage ../development/ocaml-modules/tezos/protocol-plugin-011-PtHangz2.nix { }; + tezos-protocol-plugin-alpha = callPackage ../development/ocaml-modules/tezos/protocol-plugin-alpha.nix { }; + tezos-protocol-updater = callPackage ../development/ocaml-modules/tezos/protocol-updater.nix { }; + tezos-proxy = callPackage ../development/ocaml-modules/tezos/proxy.nix { }; + tezos-requester = callPackage ../development/ocaml-modules/tezos/requester.nix { }; + tezos-rpc-http-client-unix = callPackage ../development/ocaml-modules/tezos/rpc-http-client-unix.nix { }; + tezos-rpc-http-client = callPackage ../development/ocaml-modules/tezos/rpc-http-client.nix { }; + tezos-rpc-http = callPackage ../development/ocaml-modules/tezos/rpc-http.nix { }; + tezos-rpc = callPackage ../development/ocaml-modules/tezos/rpc.nix { }; + tezos-sapling = callPackage ../development/ocaml-modules/tezos/sapling.nix { }; + tezos-shell-context = callPackage ../development/ocaml-modules/tezos/shell-context.nix { }; + tezos-shell-services = callPackage ../development/ocaml-modules/tezos/shell-services.nix { }; + tezos-shell-services-test-helpers = callPackage ../development/ocaml-modules/tezos/shell-services-test-helpers.nix { }; + tezos-shell = callPackage ../development/ocaml-modules/tezos/shell.nix { }; + tezos-signer-backends = callPackage ../development/ocaml-modules/tezos/signer-backends.nix { }; + tezos-signer-services = callPackage ../development/ocaml-modules/tezos/signer-services.nix { }; + tezos-stdlib-unix = callPackage ../development/ocaml-modules/tezos/stdlib-unix.nix { }; + tezos-stdlib = callPackage ../development/ocaml-modules/tezos/stdlib.nix { }; + tezos-test-helpers = callPackage ../development/ocaml-modules/tezos/test-helpers.nix { }; + tezos-store = callPackage ../development/ocaml-modules/tezos/store.nix { }; + tezos-validation = callPackage ../development/ocaml-modules/tezos/validation.nix { }; + tezos-version = callPackage ../development/ocaml-modules/tezos/version.nix { }; + tezos-workers = callPackage ../development/ocaml-modules/tezos/workers.nix { }; + + theora = callPackage ../development/ocaml-modules/theora { }; + + toml = callPackage ../development/ocaml-modules/toml { }; + + topkg = callPackage ../development/ocaml-modules/topkg { }; + + trie = callPackage ../development/ocaml-modules/trie { }; + + tsdl = callPackage ../development/ocaml-modules/tsdl { }; + + twt = callPackage ../development/ocaml-modules/twt { }; + + uchar = callPackage ../development/ocaml-modules/uchar { }; + + uecc = callPackage ../development/ocaml-modules/uecc { }; + + utop = callPackage ../development/tools/ocaml/utop { }; + + uuidm = callPackage ../development/ocaml-modules/uuidm { }; + + sawja = callPackage ../development/ocaml-modules/sawja { }; + + stdint = callPackage ../development/ocaml-modules/stdint { }; + + unstrctrd = callPackage ../development/ocaml-modules/unstrctrd { }; + + uucd = callPackage ../development/ocaml-modules/uucd { }; + uucp = callPackage ../development/ocaml-modules/uucp { }; + uunf = callPackage ../development/ocaml-modules/uunf { }; + + uri = callPackage ../development/ocaml-modules/uri { }; + + uri-sexp = callPackage ../development/ocaml-modules/uri/sexp.nix { }; + + uuseg = callPackage ../development/ocaml-modules/uuseg { }; + uutf = callPackage ../development/ocaml-modules/uutf { }; + + uuuu = callPackage ../development/ocaml-modules/uuuu { }; + + vchan = callPackage ../development/ocaml-modules/vchan { }; + + vector = callPackage ../development/ocaml-modules/vector { }; + + vg = callPackage ../development/ocaml-modules/vg { }; + + vlq = callPackage ../development/ocaml-modules/vlq { }; + + vorbis = callPackage ../development/ocaml-modules/vorbis { }; + + visitors = callPackage ../development/ocaml-modules/visitors { }; + + wasm = callPackage ../development/ocaml-modules/wasm { }; + + wayland = callPackage ../development/ocaml-modules/wayland { }; + + webbrowser = callPackage ../development/ocaml-modules/webbrowser { }; + + webmachine = callPackage ../development/ocaml-modules/webmachine { }; + + wodan = callPackage ../development/ocaml-modules/wodan { }; + + wodan-irmin = callPackage ../development/ocaml-modules/wodan/irmin.nix { }; + + wodan-unix = callPackage ../development/ocaml-modules/wodan/unix.nix { }; + + wtf8 = callPackage ../development/ocaml-modules/wtf8 { }; + + x509 = callPackage ../development/ocaml-modules/x509 { }; + + xenstore = callPackage ../development/ocaml-modules/xenstore { }; + + xenstore_transport = callPackage ../development/ocaml-modules/xenstore_transport { }; + + xenstore-tool = callPackage ../development/ocaml-modules/xenstore-tool { }; + + xmlm = callPackage ../development/ocaml-modules/xmlm { }; + + xml-light = callPackage ../development/ocaml-modules/xml-light { }; + + xtmpl = callPackage ../development/ocaml-modules/xtmpl { }; + + xtmpl_ppx = callPackage ../development/ocaml-modules/xtmpl/ppx.nix { }; + + yaml = callPackage ../development/ocaml-modules/yaml { }; + + yaml-sexp = callPackage ../development/ocaml-modules/yaml/yaml-sexp.nix { }; + + yojson = callPackage ../development/ocaml-modules/yojson { }; + + yuscii = callPackage ../development/ocaml-modules/yuscii { }; + + z3 = callPackage ../development/ocaml-modules/z3 { + inherit (pkgs) z3; + }; + + zarith = callPackage ../development/ocaml-modules/zarith { }; + + zed = callPackage ../development/ocaml-modules/zed { }; + + zmq = callPackage ../development/ocaml-modules/zmq { }; + + zmq-lwt = callPackage ../development/ocaml-modules/zmq/lwt.nix { }; + + ocsigen_deriving = callPackage ../development/ocaml-modules/ocsigen-deriving { + oasis = ocaml_oasis; + }; + + # Jane Street + + janePackage = + if lib.versionOlder "4.08" ocaml.version + then callPackage ../development/ocaml-modules/janestreet/janePackage_0_14.nix {} + else if lib.versionOlder "4.07" ocaml.version + then callPackage ../development/ocaml-modules/janestreet/janePackage_0_12.nix {} + else callPackage ../development/ocaml-modules/janestreet/janePackage.nix {}; + + janeStreet = + if lib.versionOlder "4.08" ocaml.version + then import ../development/ocaml-modules/janestreet/0.14.nix { + inherit self; + inherit (pkgs) fetchpatch lib openssl zstd; + } + else if lib.versionOlder "4.07" ocaml.version + then import ../development/ocaml-modules/janestreet/0.12.nix { + self = self // { + ppxlib = ppxlib.override { version = "0.8.1"; }; + }; + inherit (pkgs) openssl; + } + else import ../development/ocaml-modules/janestreet { + self = self // { + ppxlib = ppxlib.override { version = "0.8.1"; }; + }; + inherit (pkgs) openssl; + }; + + janeStreet_0_9_0 = import ../development/ocaml-modules/janestreet/old.nix { + self = self.janeStreet_0_9_0; + super = self // { + janePackage = callPackage ../development/ocaml-modules/janestreet/janePackage.nix { + defaultVersion = "0.9.0"; + }; + }; + inherit (pkgs) stdenv lib openssl; + }; + + # Apps / from all-packages + + ocamlnat = callPackage ../development/ocaml-modules/ocamlnat { }; + + omake_rc1 = callPackage ../development/tools/ocaml/omake/0.9.8.6-rc1.nix { }; + + google-drive-ocamlfuse = callPackage ../applications/networking/google-drive-ocamlfuse { + # needs Base64 module + ocaml_extlib = ocaml_extlib.override { minimal = false; }; + }; + + hol_light = callPackage ../applications/science/logic/hol_light { }; + + })).overrideScope' liftJaneStreet; + +in let inherit (pkgs) callPackage; in rec +{ + + ocamlPackages_4_00_1 = mkOcamlPackages (callPackage ../development/compilers/ocaml/4.00.1.nix { }); + + ocamlPackages_4_01_0 = mkOcamlPackages (callPackage ../development/compilers/ocaml/4.01.0.nix { }); + + ocamlPackages_4_02 = mkOcamlPackages (callPackage ../development/compilers/ocaml/4.02.nix { }); + + ocamlPackages_4_03 = mkOcamlPackages (callPackage ../development/compilers/ocaml/4.03.nix { }); + + ocamlPackages_4_04 = mkOcamlPackages (callPackage ../development/compilers/ocaml/4.04.nix { }); + + ocamlPackages_4_05 = mkOcamlPackages (callPackage ../development/compilers/ocaml/4.05.nix { }); + + ocamlPackages_4_06 = mkOcamlPackages (callPackage ../development/compilers/ocaml/4.06.nix { }); + + ocamlPackages_4_07 = mkOcamlPackages (callPackage ../development/compilers/ocaml/4.07.nix { }); + + ocamlPackages_4_08 = mkOcamlPackages (callPackage ../development/compilers/ocaml/4.08.nix { }); + + ocamlPackages_4_09 = mkOcamlPackages (callPackage ../development/compilers/ocaml/4.09.nix { }); + + ocamlPackages_4_10 = mkOcamlPackages (callPackage ../development/compilers/ocaml/4.10.nix { }); + + ocamlPackages_4_11 = mkOcamlPackages (callPackage ../development/compilers/ocaml/4.11.nix { }); + + ocamlPackages_4_12 = mkOcamlPackages (callPackage ../development/compilers/ocaml/4.12.nix { }); + + ocamlPackages_4_13 = mkOcamlPackages (callPackage ../development/compilers/ocaml/4.13.nix { }); + + ocamlPackages_4_14 = mkOcamlPackages (callPackage ../development/compilers/ocaml/4.14.nix { }); + + ocamlPackages_latest = ocamlPackages_4_13; + + ocamlPackages = ocamlPackages_4_13; +} diff --git a/nixpkgs/pkgs/top-level/octave-packages.nix b/nixpkgs/pkgs/top-level/octave-packages.nix new file mode 100644 index 000000000000..3895d7871f91 --- /dev/null +++ b/nixpkgs/pkgs/top-level/octave-packages.nix @@ -0,0 +1,220 @@ +# This file contains the GNU Octave add-on packages set. +# Each attribute is an Octave library. +# Expressions for the Octave libraries are supposed to be in `pkgs/development/octave-modules/<name>/default.nix`. + +# When contributing a new package, if that package has a dependency on another +# octave package, then you DO NOT need to explicitly list it as such when +# performing the callPackage. It will be passed implicitly. +# In addition, try to use the same dependencies as the ones octave needs, which +# should ensure greater compatibility between Octave itself and its packages. + +# Like python-packages.nix, packages from top-level.nix are not in the scope +# of the `callPackage` used for packages here. So, when we do need packages +# from outside, we can `inherit` them from `pkgs`. +{ pkgs +, lib +, stdenv +, fetchurl +, newScope +, octave +}: + +with lib; + +makeScope newScope (self: + let + inherit (octave) blas lapack gfortran python texinfo gnuplot; + + callPackage = self.callPackage; + + buildOctavePackage = callPackage ../development/interpreters/octave/build-octave-package.nix { + inherit lib stdenv; + inherit octave; + inherit computeRequiredOctavePackages; + }; + + wrapOctave = callPackage ../development/interpreters/octave/wrap-octave.nix { + inherit octave; + inherit (pkgs) makeSetupHook makeWrapper; + }; + + # Given a list of required Octave package derivations, get a list of + # ALL required Octave packages needed for the ones specified to run. + computeRequiredOctavePackages = drvs: let + # Check whether a derivation is an octave package + hasOctavePackage = drv: drv?isOctavePackage; + packages = filter hasOctavePackage drvs; + in unique (packages ++ concatLists (catAttrs "requiredOctavePackages" packages)); + + in { + + inherit callPackage buildOctavePackage computeRequiredOctavePackages; + + inherit (callPackage ../development/interpreters/octave/hooks { }) + writeRequiredOctavePackagesHook; + + arduino = callPackage ../development/octave-modules/arduino { + inherit (pkgs) arduino-core-unwrapped; + }; + + audio = callPackage ../development/octave-modules/audio { }; + + bim = callPackage ../development/octave-modules/bim { }; + + bsltl = callPackage ../development/octave-modules/bsltl { }; + + cgi = callPackage ../development/octave-modules/cgi { }; + + communications = callPackage ../development/octave-modules/communications { }; + + control = callPackage ../development/octave-modules/control { }; + + data-smoothing = callPackage ../development/octave-modules/data-smoothing { }; + + database = callPackage ../development/octave-modules/database { }; + + dataframe = callPackage ../development/octave-modules/dataframe { }; + + dicom = callPackage ../development/octave-modules/dicom { }; + + divand = callPackage ../development/octave-modules/divand { }; + + doctest = callPackage ../development/octave-modules/doctest { }; + + econometrics = callPackage ../development/octave-modules/econometrics { }; + + fem-fenics = callPackage ../development/octave-modules/fem-fenics { + # PLACEHOLDER until KarlJoad gets dolfin packaged. + dolfin = null; + ffc = null; + }; + + fits = callPackage ../development/octave-modules/fits { }; + + financial = callPackage ../development/octave-modules/financial { }; + + fpl = callPackage ../development/octave-modules/fpl { }; + + fuzzy-logic-toolkit = callPackage ../development/octave-modules/fuzzy-logic-toolkit { }; + + ga = callPackage ../development/octave-modules/ga { }; + + general = callPackage ../development/octave-modules/general { + nettle = pkgs.nettle; + }; + + generate_html = callPackage ../development/octave-modules/generate_html { }; + + geometry = callPackage ../development/octave-modules/geometry { }; + + gsl = callPackage ../development/octave-modules/gsl { + inherit (pkgs) gsl; + }; + + image = callPackage ../development/octave-modules/image { }; + + image-acquisition = callPackage ../development/octave-modules/image-acquisition { }; + + instrument-control = callPackage ../development/octave-modules/instrument-control { }; + + io = callPackage ../development/octave-modules/io { + inherit (octave) enableJava; + }; + + interval = callPackage ../development/octave-modules/interval { }; + + level-set = callPackage ../development/octave-modules/level-set { }; + + linear-algebra = callPackage ../development/octave-modules/linear-algebra { }; + + lssa = callPackage ../development/octave-modules/lssa { }; + + ltfat = callPackage ../development/octave-modules/ltfat { + inherit (octave) fftw fftwSinglePrec portaudio jdk; + inherit (pkgs) fftwFloat fftwLongDouble; + }; + + mapping = callPackage ../development/octave-modules/mapping { }; + + matgeom = callPackage ../development/octave-modules/matgeom { }; + + miscellaneous = callPackage ../development/octave-modules/miscellaneous { }; + + msh = callPackage ../development/octave-modules/msh { + # PLACEHOLDER until KarlJoad gets dolfin packaged. + dolfin = null; + }; + + mvn = callPackage ../development/octave-modules/mvn { }; + + nan = callPackage ../development/octave-modules/nan { }; + + ncarray = callPackage ../development/octave-modules/ncarray { }; + + netcdf = callPackage ../development/octave-modules/netcdf { + inherit (pkgs) netcdf; + }; + + nurbs = callPackage ../development/octave-modules/nurbs { }; + + ocl = callPackage ../development/octave-modules/ocl { }; + + octclip = callPackage ../development/octave-modules/octclip { }; + + octproj = callPackage ../development/octave-modules/octproj { }; + + optics = callPackage ../development/octave-modules/optics { }; + + optim = callPackage ../development/octave-modules/optim { }; + + optiminterp = callPackage ../development/octave-modules/optiminterp { }; + + parallel = callPackage ../development/octave-modules/parallel { }; + + quaternion = callPackage ../development/octave-modules/quaternion { }; + + queueing = callPackage ../development/octave-modules/queueing { }; + + signal = callPackage ../development/octave-modules/signal { }; + + sockets = callPackage ../development/octave-modules/sockets { }; + + sparsersb = callPackage ../development/octave-modules/sparsersb { }; + + stk = callPackage ../development/octave-modules/stk { }; + + splines = callPackage ../development/octave-modules/splines { }; + + statistics = callPackage ../development/octave-modules/statistics { }; + + strings = callPackage ../development/octave-modules/strings { }; + + struct = callPackage ../development/octave-modules/struct { }; + + symbolic = callPackage ../development/octave-modules/symbolic { + inherit (octave) python; + }; + + tisean = callPackage ../development/octave-modules/tisean { }; + + tsa = callPackage ../development/octave-modules/tsa { }; + + vibes = callPackage ../development/octave-modules/vibes { + vibes = null; + # TODO: Need to package vibes: + # https://github.com/ENSTABretagneRobotics/VIBES + }; + + video = callPackage ../development/octave-modules/video { }; + + vrml = callPackage ../development/octave-modules/vrml { + freewrl = null; + }; + + windows = callPackage ../development/octave-modules/windows { }; + + zeromq = callPackage ../development/octave-modules/zeromq { + inherit (pkgs) zeromq autoreconfHook; + }; + + }) diff --git a/nixpkgs/pkgs/top-level/packages-config.nix b/nixpkgs/pkgs/top-level/packages-config.nix new file mode 100644 index 000000000000..c33f8b2dc2aa --- /dev/null +++ b/nixpkgs/pkgs/top-level/packages-config.nix @@ -0,0 +1,52 @@ +# Used in the generation of package search database. +{ + # Ensures no aliases are in the results. + allowAliases = false; + + # Enable recursion into attribute sets that nix-env normally doesn't look into + # so that we can get a more complete picture of the available packages for the + # purposes of the index. + packageOverrides = super: with super; lib.mapAttrs (_: set: recurseIntoAttrs set) { + inherit (super) + apacheHttpdPackages + atomPackages + fdbPackages + fusePackages + gns3Packages + idrisPackages + nodePackages + nodePackages_latest + platformioPackages + quicklispPackagesClisp + quicklispPackagesSBCL + rPackages + roundcubePlugins + sconsPackages + sourceHanPackages + steamPackages + ut2004Packages + zabbix40 + zabbix50 + zeroadPackages + ; + + haskellPackages = super.haskellPackages // { + # mesos, which this depends on, has been removed from nixpkgs. We are keeping + # the error message for now, so users will get an error message they can make + # sense of, but need to work around it here. + # TODO(@sternenseemann): remove this after branch-off of 22.05, along with the + # override in configuration-nix.nix + hs-mesos = null; + }; + + # Make sure haskell.compiler is included, so alternative GHC versions show up, + # but don't add haskell.packages.* since they contain the same packages (at + # least by name) as haskellPackages. + haskell = super.haskell // { + compiler = recurseIntoAttrs super.haskell.compiler; + }; + + # This is an alias which we disallow by default; explicitly allow it + emacs27Packages = emacs27.pkgs; + }; +} diff --git a/nixpkgs/pkgs/top-level/perl-packages.nix b/nixpkgs/pkgs/top-level/perl-packages.nix new file mode 100644 index 000000000000..2a5d49070183 --- /dev/null +++ b/nixpkgs/pkgs/top-level/perl-packages.nix @@ -0,0 +1,25475 @@ +/* This file defines the composition for CPAN (Perl) packages. It has + been factored out of all-packages.nix because there are so many of + them. Also, because most Nix expressions for CPAN packages are + trivial, most are actually defined here. I.e. there's no function + for each package in a separate file: the call to the function would + be almost as much code as the function itself. */ + +{ config +, stdenv, lib, buildPackages, pkgs +, fetchurl, fetchgit, fetchpatch, fetchFromGitHub, fetchFromGitLab +, perl, overrides, buildPerl, shortenPerlShebang +, nixosTests +}: + +# cpan2nix assumes that perl-packages.nix will be used only with perl 5.30.3 or above +assert lib.versionAtLeast perl.version "5.30.3"; +let + inherit (lib) maintainers teams; + self = _self // (overrides pkgs); + _self = with self; { + + inherit perl; + perlPackages = self; + + callPackage = pkgs.newScope self; + + # Check whether a derivation provides a perl module. + hasPerlModule = drv: drv ? perlModule ; + + requiredPerlModules = drvs: let + modules = lib.filter hasPerlModule drvs; + in lib.unique ([perl] ++ modules ++ lib.concatLists (lib.catAttrs "requiredPerlModules" modules)); + + # Convert derivation to a perl module. + toPerlModule = drv: + drv.overrideAttrs( oldAttrs: { + # Use passthru in order to prevent rebuilds when possible. + passthru = (oldAttrs.passthru or {}) // { + perlModule = perl; + requiredPerlModules = requiredPerlModules drv.propagatedBuildInputs; + }; + }); + + buildPerlPackage = callPackage ../development/perl-modules/generic { + inherit buildPerl; + }; + + # Helper functions for packages that use Module::Build to build. + buildPerlModule = args: + buildPerlPackage ({ + buildPhase = '' + runHook preBuild + perl Build.PL --prefix=$out; ./Build build + runHook postBuild + ''; + installPhase = '' + runHook preInstall + ./Build install + runHook postInstall + ''; + checkPhase = '' + runHook preCheck + ./Build test + runHook postCheck + ''; + } // args // { + preConfigure = '' + touch Makefile.PL + ${args.preConfigure or ""} + ''; + buildInputs = (args.buildInputs or []) ++ [ ModuleBuild ]; + }); + + /* Construct a perl search path (such as $PERL5LIB) + + Example: + pkgs = import <nixpkgs> { } + makePerlPath [ pkgs.perlPackages.libnet ] + => "/nix/store/n0m1fk9c960d8wlrs62sncnadygqqc6y-perl-Net-SMTP-1.25/lib/perl5/site_perl" + */ + makePerlPath = lib.makeSearchPathOutput "lib" perl.libPrefix; + + /* Construct a perl search path recursively including all dependencies (such as $PERL5LIB) + + Example: + pkgs = import <nixpkgs> { } + makeFullPerlPath [ pkgs.perlPackages.CGI ] + => "/nix/store/fddivfrdc1xql02h9q500fpnqy12c74n-perl-CGI-4.38/lib/perl5/site_perl:/nix/store/8hsvdalmsxqkjg0c5ifigpf31vc4vsy2-perl-HTML-Parser-3.72/lib/perl5/site_perl:/nix/store/zhc7wh0xl8hz3y3f71nhlw1559iyvzld-perl-HTML-Tagset-3.20/lib/perl5/site_perl" + */ + makeFullPerlPath = deps: makePerlPath (lib.misc.closePropagation deps); + + + ack = buildPerlPackage { + pname = "ack"; + version = "3.5.0"; + + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PETDANCE/ack-v3.5.0.tar.gz"; + sha256 = "sha256-ZgU+iE6AM4egLd7g1oq/KhAjn6tlQ2TaszKHMJpyVSE="; + }; + + outputs = ["out" "man"]; + + nativeBuildInputs = lib.optional stdenv.isDarwin shortenPerlShebang; + propagatedBuildInputs = [ FileNext ]; + postInstall = lib.optionalString stdenv.isDarwin '' + shortenPerlShebang $out/bin/ack + ''; + + # tests fails on nixos and hydra because of different purity issues + doCheck = false; + + meta = with lib; { + description = "A grep-like tool tailored to working with large trees of source code"; + homepage = "https://beyondgrep.com"; + license = licenses.artistic2; + maintainers = with maintainers; [ lovek323 ]; + }; + }; + + ActionCircuitBreaker = buildPerlPackage { + pname = "Action-CircuitBreaker"; + version = "0.1"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HA/HANGY/Action-CircuitBreaker-0.1.tar.gz"; + sha256 = "3f8f5d726fae537ab336e00a6819ae4a8596e4c5f243e772a536ef2eb6e606b1"; + }; + buildInputs = [ ActionRetry TryTiny ]; + propagatedBuildInputs = [ Moo ]; + meta = { + homepage = "https://github.com/hangy/Action-CircuitBreaker"; + description = "Module to try to perform an action, with an option to suspend execution after a number of failures"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ActionRetry = buildPerlPackage { + pname = "Action-Retry"; + version = "0.24"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DAMS/Action-Retry-0.24.tar.gz"; + sha256 = "a3759742c5bef2d1975ab73d35499d8113324919b24936130255cff07d0294f7"; + }; + propagatedBuildInputs = [ MathFibonacci ModuleRuntime Moo ]; + meta = { + description = "Module to try to perform an action, with various ways of retrying and sleeping between retries"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + AlgorithmAnnotate = buildPerlPackage { + pname = "Algorithm-Annotate"; + version = "0.10"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CL/CLKAO/Algorithm-Annotate-0.10.tar.gz"; + sha256 = "1y92k4nqkscfwpriv8q7c90rjfj85lvwq1k96niv2glk8d37dcf9"; + }; + propagatedBuildInputs = [ AlgorithmDiff ]; + }; + + AlgorithmC3 = buildPerlPackage { + pname = "Algorithm-C3"; + version = "0.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HA/HAARG/Algorithm-C3-0.11.tar.gz"; + sha256 = "02ck52cf0yyk57354rd1rp5l0kbfwi1pvg2lh3jadvjxfrkq9x5a"; + }; + meta = { + description = "A module for merging hierarchies using the C3 algorithm"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + AlgorithmCheckDigits = buildPerlModule { + pname = "Algorithm-CheckDigits"; + version = "1.3.5"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MAMAWE/Algorithm-CheckDigits-v1.3.5.tar.gz"; + sha256 = "a956d0517180d6d9042f47d73aa6a2728b75fcbd546940d2dbe0a7e7cf428f73"; + }; + buildInputs = [ ProbePerl ]; + meta = { + description = "Perl extension to generate and test check digits"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + AlgorithmDiff = buildPerlPackage { + pname = "Algorithm-Diff"; + version = "1.1903"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TY/TYEMQ/Algorithm-Diff-1.1903.tar.gz"; + sha256 = "0l8pk7ziz72d022hsn4xldhhb9f5649j5cgpjdibch0xng24ms1h"; + }; + buildInputs = [ pkgs.unzip ]; + }; + + AlgorithmLCSS = buildPerlPackage { + pname = "Algorithm-LCSS"; + version = "0.01"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JF/JFREEMAN/Algorithm-LCSS-0.01.tar.gz"; + sha256 = "0y0zc3sq283zpv67vy7a3h3dyvjn5svjxwknanmp38a2g36fyz3i"; + }; + propagatedBuildInputs = [ AlgorithmDiff ]; + meta = { + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + AlgorithmMerge = buildPerlPackage { + pname = "Algorithm-Merge"; + version = "0.08"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JS/JSMITH/Algorithm-Merge-0.08.tar.gz"; + sha256 = "1kqn13wd0lfjrf6h19b9kgdqqwp7k2d9yfq5i0wvii0xi8jqh1lw"; + }; + propagatedBuildInputs = [ AlgorithmDiff ]; + }; + + AlienBaseModuleBuild = buildPerlModule { + pname = "Alien-Base-ModuleBuild"; + version = "1.15"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PL/PLICEASE/Alien-Base-ModuleBuild-1.15.tar.gz"; + sha256 = "13c9432cf41b34cb14df2454a03e540e2bd5dc9eb9c82824b6ad0f4c67793afd"; + }; + buildInputs = [ Test2Suite ]; + propagatedBuildInputs = [ AlienBuild ArchiveExtract CaptureTiny Filechdir PathTiny ShellConfigGenerate ShellGuess SortVersions URI ]; + meta = { + homepage = "https://metacpan.org/pod/Alien::Base::ModuleBuild"; + description = "A Module::Build subclass for building Alien:: modules and their libraries"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + AlienBuild = buildPerlPackage { + pname = "Alien-Build"; + version = "2.37"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PL/PLICEASE/Alien-Build-2.37.tar.gz"; + sha256 = "0lgdr4d4hpv9q6i8lzs5lrilrwj8zm1cxzxwdgvl69j8k2zbq01h"; + }; + propagatedBuildInputs = [ CaptureTiny FFICheckLib FileWhich Filechdir PathTiny PkgConfig ]; + buildInputs = [ DevelHide Test2Suite ]; + meta = { + description = "Build external dependencies for use in CPAN"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + AlienGMP = buildPerlPackage { + pname = "Alien-GMP"; + version = "1.16"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PL/PLICEASE/Alien-GMP-1.16.tar.gz"; + sha256 = "199x24pl6jnqshgnl066lhdf2fkqa6l1fml9g3qn5grmwn7d8309"; + }; + propagatedBuildInputs = [ AlienBuild ]; + buildInputs = [ pkgs.gmp Alienm4 DevelChecklib IOSocketSSL MojoDOM58 NetSSLeay SortVersions Test2Suite URI ]; + meta = { + description = "Alien package for the GNU Multiple Precision library."; + license = with lib.licenses; [ lgpl3Plus ]; + }; + }; + + AlienLibGumbo = buildPerlModule { + pname = "Alien-LibGumbo"; + version = "0.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RU/RUZ/Alien-LibGumbo-0.05.tar.gz"; + sha256 = "0fbe916ab11f680e5c28cd1ac800372323e2a0e06affc6c8b36279fc64d76517"; + }; + buildInputs = [ AlienBaseModuleBuild ]; + propagatedBuildInputs = [ AlienBuild FileShareDir PathClass ]; + meta = { + description = "Gumbo parser library"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + broken = stdenv.isDarwin; # never built on Hydra https://hydra.nixos.org/job/nixpkgs/staging-next/perl534Packages.AlienLibGumbo.x86_64-darwin + }; + }; + + AlienLibxml2 = buildPerlPackage { + pname = "Alien-Libxml2"; + version = "0.17"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PL/PLICEASE/Alien-Libxml2-0.17.tar.gz"; + sha256 = "1cwdqspbq0r0bmw0079z4qzc7chs5aw6jdf3699nxhxmy1255d3k"; + }; + propagatedBuildInputs = [ AlienBuild ]; + buildInputs = [ pkgs.libxml2 MojoDOM58 SortVersions Test2Suite URI ]; + meta = { + description = "Install the C libxml2 library on your system"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + aliased = buildPerlModule { + pname = "aliased"; + version = "0.34"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/aliased-0.34.tar.gz"; + sha256 = "1syyqzy462501kn5ma9gl6xbmcahqcn4qpafhsmpz0nd0x2m4l63"; + }; + buildInputs = [ ModuleBuildTiny ]; + }; + + asa = buildPerlPackage { + pname = "asa"; + version = "1.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/asa-1.04.tar.gz"; + sha256 = "0pk783s1h2f45zbmm6a62yfgy71w4sqh8ppgs4cyxfikwxs3p0z5"; + }; + meta = { + description = "Lets your class/object say it works like something else"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + AlienSDL = buildPerlModule { + pname = "Alien-SDL"; + version = "1.446"; + src = fetchurl { + url = "mirror://cpan/authors/id/F/FR/FROGGS/Alien-SDL-1.446.tar.gz"; + sha256 = "c9aa2c9dc3c63d89773c7d7203f2a46d1b924d0c72d9f801af147a3dc8bc512a"; + }; + patches = [ ../development/perl-modules/alien-sdl.patch ]; + + installPhase = "./Build install --prefix $out"; + + SDL_INST_DIR = pkgs.SDL.dev; + buildInputs = [ pkgs.SDL ArchiveExtract ArchiveZip TextPatch ]; + propagatedBuildInputs = [ CaptureTiny FileShareDir FileWhich ]; + + meta = { + description = "Get, Build and Use SDL libraries"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + AlienTidyp = buildPerlModule { + pname = "Alien-Tidyp"; + version = "1.4.7"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KM/KMX/Alien-Tidyp-v1.4.7.tar.gz"; + sha256 = "0raapwp4155lqag1kzhsd20z4if10hav9wx4d7mc1xpvf7dcnr5r"; + }; + + buildInputs = [ ArchiveExtract ]; + TIDYP_DIR = pkgs.tidyp; + propagatedBuildInputs = [ FileShareDir ]; + }; + + AlienWxWidgets = buildPerlModule { + pname = "Alien-wxWidgets"; + version = "0.69"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MD/MDOOTSON/Alien-wxWidgets-0.69.tar.gz"; + sha256 = "0jg2dmkzhj03f6b0vmv597yryfw9cclsdn9ynvvlrzzgpd5lw8jk"; + }; + propagatedBuildInputs = [ pkgs.pkg-config pkgs.gtk2 pkgs.wxGTK30 ModulePluggable ]; + buildInputs = [ LWPProtocolHttps ]; + }; + + Alienm4 = buildPerlPackage { + pname = "Alien-m4"; + version = "0.19"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PL/PLICEASE/Alien-m4-0.19.tar.gz"; + sha256 = "1xnh8qa99dcvqcqzbpy0s5jrxvn7wa5ydz3lfd56n358l5jfzns9"; + }; + propagatedBuildInputs = [ AlienBuild ]; + buildInputs = [ pkgs.gnum4 Alienpatch IOSocketSSL MojoDOM58 NetSSLeay SortVersions Test2Suite URI ]; + meta = { + description = "Find or build GNU m4"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Alienpatch = buildPerlPackage { + pname = "Alien-patch"; + version = "0.15"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PL/PLICEASE/Alien-patch-0.15.tar.gz"; + sha256 = "1l00mq56596wn09nn7fv552j2aa7sgh46bvx5xlncsnrn8jp5mpy"; + }; + propagatedBuildInputs = [ AlienBuild ]; + buildInputs = [ IOSocketSSL MojoDOM58 NetSSLeay SortVersions Test2Suite URI ]; + meta = { + description = "Find or build patch"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + AltCryptRSABigInt = buildPerlPackage { + pname = "Alt-Crypt-RSA-BigInt"; + version = "0.06"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DANAJ/Alt-Crypt-RSA-BigInt-0.06.tar.gz"; + sha256 = "76f434cab36999cdf09811345bb39d6b7cbed7e085b02338328c7f46e08b38f3"; + }; + propagatedBuildInputs = [ ClassLoader ConvertASCIIArmour DataBuffer DigestMD2 MathBigIntGMP MathPrimeUtil SortVersions TieEncryptedHash ]; + meta = { + homepage = "https://github.com/danaj/Alt-Crypt-RSA-BigInt"; + description = "RSA public-key cryptosystem, using Math::BigInt"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + AnyEvent = buildPerlPackage { + pname = "AnyEvent"; + version = "7.17"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/ML/MLEHMANN/AnyEvent-7.17.tar.gz"; + sha256 = "50beea689c098fe4aaeb83806c40b9fe7f946d5769acf99f849f099091a4b985"; + }; + buildInputs = [ CanaryStability ]; + meta = { + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + AnyEventAIO = buildPerlPackage { + pname ="AnyEvent-AIO"; + version = "1.1"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/ML/MLEHMANN/AnyEvent-AIO-1.1.tar.gz"; + sha256 = "0svh0mlp17g0ypq8bgs3h3axg8v7h0z45hryacgn6q8mcj65n43b"; + }; + propagatedBuildInputs = [ AnyEvent IOAIO ]; + meta = { + description = "Truly asynchronous file and directory I/O"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + AnyEventBDB = buildPerlPackage rec { + pname = "AnyEvent-BDB"; + version = "1.1"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/ML/MLEHMANN/${pname}-${version}.tar.gz"; + sha256 = "93e36010940464626e5f31b9faedd65e12ed8d1abf16ce052febf23f495aefc8"; + }; + buildInputs = [ CanaryStability ]; + propagatedBuildInputs = [ BDB AnyEvent ]; + meta = { + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + AnyEventCacheDNS = buildPerlModule { + pname = "AnyEvent-CacheDNS"; + version = "0.08"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PO/POTYL/AnyEvent-CacheDNS-0.08.tar.gz"; + sha256 = "41c1faf183b61806b55889ceea1237750c1f61b9ce2735fdf33dc05536712dae"; + }; + propagatedBuildInputs = [ AnyEvent ]; + doCheck = false; # does an DNS lookup + meta = { + homepage = "https://github.com/potyl/perl-AnyEvent-CacheDNS"; + description = "Simple DNS resolver with caching"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + AnyEventFastPing = buildPerlPackage { + pname = "AnyEvent-FastPing"; + version = "2.1"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/ML/MLEHMANN/AnyEvent-FastPing-2.1.tar.gz"; + sha256 = "0b3ha864nw0qk22ybhzfgz0r0p69iyj01bi500x9hp6kga7ip4p5"; + }; + propagatedBuildInputs = [ AnyEvent commonsense ]; + meta = { + }; + }; + + AnyEventHTTP = buildPerlPackage { + pname = "AnyEvent-HTTP"; + version = "2.25"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/ML/MLEHMANN/AnyEvent-HTTP-2.25.tar.gz"; + sha256 = "5cfa53416124176f6f4cd32b00ea8ca79a2d5df51258683989cd04fe86e25013"; + }; + propagatedBuildInputs = [ AnyEvent commonsense ]; + }; + + AnyEventI3 = buildPerlPackage { + pname = "AnyEvent-I3"; + version = "0.17"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MS/MSTPLBG/AnyEvent-I3-0.17.tar.gz"; + sha256 = "5382c984c9f138395f29f0c00af81aa0c8f4b765582055c73ede4b13f04a6d63"; + }; + propagatedBuildInputs = [ AnyEvent JSONXS ]; + meta = { + description = "Communicate with the i3 window manager"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + AnyEventIRC = buildPerlPackage rec { + pname = "AnyEvent-IRC"; + version = "0.97"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/EL/ELMEX/${pname}-${version}.tar.gz"; + sha256 = "bfd7cf645c3c8c611471057128611447e20f1adf01516c69624cbd8bc77f5bf0"; + }; + propagatedBuildInputs = [ AnyEvent ObjectEvent commonsense ]; + meta = { + description = "An event based IRC protocol client API"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + AnyEventRabbitMQ = buildPerlPackage { + pname = "AnyEvent-RabbitMQ"; + version = "1.22"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DL/DLAMBLEY/AnyEvent-RabbitMQ-1.22.tar.gz"; + sha256 = "98c52a1fe700710f3e5bc55a38b25de625e9b2e8341d278dcf9e1b3f3d19acee"; + }; + buildInputs = [ FileShareDirInstall TestException ]; + propagatedBuildInputs = [ AnyEvent DevelGlobalDestruction FileShareDir ListMoreUtils NetAMQP Readonly namespaceclean ]; + meta = { + description = "An asynchronous and multi channel Perl AMQP client"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + AnyMoose = buildPerlPackage { + pname = "Any-Moose"; + version = "0.27"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Any-Moose-0.27.tar.gz"; + sha256 = "0dc55mpayrixwx8dwql0vj0jalg4rlb3k64rprc84bl0z8vkx9m8"; + }; + propagatedBuildInputs = [ Moose Mouse ]; + }; + + AnyURIEscape = buildPerlPackage { + pname = "Any-URI-Escape"; + version = "0.01"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PH/PHRED/Any-URI-Escape-0.01.tar.gz"; + sha256 = "0k4c20bmw32yxksgkc2i44j4vfmzhqcqrq36pv0ab3qhkzn3r0g3"; + }; + propagatedBuildInputs = [ URI ]; + meta = { + description = "Load URI::Escape::XS preferentially over URI::Escape"; + }; + }; + + URIEscapeXS = buildPerlPackage { + pname = "URI-Escape-XS"; + version = "0.14"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DANKOGAI/URI-Escape-XS-0.14.tar.gz"; + sha256 = "c39ac50c6c2b831ae4bf08692e6ca5d4a3f9c57dc4d7f9c4cb0663e2c86c2759"; + }; + meta = { + description = "Drop-In replacement for URI::Escape"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ApacheAuthCookie = buildPerlPackage { + pname = "Apache-AuthCookie"; + version = "3.30"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MS/MSCHOUT/Apache-AuthCookie-3.30.tar.gz"; + sha256 = "1f71b94d3d55a950a4b32dae4e90f6e76c8157508a7e2aee50621b179aadb1fb"; + }; + buildInputs = [ ApacheTest ]; + propagatedBuildInputs = [ ClassLoad HTTPBody HashMultiValue WWWFormUrlEncoded ]; + + # Fails because /etc/protocols is not available in sandbox and make + # getprotobyname('tcp') in ApacheTest fail. + doCheck = !stdenv.isLinux; + + meta = { + homepage = "https://github.com/mschout/apache-authcookie"; + description = "Perl Authentication and Authorization via cookies"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ApacheDB = buildPerlPackage { + pname = "Apache-DB"; + version = "0.18"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LZ/LZE/Apache-DB-0.18.tar.gz"; + sha256 = "6527f4f1598270bea07bec787b71bdf0ec2b572548be7438cf74f2b9a600bfed"; + }; + meta = { + description = "Run the interactive Perl debugger under mod_perl"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ApacheLogFormatCompiler = buildPerlModule { + pname = "Apache-LogFormat-Compiler"; + version = "0.36"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KA/KAZEBURO/Apache-LogFormat-Compiler-0.36.tar.gz"; + sha256 = "05xcl7j65vakx7x79jqjikyw0nzf60bc2w6hhc0q5sklxq1ral4l"; + }; + buildInputs = [ HTTPMessage ModuleBuildTiny TestMockTime TestRequires TryTiny URI ]; + propagatedBuildInputs = [ POSIXstrftimeCompiler ]; + # We cannot change the timezone on the fly. + prePatch = "rm t/04_tz.t"; + meta = { + homepage = "https://github.com/kazeburo/Apache-LogFormat-Compiler"; + description = "Compile a log format string to perl-code"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ApacheSession = buildPerlModule { + pname = "Apache-Session"; + version = "1.94"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CH/CHORNY/Apache-Session-1.94.tar.gz"; + sha256 = "17z9cdsk3vxah1dlix1pi68dlnjplymf4bdqwn50psdgk5lbfsgy"; + }; + buildInputs = [ TestDeep TestException ]; + meta = { + description = "A persistence framework for session data"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ApacheTest = buildPerlPackage { + pname = "Apache-Test"; + version = "1.42"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHAY/Apache-Test-1.42.tar.gz"; + sha256 = "1sxk7dmpg3ib1dkl58ddh7zffnv5danwba7qxp82k54agmyz1086"; + }; + doCheck = false; + meta = { + description = "Test.pm wrapper with helpers for testing Apache"; + license = lib.licenses.asl20; + }; + }; + + AppCLI = buildPerlPackage { + pname = "App-CLI"; + version = "0.50"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PT/PTC/App-CLI-0.50.tar.gz"; + sha256 = "0ick5agl02rx2pjfxl97d0f9qksy8pjn0asmwm3gn6dm7a1zblsi"; + }; + propagatedBuildInputs = [ CaptureTiny ClassLoad ]; + buildInputs = [ TestKwalitee TestPod ]; + }; + + AppClusterSSH = buildPerlModule { + pname = "App-ClusterSSH"; + version = "4.16"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DU/DUNCS/App-ClusterSSH-4.16.tar.gz"; + sha256 = "0y2mzprv47ff4sig2fkvd10jwz2h4x6srncbvx528mk8c2mvhz0v"; + }; + propagatedBuildInputs = [ ExceptionClass Tk X11ProtocolOther XMLSimple ]; + buildInputs = [ DataDump FileWhich Readonly TestDifferences TestTrap ]; + preCheck = "rm t/30cluster.t"; # do not run failing tests + postInstall = '' + mkdir -p $out/share/bash-completion/completions + mv $out/bin/clusterssh_bash_completion.dist \ + $out/share/bash-completion/completions/clusterssh_bash_completion + substituteInPlace $out/share/bash-completion/completions/clusterssh_bash_completion \ + --replace '/bin/true' '${pkgs.coreutils}/bin/true' \ + --replace 'grep' '${pkgs.gnugrep}/bin/grep' \ + --replace 'sed' '${pkgs.gnused}/bin/sed' + ''; + meta = { + description = "A container for functions of the ClusterSSH programs"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/duncs/clusterssh/wiki"; + }; + }; + + AppCmd = buildPerlPackage { + pname = "App-Cmd"; + version = "0.331"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/App-Cmd-0.331.tar.gz"; + sha256 = "4a5d3df0006bd278880d01f4957aaa652a8f91fe8f66e93adf70fba0c3ecb680"; + }; + buildInputs = [ TestFatal ]; + propagatedBuildInputs = [ CaptureTiny ClassLoad GetoptLongDescriptive IOTieCombine ModulePluggable StringRewritePrefix ]; + meta = { + homepage = "https://github.com/rjbs/App-Cmd"; + description = "Write command line apps with less suffering"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + AppConfig = buildPerlPackage { + pname = "AppConfig"; + version = "1.71"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NE/NEILB/AppConfig-1.71.tar.gz"; + sha256 = "03vvi3mk4833mx2c6dkm9zhvakf02mb2b7wz9pk9xc7c4mq04xqi"; + }; + meta = { + description = "A bundle of Perl5 modules for reading configuration files and parsing command line arguments"; + }; + buildInputs = [ TestPod ]; + }; + + AppFatPacker = buildPerlPackage { + pname = "App-FatPacker"; + version = "0.010008"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MS/MSTROUT/App-FatPacker-0.010008.tar.gz"; + sha256 = "1kzcbpsf1p7ww45d9fl2w0nfn5jj5pz0r0c649c1lrj5r1nv778j"; + }; + meta = { + description = "pack your dependencies onto your script file"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Appcpanminus = buildPerlPackage { + pname = "App-cpanminus"; + version = "1.7045"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIYAGAWA/App-cpanminus-1.7045.tar.gz"; + sha256 = "1779w07zxlgfk35s24ksr7k9azd5yl8sbb48y1aaph7y4gf4lkmc"; + }; + # Use TLS endpoints for downloads and metadata by default + preConfigure = '' + substituteInPlace bin/cpanm \ + --replace http://www.cpan.org https://www.cpan.org \ + --replace http://backpan.perl.org https://backpan.perl.org \ + --replace http://fastapi.metacpan.org https://fastapi.metacpan.org \ + --replace http://cpanmetadb.plackperl.org https://cpanmetadb.plackperl.org + ''; + propagatedBuildInputs = [ IOSocketSSL ]; + meta = { + homepage = "https://github.com/miyagawa/cpanminus"; + description = "Get, unpack, build and install modules from CPAN"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Appcpm = buildPerlModule { + pname = "App-cpm"; + version = "0.997006"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SK/SKAJI/App-cpm-0.997006.tar.gz"; + sha256 = "1mh4bg141qbch0vdvir2l9533zzm3k8hnqx36iwciwzhvpd9hl9s"; + }; + buildInputs = [ ModuleBuildTiny ]; + propagatedBuildInputs = [ CPAN02PackagesSearch CPANCommonIndex CPANDistnameInfo ClassTiny CommandRunner ExtUtilsInstall ExtUtilsInstallPaths FileCopyRecursive Filepushd HTTPTinyish MenloLegacy Modulecpmfile ModuleCPANfile ParsePMFile ParallelPipes locallib ]; + nativeBuildInputs = lib.optional stdenv.isDarwin shortenPerlShebang; + postInstall = lib.optionalString stdenv.isDarwin '' + shortenPerlShebang $out/bin/cpm + ''; + meta = { + homepage = "https://github.com/skaji/cpm"; + description = "A fast CPAN module installer"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.zakame ]; + }; + }; + + Applify = buildPerlPackage { + pname = "Applify"; + version = "0.22"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JH/JHTHORSEN/Applify-0.22.tar.gz"; + sha256 = "0y644rr7gl49awn27xj556q9i86fddkkn26gnfn52wm19d7aa94a"; + }; + meta = { + homepage = "https://github.com/jhthorsen/applify"; + description = "Write object oriented scripts with ease"; + license = lib.licenses.artistic2; + maintainers = [ maintainers.sgo ]; + }; + }; + + AppMusicChordPro = buildPerlPackage { + pname = "App-Music-ChordPro"; + version = "0.977"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JV/JV/App-Music-ChordPro-0.977.tar.gz"; + sha256 = "0ggip43cddi5f6rylb07f56dhkfhbcbm621lvcnjfadnn9lrbwqh"; + }; + buildInputs = [ PodParser ]; + propagatedBuildInputs = [ AppPackager FileLoadLines IOString ImageInfo PDFAPI2 StringInterpolateNamed TextLayout ] + ++ lib.optional (!stdenv.isDarwin) [ Wx ]; + nativeBuildInputs = lib.optional stdenv.isDarwin shortenPerlShebang; + postInstall = lib.optionalString stdenv.isDarwin '' + shortenPerlShebang $out/bin/chordpro + rm $out/bin/wxchordpro # Wx not supported on darwin + ''; + meta = { + homepage = "https://www.chordpro.org"; + description = "A lyrics and chords formatting program"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + AppPackager = buildPerlPackage { + pname = "App-Packager"; + version = "1.430.1"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JV/JV/App-Packager-1.430.1.tar.gz"; + sha256 = "57f4d014458387f9e2ed2dfd8615d1e2545b8a6504b10af22486578d8be374a3"; + }; + meta = { + description = "Abstraction for Packagers"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Appperlbrew = buildPerlModule { + pname = "App-perlbrew"; + version = "0.89"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GU/GUGOD/App-perlbrew-0.89.tar.gz"; + sha256 = "00krymnsvz5qx7fkn4hpfqlgrqmbkbf45f9jr3vl4yqcyrsmiyhg"; + }; + buildInputs = [ pkgs.curl FileWhich IOAll ModuleBuildTiny PathClass TestException TestNoWarnings TestOutput TestSpec TestTempDirTiny ]; + propagatedBuildInputs = [ CPANPerlReleases CaptureTiny DevelPatchPerl PodParser locallib ]; + + doCheck = false; + + meta = { + description = "Manage perl installations in your $HOME"; + license = lib.licenses.mit; + }; + }; + + ArchiveAnyLite = buildPerlPackage { + pname = "Archive-Any-Lite"; + version = "0.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/I/IS/ISHIGAKI/Archive-Any-Lite-0.11.tar.gz"; + sha256 = "0w2i50fd81ip674zmnrb15nadw162fdpiw4rampbd94k74jqih8m"; + }; + propagatedBuildInputs = [ ArchiveZip ]; + buildInputs = [ ExtUtilsMakeMakerCPANfile TestUseAllModules ]; + meta = { + description = "simple CPAN package extractor"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + AppSqitch = buildPerlModule { + version = "1.1.0"; + pname = "App-Sqitch"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DW/DWHEELER/App-Sqitch-v1.1.0.tar.gz"; + sha256 = "ee146cd75d6300837e6ca559bb0bde247d42123c96b2c5d4b2800f38d3e3d1ab"; + }; + buildInputs = [ CaptureTiny TestDeep TestDir TestException TestFile TestFileContents TestMockModule TestMockObject TestNoWarnings TestWarn ]; + propagatedBuildInputs = [ Clone ConfigGitLike DBI DateTime EncodeLocale HashMerge IOPager IPCRun3 IPCSystemSimple ListMoreUtils PathClass PerlIOutf8_strict PodParser StringFormatter StringShellQuote TemplateTiny Throwable TypeTiny URIdb libintl-perl ]; + doCheck = false; # Can't find home directory. + meta = { + homepage = "https://sqitch.org/"; + description = "Sane database change management"; + license = lib.licenses.mit; + }; + }; + + AppSt = buildPerlPackage { + pname = "App-St"; + version = "1.1.4"; + src = fetchurl { + url = "https://github.com/nferraz/st/archive/v1.1.4.tar.gz"; + sha256 = "1f4bqm4jiazcxgzzja1i48671za96621k0s3ln87cdacgvv1can0"; + }; + postInstall = + '' + ($out/bin/st --help || true) | grep Usage + ''; + meta = { + description = "A command that computes simple statistics"; + license = lib.licenses.mit; + homepage = "https://github.com/nferraz/st"; + maintainers = [ maintainers.eelco ]; + }; + }; + + AttributeParamsValidate = buildPerlPackage { + pname = "Attribute-Params-Validate"; + version = "1.21"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DR/DROLSKY/Attribute-Params-Validate-1.21.tar.gz"; + sha256 = "586b939ceffdb37188b7c461dd1a8f9f35695184c8703b05c35f6d508c8090f5"; + }; + buildInputs = [ TestFatal ]; + propagatedBuildInputs = [ ParamsValidate ]; + doCheck = false; + meta = { + description = "Define validation through subroutine attributes"; + license = lib.licenses.artistic2; + }; + }; + + ArrayCompare = buildPerlModule { + pname = "Array-Compare"; + version = "3.0.7"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DAVECROSS/Array-Compare-v3.0.7.tar.gz"; + sha256 = "1p2kv4p2p5i6a665ax4b8iq1wal4x0g259yv32cc2ypbk7v11qs4"; + }; + + buildInputs = [ TestNoWarnings ]; + propagatedBuildInputs = [ Moo TypeTiny ]; + }; + + ArrayDiff = buildPerlPackage { + pname = "Array-Diff"; + version = "0.09"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NE/NEILB/Array-Diff-0.09.tar.gz"; + sha256 = "0xsh8k312spzl90xds075qprcaz4r0b93g1bgi9l3rv1k0p3j1l0"; + }; + propagatedBuildInputs = [ AlgorithmDiff ClassAccessor ]; + meta = { + description = "Find the differences between two arrays"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ArrayFIFO = buildPerlPackage { + pname = "Array-FIFO"; + version = "0.13"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DB/DBURKE/Array-FIFO-0.13.tar.gz"; + sha256 = "be2aeb5f5a9af1a96f0033508a569ca93ad19ad15dc7c6b998e6d7bc740c66f7"; + }; + buildInputs = [ TestDeep TestSpec TestTrap ]; + propagatedBuildInputs = [ Moose namespaceautoclean ]; + meta = { + homepage = "https://github.com/dwburke/perl-Array-FIFO"; + description = "A Simple limitable FIFO array, with sum and average methods"; + license = lib.licenses.artistic2; + }; + }; + + AsyncPing = buildPerlPackage { + pname = "AsyncPing"; + version = "2016.1207"; + src = fetchurl { + url = "mirror://cpan/authors/id/X/XI/XINFWANG/AsyncPing-2016.1207.tar.gz"; + sha256 = "0nn9k79gihzr9wfksi03jmdgc2ihsb4952ddz1v70xvsq7z9mgkg"; + }; + meta = { + description = "ping a huge number of servers in several seconds"; + license = with lib.licenses; [ artistic2 ]; + }; + }; + + ArchiveCpio = buildPerlPackage { + pname = "Archive-Cpio"; + version = "0.10"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PI/PIXEL/Archive-Cpio-0.10.tar.gz"; + sha256 = "246fb31669764e78336b2191134122e07c44f2d82dc4f37d552ab28f8668bed3"; + }; + meta = { + description = "Module for manipulations of cpio archives"; + # See https://rt.cpan.org/Public/Bug/Display.html?id=43597#txn-569710 + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ArchiveExtract = buildPerlPackage { + pname = "Archive-Extract"; + version = "0.86"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BI/BINGOS/Archive-Extract-0.86.tar.gz"; + sha256 = "9acd09cdb8e8cf0b6d08210a3b80342300c89a359855319bf6b00c14c4aab687"; + }; + meta = { + description = "Generic archive extracting mechanism"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ArchiveTar = buildPerlPackage { + pname = "Archive-Tar"; + version = "2.38"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BI/BINGOS/Archive-Tar-2.38.tar.gz"; + sha256 = "c5e48f53514288185830ced93bf3e16fbdf5cddce97ded1d1d8a9b0a21ea287b"; + }; + meta = { + description = "Manipulates TAR archives"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ArchiveTarWrapper = buildPerlPackage { + pname = "Archive-Tar-Wrapper"; + version = "0.38"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AR/ARFREITAS/Archive-Tar-Wrapper-0.38.tar.gz"; + sha256 = "0ymknznhk5ky7f835l0l5wfkx8kl0vfm0hvhijvgyp5rm3dd1wqr"; + }; + propagatedBuildInputs = [ FileWhich IPCRun LogLog4perl ]; + meta = { + description = "API wrapper around the 'tar' utility"; + }; + }; + + ArchiveZip = buildPerlPackage { + pname = "Archive-Zip"; + version = "1.68"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PH/PHRED/Archive-Zip-1.68.tar.gz"; + sha256 = "0l663s3a68p8r2qjy4pn1g05lx0i8js8wpz7qqln3bsvg1fihklq"; + }; + buildInputs = [ TestMockModule ]; + meta = { + description = "Provide an interface to ZIP archive files"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + AstroFITSHeader = buildPerlModule rec { + pname = "Astro-FITS-Header"; + version = "3.07"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TJ/TJENNESS/${pname}-${version}.tar.gz"; + sha256 = "530d59ef0c0935f9862d187187a2d7583b12c639bb67db14f983322b161892d9"; + }; + meta = { + homepage = "https://github.com/timj/perl-Astro-FITS-Header/tree/master"; + description = "Object-oriented interface to FITS HDUs"; + license = lib.licenses.free; + }; + }; + + AudioScan = buildPerlPackage { + pname = "Audio-Scan"; + version = "1.01"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AG/AGRUNDMA/Audio-Scan-1.01.tar.gz"; + sha256 = "0jk3djnk6yf0jsjh8qk3mj8bkx4avp6i4czcpr5xrbf7f41744l3"; + }; + buildInputs = [ pkgs.zlib TestWarn ]; + NIX_CFLAGS_COMPILE = "-I${pkgs.zlib.dev}/include"; + NIX_CFLAGS_LINK = "-L${pkgs.zlib.out}/lib -lz"; + meta = { + description = "Fast C metadata and tag reader for all common audio file formats"; + license = lib.licenses.gpl2; + }; + }; + + AuthenDecHpwd = buildPerlModule { + pname = "Authen-DecHpwd"; + version = "2.007"; + src = fetchurl { + url = "mirror://cpan/authors/id/Z/ZE/ZEFRAM/Authen-DecHpwd-2.007.tar.gz"; + sha256 = "f43a93bb02b41f7327d92f9e963b69505f67350a52e8f50796f98afc4fb3f177"; + }; + perlPreHook = lib.optionalString stdenv.isi686 "export LD=$CC"; # fix undefined reference to `__stack_chk_fail_local' + propagatedBuildInputs = [ DataInteger DigestCRC ScalarString ]; + meta = { + description = "DEC VMS password hashing"; + license = lib.licenses.gpl1Plus; + }; + }; + + AuthenHtpasswd = buildPerlPackage { + pname = "Authen-Htpasswd"; + version = "0.171"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MS/MSTROUT/Authen-Htpasswd-0.171.tar.gz"; + sha256 = "0rw06hwpxg388d26l0jvirczx304f768ijvc20l4b2ll7xzg9ymm"; + }; + propagatedBuildInputs = [ ClassAccessor CryptPasswdMD5 DigestSHA1 IOLockedFile ]; + meta = { + description = "Interface to read and modify Apache .htpasswd files"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + AuthenKrb5 = buildPerlModule { + pname = "Authen-Krb5"; + version = "1.905"; + src = fetchurl { + url = "mirror://cpan/authors/id/I/IO/IOANR/Authen-Krb5-1.905.tar.gz"; + sha256 = "0kgpl0x1qxq1p2ccxy8qqkrvqba2gq6aq6p931qnz9812nxh0yyp"; + }; + perlPreHook = "export LD=$CC"; + propagatedBuildInputs = [ pkgs.libkrb5 ]; + meta = { + description = "XS bindings for Kerberos 5"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ DevelChecklib FileWhich PkgConfig ]; + }; + + AuthenKrb5Admin = buildPerlPackage rec { + pname = "Authen-Krb5-Admin"; + version = "0.17"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SJ/SJQUINNEY/Authen-Krb5-Admin-0.17.tar.gz"; + sha256 = "5dd49cacd983efd61a8c3f1a56571bb73785eb155908b5d7bec97eed78df0c54"; + }; + propagatedBuildInputs = [ pkgs.krb5Full.dev AuthenKrb5 ]; + # The following ENV variables are required by Makefile.PL to find + # programs in krb5Full.dev. It is not enough to just specify the + # path to krb5-config as this tool returns the prefix of krb5Full, + # which implies a working value for KRB5_LIBDIR, but not the others. + perlPreHook = '' + export KRB5_CONFTOOL=${pkgs.krb5Full.dev}/bin/krb5-config + export KRB5_BINDIR=${pkgs.krb5Full.dev}/bin + export KRB5_INCDIR=${pkgs.krb5Full.dev}/include + ''; + # Tests require working Kerberos infrastructure so replace with a + # simple attempt to exercise the module. + checkPhase = '' + perl -I blib/lib -I blib/arch -MAuthen::Krb5::Admin -e 'print "1..1\nok 1\n"' + ''; + meta = { + description = "Perl extension for MIT Kerberos 5 admin interface"; + license = lib.licenses.bsd3; + }; + }; + + AuthenModAuthPubTkt = buildPerlPackage { + pname = "Authen-ModAuthPubTkt"; + version = "0.1.1"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AG/AGORDON/Authen-ModAuthPubTkt-0.1.1.tar.gz"; + sha256 = "7996e1a42c51216003ccf03c4b5250286b4c55684257971851f5ece9161dc7dd"; + }; + propagatedBuildInputs = [ pkgs.openssl IPCRun3 ]; + patchPhase = '' + sed -i 's|my $openssl_bin = "openssl";|my $openssl_bin = "${pkgs.openssl}/bin/openssl";|' lib/Authen/ModAuthPubTkt.pm + # -dss1 doesn't exist for dgst in openssl 1.1, -sha1 can also handle DSA keys now + sed -i 's|-dss1|-sha1|' lib/Authen/ModAuthPubTkt.pm + ''; + meta = { + description = "Generate Tickets (Signed HTTP Cookies) for mod_auth_pubtkt protected websites"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + AuthenOATH = buildPerlPackage { + pname = "Authen-OATH"; + version = "2.0.1"; + src = fetchurl { + url = "mirror://cpan/authors/id/O/OA/OALDERS/Authen-OATH-2.0.1.tar.gz"; + sha256 = "1a813dbdc05c3fbd9dd39dbcfd85e2cfb0ba3d0f652cf6b26ec83ab8146ddc77"; + }; + buildInputs = [ TestNeeds ]; + propagatedBuildInputs = [ DigestHMAC Moo TypeTiny ]; + meta = { + homepage = "https://github.com/oalders/authen-oath"; + description = "OATH One Time Passwords"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + AuthenPassphrase = buildPerlModule { + pname = "Authen-Passphrase"; + version = "0.008"; + src = fetchurl { + url = "mirror://cpan/authors/id/Z/ZE/ZEFRAM/Authen-Passphrase-0.008.tar.gz"; + sha256 = "55db4520617d859d88c0ee54965da815b7226d792b8cdc8debf92073559e0463"; + }; + propagatedBuildInputs = [ AuthenDecHpwd CryptDES CryptEksblowfish CryptMySQL CryptPasswdMD5 CryptUnixCryptXS DataEntropy DigestMD4 ModuleRuntime ]; + meta = { + description = "Hashed passwords/passphrases as objects"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + AuthenRadius = buildPerlPackage { + pname = "Authen-Radius"; + version = "0.32"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PO/PORTAONE/Authen-Radius-0.32.tar.gz"; + sha256 = "0h0p4djscwixpbgbxrs9vsyx1vl7cm9r4j15cx11hfn86yc8y83v"; + }; + buildInputs = [ TestNoWarnings ]; + propagatedBuildInputs = [ DataHexDump NetIP ]; + meta = { + description = "Provide simple Radius client facilities "; + license = with lib.licenses; [ artistic2 ]; + }; + }; + + AuthenSASL = buildPerlPackage { + pname = "Authen-SASL"; + version = "2.16"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GB/GBARR/Authen-SASL-2.16.tar.gz"; + sha256 = "02afhlrdq5hh5g8b32fa79fqq5i76qzwfqqvfi9zi57h31szl536"; + }; + propagatedBuildInputs = [ DigestHMAC ]; + meta = { + description = "SASL Authentication framework"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + AuthenSASLSASLprep = buildPerlModule { + pname = "Authen-SASL-SASLprep"; + version = "1.100"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CF/CFAERBER/Authen-SASL-SASLprep-1.100.tar.gz"; + sha256 = "a4cccc34bb3f53acf0ba78c9fc61af8d156d109d1c10487ba5988a55077d1f70"; + }; + buildInputs = [ TestNoWarnings ]; + propagatedBuildInputs = [ UnicodeStringprep ]; + meta = { + description = "A Stringprep Profile for User Names and Passwords (RFC 4013)"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + AuthenSCRAM = buildPerlPackage { + pname = "Authen-SCRAM"; + version = "0.011"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DAGOLDEN/Authen-SCRAM-0.011.tar.gz"; + sha256 = "45108c239a7373d00941dcf0d171acd03e7c16a63ce6f7d9568ff052b17cf5a8"; + }; + buildInputs = [ TestFailWarnings TestFatal ]; + propagatedBuildInputs = [ AuthenSASLSASLprep CryptURandom Moo PBKDF2Tiny TypeTiny namespaceclean ]; + meta = { + homepage = "https://github.com/dagolden/Authen-SCRAM"; + description = "Salted Challenge Response Authentication Mechanism (RFC 5802)"; + license = lib.licenses.asl20; + maintainers = [ maintainers.sgo ]; + }; + }; + + AuthenSimple = buildPerlPackage { + pname = "Authen-Simple"; + version = "0.5"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CH/CHANSEN/Authen-Simple-0.5.tar.gz"; + sha256 = "02cddab47f8bf1a1cbd4c9bf8d258f6d05111499c33f8315e7244812f72613aa"; + }; + propagatedBuildInputs = [ ClassAccessor ClassDataInheritable CryptPasswdMD5 ParamsValidate ]; + meta = { + description = "Simple Authentication"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + AuthenSimplePasswd = buildPerlModule { + pname = "Authen-Simple-Passwd"; + version = "0.6"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CH/CHANSEN/Authen-Simple-Passwd-0.6.tar.gz"; + sha256 = "1ckl2ry9r5nb1rcn1ik2l5b5pp1i3g4bmllsmzb0zpwy4lvbqmfg"; + }; + propagatedBuildInputs = [ AuthenSimple ]; + meta = { + description = "Simple Passwd authentication"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + autobox = buildPerlPackage { + pname = "autobox"; + version = "3.0.1"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CH/CHOCOLATE/autobox-v3.0.1.tar.gz"; + sha256 = "c303b7fccfaa1ff4d4c429ab3f15e5ca2a77554ef8c9fc3b8c62ba859e874c98"; + }; + propagatedBuildInputs = [ ScopeGuard ]; + meta = { + description = "Call methods on native types"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ IPCSystemSimple TestFatal ]; + }; + + Autodia = buildPerlPackage { + pname = "Autodia"; + version = "2.14"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TE/TEEJAY/Autodia-2.14.tar.gz"; + sha256 = "08pl5y18nsvy8ihfzdsbd8rz6a8al09wqfna07zdjfdyib42b0dc"; + }; + propagatedBuildInputs = [ TemplateToolkit XMLSimple ]; + + meta = { + description = "AutoDia, create UML diagrams from source code"; + + longDescription = '' + AutoDia is a modular application that parses source code, XML or data + and produces an XML document in Dia format (or images via graphviz + and vcg). Its goal is to be a UML / DB Schema diagram autocreation + package. The diagrams its creates are standard UML diagrams showing + dependencies, superclasses, packages, classes and inheritances, as + well as the methods, etc of each class. + + AutoDia supports any language that a Handler has been written for, + which includes C, C++, Java, Perl, Python, and more. + ''; + + homepage = "http://www.aarontrevena.co.uk/opensource/autodia/"; + license = lib.licenses.gpl2Plus; + }; + buildInputs = [ DBI ]; + }; + + autovivification = buildPerlPackage { + pname = "autovivification"; + version = "0.18"; + src = fetchurl { + url = "mirror://cpan/authors/id/V/VP/VPIT/autovivification-0.18.tar.gz"; + sha256 = "01giacr2sx6b9bgfz6aqw7ndcnf08j8n6kwhm7880a94hmb9g69d"; + }; + meta = { + description = "Lexically disable autovivification"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + BarcodeZBar = buildPerlPackage { + pname = "Barcode-ZBar"; + version = "0.04pre"; + # The meta::cpan version of this module has been unmaintained from 2009 + # This uses an updated version from the ZBar repo that works with the current ZBar library + src = "${pkgs.zbar.src}/perl"; + postPatch = '' + substituteInPlace Makefile.PL --replace "-lzbar" "-L${pkgs.zbar.lib}/lib -lzbar" + rm t/Processor.t + ''; + buildInputs =[ ExtUtilsMakeMaker ]; + propagatedBuildInputs = [ pkgs.zbar PerlMagick ]; + perlPreHook = lib.optionalString stdenv.isDarwin "export LD=$CC"; + meta = { + homepage = "https://github.com/mchehab/zbar/tree/master/perl"; + description = "Perl interface to the ZBar Barcode Reader"; + license = with lib.licenses; [ gpl2Plus ]; + }; + }; + + BC = buildPerlPackage { + pname = "B-C"; + version = "1.57"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RU/RURBAN/B-C-1.57.tar.gz"; + sha256 = "1zs9a4gl63icja055kncgyny6xk1nsk6payfbzczkba3sc8sclh4"; + }; + propagatedBuildInputs = [ BFlags IPCRun Opcodes ]; + meta = { + homepage = "https://github.com/rurban/perl-compiler"; + description = "Perl compiler"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + doCheck = false; /* test fails */ + }; + + BCOW = buildPerlPackage { + pname = "B-COW"; + version = "0.004"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AT/ATOOMIC/B-COW-0.004.tar.gz"; + sha256 = "0lazb25jzhdha4dmrkdxn1pw1crc6iqzspvcq315p944xmsvgbzw"; + }; + meta = { + description = "B::COW additional B helpers to check COW status"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + BFlags = buildPerlPackage { + pname = "B-Flags"; + version = "0.17"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RU/RURBAN/B-Flags-0.17.tar.gz"; + sha256 = "1chhgkaw2h3qniz71dykynggqp0r6b6mi2f4nh4x3ghm2g89gny1"; + }; + meta = { + description = "Friendlier flags for B"; + }; + }; + + BeanstalkClient = buildPerlPackage { + pname = "Beanstalk-Client"; + version = "1.07"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GB/GBARR/Beanstalk-Client-1.07.tar.gz"; + sha256 = "3188ab1127f2caba97df65c84f69db0ec70c64e5d70f296f9a2674fa79c112cc"; + }; + propagatedBuildInputs = [ ClassAccessor YAMLSyck ]; + meta = { + description = "Client to communicate with beanstalkd server"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + BerkeleyDB = buildPerlPackage { + pname = "BerkeleyDB"; + version = "0.64"; + + src = fetchurl { + url = "mirror://cpan/authors/id/P/PM/PMQS/BerkeleyDB-0.64.tar.gz"; + sha256 = "0jvllgyk7ai8zxziaxpxar0n2054y01dq3qn40xc86lwakl8ap2k"; + }; + + preConfigure = '' + echo "LIB = ${pkgs.db.out}/lib" > config.in + echo "INCLUDE = ${pkgs.db.dev}/include" >> config.in + ''; + }; + + BDB = buildPerlPackage rec { + pname = "BDB"; + version = "1.92"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/ML/MLEHMANN/${pname}-${version}.tar.gz"; + sha256 = "a3f2ca9d2baefc1aaa40908b2f9cb9292fda3e7d797e38bbd78eabb9d9daeb6b"; + }; + NIX_CFLAGS_COMPILE = "-I${pkgs.db4.dev}/include"; + NIX_CFLAGS_LINK = "-L${pkgs.db4.out}/lib -ldb"; + buildInputs = [ pkgs.db4 ]; + propagatedBuildInputs = [ commonsense ]; + meta = { + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + BHooksEndOfScope = buildPerlPackage { + pname = "B-Hooks-EndOfScope"; + version = "0.24"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/B-Hooks-EndOfScope-0.24.tar.gz"; + sha256 = "1imcqxp23yc80a7p0h56sja9glbrh4qyhgzljqd4g9habpz3vah3"; + }; + propagatedBuildInputs = [ ModuleImplementation SubExporterProgressive ]; + meta = { + description = "Execute code after a scope finished compilation"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + BHooksOPCheck = buildPerlPackage { + pname = "B-Hooks-OP-Check"; + version = "0.22"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/B-Hooks-OP-Check-0.22.tar.gz"; + sha256 = "1kfdv25gn6yik8jrwik4ajp99gi44s6idcvyyrzhiycyynzd3df7"; + }; + buildInputs = [ ExtUtilsDepends ]; + meta = { + description = "Wrap OP check callbacks"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + BitVector = buildPerlPackage { + pname = "Bit-Vector"; + version = "7.4"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/ST/STBEY/Bit-Vector-7.4.tar.gz"; + sha256 = "09m96p8c0ipgz42li2ywdgy0vxb57mb5nf59j9gw7yzc3xkslv9w"; + }; + propagatedBuildInputs = [ CarpClan ]; + }; + + BKeywords = buildPerlPackage rec { + pname = "B-Keywords"; + version = "1.22"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RU/RURBAN/B-Keywords-${version}.tar.gz"; + sha256 = "0i2ksp0w9wv1qc22hrdl3k48cww64syhmv8zf6x0kgyd4081hr56"; + }; + meta = { + description = "Lists of reserved barewords and symbol names"; + license = with lib.licenses; [ artistic1 gpl2 ]; + }; + }; + + boolean = buildPerlPackage { + pname = "boolean"; + version = "0.46"; + src = fetchurl { + url = "mirror://cpan/authors/id/I/IN/INGY/boolean-0.46.tar.gz"; + sha256 = "95c088085c3e83bf680fe6ce16d8264ec26310490f7d1680e416ea7a118f156a"; + }; + meta = { + homepage = "https://github.com/ingydotnet/boolean-pm"; + description = "Boolean support for Perl"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + BoostGeometryUtils = buildPerlModule { + pname = "Boost-Geometry-Utils"; + version = "0.15"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AA/AAR/Boost-Geometry-Utils-0.15.tar.gz"; + sha256 = "1jnihz3029x51a455nxa0jx2z125x38q3vkkggsgdlrvawzxsm00"; + }; + patches = [ + # Fix out of memory error on Perl 5.19.4 and later. + ../development/perl-modules/boost-geometry-utils-fix-oom.patch + ]; + perlPreHook = "export LD=$CC"; + buildInputs = [ ExtUtilsCppGuess ExtUtilsTypemapsDefault ExtUtilsXSpp ModuleBuildWithXSpp ]; + }; + + BotTraining = buildPerlPackage { + pname = "Bot-Training"; + version = "0.07"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AV/AVAR/Bot-Training-0.07.tar.gz"; + sha256 = "ee66bbf814f0dc3d1e80680e050fad10b1e018fed7929f653ed40e088b2aa295"; + }; + buildInputs = [ FileSlurp ]; + propagatedBuildInputs = [ ClassLoad DirSelf FileShareDir ModulePluggable MooseXGetopt namespaceclean ]; + meta = { + homepage = "https://metacpan.org/release/Bot-Training"; + description = "Plain text training material for bots like Hailo and AI::MegaHAL"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + BotTrainingMegaHAL = buildPerlPackage { + pname = "Bot-Training-MegaHAL"; + version = "0.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AV/AVAR/Bot-Training-MegaHAL-0.03.tar.gz"; + sha256 = "956072aff04f216e5c3b8196965b5d80d4d47695d77ecaabd56e59d65f22bf60"; + }; + buildInputs = [ FileShareDirInstall ]; + propagatedBuildInputs = [ BotTraining ]; + meta = { + homepage = "https://metacpan.org/release/Bot-Training-MegaHAL"; + description = "Provide megahal.trn via Bot::Training"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + BotTrainingStarCraft = buildPerlPackage { + pname = "Bot-Training-StarCraft"; + version = "0.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AV/AVAR/Bot-Training-StarCraft-0.03.tar.gz"; + sha256 = "e7ceb8d01c62e732dd89bfe5f4d83e781c1cd912542d177c22e761b7c8614d5e"; + }; + buildInputs = [ FileShareDirInstall ]; + propagatedBuildInputs = [ BotTraining ]; + meta = { + homepage = "https://metacpan.org/release/Bot-Training-StarCraft"; + description = "Provide starcraft.trn via Bot::Training"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + BSDResource = buildPerlPackage { + pname = "BSD-Resource"; + version = "1.2911"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JH/JHI/BSD-Resource-1.2911.tar.gz"; + sha256 = "0g8c7825ng2m0yz5sy6838rvfdl8j3vm29524wjgf66ccfhgn74x"; + }; + meta = { + maintainers = teams.deshaw.members; + description = "BSD process resource limit and priority functions"; + license = lib.licenses.artistic2; + }; + }; + + BSON = buildPerlPackage { + pname = "BSON"; + version = "1.12.2"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MO/MONGODB/BSON-v1.12.2.tar.gz"; + sha256 = "f4612c0c354310741b99ab6d26451226823150ca27109b1b391232d5cfdda6db"; + }; + buildInputs = [ JSONMaybeXS PathTiny TestDeep TestFatal ]; + propagatedBuildInputs = [ CryptURandom Moo TieIxHash boolean namespaceclean ]; + meta = { + homepage = "https://github.com/mongodb-labs/mongo-perl-bson"; + description = "BSON serialization and deserialization (EOL)"; + license = lib.licenses.asl20; + }; + }; + + BSONXS = buildPerlPackage { + pname = "BSON-XS"; + version = "0.8.4"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MO/MONGODB/BSON-XS-v0.8.4.tar.gz"; + sha256 = "28f7d338fd78b6f9c9a6080be9de3f5cb23d888b96ebf6fcbface9f2966aebf9"; + }; + buildInputs = [ ConfigAutoConf JSONMaybeXS PathTiny TestDeep TestFatal TieIxHash ]; + propagatedBuildInputs = [ BSON boolean JSONXS JSONPP CpanelJSONXS ]; + meta = { + homepage = "https://github.com/mongodb-labs/mongo-perl-bson-xs"; + description = "XS implementation of MongoDB's BSON serialization (EOL)"; + license = lib.licenses.asl20; + }; + }; + + BUtils = buildPerlPackage { + pname = "B-Utils"; + version = "0.27"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/B-Utils-0.27.tar.gz"; + sha256 = "1spzhmk3z6c4blmra3kn84nq20fira2b3vjg86m0j085lgv56zzr"; + }; + propagatedBuildInputs = [ TaskWeaken ]; + buildInputs = [ ExtUtilsDepends ]; + meta = { + description = "Helper functions for op tree manipulation"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + BusinessHours = buildPerlPackage { + pname = "Business-Hours"; + version = "0.13"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BP/BPS/Business-Hours-0.13.tar.gz"; + sha256 = "1hiybixagj3i1hsnfr134jgs9wv4azkwq6kijr9zlkxqzczzw1x8"; + }; + propagatedBuildInputs = [ SetIntSpan ]; + meta = { + description = "Calculate business hours in a time period"; + }; + }; + + BusinessISBN = buildPerlPackage { + pname = "Business-ISBN"; + version = "3.005"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BD/BDFOY/Business-ISBN-3.005.tar.gz"; + sha256 = "0aifzqj3xvxi8x0103ddpb2bagfsz15c71k69vdpcqy582pgnc35"; + }; + propagatedBuildInputs = [ BusinessISBNData ]; + meta = { + description = "Parse and validate ISBNs"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + BusinessISBNData = buildPerlPackage { + pname = "Business-ISBN-Data"; + version = "20191107"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BD/BDFOY/Business-ISBN-Data-20191107.tar.gz"; + sha256 = "03faqnxx7qxgr2dcdra2iq60ziilpkas2ra41cs8klwky5j4yk44"; + }; + meta = { + description = "Data pack for Business::ISBN"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + BusinessISMN = buildPerlPackage { + pname = "Business-ISMN"; + version = "1.201"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BD/BDFOY/Business-ISMN-1.201.tar.gz"; + sha256 = "1cpcfyaz1fl6fnm076jx2jsphw147wj6aszj2yzqrgsncjhk2cja"; + }; + propagatedBuildInputs = [ TieCycle ]; + meta = { + description = "Work with International Standard Music Numbers"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + BusinessISSN = buildPerlPackage { + pname = "Business-ISSN"; + version = "1.004"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BD/BDFOY/Business-ISSN-1.004.tar.gz"; + sha256 = "97ecab15d24d11e2852bf0b28f84c8798bd38402a0a69e17be0e6689b272715e"; + }; + meta = { + description = "Work with International Standard Serial Numbers"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + BytesRandomSecure = buildPerlPackage { + pname = "Bytes-Random-Secure"; + version = "0.29"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DAVIDO/Bytes-Random-Secure-0.29.tar.gz"; + sha256 = "53bbd339e6a11efca07c619a615c7c188a68bb2be849a1cb7efc3dd4d9ae85ae"; + }; + propagatedBuildInputs = [ CryptRandomSeed MathRandomISAAC ]; + meta = { + description = "Perl extension to generate cryptographically-secure random bytes"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + BytesRandomSecureTiny = buildPerlPackage { + pname = "Bytes-Random-Secure-Tiny"; + version = "1.011"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DAVIDO/Bytes-Random-Secure-Tiny-1.011.tar.gz"; + sha256 = "03d967b5f82846909137d5ab9984ac570ac10a4401e0c602f3d2208c465ac982"; + }; + meta = { + description = "A tiny Perl extension to generate cryptographically-secure random bytes"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + CacheCache = buildPerlPackage { + pname = "Cache-Cache"; + version = "1.08"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Cache-Cache-1.08.tar.gz"; + sha256 = "1s6i670dc3yb6ngvdk48y6szdk5n1f4icdcjv2vi1l2xp9fzviyj"; + }; + propagatedBuildInputs = [ DigestSHA1 Error IPCShareLite ]; + doCheck = false; # randomly fails + }; + + CacheFastMmap = buildPerlPackage { + pname = "Cache-FastMmap"; + version = "1.54"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RO/ROBM/Cache-FastMmap-1.54.tar.gz"; + sha256 = "0lkrsr582h714jpmh5dv4szz5f7rm466xqxbavj7l9w0p40f4him"; + }; + buildInputs = [ TestDeep ]; + }; + + CacheKyotoTycoon = buildPerlModule { + pname = "Cache-KyotoTycoon"; + version = "0.16"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TOKUHIROM/Cache-KyotoTycoon-0.16.tar.gz"; + sha256 = "0z4lnc3jfqx8rykm998q2jy5wkhb8p5pir80g9lqpi4lb0ilic6c"; + }; + propagatedBuildInputs = [ Furl URI ]; + buildInputs = [ FileWhich TestRequires TestSharedFork TestTCP ]; + meta = { + description = "KyotoTycoon client library"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CacheMemcached = buildPerlPackage { + pname = "Cache-Memcached"; + version = "1.30"; + src = fetchurl { + url = + "mirror://cpan/authors/id/D/DO/DORMANDO/Cache-Memcached-1.30.tar.gz"; + sha256 = "1aa2mjn5767b13063nnsrwcikrnbspby7j1c5q007bzaq0gcbcri"; + }; + propagatedBuildInputs = [ StringCRC32 ]; + }; + + CacheMemcachedFast = buildPerlPackage { + pname = "Cache-Memcached-Fast"; + version = "0.26"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RA/RAZ/Cache-Memcached-Fast-0.26.tar.gz"; + sha256 = "16m0xafidycrlcvbv3zmbr5pzvqyqyr2qb0khpry99nc4bcld3jy"; + }; + meta = { + description = "Perl client for B<memcached>, in C language"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CacheMemory = buildPerlModule { + pname = "Cache"; + version = "2.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/Cache-2.11.tar.gz"; + sha256 = "14m513f4g02daklmnvdm7vqh3w3ick65wvmvqnmnc4cqfybdilp1"; + }; + propagatedBuildInputs = [ DBFile FileNFSLock HeapFibonacci IOString TimeDate ]; + doCheck = false; # can time out + }; + + CacheSimpleTimedExpiry = buildPerlPackage { + pname = "Cache-Simple-TimedExpiry"; + version = "0.27"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JE/JESSE/Cache-Simple-TimedExpiry-0.27.tar.gz"; + sha256 = "4e78b7e4dd231b5571a48cd0ee1b63953f5e34790c9d020e1595a7c7d0abbe49"; + }; + meta = { + description = "A lightweight cache with timed expiration"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Cairo = buildPerlPackage { + pname = "Cairo"; + version = "1.108"; + src = fetchurl { + url = "mirror://cpan/authors/id/X/XA/XAOC/Cairo-1.108.tar.gz"; + sha256 = "1nh5iya63q6j2w0cdi24x2ygpi8k8wwccnbh8cisnx8nqmywnhk0"; + }; + buildInputs = [ pkgs.cairo ]; + meta = { + homepage = "http://gtk2-perl.sourceforge.net/"; + description = "Perl interface to the cairo 2D vector graphics library"; + license = lib.licenses.lgpl21Plus; + }; + propagatedBuildInputs = [ ExtUtilsDepends ExtUtilsPkgConfig ]; + }; + + CairoGObject = buildPerlPackage { + pname = "Cairo-GObject"; + version = "1.005"; + src = fetchurl { + url = "mirror://cpan/authors/id/X/XA/XAOC/Cairo-GObject-1.005.tar.gz"; + sha256 = "0l2wcz77ndmbgvxx34gdm919a3dxh9fixqr47p50n78ysx2692cd"; + }; + buildInputs = [ pkgs.cairo ]; + meta = { + description = "Integrate Cairo into the Glib type system"; + license = lib.licenses.lgpl21Plus; + }; + propagatedBuildInputs = [ Cairo Glib ]; + }; + + CallContext = buildPerlPackage { + pname = "Call-Context"; + version = "0.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/F/FE/FELIPE/Call-Context-0.03.tar.gz"; + sha256 = "0ee6bf46bc72755adb7a6b08e79d12e207de5f7809707b3c353b58cb2f0b5a26"; + }; + meta = { + description = "Sanity-check calling context"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + cam_pdf = buildPerlModule { + pname = "CAM-PDF"; + version = "1.60"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CD/CDOLAN/CAM-PDF-1.60.tar.gz"; + sha256 = "12dv5ssf3y7yjz9mrrqnfzx8nf4ydk1qijf5fx59495671zzqsp7"; + }; + propagatedBuildInputs = [ CryptRC4 TextPDF ]; + }; + + capitalization = buildPerlPackage { + pname = "capitalization"; + version = "0.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIYAGAWA/capitalization-0.03.tar.gz"; + sha256 = "0g7fpckydzxsf8mjkfbyj0pv42dzym4hwbizqahnh7wlfbaicdgi"; + }; + propagatedBuildInputs = [ DevelSymdump ]; + meta = { + }; + }; + + CanaryStability = buildPerlPackage { + pname = "Canary-Stability"; + version = "2013"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/ML/MLEHMANN/Canary-Stability-2013.tar.gz"; + sha256 = "a5c91c62cf95fcb868f60eab5c832908f6905221013fea2bce3ff57046d7b6ea"; + }; + meta = { + license = lib.licenses.gpl1Plus; + }; + }; + + CaptchaReCAPTCHA = buildPerlPackage { + pname = "Captcha-reCaptcha"; + version = "0.99"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SU/SUNNYP/Captcha-reCaptcha-0.99.tar.gz"; + sha256 = "14j3lk6fhfzda5d3d7z6f373ng3fzxazzwpjyziysrhic1v3b4mq"; + }; + propagatedBuildInputs = [ HTMLTiny LWP ]; + }; + + CaptureTiny = buildPerlPackage { + pname = "Capture-Tiny"; + version = "0.48"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DAGOLDEN/Capture-Tiny-0.48.tar.gz"; + sha256 = "069yrikrrb4vqzc3hrkkfj96apsh7q0hg8lhihq97lxshwz128vc"; + }; + meta = { + description = "Capture STDOUT and STDERR from Perl, XS or external programs"; + license = lib.licenses.asl20; + }; + }; + + CarpAlways = buildPerlPackage { + pname = "Carp-Always"; + version = "0.16"; + src = fetchurl { + url = "mirror://cpan/authors/id/F/FE/FERREIRA/Carp-Always-0.16.tar.gz"; + sha256 = "1wb6b0qjga7kvn4p8df6k4g1pl2yzaqiln1713xidh3i454i3alq"; + }; + meta = { + description = "Warns and dies noisily with stack backtraces"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ TestBase ]; + }; + + CarpAssert = buildPerlPackage { + pname = "Carp-Assert"; + version = "0.21"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NE/NEILB/Carp-Assert-0.21.tar.gz"; + sha256 = "0km5fc6r6whxh6h5yd7g1j0bi96sgk0gkda6cardicrw9qmqwkwj"; + }; + meta = { + }; + }; + + CarpAssertMore = buildPerlPackage { + pname = "Carp-Assert-More"; + version = "1.24"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PETDANCE/Carp-Assert-More-1.24.tar.gz"; + sha256 = "0axjfl1hp7s4lcfxjj41zcp397dzhjqzd95innzxnz914xkc2p5s"; + }; + propagatedBuildInputs = [ CarpAssert ]; + meta = { + license = lib.licenses.artistic2; + }; + buildInputs = [ TestException ]; + }; + + CarpClan = buildPerlPackage { + pname = "Carp-Clan"; + version = "6.08"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Carp-Clan-6.08.tar.gz"; + sha256 = "0237xx3rqa72sr4vdvws9r1m453h5f25bl85mdjmmk128kir4py7"; + }; + meta = { + description = "Report errors from perspective of caller of a \"clan\" of modules"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Carton = buildPerlPackage { + pname = "Carton"; + version = "1.0.34"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIYAGAWA/Carton-v1.0.34.tar.gz"; + sha256 = "77d42b92732bcfc18a59d341e56ce476205b1c4d380eab3a07224f5745c23e45"; + }; + propagatedBuildInputs = [ MenloLegacy PathTiny TryTiny ]; + meta = { + homepage = "https://github.com/perl-carton/carton"; + description = "Perl module dependency manager (aka Bundler for Perl)"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CatalystActionRenderView = buildPerlPackage { + pname = "Catalyst-Action-RenderView"; + version = "0.16"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BO/BOBTFISH/Catalyst-Action-RenderView-0.16.tar.gz"; + sha256 = "8565203950a057d43ecd64e9593715d565c2fbd8b02c91f43c53b2111acd3948"; + }; + propagatedBuildInputs = [ CatalystRuntime DataVisitor ]; + meta = { + description = "Sensible default end action"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ HTTPRequestAsCGI ]; + }; + + CatalystActionREST = buildPerlPackage { + pname = "Catalyst-Action-REST"; + version = "1.21"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JJ/JJNAPIORK/Catalyst-Action-REST-1.21.tar.gz"; + sha256 = "ccf81bba5200d3a0ad6901f923af173a3d4416618aea08a6938baaffdef4cb20"; + }; + buildInputs = [ TestRequires ]; + propagatedBuildInputs = [ CatalystRuntime URIFind ]; + meta = { + description = "Automated REST Method Dispatching"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CatalystAuthenticationCredentialHTTP = buildPerlModule { + pname = "Catalyst-Authentication-Credential-HTTP"; + version = "1.018"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Catalyst-Authentication-Credential-HTTP-1.018.tar.gz"; + sha256 = "0ad5clfiyllnf37an99n139cxhhxf5g5rh8cxashsjv4xrnq38bg"; + }; + buildInputs = [ ModuleBuildTiny TestException TestMockObject TestNeeds ]; + propagatedBuildInputs = [ CatalystPluginAuthentication ClassAccessor DataUUID StringEscape ]; + meta = { + description = "HTTP Basic and Digest authentication"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CatalystAuthenticationStoreHtpasswd = buildPerlModule { + pname = "Catalyst-Authentication-Store-Htpasswd"; + version = "1.006"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Catalyst-Authentication-Store-Htpasswd-1.006.tar.gz"; + sha256 = "0kw0w2g1qmym896bgnqr1bfhvgb6xja39mv10701ipp8fmi8bzf7"; + }; + buildInputs = [ ModuleBuildTiny TestLongString TestSimple13 TestWWWMechanize TestWWWMechanizeCatalyst ]; + propagatedBuildInputs = [ AuthenHtpasswd CatalystPluginAuthentication ]; + }; + + CatalystAuthenticationStoreDBIxClass = buildPerlPackage { + pname = "Catalyst-Authentication-Store-DBIx-Class"; + version = "0.1506"; + src = fetchurl { + url = "mirror://cpan/authors/id/I/IL/ILMARI/Catalyst-Authentication-Store-DBIx-Class-0.1506.tar.gz"; + sha256 = "0i5ja7690fs9nhxcij6lw51j804sm8s06m5mvk1n8pi8jljrymvw"; + }; + propagatedBuildInputs = [ CatalystModelDBICSchema CatalystPluginAuthentication ]; + meta = { + description = "A storage class for Catalyst Authentication using DBIx::Class"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ TestWarn ]; + }; + + CatalystAuthenticationStoreLDAP = buildPerlPackage { + pname = "Catalyst-Authentication-Store-LDAP"; + version = "1.016"; + src = fetchurl { + url = "mirror://cpan/authors/id/I/IL/ILMARI/Catalyst-Authentication-Store-LDAP-1.016.tar.gz"; + sha256 = "0cm399vxqqf05cjgs1j5v3sk4qc6nmws5nfhf52qvpbwc4m82mq8"; + }; + propagatedBuildInputs = [ perlldap CatalystPluginAuthentication ClassAccessor ]; + buildInputs = [ TestMockObject TestException NetLDAPServerTest ]; + meta = { + description= "Authentication from an LDAP Directory"; + license = with lib.licenses; [ artistic1 ]; + }; + }; + + CatalystComponentInstancePerContext = buildPerlPackage { + pname = "Catalyst-Component-InstancePerContext"; + version = "0.001001"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GR/GRODITI/Catalyst-Component-InstancePerContext-0.001001.tar.gz"; + sha256 = "7f63f930e1e613f15955c9e6d73873675c50c0a3bc2a61a034733361ed26d271"; + }; + propagatedBuildInputs = [ CatalystRuntime ]; + meta = { + description = "Moose role to create only one instance of component per context"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CatalystControllerHTMLFormFu = buildPerlPackage { + pname = "Catalyst-Controller-HTML-FormFu"; + version = "2.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NI/NIGELM/Catalyst-Controller-HTML-FormFu-2.04.tar.gz"; + sha256 = "f13fb9b3b3b00b35f06abc31614461c8d7346fbe07fb569c71e8d586e5eb5ddc"; + }; + buildInputs = [ CatalystActionRenderView CatalystPluginSession CatalystPluginSessionStateCookie CatalystPluginSessionStoreFile CatalystViewTT CodeTidyAllPluginPerlAlignMooseAttributes PodCoverageTrustPod PodTidy TemplateToolkit TestCPANMeta TestDifferences TestEOL TestKwalitee TestLongString TestMemoryCycle TestNoTabs TestPAUSEPermissions TestPod TestPodCoverage TestWWWMechanize TestWWWMechanizeCatalyst ]; + propagatedBuildInputs = [ CatalystComponentInstancePerContext HTMLFormFuMultiForm RegexpAssemble ]; + meta = { + description = "Catalyst integration for HTML::FormFu"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + doCheck = false; /* fails with 'open3: exec of .. perl .. failed: Argument list too long at .../TAP/Parser/Iterator/Process.pm line 165.' */ + }; + + CatalystControllerPOD = buildPerlModule { + pname = "Catalyst-Controller-POD"; + version = "1.0.0"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PERLER/Catalyst-Controller-POD-1.0.0.tar.gz"; + sha256 = "ee2a4bb3ed78baa1464335408f284345b6ba0ef6576ad7bfbd7b656c788a39f9"; + }; + buildInputs = [ ModuleInstall TestLongString TestWWWMechanize TestWWWMechanizeCatalyst ]; + propagatedBuildInputs = [ CatalystPluginStaticSimple ClassAccessor FileSlurp JSONXS ListMoreUtils PodPOMViewTOC XMLSimple ]; + meta = { + description = "Serves PODs right from your Catalyst application"; + license = lib.licenses.bsd3; + }; + }; + + CatalystDevel = buildPerlPackage { + pname = "Catalyst-Devel"; + version = "1.42"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HA/HAARG/Catalyst-Devel-1.42.tar.gz"; + sha256 = "1gcaqivyxwsdq87v9za1ijjibh6llirzqsbpwjbw1f5mravg1iky"; + }; + buildInputs = [ FileShareDirInstall TestFatal ]; + propagatedBuildInputs = [ CatalystActionRenderView CatalystPluginConfigLoader CatalystPluginStaticSimple ConfigGeneral FileChangeNotify FileCopyRecursive ModuleInstall TemplateToolkit ]; + meta = { + homepage = "http://wiki.catalystframework.org/wiki/"; + description = "Catalyst Development Tools"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CatalystDispatchTypeRegex = buildPerlModule { + pname = "Catalyst-DispatchType-Regex"; + version = "5.90035"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MG/MGRIMES/Catalyst-DispatchType-Regex-5.90035.tar.gz"; + sha256 = "06jq1lmpq88rmp9zik5gqczg234xac0hiyc3l698iif7zsgcyb80"; + }; + propagatedBuildInputs = [ CatalystRuntime ]; + meta = { + description = "Regex DispatchType"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CatalystManual = buildPerlPackage { + pname = "Catalyst-Manual"; + version = "5.9011"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HA/HAARG/Catalyst-Manual-5.9011.tar.gz"; + sha256 = "0g61za6844ya0lk0bpvw43sj0jd553aks3hqw21hbh03b6b377mk"; + }; + meta = { + description = "The Catalyst developer's manual"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CatalystModelDBICSchema = buildPerlPackage { + pname = "Catalyst-Model-DBIC-Schema"; + version = "0.65"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GB/GBJK/Catalyst-Model-DBIC-Schema-0.65.tar.gz"; + sha256 = "26a911ef5ef7ffc81b6ce65c3156f71fb35083c456ad27e6d82d2dc02493eeea"; + }; + buildInputs = [ DBDSQLite TestException TestRequires ]; + propagatedBuildInputs = [ CatalystComponentInstancePerContext CatalystXComponentTraits DBIxClassSchemaLoader MooseXMarkAsMethods MooseXNonMoose MooseXTypesLoadableClass TieIxHash ]; + meta = { + description = "DBIx::Class::Schema Model Class"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CatalystRuntime = buildPerlPackage { + pname = "Catalyst-Runtime"; + version = "5.90128"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HA/HAARG/Catalyst-Runtime-5.90128.tar.gz"; + sha256 = "1yb0caagdrl7c1ldkwaz6w2qpgj8wcibzhqh6yscarjzmw6kppx6"; + }; + buildInputs = [ TestFatal TypeTiny ]; + propagatedBuildInputs = [ CGISimple CGIStruct ClassC3AdoptNEXT DataDump HTTPBody ModulePluggable MooseXEmulateClassAccessorFast MooseXGetopt MooseXMethodAttributes MooseXRoleWithOverloading PathClass PerlIOutf8_strict PlackMiddlewareFixMissingBodyInRedirect PlackMiddlewareMethodOverride PlackMiddlewareRemoveRedundantBody PlackMiddlewareReverseProxy PlackTestExternalServer SafeIsa StringRewritePrefix TaskWeaken TextSimpleTable TreeSimpleVisitorFactory URIws ]; + meta = { + homepage = "http://wiki.catalystframework.org/wiki/"; + description = "The Catalyst Framework Runtime"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CatalystPluginAccessLog = buildPerlPackage { + pname = "Catalyst-Plugin-AccessLog"; + version = "1.10"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AR/ARODLAND/Catalyst-Plugin-AccessLog-1.10.tar.gz"; + sha256 = "873db8e4e72a994e3e17aeb53d2b837e6d524b4b8b0f3539f262135c88cc2120"; + }; + propagatedBuildInputs = [ CatalystRuntime DateTime ]; + meta = { + description = "Request logging from within Catalyst"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CatalystPluginAuthentication = buildPerlPackage { + pname = "Catalyst-Plugin-Authentication"; + version = "0.10023"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BO/BOBTFISH/Catalyst-Plugin-Authentication-0.10023.tar.gz"; + sha256 = "0v6hb4r1wv3djrnqvnjcn3xx1scgqzx8nyjdg9lfc1ybvamrl0rn"; + }; + buildInputs = [ TestException ]; + propagatedBuildInputs = [ CatalystPluginSession ]; + meta = { + description = "Infrastructure plugin for the Catalyst authentication framework"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CatalystPluginAuthorizationACL = buildPerlPackage { + pname = "Catalyst-Plugin-Authorization-ACL"; + version = "0.16"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RK/RKITOVER/Catalyst-Plugin-Authorization-ACL-0.16.tar.gz"; + sha256 = "0z4328rr6l9xi45hyv6q9pwwamp0864q6skcp29jrz9f919ycdra"; + }; + propagatedBuildInputs = [ CatalystRuntime ClassThrowable ]; + buildInputs = [ CatalystPluginAuthentication CatalystPluginAuthorizationRoles CatalystPluginSession CatalystPluginSessionStateCookie TestWWWMechanizeCatalyst ]; + }; + + CatalystPluginAuthorizationRoles = buildPerlPackage { + pname = "Catalyst-Plugin-Authorization-Roles"; + version = "0.09"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BO/BOBTFISH/Catalyst-Plugin-Authorization-Roles-0.09.tar.gz"; + sha256 = "0l83lkwmq0lngwh8b1rv3r719pn8w1gdbyhjqm74rnd0wbjl8h7f"; + }; + buildInputs = [ TestException ]; + propagatedBuildInputs = [ CatalystPluginAuthentication SetObject UNIVERSALisa ]; + meta = { + description = "Role based authorization for Catalyst based on Catalyst::Plugin::Authentication"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CatalystPluginCache = buildPerlPackage { + pname = "Catalyst-Plugin-Cache"; + version = "0.12"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BO/BOBTFISH/Catalyst-Plugin-Cache-0.12.tar.gz"; + sha256 = "1q23aipvrl888h06ldr4mmjbykz0j4rqwipxg1jv094kki2fspr9"; + }; + buildInputs = [ ClassAccessor TestDeep TestException ]; + propagatedBuildInputs = [ CatalystRuntime ]; + meta = { + description = "Flexible caching support for Catalyst"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CatalystPluginCacheHTTP = buildPerlPackage { + pname = "Catalyst-Plugin-Cache-HTTP"; + version = "0.001000"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GR/GRAF/Catalyst-Plugin-Cache-HTTP-0.001000.tar.gz"; + sha256 = "0v5iphbq4csc4r6wkvxnqlh97p8g0yhjky9qqmsdyqczn87agbba"; + }; + buildInputs = [ CatalystRuntime TestLongString TestSimple13 TestWWWMechanize TestWWWMechanizeCatalyst ]; + propagatedBuildInputs = [ ClassAccessor HTTPMessage MROCompat ]; + meta = { + description = "HTTP/1.1 cache validators for Catalyst"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CatalystPluginCaptcha = buildPerlPackage { + pname = "Catalyst-Plugin-Captcha"; + version = "0.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DI/DIEGOK/Catalyst-Plugin-Captcha-0.04.tar.gz"; + sha256 = "0llyj3v5nx9cx46jdbbvxf1lc9s9cxq5ml22xmx3wkb201r5qgaa"; + }; + propagatedBuildInputs = [ CatalystPluginSession GDSecurityImage ]; + meta = { + description = "Create and validate Captcha for Catalyst"; + }; + }; + + CatalystPluginConfigLoader = buildPerlPackage { + pname = "Catalyst-Plugin-ConfigLoader"; + version = "0.35"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HA/HAARG/Catalyst-Plugin-ConfigLoader-0.35.tar.gz"; + sha256 = "0w8r3bbxqnlykvra6sx3sh3wh8ylkj914xg5ql6nw11ddy56jaly"; + }; + propagatedBuildInputs = [ CatalystRuntime ConfigAny DataVisitor ]; + }; + + CatalystPluginFormValidator = buildPerlPackage { + pname = "Catalyst-Plugin-FormValidator"; + version = "0.094"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DH/DHOSS/Catalyst-Plugin-FormValidator-0.094.tar.gz"; + sha256 = "5834f11bf5c9f4b5d336d65c7ce6639b76ce7bfe7a2875eb048d7ea1c82ce05a"; + }; + propagatedBuildInputs = [ CatalystRuntime DataFormValidator ]; + meta = { + description = "Data::FormValidator"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CatalystPluginFormValidatorSimple = buildPerlPackage { + pname = "Catalyst-Plugin-FormValidator-Simple"; + version = "0.15"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DH/DHOSS/Catalyst-Plugin-FormValidator-Simple-0.15.tar.gz"; + sha256 = "486c6a0e8f410fd017279f4804ab9e35ba46321d33a0a9721fe1e08a391de7a0"; + }; + propagatedBuildInputs = [ CatalystPluginFormValidator FormValidatorSimple ]; + meta = { + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CatalystPluginLogHandler = buildPerlModule { + pname = "Catalyst-Plugin-Log-Handler"; + version = "0.08"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PEPE/Catalyst-Plugin-Log-Handler-0.08.tar.gz"; + sha256 = "0db3c3a57b4ee3d789ba5129890e2858913fef00d8185bdc9c5d7fde31e043ef"; + }; + propagatedBuildInputs = [ ClassAccessor LogHandler MROCompat ]; + meta = { + description = "Catalyst Plugin for Log::Handler"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CatalystPluginPrometheusTiny = buildPerlPackage { + pname = "Catalyst-Plugin-PrometheusTiny"; + version = "0.006"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SY/SYSPETE/Catalyst-Plugin-PrometheusTiny-0.006.tar.gz"; + sha256 = "1hd2nv21c2mq3yvhsys4a276bdwr5igs4b73m99v7ymzpabvjf9b"; + }; + buildInputs = [ HTTPMessage Plack SubOverride TestDeep ]; + propagatedBuildInputs = [ CatalystRuntime Moose PrometheusTiny PrometheusTinyShared ]; + meta = { + description = "Prometheus metrics for Catalyst"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CatalystPluginSession = buildPerlPackage { + pname = "Catalyst-Plugin-Session"; + version = "0.41"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JJ/JJNAPIORK/Catalyst-Plugin-Session-0.41.tar.gz"; + sha256 = "0a451997zc2vjx7rvndgx1ldbrpic8sfbddyvncynh0zr8bhlqc5"; + }; + buildInputs = [ TestDeep TestException TestWWWMechanizePSGI ]; + propagatedBuildInputs = [ CatalystRuntime ObjectSignature ]; + meta = { + description = "Generic Session plugin - ties together server side storage and client side state required to maintain session data"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CatalystPluginSessionDynamicExpiry = buildPerlPackage { + pname = "Catalyst-Plugin-Session-DynamicExpiry"; + version = "0.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BO/BOBTFISH/Catalyst-Plugin-Session-DynamicExpiry-0.04.tar.gz"; + sha256 = "7707c56734cdb1512f733dc400fadf6f4c53cb217b58207857824dad6780a079"; + }; + propagatedBuildInputs = [ CatalystPluginSession ]; + meta = { + description = "Per-session custom expiry times"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CatalystPluginSessionStateCookie = buildPerlPackage { + pname = "Catalyst-Plugin-Session-State-Cookie"; + version = "0.18"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HA/HAARG/Catalyst-Plugin-Session-State-Cookie-0.18.tar.gz"; + sha256 = "1skvw3i9wv02kz1bz937zh7wfxvhf54i8zppln3ly6bcp6rcgcg9"; + }; + propagatedBuildInputs = [ CatalystPluginSession ]; + }; + + CatalystPluginSessionStoreFastMmap = buildPerlPackage { + pname = "Catalyst-Plugin-Session-Store-FastMmap"; + version = "0.16"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BO/BOBTFISH/Catalyst-Plugin-Session-Store-FastMmap-0.16.tar.gz"; + sha256 = "0x3j6zv3wr41jlwr6yb2jpmcx019ibyn11y8653ffnwhpzbpzsxs"; + }; + propagatedBuildInputs = [ CacheFastMmap CatalystPluginSession ]; + }; + + CatalystPluginSessionStoreFile = buildPerlPackage { + pname = "Catalyst-Plugin-Session-Store-File"; + version = "0.18"; + src = fetchurl { + url = "mirror://cpan/authors/id/F/FL/FLORA/Catalyst-Plugin-Session-Store-File-0.18.tar.gz"; + sha256 = "54738e3ce76f8be8b66947092d28973c73d79d1ee19b5d92b057552f8ff09b4f"; + }; + propagatedBuildInputs = [ CacheCache CatalystPluginSession ClassDataInheritable ]; + meta = { + description = "File storage backend for session data"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CatalystPluginSmartURI = buildPerlPackage { + pname = "Catalyst-Plugin-SmartURI"; + version = "0.041"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RK/RKITOVER/Catalyst-Plugin-SmartURI-0.041.tar.gz"; + sha256 = "0msz3w2vfdb5w4ixi5llq66xlhm0181gjz9xj8yj0lalk232326b"; + }; + propagatedBuildInputs = [ CatalystRuntime ClassC3Componentised ]; + buildInputs = [ CatalystActionREST TestWarnings TimeOut URISmartURI ]; + meta = { + description = "Configurable URIs for Catalyst"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CatalystPluginStackTrace = buildPerlPackage { + pname = "Catalyst-Plugin-StackTrace"; + version = "0.12"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BO/BOBTFISH/Catalyst-Plugin-StackTrace-0.12.tar.gz"; + sha256 = "1b2ksz74cpigxqzf63rddar3vfmnbpwpdcbs11v0ml89pb8ar79j"; + }; + propagatedBuildInputs = [ CatalystRuntime ]; + meta = { + description = "Display a stack trace on the debug screen"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CatalystPluginStaticSimple = buildPerlPackage { + pname = "Catalyst-Plugin-Static-Simple"; + version = "0.36"; + src = fetchurl { + url = "mirror://cpan/authors/id/I/IL/ILMARI/Catalyst-Plugin-Static-Simple-0.36.tar.gz"; + sha256 = "0m4l627p2fvzr4i6sgdxhdvsx4wpa6qmaibsbxlg5x5yjs7k7drn"; + }; + patches = [ ../development/perl-modules/catalyst-plugin-static-simple-etag.patch ]; + propagatedBuildInputs = [ CatalystRuntime MIMETypes MooseXTypes ]; + meta = { + description = "Make serving static pages painless"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CatalystPluginStatusMessage = buildPerlPackage { + pname = "Catalyst-Plugin-StatusMessage"; + version = "1.002000"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HK/HKCLARK/Catalyst-Plugin-StatusMessage-1.002000.tar.gz"; + sha256 = "649c894ab16f9f48ada8f9cc599a7ecbb8891ab3761ff6fd510520c6de407c1f"; + }; + propagatedBuildInputs = [ CatalystRuntime strictures ]; + meta = { + description = "Handle passing of status messages between screens of a web application"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CatalystViewCSV = buildPerlPackage { + pname = "Catalyst-View-CSV"; + version = "1.7"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MC/MCB/Catalyst-View-CSV-1.7.tar.gz"; + sha256 = "e41326b6099891f244b432921ed10096ac619f32b8c4f8b41633313bd54662db"; + }; + buildInputs = [ CatalystActionRenderView CatalystModelDBICSchema CatalystPluginConfigLoader CatalystXComponentTraits ConfigGeneral DBDSQLite DBIxClass TestException ]; + propagatedBuildInputs = [ CatalystRuntime TextCSV ]; + meta = { + description = "CSV view class"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CatalystViewDownload = buildPerlPackage { + pname = "Catalyst-View-Download"; + version = "0.09"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GA/GAUDEON/Catalyst-View-Download-0.09.tar.gz"; + sha256 = "1qgq6y9iwfbhbkbgpw9czang2ami6z8jk1zlagrzdisy4igqzkvs"; + }; + buildInputs = [ CatalystRuntime TestLongString TestSimple13 TestWWWMechanize TestWWWMechanizeCatalyst TextCSV XMLSimple ]; + meta = { + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CatalystViewJSON = buildPerlPackage { + pname = "Catalyst-View-JSON"; + version = "0.37"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HA/HAARG/Catalyst-View-JSON-0.37.tar.gz"; + sha256 = "1v4xkzazs743sc7cd1kxkbi99cf00a4dadyyancckcbpi9p3znn5"; + }; + propagatedBuildInputs = [ CatalystRuntime ]; + meta = { + description = "JSON view for your data"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CatalystViewTT = buildPerlPackage { + pname = "Catalyst-View-TT"; + version = "0.45"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HA/HAARG/Catalyst-View-TT-0.45.tar.gz"; + sha256 = "0jzgpkgq5pwq82zlb0nykdyk40dfpsyn9ilz91d0wpixgi9i5pr8"; + }; + propagatedBuildInputs = [ CatalystRuntime ClassAccessor TemplateTimer ]; + meta = { + description = "Template View Class"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CatalystXComponentTraits = buildPerlPackage { + pname = "CatalystX-Component-Traits"; + version = "0.19"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RK/RKITOVER/CatalystX-Component-Traits-0.19.tar.gz"; + sha256 = "0iq4ci8m6g2c4g01fvdl568y7pjz28f3widk986v3pyhr7ll8j88"; + }; + propagatedBuildInputs = [ CatalystRuntime MooseXTraitsPluggable ]; + }; + + CatalystXRoleApplicator = buildPerlPackage { + pname = "CatalystX-RoleApplicator"; + version = "0.005"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HD/HDP/CatalystX-RoleApplicator-0.005.tar.gz"; + sha256 = "0vwaapxn8g5hs2xp63c4dwv9jmapmji4272fakssvgc9frklg3p2"; + }; + propagatedBuildInputs = [ CatalystRuntime MooseXRelatedClassRoles ]; + }; + + CatalystTraitForRequestProxyBase = buildPerlPackage { + pname = "Catalyst-TraitFor-Request-ProxyBase"; + version = "0.000005"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BO/BOBTFISH/Catalyst-TraitFor-Request-ProxyBase-0.000005.tar.gz"; + sha256 = "a7bf0faa7e12ca5df625d9f5fc710f11bfd16ba5385837e48d42b3d286c9710a"; + }; + buildInputs = [ CatalystRuntime CatalystXRoleApplicator HTTPMessage ]; + propagatedBuildInputs = [ Moose URI namespaceautoclean ]; + meta = { + description = "Replace request base with value passed by HTTP proxy"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CatalystXScriptServerStarman = buildPerlPackage { + pname = "CatalystX-Script-Server-Starman"; + version = "0.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AB/ABRAXXA/CatalystX-Script-Server-Starman-0.03.tar.gz"; + sha256 = "08jvibq4v8xjj0c3cr93h0w8w0c88ajwjn37xjy7ygxl9krlffp6"; + }; + patches = [ + # See Nixpkgs issues #16074 and #17624 + ../development/perl-modules/CatalystXScriptServerStarman-fork-arg.patch + ]; + buildInputs = [ TestWWWMechanizeCatalyst ]; + propagatedBuildInputs = [ CatalystRuntime MooseXTypes PodParser Starman ]; + meta = { + description = "Replace the development server with Starman"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CDB_File = buildPerlPackage { + pname = "CDB_File"; + version = "1.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TODDR/CDB_File-1.05.tar.gz"; + sha256 = "0jzbm59b9q51k00djr1b8c4vjvjkwb577r946vi5s09rasfq8r45"; + }; + meta = { + homepage = "https://github.com/toddr/CDB_File"; + description = "Perl extension for access to cdb databases"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ TestFatal TestWarnings ]; + propagatedBuildInputs = [ BCOW ]; + }; + + Catmandu = buildPerlModule { + pname = "Catmandu"; + version = "1.2013"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NI/NICS/Catmandu-1.2013.tar.gz"; + sha256 = "0sh4qqjh53rhqcpbvq3pyg0k1ybs8qxivhc1an6w5hjar2bihwiq"; + }; + propagatedBuildInputs = [ AnyURIEscape AppCmd CGIExpand ConfigOnion CpanelJSONXS DataCompare DataUtil IOHandleUtil LWP ListMoreUtils LogAny MIMETypes ModuleInfo MooXAliases ParserMGC PathIteratorRule PathTiny StringCamelCase TextCSV TextHogan Throwable TryTinyByClass URITemplate UUIDTiny YAMLLibYAML namespaceclean ]; + buildInputs = [ LogAnyAdapterLog4perl LogLog4perl TestDeep TestException TestLWPUserAgent TestPod ]; + meta = { + description = "a data toolkit"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/LibreCat/Catmandu"; + }; + }; + + CDDB_get = buildPerlPackage { + pname = "CDDB_get"; + version = "2.28"; + src = fetchurl { + url = "mirror://cpan/authors/id/F/FO/FONKIE/CDDB_get-2.28.tar.gz"; + sha256 = "1jfrwvfasylcafbvb0jjm94ad4v6k99a7rf5i4qwzhg4m0gvmk5x"; + }; + meta = { + description = "Get the CDDB info for an audio cd"; + license = lib.licenses.artistic1; + maintainers = [ maintainers.endgame ]; + }; + }; + + CDDBFile = buildPerlPackage { + pname = "CDDB-File"; + version = "1.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TM/TMTM/CDDB-File-1.05.tar.gz"; + sha256 = "1jf7xhd4w9iwabhz2wajh6fid3nyvkid9q5gdhyff52w86f45rpb"; + }; + meta = { + description = "Parse a CDDB/freedb data file"; + license = lib.licenses.artistic1; + }; + }; + + + CGI = buildPerlPackage { + pname = "CGI"; + version = "4.51"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LE/LEEJO/CGI-4.51.tar.gz"; + sha256 = "02k0p8zwbn0fz9r39rg8jvbmky8fwdg6kznklzk557rg07kiblhb"; + }; + buildInputs = [ TestDeep TestNoWarnings TestWarn ]; + propagatedBuildInputs = [ HTMLParser ]; + meta = { + description = "Handle Common Gateway Interface requests and responses"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CGICompile = buildPerlModule { + pname = "CGI-Compile"; + version = "0.25"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RK/RKITOVER/CGI-Compile-0.25.tar.gz"; + sha256 = "198f94r9xjxgn0hvwy5f93xfa8jlw7d9v3v8z7qbh7mxvzp78jzl"; + }; + propagatedBuildInputs = [ Filepushd SubName ]; + buildInputs = [ CGI CaptureTiny ModuleBuildTiny SubIdentify Switch TestNoWarnings TestRequires TryTiny ]; + meta = { + description = "Compile .cgi scripts to a code reference like ModPerl::Registry"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/miyagawa/CGI-Compile"; + }; + }; + + CGICookieXS = buildPerlPackage { + pname = "CGI-Cookie-XS"; + version = "0.18"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AG/AGENT/CGI-Cookie-XS-0.18.tar.gz"; + sha256 = "1iixvnm0l1q24vdlnayb4vd8fns2bdlhm6zb7fpi884ppm5cp6a6"; + }; + }; + + CGIEmulatePSGI = buildPerlPackage { + pname = "CGI-Emulate-PSGI"; + version = "0.23"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TOKUHIROM/CGI-Emulate-PSGI-0.23.tar.gz"; + sha256 = "dd5b6c353f08fba100dae09904284f7f73f8328d31f6a67b2c136fad728d158b"; + }; + buildInputs = [ TestRequires ]; + propagatedBuildInputs = [ CGI ]; + meta = { + homepage = "https://github.com/tokuhirom/p5-cgi-emulate-psgi"; + description = "PSGI adapter for CGI"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CGIExpand = buildPerlPackage { + pname = "CGI-Expand"; + version = "2.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BO/BOWMANBS/CGI-Expand-2.05.tar.gz"; + sha256 = "1ad48nd067j5irjampxpw3zvzpg8wpnpan6szkdc5h64wccd30kf"; + }; + meta = { + description = "Convert flat hash to nested data using TT2's dot convention"; + }; + buildInputs = [ TestException ]; + }; + + CGIFast = buildPerlPackage { + pname = "CGI-Fast"; + version = "2.15"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LE/LEEJO/CGI-Fast-2.15.tar.gz"; + sha256 = "e5342df3dc593edfb724c7afe850b1a0ee753f4d733f5193e037b04633dfeece"; + }; + propagatedBuildInputs = [ CGI FCGI ]; + doCheck = false; + meta = { + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CGIFormBuilder = buildPerlPackage { + pname = "CGI-FormBuilder"; + version = "3.10"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BI/BIGPRESH/CGI-FormBuilder-3.10.tar.gz"; + sha256 = "163ixq9kninqq094z2rnkg9pv3bcmvjphlww4vksfrzhq3h9pjdf"; + }; + + propagatedBuildInputs = [ CGI ]; + }; + + CGIMinimal = buildPerlModule { + pname = "CGI-Minimal"; + version = "1.30"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SN/SNOWHARE/CGI-Minimal-1.30.tar.gz"; + sha256 = "b94d50821b02611da6ee5423193145078c4dbb282f2b162a4b0d58094997bc47"; + }; + meta = { + description = "A lightweight CGI form processing package"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CGIPSGI = buildPerlPackage { + pname = "CGI-PSGI"; + version = "0.15"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIYAGAWA/CGI-PSGI-0.15.tar.gz"; + sha256 = "c50dcb10bf8486a9843baed032ad89d879ff2f41c993342dead62f947a598d91"; + }; + propagatedBuildInputs = [ CGI ]; + meta = { + description = "Adapt CGI.pm to the PSGI protocol"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CGISession = buildPerlModule { + pname = "CGI-Session"; + version = "4.48"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MARKSTOS/CGI-Session-4.48.tar.gz"; + sha256 = "1xsl2pz1jrh127pq0b01yffnj4mnp9nvkp88h5mndrscq9hn8xa6"; + }; + propagatedBuildInputs = [ CGI ]; + }; + + CGISimple = buildPerlModule { + pname = "CGI-Simple"; + version = "1.25"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MANWAR/CGI-Simple-1.25.tar.gz"; + sha256 = "0zpl7sa8jvv3zba2vcxf3qsrjk7kk2vcznfdpmxydw06x8vczrp5"; + }; + propagatedBuildInputs = [ IOStringy ]; + meta = { + description = "A Simple totally OO CGI interface that is CGI.pm compliant"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ TestException TestNoWarnings ]; + }; + + CGIStruct = buildPerlPackage { + pname = "CGI-Struct"; + version = "1.21"; + src = fetchurl { + url = "mirror://cpan/authors/id/F/FU/FULLERMD/CGI-Struct-1.21.tar.gz"; + sha256 = "d13d8da7fdcd6d906054e4760fc28a718aec91bd3cf067a58927fb7cb1c09d6c"; + }; + buildInputs = [ TestDeep ]; + meta = { + description = "Build structures from CGI data"; + license = lib.licenses.bsd2; + }; + }; + + CHI = buildPerlPackage { + pname = "CHI"; + version = "0.60"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JS/JSWARTZ/CHI-0.60.tar.gz"; + sha256 = "c7f1a2b3570a8fede484e933f89ba1729e0abd05935791d146c522dd120ee851"; + }; + preConfigure = '' + # fix error 'Unescaped left brace in regex is illegal here in regex' + substituteInPlace lib/CHI/t/Driver/Subcache/l1_cache.pm --replace 'qr/CHI stats: {' 'qr/CHI stats: \{' + ''; + buildInputs = [ TestClass TestDeep TestException TestWarn TimeDate ]; + propagatedBuildInputs = [ CarpAssert ClassLoad DataUUID DigestJHash HashMoreUtils JSONMaybeXS ListMoreUtils LogAny Moo MooXTypesMooseLikeNumeric StringRewritePrefix TaskWeaken TimeDuration TimeDurationParse ]; + meta = { + description = "Unified cache handling interface"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Chart = buildPerlPackage { + pname = "Chart"; + version = "2.4.10"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CH/CHARTGRP/Chart-2.4.10.tar.gz"; + sha256 = "84bd99a1a0ce72477b15e35881e6120398bb3f553aeeb5e8d72b088520e4f6bf"; + }; + propagatedBuildInputs = [ GD ]; + meta = { + description = "A series of charting modules"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CiscoIPPhone = buildPerlPackage { + pname = "Cisco-IPPhone"; + version = "0.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MR/MRPALMER/Cisco-IPPhone-0.05.tar.gz"; + sha256 = "b03ca263f8f41a6ec545c5393213a3146d36bd45335ade99af51dd42ab6ee16d"; + }; + meta = { + description = "Package for creating Cisco IPPhone XML objects"; + license = with lib.licenses; [ artistic1 ]; + }; + }; + + CLASS = buildPerlPackage { + pname = "CLASS"; + version = "1.00"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MS/MSCHWERN/CLASS-1.00.tar.gz"; + sha256 = "c5185620815701b3fec21314ccd8c5693e6bfd519431527da3370a8164220671"; + }; + meta = { + homepage = "https://metacpan.org/pod/CLASS"; + description = "Alias for __PACKAGE__"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + ClassAccessor = buildPerlPackage { + pname = "Class-Accessor"; + version = "0.51"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KA/KASEI/Class-Accessor-0.51.tar.gz"; + sha256 = "07215zzr4ydf49832vn54i3gf2q5b97lydkv8j56wb2svvjs64mz"; + }; + meta = { + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ClassAccessorChained = buildPerlModule { + pname = "Class-Accessor-Chained"; + version = "0.01"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RC/RCLAMP/Class-Accessor-Chained-0.01.tar.gz"; + sha256 = "1lilrjy1s0q5hyr0888kf0ifxjyl2iyk4vxil4jsv0sgh39lkgx5"; + }; + propagatedBuildInputs = [ ClassAccessor ]; + }; + + ClassAccessorGrouped = buildPerlPackage { + pname = "Class-Accessor-Grouped"; + version = "0.10014"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HA/HAARG/Class-Accessor-Grouped-0.10014.tar.gz"; + sha256 = "35d5b03efc09f67f3a3155c9624126c3e162c8e3ca98ff826db358533a44c4bb"; + }; + buildInputs = [ TestException ]; + propagatedBuildInputs = [ ModuleRuntime ]; + meta = { + description = "Lets you build groups of accessors"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ClassAccessorLite = buildPerlPackage { + pname = "Class-Accessor-Lite"; + version = "0.08"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KA/KAZUHO/Class-Accessor-Lite-0.08.tar.gz"; + sha256 = "75b3b8ec8efe687677b63f0a10eef966e01f60735c56656ce75cbb44caba335a"; + }; + meta = { + description = "A minimalistic variant of Class::Accessor"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ClassAutouse = buildPerlPackage { + pname = "Class-Autouse"; + version = "2.01"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AD/ADAMK/Class-Autouse-2.01.tar.gz"; + sha256 = "c05b3236c05719d819c20db0fdeb6d0954747e43d7a738294eed7fbcf36ecf1b"; + }; + meta = { + description = "Run-time load a class the first time you call a method in it"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ClassBase = buildPerlPackage { + pname = "Class-Base"; + version = "0.09"; + src = fetchurl { + url = "mirror://cpan/authors/id/Y/YA/YANICK/Class-Base-0.09.tar.gz"; + sha256 = "117dmsrb30a09zlrv919fb5h5rg8r4asa24i99k04n2habgbv9g1"; + }; + propagatedBuildInputs = [ Clone ]; + }; + + ClassC3 = buildPerlPackage { + pname = "Class-C3"; + version = "0.35"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HA/HAARG/Class-C3-0.35.tar.gz"; + sha256 = "0gp3czp6y0jxx4448kz37f7gdxq4vw514bvc0l98rk4glvqkq1c4"; + }; + propagatedBuildInputs = [ AlgorithmC3 ]; + meta = { + description = "A pragma to use the C3 method resolution order algorithm"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ClassC3AdoptNEXT = buildPerlModule { + pname = "Class-C3-Adopt-NEXT"; + version = "0.14"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Class-C3-Adopt-NEXT-0.14.tar.gz"; + sha256 = "1xsbydmiskpa1qbmnf6n39cb83nlb432xgkad9kfhxnvm8jn4rw5"; + }; + buildInputs = [ ModuleBuildTiny TestException ]; + propagatedBuildInputs = [ MROCompat ]; + meta = { + description = "Make NEXT suck less"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ClassC3Componentised = buildPerlPackage { + pname = "Class-C3-Componentised"; + version = "1.001002"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HA/HAARG/Class-C3-Componentised-1.001002.tar.gz"; + sha256 = "14wn1g45z3b5apqq7dcai5drk01hfyqydsd2m6hsxzhyvi3b2l9h"; + }; + buildInputs = [ TestException ]; + propagatedBuildInputs = [ ClassC3 ClassInspector MROCompat ]; + meta = { + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ClassClassgenclassgen = buildPerlPackage { + pname = "Class-Classgen-classgen"; + version = "3.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MS/MSCHLUE/Class-Classgen-classgen-3.03.tar.gz"; + sha256 = "9b65d41b991538992e816b32cc4fa9b4a4a0bb3e9c10e7eebeff82658dbbc8f6"; + }; + }; + + ClassContainer = buildPerlModule { + pname = "Class-Container"; + version = "0.13"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KW/KWILLIAMS/Class-Container-0.13.tar.gz"; + sha256 = "f5d495b1dfb826d5c0c45d03b4d0e6b6047cbb06cdbf6be15fd4dc902aeeb70b"; + }; + propagatedBuildInputs = [ ParamsValidate ]; + meta = { + description = "Glues object frameworks together transparently"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ClassDataAccessor = buildPerlPackage { + pname = "Class-Data-Accessor"; + version = "0.04004"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CL/CLACO/Class-Data-Accessor-0.04004.tar.gz"; + sha256 = "0578m3rplk41059rkkjy1009xrmrdivjnv8yxadwwdk1vzidc8n1"; + }; + }; + + ClassDataInheritable = buildPerlPackage { + pname = "Class-Data-Inheritable"; + version = "0.08"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TM/TMTM/Class-Data-Inheritable-0.08.tar.gz"; + sha256 = "0jpi38wy5xh6p1mg2cbyjjw76vgbccqp46685r27w8hmxb7gwrwr"; + }; + }; + + ClassEHierarchy = buildPerlPackage { + pname = "Class-EHierarchy"; + version = "2.01"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CO/CORLISS/Class-EHierarchy/Class-EHierarchy-2.01.tar.gz"; + sha256 = "637ab76beb3832a9b071b999a1b15bf05d297df6a662ccb1a8004f2987308382"; + }; + meta = { + description = "Base class for hierarchally ordered objects"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = teams.deshaw.members; + }; + }; + + ClassFactory = buildPerlPackage { + pname = "Class-Factory"; + version = "1.06"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PH/PHRED/Class-Factory-1.06.tar.gz"; + sha256 = "c37a2d269eb935f36a23e113480ae0946fa7c12a12781396a1226c8e435f30f5"; + }; + }; + + ClassFactoryUtil = buildPerlModule { + pname = "Class-Factory-Util"; + version = "1.7"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DR/DROLSKY/Class-Factory-Util-1.7.tar.gz"; + sha256 = "09ifd6v0c94vr20n9yr1dxgcp7hyscqq851szdip7y24bd26nlbc"; + }; + meta = { + description = "Provide utility methods for factory classes"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ClassGomor = buildPerlModule { + pname = "Class-Gomor"; + version = "1.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GO/GOMOR/Class-Gomor-1.03.tar.gz"; + sha256 = "02r0zylv8c5cb34j0w2kmf8hfw6g6bymfif7z65skzz9kkm3rns7"; + }; + meta = { + description = "another class and object builder"; + license = with lib.licenses; [ artistic1 ]; + }; + }; + + ClassInspector = buildPerlPackage { + pname = "Class-Inspector"; + version = "1.36"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PL/PLICEASE/Class-Inspector-1.36.tar.gz"; + sha256 = "0kk900bp8iq7bw5jyllfb31gvf93mmp24n4x90j7qs3jlhimsafc"; + }; + meta = { + description = "Get information about a class and its structure"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ClassISA = buildPerlPackage { + pname = "Class-ISA"; + version = "0.36"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SM/SMUELLER/Class-ISA-0.36.tar.gz"; + sha256 = "0r5r574i6wgxm8zsq4bc34d0dzprrh6h6mpp1nhlks1qk97g65l8"; + }; + }; + + ClassIterator = buildPerlPackage { + pname = "Class-Iterator"; + version = "0.3"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TE/TEXMEC/Class-Iterator-0.3.tar.gz"; + sha256 = "db1ba87ca9107f161fe9c1e9e7e267c0026defc26fe3e73bcad8ab8ffc18ef9d"; + }; + meta = { + }; + }; + + ClassLoader = buildPerlPackage rec { + pname = "Class-Loader"; + version = "2.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/V/VI/VIPUL/Class-Loader-2.03.tar.gz"; + sha256 = "4fef2076ead60423454ff1f4e82859a9a9b9942b5fb8eee0c98b9c63c9f2b8e7"; + }; + meta = { + description = "Load modules and create objects on demand"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ClassMakeMethods = buildPerlPackage { + pname = "Class-MakeMethods"; + version = "1.01"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/EV/EVO/Class-MakeMethods-1.01.tar.gz"; + sha256 = "0ricb0mn0i06ngfhq5y035yx8i7ahlx83yyqwixqmv6hg4p79b5c"; + }; + preConfigure = '' + # fix error 'Unescaped left brace in regex is illegal here in regex' + substituteInPlace tests/xemulator/class_methodmaker/Test.pm --replace 's/(TEST\s{)/$1/g' 's/(TEST\s\{)/$1/g' + ''; + }; + + ClassMethodMaker = buildPerlPackage { + pname = "Class-MethodMaker"; + version = "2.24"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SC/SCHWIGON/class-methodmaker/Class-MethodMaker-2.24.tar.gz"; + sha256 = "0a03i4k3a33qqwhykhz5k437ld5mag2vq52vvsy03gbynb65ivsy"; + }; + # Remove unnecessary, non-autoconf, configure script. + prePatch = "rm configure"; + meta = { + description = "A module for creating generic methods"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ClassMethodModifiers = buildPerlPackage { + pname = "Class-Method-Modifiers"; + version = "2.13"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Class-Method-Modifiers-2.13.tar.gz"; + sha256 = "0qzx83mgd71hlc2m1kpw15dqsjzjq7b2cj3sdgg45a0q23vhfn5b"; + }; + buildInputs = [ TestFatal TestNeeds ]; + meta = { + homepage = "https://github.com/moose/Class-Method-Modifiers"; + description = "Provides Moose-like method modifiers"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ClassMix = buildPerlModule { + pname = "Class-Mix"; + version = "0.006"; + src = fetchurl { + url = "mirror://cpan/authors/id/Z/ZE/ZEFRAM/Class-Mix-0.006.tar.gz"; + sha256 = "8747f643893914f8c44979f1716d0c1ec8a41394796555447944e860f1ff7c0b"; + }; + propagatedBuildInputs = [ ParamsClassify ]; + meta = { + description = "Dynamic class mixing"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ClassReturnValue = buildPerlPackage { + pname = "Class-ReturnValue"; + version = "0.55"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JE/JESSE/Class-ReturnValue-0.55.tar.gz"; + sha256 = "ed3836885d78f734ccd7a98550ec422a616df7c31310c1b7b1f6459f5fb0e4bd"; + }; + propagatedBuildInputs = [ DevelStackTrace ]; + meta = { + description = "A smart return value object"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ClassSingleton = buildPerlPackage { + pname = "Class-Singleton"; + version = "1.6"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHAY/Class-Singleton-1.6.tar.gz"; + sha256 = "1942j9g0b4c88nvs3jghh3y31mlhbpwrx35xdcb2jaaiv7q17fi7"; + }; + }; + + ClassThrowable = buildPerlPackage { + pname = "Class-Throwable"; + version = "0.13"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KM/KMX/Class-Throwable-0.13.tar.gz"; + sha256 = "1kmwzdxvp9ca2z44vl0ygkfygdbxqkilzjd8vqhc4vdmvbh136nw"; + }; + }; + + ClassTiny = buildPerlPackage { + pname = "Class-Tiny"; + version = "1.008"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DAGOLDEN/Class-Tiny-1.008.tar.gz"; + sha256 = "05anh4hn8va46xwbdx7rqxnhb8i1lingb614lywzr89gj5iql1gf"; + }; + meta = { + description = "Minimalist class construction"; + license = with lib.licenses; [ asl20 ]; + homepage = "https://github.com/dagolden/Class-Tiny"; + }; + }; + + ClassLoad = buildPerlPackage { + pname = "Class-Load"; + version = "0.25"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Class-Load-0.25.tar.gz"; + sha256 = "2a48fa779b5297e56156380e8b32637c6c58decb4f4a7f3c7350523e11275f8f"; + }; + buildInputs = [ TestFatal TestNeeds ]; + propagatedBuildInputs = [ DataOptList PackageStash ]; + meta = { + homepage = "https://github.com/moose/Class-Load"; + description = "A working (require \"Class::Name\") and more"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ClassLoadXS = buildPerlPackage { + pname = "Class-Load-XS"; + version = "0.10"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Class-Load-XS-0.10.tar.gz"; + sha256 = "5bc22cf536ebfd2564c5bdaf42f0d8a4cee3d1930fc8b44b7d4a42038622add1"; + }; + buildInputs = [ TestFatal TestNeeds ]; + propagatedBuildInputs = [ ClassLoad ]; + meta = { + homepage = "https://github.com/moose/Class-Load-XS"; + description = "XS implementation of parts of Class::Load"; + license = lib.licenses.artistic2; + }; + }; + + ClassObservable = buildPerlPackage { + pname = "Class-Observable"; + version = "1.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CW/CWINTERS/Class-Observable-1.04.tar.gz"; + sha256 = "3ef18733a0f03c113f3bcf8ac50476e09ca1fe6234f4aaacaa24dfca95168094"; + }; + propagatedBuildInputs = [ ClassISA ]; + }; + + ClassStd = buildPerlModule { + pname = "Class-Std"; + version = "0.013"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CH/CHORNY/Class-Std-0.013.tar.gz"; + sha256 = "bcd6d82f6c8af0fe069fced7dd165a4795b0b6e92351c7d4e5a1ab9a14fc35c6"; + }; + meta = { + description = "Support for creating standard 'inside-out' classes"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ClassStdFast = buildPerlModule { + pname = "Class-Std-Fast"; + version = "0.0.8"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AC/ACID/Class-Std-Fast-v0.0.8.tar.gz"; + sha256 = "1057rz95jsr66gam472i4zdv04v7bmzph3m3jwq1hwx3qrikgm0v"; + }; + propagatedBuildInputs = [ ClassStd ]; + checkInputs = [ TestPod TestPodCoverage ]; + meta = with lib; { + description = "Faster but less secure than Class::Std"; + license = with licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ClassUnload = buildPerlPackage { + pname = "Class-Unload"; + version = "0.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/I/IL/ILMARI/Class-Unload-0.11.tar.gz"; + sha256 = "0pqa98z3ij6a3v9wkmvc8b410kv30y0xxqf0i6if3lp4lx3rgqjj"; + }; + propagatedBuildInputs = [ ClassInspector ]; + buildInputs = [ TestRequires ]; + }; + + ClassVirtual = buildPerlPackage { + pname = "Class-Virtual"; + version = "0.08"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MS/MSCHWERN/Class-Virtual-0.08.tar.gz"; + sha256 = "c6499b42d3b4e5c6488a5e82fbc28698e6c9860165072dddfa6749355a9cfbb2"; + }; + propagatedBuildInputs = [ CarpAssert ClassDataInheritable ClassISA ]; + meta = { + description = "Base class for virtual base classes"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ClassXSAccessor = buildPerlPackage { + pname = "Class-XSAccessor"; + version = "1.19"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SM/SMUELLER/Class-XSAccessor-1.19.tar.gz"; + sha256 = "1wm6013il899jnm0vn50a7iv9v6r4nqywbqzj0csyf8jbwwnpicr"; + }; + meta = { + description = "Generate fast XS accessors without runtime compilation"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CLDRNumber = buildPerlModule { + pname = "CLDR-Number"; + version = "0.19"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PA/PATCH/CLDR-Number-0.19.tar.gz"; + sha256 = "c6716488e65fe779ff79a83f0f2036ad94463efe3d0f349c6b99112975bd85fc"; + }; + buildInputs = [ SoftwareLicense TestDifferences TestException TestWarn ]; + propagatedBuildInputs = + [ ClassMethodModifiers MathRound Moo namespaceclean ]; + meta = { + homepage = "https://github.com/patch/cldr-number-pm5"; + description = "Localized number formatters using the Unicode CLDR"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CLIHelpers = buildPerlPackage { + pname = "CLI-Helpers"; + version = "1.8"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BL/BLHOTSKY/CLI-Helpers-1.8.tar.gz"; + sha256 = "1hgiynpy7q4gbx1d9pwnzdzil36k13vjxhscalj710ikcddvjz92"; + }; + buildInputs = [ PodCoverageTrustPod TestPerlCritic ]; + propagatedBuildInputs = [ CaptureTiny RefUtil SubExporter TermReadKey YAML ]; + meta = { + homepage = "https://github.com/reyjrar/CLI-Helpers"; + description = "Subroutines for making simple command line scripts"; + license = lib.licenses.bsd3; + }; + }; + + Clipboard = buildPerlModule { + pname = "Clipboard"; + version = "0.26"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/Clipboard-0.26.tar.gz"; + sha256 = "886ae43dc8538f9bfc4e07fdbcf09b7fbd6ee59c31f364618c859de14953c58a"; + }; + meta = { + description = "Clipboard - Copy and Paste with any OS"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + propagatedBuildInputs = [ CGI ]; + # Disable test on darwin because MacPasteboard fails when not logged in interactively. + # Mac OS error -4960 (coreFoundationUnknownErr): The unknown error at lib/Clipboard/MacPasteboard.pm line 3. + # Mac-Pasteboard-0.009.readme: 'NOTE that Mac OS X appears to restrict pasteboard access to processes that are logged in interactively. + # Ssh sessions and cron jobs can not create the requisite pasteboard handles, giving coreFoundationUnknownErr (-4960)' + doCheck = !stdenv.isDarwin; + }; + + + Clone = buildPerlPackage { + pname = "Clone"; + version = "0.45"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AT/ATOOMIC/Clone-0.45.tar.gz"; + sha256 = "1rm9g68fklni63jdkrlgqq6yfj95fm33p2bq90p475gsi8sfxdnb"; + }; + meta = { + description = "Recursively copy Perl datatypes"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ BCOW ]; + }; + + CloneChoose = buildPerlPackage { + pname = "Clone-Choose"; + version = "0.010"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HE/HERMES/Clone-Choose-0.010.tar.gz"; + sha256 = "0cin2bjn5z8xhm9v4j7pwlkx88jnvz8al0njdjwyvs6fb0glh8sn"; + }; + buildInputs = [ Clone ClonePP TestWithoutModule ]; + meta = { + description = "Choose appropriate clone utility"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ClonePP = buildPerlPackage { + pname = "Clone-PP"; + version = "1.08"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NE/NEILB/Clone-PP-1.08.tar.gz"; + sha256 = "0y7m25fksiavzg4xj4cm9zkz8rmnk4iqy7lm01m4nmyqlna3082p"; + }; + meta = { + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CodeTidyAll = buildPerlPackage { + pname = "Code-TidyAll"; + version = "0.78"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DR/DROLSKY/Code-TidyAll-0.78.tar.gz"; + sha256 = "1dmr6zkgcnc6cam204f00g5yly46cplbn9k45ginw02rv10vnpij"; + }; + propagatedBuildInputs = [ CaptureTiny ConfigINI FileWhich Filepushd IPCRun3 IPCSystemSimple ListCompare ListSomeUtils LogAny Moo ScopeGuard SpecioLibraryPathTiny TextDiff TimeDate TimeDurationParse ]; + buildInputs = [ TestClass TestClassMost TestDeep TestDifferences TestException TestFatal TestMost TestWarn TestWarnings librelative ]; + meta = { + description = "Engine for tidyall, your all-in-one code tidier and validator"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CodeTidyAllPluginPerlAlignMooseAttributes = buildPerlPackage { + pname = "Code-TidyAll-Plugin-Perl-AlignMooseAttributes"; + version = "0.01"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JS/JSWARTZ/Code-TidyAll-Plugin-Perl-AlignMooseAttributes-0.01.tar.gz"; + sha256 = "1r8w5kfm17j1dyrrsjhwww423zzdzhx1i3d3brl32wzhasgf47cd"; + }; + propagatedBuildInputs = [ CodeTidyAll TextAligner ]; + meta = { + description = "TidyAll plugin to sort and align Moose-style attributes"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ColorLibrary = buildPerlPackage { + pname = "Color-Library"; + version = "0.021"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RO/ROKR/Color-Library-0.021.tar.gz"; + sha256 = "58cbf7e333d3a4a40297abc43412b321da449c6816020e4fa6625ab079fc90a5"; + }; + buildInputs = [ TestMost TestWarn TestException TestDeep TestDifferences ModulePluggable ]; + propagatedBuildInputs = [ ClassAccessor ClassDataInheritable ]; + meta = { + description = "An easy-to-use and comprehensive named-color library"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CommandRunner = buildPerlModule { + pname = "Command-Runner"; + version = "0.103"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SK/SKAJI/Command-Runner-0.103.tar.gz"; + sha256 = "0f180b5c3b3fc9db7b83d4a5fdd959db34f7d6d2472f817dbf8b4b795a9dc82a"; + }; + buildInputs = [ ModuleBuildTiny ]; + propagatedBuildInputs = [ CaptureTiny StringShellQuote Win32ShellQuote ]; + meta = { + homepage = "https://github.com/skaji/Command-Runner"; + description = "Run external commands and Perl code refs"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.zakame ]; + }; + }; + + commonsense = buildPerlPackage { + pname = "common-sense"; + version = "3.75"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/ML/MLEHMANN/common-sense-3.75.tar.gz"; + sha256 = "0zhfp8f0czg69ycwn7r6ayg6idm5kyh2ai06g5s6s07kli61qsm8"; + }; + meta = { + description = "Implements some sane defaults for Perl programs"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CompressBzip2 = buildPerlPackage { + pname = "Compress-Bzip2"; + version = "2.28"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RU/RURBAN/Compress-Bzip2-2.28.tar.gz"; + sha256 = "859f835c3f5c998810d8b2a6f9e282ff99d6cb66ccfa55cae7e66dafb035116e"; + }; + meta = { + description = "Interface to Bzip2 compression library"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CompressLZF = buildPerlPackage rec { + pname = "Compress-LZF"; + version = "3.8"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/ML/MLEHMANN/${pname}-${version}.tar.gz"; + sha256 = "5d1f5df48ce13b4dee1cc9f278ecdbf8177877b0b98815a4eb3c91c3466716f2"; + }; + meta = { + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CompressRawBzip2 = buildPerlPackage { + pname = "Compress-Raw-Bzip2"; + version = "2.101"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PM/PMQS/Compress-Raw-Bzip2-2.101.tar.gz"; + sha256 = "1n5q01akpsw1skn59c3nivwjfqcn00wzdj8gx4q0wac8sd7i76qc"; + }; + + # Don't build a private copy of bzip2. + BUILD_BZIP2 = false; + BZIP2_LIB = "${pkgs.bzip2.out}/lib"; + BZIP2_INCLUDE = "${pkgs.bzip2.dev}/include"; + + meta = { + description = "Low-Level Interface to bzip2 compression library"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CompressRawLzma = buildPerlPackage { + pname = "Compress-Raw-Lzma"; + version = "2.101"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PM/PMQS/Compress-Raw-Lzma-2.101.tar.gz"; + sha256 = "bb267fd31981eda11f444038f8a0fca4b94a51ae61b2db71246abf6a4d322a36"; + }; + preConfigure = '' + cat > config.in <<EOF + INCLUDE = ${pkgs.xz.dev}/include + LIB = ${pkgs.xz.out}/lib + EOF + ''; + meta = { + homepage = "https://github.com/pmqs/Compress-Raw-Lzma"; + description = "Low-Level Interface to lzma compression library"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CompressRawZlib = buildPerlPackage { + pname = "Compress-Raw-Zlib"; + version = "2.101"; + + src = fetchurl { + url = "mirror://cpan/authors/id/P/PM/PMQS/Compress-Raw-Zlib-2.101.tar.gz"; + sha256 = "1cmb39dw928jssa3fzk4pxb7sw8q1zyx3yikgq01nz17x0ara6wx"; + }; + + preConfigure = '' + cat > config.in <<EOF + BUILD_ZLIB = False + INCLUDE = ${pkgs.zlib.dev}/include + LIB = ${pkgs.zlib.out}/lib + OLD_ZLIB = False + GZIP_OS_CODE = AUTO_DETECT + EOF + ''; + + doCheck = !stdenv.isDarwin; + + meta = { + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CompressUnLZMA = buildPerlPackage { + pname = "Compress-unLZMA"; + version = "0.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/F/FE/FERREIRA/Compress-unLZMA-0.05.tar.gz"; + sha256 = "1f0pcpcjjj60whqc5sc5jd0dd7z3si4fnp268w4ykmcjini03s2d"; + }; + }; + + ConfigAny = buildPerlPackage { + pname = "Config-Any"; + version = "0.32"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HA/HAARG/Config-Any-0.32.tar.gz"; + sha256 = "0l31sg7dwh4dwwnql42hp7arkhcm15bhsgfg4i6xvbjzy9f2mnk8"; + }; + propagatedBuildInputs = [ ModulePluggable ]; + meta = { + description = "Load configuration from different file formats, transparently"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ConfigAutoConf = buildPerlPackage { + pname = "Config-AutoConf"; + version = "0.319"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RE/REHSACK/Config-AutoConf-0.319.tar.gz"; + sha256 = "0gm3l0qyrgiia67lsmzjfb6ihgbdx1lidli7w47lq9jk4v66ckrh"; + }; + propagatedBuildInputs = [ CaptureTiny ]; + meta = { + description = "A module to implement some of AutoConf macros in pure perl"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ConfigGeneral = buildPerlPackage { + pname = "Config-General"; + version = "2.63"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TL/TLINDEN/Config-General-2.63.tar.gz"; + sha256 = "1bbg3wp0xcpj04cmm86j1x0j5968jqi5s2c87qs7dgmap1vzk6qa"; + }; + meta = { + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ConfigGitLike = buildPerlPackage { + pname = "Config-GitLike"; + version = "1.18"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AL/ALEXMV/Config-GitLike-1.18.tar.gz"; + sha256 = "f7ae7440f3adab5b9ff9aa57216d84fd4a681009b9584e32da42f8bb71e332c5"; + }; + buildInputs = [ TestException ]; + propagatedBuildInputs = [ Moo MooXTypesMooseLike ]; + meta = { + description = "Git-compatible config file parsing"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ConfigGrammar = buildPerlPackage { + pname = "Config-Grammar"; + version = "1.13"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DS/DSCHWEI/Config-Grammar-1.13.tar.gz"; + sha256 = "a8b3a3a2c9c8c43b92dc401bf2709d6514f15b467fd4f72c48d356335771d6e3"; + }; + meta = { + homepage = "https://github.com/schweikert/Config-Grammar"; + description = "A grammar-based, user-friendly config parser"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ConfigINI = buildPerlPackage { + pname = "Config-INI"; + version = "0.025"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Config-INI-0.025.tar.gz"; + sha256 = "628bf76d5b91f89dde22d4813ec033026ebf71b772bb61ccda909da00c869732"; + }; + propagatedBuildInputs = [ MixinLinewise ]; + meta = { + homepage = "https://github.com/rjbs/Config-INI"; + description = "Simple .ini-file format"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ConfigIdentity = buildPerlPackage { + pname = "Config-Identity"; + version = "0.0019"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DAGOLDEN/Config-Identity-0.0019.tar.gz"; + sha256 = "1a0jx12pxwpbnkww4xg4lav8j6ls89hrdimhj4a697k56zdhnli9"; + }; + propagatedBuildInputs = [ FileHomeDir IPCRun ]; + buildInputs = [ TestDeep ]; + meta = { + description = "Load (and optionally decrypt via GnuPG) user/pass identity information "; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/dagolden/Config-Identity"; + }; + }; + + ConfigIniFiles = buildPerlPackage { + pname = "Config-IniFiles"; + version = "3.000003"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/Config-IniFiles-3.000003.tar.gz"; + sha256 = "3c457b65d98e5ff40bdb9cf814b0d5983eb0c53fb8696bda3ba035ad2acd6802"; + }; + propagatedBuildInputs = [ IOStringy ]; + meta = { + description = "A module for reading .ini-style configuration files"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = teams.deshaw.members; + }; + }; + + ConfigMerge = buildPerlPackage { + pname = "Config-Merge"; + version = "1.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DR/DRTECH/Config-Merge-1.04.tar.gz"; + sha256 = "a932477b43ae5fb04a16f071a891da7bd2086c10c680592f2888fa9d9972cccf"; + }; + buildInputs = [ YAML ]; + propagatedBuildInputs = [ ConfigAny ]; + meta = { + description = "Load a configuration directory tree containing YAML, JSON, XML, Perl, INI or Config::General files"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ConfigOnion = buildPerlPackage { + pname = "Config-Onion"; + version = "1.007"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DS/DSHEROH/Config-Onion-1.007.tar.gz"; + sha256 = "1bx81nakvgj9m7x1q7pnra2cm1rzfdyf7fm2wmlj92qkivvdszrj"; + }; + propagatedBuildInputs = [ ConfigAny HashMergeSimple Moo ]; + buildInputs = [ TestException YAML ]; + meta = { + description = "Layered configuration, because configs are like ogres"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ConfigMVP = buildPerlPackage { + pname = "Config-MVP"; + version = "2.200011"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Config-MVP-2.200011.tar.gz"; + sha256 = "23c95666fc43c4adaebcc093b1b56091efc2a6aa2d75366a216d18eda96ad716"; + }; + buildInputs = [ TestFatal ]; + propagatedBuildInputs = [ ModulePluggable MooseXOneArgNew RoleHasMessage RoleIdentifiable Throwable TieIxHash ]; + meta = { + homepage = "https://github.com/rjbs/Config-MVP"; + description = "Multivalue-property package-oriented configuration"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ConfigMVPReaderINI = buildPerlPackage { + pname = "Config-MVP-Reader-INI"; + version = "2.101463"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Config-MVP-Reader-INI-2.101463.tar.gz"; + sha256 = "0iflnsh0sgihff3ra8sr7awiiscmqvrp1anaskkwksqi6yzidab9"; + }; + propagatedBuildInputs = [ ConfigINI ConfigMVP ]; + meta = { + homepage = "https://github.com/rjbs/Config-MVP-Reader-INI"; + description = "An MVP config reader for .ini files"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ConfigProperties = buildPerlPackage { + pname = "Config-Properties"; + version = "1.80"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SA/SALVA/Config-Properties-1.80.tar.gz"; + sha256 = "5d04395be7e14e970a03ea952fb7629ae304d97c031f90cc1c29bd0a6a62fc40"; + }; + meta = { + description = "Read and write property files"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ConfigSimple = buildPerlPackage { + pname = "Config-Simple"; + version = "4.58"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHERZODR/Config-Simple-4.58.tar.gz"; + sha256 = "1d7dhvis1i03xlj8z3g5l8mz88kf7dn13zngbjhq94qgdxq9b6fx"; + }; + meta = { + description = "Simple configuration file class"; + }; + }; + + ConfigStd = buildPerlModule { + pname = "Config-Std"; + version = "0.903"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BR/BRICKER/Config-Std-0.903.tar.gz"; + sha256 = "b7709ff663bd279d264ab9c2f51e9e9588479a3367a8c4cfc18659c2a11480fe"; + }; + propagatedBuildInputs = [ ClassStd ]; + meta = { + description = "Load and save configuration files in a standard format"; + }; + }; + + ConfigTiny = buildPerlPackage { + pname = "Config-Tiny"; + version = "2.24"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RS/RSAVAGE/Config-Tiny-2.24.tgz"; + sha256 = "0cjj2f0pj9y3cx1lgk2qp6arsnyaacf7kj6v33iqczn59f798r0h"; + }; + buildInputs = [ TestPod ]; + }; + + ConfigVersioned = buildPerlPackage { + pname = "Config-Versioned"; + version = "1.01"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MR/MRSCOTTY/Config-Versioned-1.01.tar.gz"; + sha256 = "bc9a4ae3738bd89f86a07bca673627ca3c92ba969737cd6dbc7ab7ad17cd2348"; + }; + propagatedBuildInputs = [ ConfigStd GitPurePerl ]; + doCheck = false; + meta = { + description = "Simple, versioned access to configuration data"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Connector = buildPerlPackage { + pname = "Connector"; + version = "1.35"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MR/MRSCOTTY/Connector-1.35.tar.gz"; + sha256 = "0jnwcvjibywdfq4x5n3np9fxvpsgqq6vjpn72sfa2xfdwrp7dna1"; + }; + buildInputs = [ ConfigMerge ConfigStd ConfigVersioned DBDSQLite DBI IOSocketSSL JSON LWP LWPProtocolHttps ProcSafeExec TemplateToolkit YAML ]; + propagatedBuildInputs = [ LogLog4perl Moose ]; + prePatch = '' + # Attempts to use network. + rm t/01-proxy-http.t + rm t/01-proxy-proc-safeexec.t + ''; + meta = { + description = "A generic connection to a hierarchical-structured data set"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ConstFast = buildPerlModule { + pname = "Const-Fast"; + version = "0.014"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LE/LEONT/Const-Fast-0.014.tar.gz"; + sha256 = "1nwlldgrx86yn7y6a53cqgvzm2ircsvxg1addahlcy6510x9a1gq"; + }; + propagatedBuildInputs = [ SubExporterProgressive ]; + buildInputs = [ ModuleBuildTiny TestFatal ]; + meta = { + description = "Facility for creating read-only scalars, arrays, and hashes"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ConvertASCIIArmour = buildPerlPackage { + pname = "Convert-ASCII-Armour"; + version = "1.4"; + src = fetchurl { + url = "mirror://cpan/authors/id/V/VI/VIPUL/Convert-ASCII-Armour-1.4.tar.gz"; + sha256 = "97e8acb6eb2a2a91af7d6cf0d2dff6fa42aaf939fc7d6d1c6057a4f0df52c904"; + }; + meta = { + description = "Convert binary octets into ASCII armoured messages"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + ConvertASN1 = buildPerlPackage { + pname = "Convert-ASN1"; + version = "0.33"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TI/TIMLEGGE/Convert-ASN1-0.33.tar.gz"; + sha256 = "0xk0s2rnwjb7ydhwfinpjcbw25im54b8cs7r9hj3m7n7412h1pqz"; + }; + }; + + ConvertBase32 = buildPerlPackage { + pname = "Convert-Base32"; + version = "0.06"; + src = fetchurl { + url = "mirror://cpan/authors/id/I/IK/IKEGAMI/Convert-Base32-0.06.tar.gz"; + sha256 = "4ba82c167c41f455aa8284738727e4c94a2ebcb1c4ce797f6fda07245a642115"; + }; + buildInputs = [ TestException ]; + meta = { + homepage = "https://metacpan.org/pod/Convert::Base32"; + description = "Encoding and decoding of base32 strings"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + ConvertBencode = buildPerlPackage rec { + pname = "Convert-Bencode"; + version = "1.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/O/OR/ORCLEV/Convert-Bencode-1.03.tar.gz"; + sha256 = "0v2ywj18px67mg97xnrdq9mnlzgqvj92pr2g47g9c9b9cpw3v7r6"; + }; + meta = { + description = "Functions for converting to/from bencoded strings"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ConvertColor = buildPerlModule { + pname = "Convert-Color"; + version = "0.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PEVANS/Convert-Color-0.11.tar.gz"; + sha256 = "b41217c72931034ba4417d7a9e1e2999f04580d4e6b31c70993fedccc2440d38"; + }; + buildInputs = [ TestNumberDelta ]; + propagatedBuildInputs = [ ListUtilsBy ModulePluggable ]; + meta = { + description = "Color space conversions and named lookups"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ConvertUU = buildPerlPackage rec { + pname = "Convert-UU"; + version = "0.5201"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AN/ANDK/Convert-UU-0.5201.tar.gz"; + sha256 = "92329ce1c32b5952c48e1223db018c8c58ceafef03bfa0fd4817cd89c355a3bd"; + }; + meta = { + description = "Perl module for uuencode and uudecode"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + constantboolean = buildPerlModule { + pname = "constant-boolean"; + version = "0.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DE/DEXTER/constant-boolean-0.02.tar.gz"; + sha256 = "1s8gxfg4xqp543aqanv5lbp64vqqyw6ic4x3fm4imkk1h3amjb6d"; + }; + propagatedBuildInputs = [ SymbolUtil ]; + }; + + curry = buildPerlPackage { + pname = "curry"; + version = "1.001000"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MS/MSTROUT/curry-1.001000.tar.gz"; + sha256 = "1m2n3w67cskh8ic6vf6ik0fmap9zma875kr5rhyznr1041wn064b"; + }; + meta = { + description = "Create automatic curried method call closures for any class or object"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + constant-defer = buildPerlPackage { + pname = "constant-defer"; + version = "6"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KR/KRYDE/constant-defer-6.tar.gz"; + sha256 = "1ykgk0rd05p7kyrdxbv047fj7r0b4ix9ibpkzxp6h8nak0qjc8bv"; + }; + }; + + ContextPreserve = buildPerlPackage { + pname = "Context-Preserve"; + version = "0.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Context-Preserve-0.03.tar.gz"; + sha256 = "07zxgmb11bn4zj3w9g1zwbb9iv4jyk5q7hc0nv59knvv5i64m489"; + }; + buildInputs = [ TestException TestSimple13 ]; + }; + + CookieBaker = buildPerlModule { + pname = "Cookie-Baker"; + version = "0.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KA/KAZEBURO/Cookie-Baker-0.11.tar.gz"; + sha256 = "59275f474e07c0aa3611e3e684b894e7db913333d8214420be63f12ec18cd7ab"; + }; + buildInputs = [ ModuleBuildTiny TestTime ]; + propagatedBuildInputs = [ URI ]; + meta = { + homepage = "https://github.com/kazeburo/Cookie-Baker"; + description = "Cookie string generator / parser"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CookieXS = buildPerlPackage { + pname = "Cookie-XS"; + version = "0.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AG/AGENT/Cookie-XS-0.11.tar.gz"; + sha256 = "1616rcn2qn1cwiv3rxb8mq5fmwxpj4gya1lxxxq2w952h03p3fd3"; + }; + propagatedBuildInputs = [ CGICookieXS ]; + }; + + Coro = buildPerlPackage { + pname = "Coro"; + version = "6.57"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/ML/MLEHMANN/Coro-6.57.tar.gz"; + sha256 = "1ihl2zaiafr2k5jzj46j44j8vxqs23fqcsahypmi23jl6f0f8a0r"; + }; + propagatedBuildInputs = [ AnyEvent Guard commonsense ]; + buildInputs = [ CanaryStability ]; + meta = { + }; + }; + + CoroEV = buildPerlPackage rec { + pname = "CoroEV"; + version = "6.55"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/ML/MLEHMANN/Coro-${version}.tar.gz"; + sha256 = "43d79c027170fcda4ca0ee92734605bc95e122686f5071b94d90764c81ae8a30"; + }; + buildInputs = [ CanaryStability ]; + propagatedBuildInputs = [ AnyEvent Coro EV Guard commonsense ]; + meta = { + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + preConfigure = '' + cd EV + ''; + }; + + Corona = buildPerlPackage { + pname = "Corona"; + version = "0.1004"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIYAGAWA/Corona-0.1004.tar.gz"; + sha256 = "0g5gpma3998rn61qfjv5csv2nrdi4sc84ipkb4k6synyhfgd3xgz"; + }; + propagatedBuildInputs = [ NetServerCoro Plack ]; + buildInputs = [ TestSharedFork TestTCP ]; + meta = { + description = "Coro based PSGI web server"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CPAN = buildPerlPackage { + pname = "CPAN"; + version = "2.29"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AN/ANDK/CPAN-2.29.tar.gz"; + sha256 = "1f55672efd505a9baacfa1924d115362120aa6bf8efab7a17c7cb090b17ccc41"; + }; + propagatedBuildInputs = [ ArchiveZip CPANChecksums CPANPerlReleases CompressBzip2 Expect FileHomeDir FileWhich LWP LogLog4perl ModuleSignature TermReadKey TextGlob YAML YAMLLibYAML YAMLSyck IOSocketSSL ]; + meta = { + description = "Query, download and build perl modules from CPAN sites"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CPANMini = buildPerlPackage { + pname = "CPAN-Mini"; + version = "1.111016"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/CPAN-Mini-1.111016.tar.gz"; + sha256 = "5a297afc3e367ad80811464d4eb7e4dd3caff8ba499cdd2b558f6279443a7657"; + }; + nativeBuildInputs = lib.optional stdenv.isDarwin shortenPerlShebang; + propagatedBuildInputs = [ FileHomeDir LWPProtocolHttps ]; + postInstall = lib.optionalString stdenv.isDarwin '' + shortenPerlShebang $out/bin/minicpan + ''; + + meta = { + homepage = "https://github.com/rjbs/CPAN-Mini"; + description = "Create a minimal mirror of CPAN"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + CpanelJSONXS = buildPerlPackage { + pname = "Cpanel-JSON-XS"; + version = "4.25"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RU/RURBAN/Cpanel-JSON-XS-4.25.tar.gz"; + sha256 = "061940vyj9y3rzwq47z2a3f5i5rfpa90ccz7fgz228zr7njkvfpr"; + }; + meta = { + description = "CPanel fork of JSON::XS, fast and correct serializing"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CPAN02PackagesSearch = buildPerlModule { + pname = "CPAN-02Packages-Search"; + version = "0.001"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SK/SKAJI/CPAN-02Packages-Search-0.001.tar.gz"; + sha256 = "02dgqplar99a2i2b08pnapznyp4il70wsvpm8163ywwfwqn1ap37"; + }; + buildInputs = [ ModuleBuildTiny ]; + propagatedBuildInputs = [ TieHandleOffset ]; + meta = { + homepage = "https://github.com/skaji/CPAN-02Packages-Search"; + description = "Search packages in 02packages.details.txt"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.zakame ]; + }; + }; + + CPANChanges = buildPerlPackage { + pname = "CPAN-Changes"; + version = "0.400002"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HA/HAARG/CPAN-Changes-0.400002.tar.gz"; + sha256 = "01eedea90d07468cb58e4a50bfa3bb1d4eeda9073596add1118fc359153abe8d"; + }; + meta = { + description = "Read and write Changes files"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CPANChecksums = buildPerlPackage { + pname = "CPAN-Checksums"; + version = "2.14"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AN/ANDK/CPAN-Checksums-2.14.tar.gz"; + sha256 = "4080716c5da7e03b504e3cc0ea1fd5ef9ed6915f6fb737564e9e13d355a89e39"; + }; + propagatedBuildInputs = [ CompressBzip2 DataCompare ModuleSignature ]; + meta = { + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CPANCommonIndex = buildPerlPackage { + pname = "CPAN-Common-Index"; + version = "0.010"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DAGOLDEN/CPAN-Common-Index-0.010.tar.gz"; + sha256 = "c43ddbb22fd42b06118fe6357f53700fbd77f531ba3c427faafbf303cbf4eaf0"; + }; + buildInputs = [ TestDeep TestFailWarnings TestFatal ]; + propagatedBuildInputs = [ CPANDistnameInfo ClassTiny TieHandleOffset URI ]; + meta = { + homepage = "https://github.com/Perl-Toolchain-Gang/CPAN-Common-Index"; + description = "Common library for searching CPAN modules, authors and distributions"; + license = lib.licenses.asl20; + }; + }; + + CPANDistnameInfo = buildPerlPackage { + pname = "CPAN-DistnameInfo"; + version = "0.12"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GB/GBARR/CPAN-DistnameInfo-0.12.tar.gz"; + sha256 = "0d94kx596w7k328cvq4y96z1gz12hdhn3z1mklkbrb7fyzlzn91g"; + }; + meta = { + description = "Extract distribution name and version from a distribution filename"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CPANMetaCheck = buildPerlPackage { + pname = "CPAN-Meta-Check"; + version = "0.014"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LE/LEONT/CPAN-Meta-Check-0.014.tar.gz"; + sha256 = "07rmdbz1rbnb7w33vswn1wixlyh947sqr93xrvcph1hwzhmmg818"; + }; + buildInputs = [ TestDeep ]; + meta = { + description = "Verify requirements in a CPAN::Meta object"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CPANPerlReleases = buildPerlPackage { + pname = "CPAN-Perl-Releases"; + version = "5.20201120"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BI/BINGOS/CPAN-Perl-Releases-5.20201120.tar.gz"; + sha256 = "1qsjm26556kqxyvj85c7j37mh2xw78fm3i7f58mpqkfawxip4q3k"; + }; + meta = { + homepage = "https://github.com/bingos/cpan-perl-releases"; + description = "Mapping Perl releases on CPAN to the location of the tarballs"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CPANPLUS = buildPerlPackage { + pname = "CPANPLUS"; + version = "0.9908"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BI/BINGOS/CPANPLUS-0.9908.tar.gz"; + sha256 = "1m4xas67fax947kahvg4jsnsr2r1i58c5g3f1bixh7krgnsarxjq"; + }; + propagatedBuildInputs = [ ArchiveExtract ModulePluggable ObjectAccessor PackageConstants TermUI ]; + meta = { + homepage = "https://github.com/jib/cpanplus-devel"; + description = "Ameliorated interface to the CPAN"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CPANUploader = buildPerlPackage { + pname = "CPAN-Uploader"; + version = "0.103015"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/CPAN-Uploader-0.103015.tar.gz"; + sha256 = "1idvkxqzc53hjs808gc6z6873bg4gn6zz499df0wppi56vz7w24f"; + }; + propagatedBuildInputs = [ FileHomeDir GetoptLongDescriptive LWPProtocolHttps TermReadKey ]; + meta = { + homepage = "https://github.com/rjbs/cpan-uploader"; + description = "Upload things to the CPAN"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CryptArgon2 = perlPackages.buildPerlModule { + pname = "Crypt-Argon2"; + version = "0.010"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LE/LEONT/Crypt-Argon2-0.010.tar.gz"; + sha256 = "3ea1c006f10ef66fd417e502a569df15c4cc1c776b084e35639751c41ce6671a"; + }; + nativeBuildInputs = [ pkgs.ld-is-cc-hook ]; + meta = { + description = "Perl interface to the Argon2 key derivation functions"; + license = lib.licenses.cc0; + }; + }; + + CryptBlowfish = buildPerlPackage { + pname = "Crypt-Blowfish"; + version = "2.14"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DP/DPARIS/Crypt-Blowfish-2.14.tar.gz"; + sha256 = "1cb7g8cyfs9alrfdykxhs8m6azj091fmcycz6p5vkxbbzcgl7cs6"; + }; + }; + + CryptCAST5_PP = buildPerlPackage { + pname = "Crypt-CAST5_PP"; + version = "1.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BO/BOBMATH/Crypt-CAST5_PP-1.04.tar.gz"; + sha256 = "cba98a80403fb898a14c928f237f44816b4848641840ce2517363c2c071b5327"; + }; + meta = { + description = "CAST5 block cipher in pure Perl"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + CryptCBC = buildPerlPackage { + pname = "Crypt-CBC"; + version = "2.33"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LD/LDS/Crypt-CBC-2.33.tar.gz"; + sha256 = "0ig698lmpjz7fslnznxm0609lvlnvf4f3s370082nzycnqhxww3a"; + }; + }; + + CryptCurve25519 = buildPerlPackage { + pname = "Crypt-Curve25519"; + version = "0.06"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AJ/AJGB/Crypt-Curve25519-0.06.tar.gz"; + sha256 = "1ir0gfxm8i7r9zyfs2zvil5jgwirl7j6cb9cm1p2kjpfnhyp0j4z"; + }; + patches = [ + (fetchpatch { + url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/dev-perl/Crypt-Curve25519/files/Crypt-Curve25519-0.60.0-fmul-fixedvar.patch?id=cec727ad614986ca1e6b9468eea7f1a5a9183382"; + sha256 = "0l005jzxp6q6vyl3p43ji47if0v9inscnjl0vxaqzf6c17akgbhf"; + }) + ]; + meta = { + description = "Generate shared secret using elliptic-curve Diffie-Hellman function"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CryptDES = buildPerlPackage { + pname = "Crypt-DES"; + version = "2.07"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DP/DPARIS/Crypt-DES-2.07.tar.gz"; + sha256 = "1rypxlhpd1jc0c327aghgl9y6ls47drmpvn0a40b4k3vhfsypc9d"; + }; + }; + + CryptDES_EDE3 = buildPerlPackage { + pname = "Crypt-DES_EDE3"; + version = "0.01"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BT/BTROTT/Crypt-DES_EDE3-0.01.tar.gz"; + sha256 = "9cb2e04b625e9cc0833cd499f76fd12556583ececa782a9758a55e3f969748d6"; + }; + propagatedBuildInputs = [ CryptDES ]; + meta = { + description = "Triple-DES EDE encryption/decryption"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + CryptDH = buildPerlPackage { + pname = "Crypt-DH"; + version = "0.07"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MITHALDU/Crypt-DH-0.07.tar.gz"; + sha256 = "0pvzlgwpx8fzdy64ki15155vhsj30i9zxmw6i4p7irh17d1g7368"; + }; + propagatedBuildInputs = [ MathBigIntGMP ]; + }; + + CryptDHGMP = buildPerlPackage { + pname = "Crypt-DH-GMP"; + version = "0.00012"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DM/DMAKI/Crypt-DH-GMP-0.00012.tar.gz"; + sha256 = "0f5gdprcql4kwzgxl2s6ngcfg1jl45lzcqh7dkv5bkwlwmxa9rsi"; + }; + buildInputs = [ pkgs.gmp DevelChecklib TestRequires ]; + NIX_CFLAGS_COMPILE = "-I${pkgs.gmp.dev}/include"; + NIX_CFLAGS_LINK = "-L${pkgs.gmp.out}/lib -lgmp"; + }; + + CryptDSA = buildPerlPackage { + pname = "Crypt-DSA"; + version = "1.17"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AD/ADAMK/Crypt-DSA-1.17.tar.gz"; + sha256 = "d1b8585f6bf746f76e5dc5da3641d325ed656bc2e5f344b54514b55c31009a03"; + }; + propagatedBuildInputs = [ DataBuffer DigestSHA1 FileWhich ]; + meta = { + description = "DSA Signatures and Key Generation"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + CryptECB = buildPerlPackage { + pname = "Crypt-ECB"; + version = "2.22"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AP/APPEL/Crypt-ECB-2.22.tar.gz"; + sha256 = "f5af62e908cd31a34b2b813135a0718016fd003ffa0021ffbdd84c50158267aa"; + }; + meta = with lib; { + description = "Use block ciphers using ECB mode"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CryptEksblowfish = buildPerlModule { + pname = "Crypt-Eksblowfish"; + version = "0.009"; + src = fetchurl { + url = "mirror://cpan/authors/id/Z/ZE/ZEFRAM/Crypt-Eksblowfish-0.009.tar.gz"; + sha256 = "3cc7126d5841107237a9be2dc5c7fbc167cf3c4b4ce34678a8448b850757014c"; + }; + propagatedBuildInputs = [ ClassMix ]; + perlPreHook = lib.optionalString (stdenv.isi686 || stdenv.isDarwin) "export LD=$CC"; + }; + + CryptFormat = buildPerlPackage { + pname = "Crypt-Format"; + version = "0.10"; + src = fetchurl { + url = "mirror://cpan/authors/id/F/FE/FELIPE/Crypt-Format-0.10.tar.gz"; + sha256 = "89ddc010a6c91d5be7a1874a528eed6eda39f2c401c18e63d80ddfbf7127e2dd"; + }; + buildInputs = [ TestException TestFailWarnings ]; + meta = { + description = "Conversion utilities for encryption applications"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + CryptIDEA = buildPerlPackage { + pname = "Crypt-IDEA"; + version = "1.10"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DP/DPARIS/Crypt-IDEA-1.10.tar.gz"; + sha256 = "0690lzlyjqgmnb94dq7dm5n6pgybg10fkpgfycgzr814370pig9k"; + }; + }; + + CryptJWT = buildPerlPackage { + pname = "Crypt-JWT"; + version = "0.029"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIK/Crypt-JWT-0.029.tar.gz"; + sha256 = "0fccff29065a0098eef151deeb33c12c0d68e16a1cb4e7465b26ebbd4c18cd2f"; + }; + propagatedBuildInputs = [ CryptX JSON ]; + meta = { + description = "JSON Web Token"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CryptPassphrase = buildPerlPackage { + pname = "Crypt-Passphrase"; + version = "0.003"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LE/LEONT/Crypt-Passphrase-0.003.tar.gz"; + sha256 = "685aa090f8179a86d6896212ccf8ccfde7a79cce857199bb14e2277a10d240ad"; + }; + meta = { + description = "A module for managing passwords in a cryptographically agile manner"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CryptPassphraseArgon2 = buildPerlPackage { + pname = "Crypt-Passphrase-Argon2"; + version = "0.003"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LE/LEONT/Crypt-Passphrase-Argon2-0.003.tar.gz"; + sha256 = "sha256-cCkLtb3GfBcBKN8+UWexfQS7eTkzqubAWnWGfao/OTg="; + }; + propagatedBuildInputs = with perlPackages; [ CryptArgon2 CryptPassphrase ]; + meta = { + description = "An Argon2 encoder for Crypt::Passphrase"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CryptPassphraseBcrypt = buildPerlPackage { + pname = "Crypt-Passphrase-Bcrypt"; + version = "0.001"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LE/LEONT/Crypt-Passphrase-Bcrypt-0.001.tar.gz"; + sha256 = "sha256-M44nA4RH/eAjznyaC1dPR+4zeQRKDAgxrJRx8UMNxMU="; + }; + propagatedBuildInputs = [ CryptEksblowfish CryptPassphrase ]; + meta = { + homepage = "https://github.com/Leont/crypt-passphrase-bcrypt"; + description = "A bcrypt encoder for Crypt::Passphrase"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CryptPasswdMD5 = buildPerlModule { + pname = "Crypt-PasswdMD5"; + version = "1.40"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RS/RSAVAGE/Crypt-PasswdMD5-1.40.tgz"; + sha256 = "0j0r74f18nk63phddzqbf7wqma2ci4p4bxvrwrxsy0aklbp6lzdp"; + }; + }; + + CryptPKCS10 = buildPerlModule { + pname = "Crypt-PKCS10"; + version = "2.001"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MR/MRSCOTTY/Crypt-PKCS10-2.001.tar.gz"; + sha256 = "f7945b76a2d8f4d8ecf627b2eb8ea4f41d001e6a915efe82e71d6b97fea3ffa9"; + }; + buildInputs = [ pkgs.unzip ModuleBuildTiny ]; + propagatedBuildInputs = [ ConvertASN1 ]; + meta = { + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CryptRandomSeed = buildPerlPackage { + pname = "Crypt-Random-Seed"; + version = "0.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DANAJ/Crypt-Random-Seed-0.03.tar.gz"; + sha256 = "593da54b522c09cc26bbcc0e4e49c1c8e688a6fd33b0726af801d722a5c8d0f1"; + }; + propagatedBuildInputs = [ CryptRandomTESHA2 ]; + meta = { + homepage = "https://github.com/danaj/Crypt-Random-Seed"; + description = "Provide strong randomness for seeding"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + CryptRandom = buildPerlPackage rec { + pname = "Crypt-Random"; + version = "1.52"; + src = fetchurl { + url = "mirror://cpan/authors/id/V/VI/VIPUL/Crypt-Random-1.52.tar.gz"; + sha256 = "a93c06de409e6f2eb2e9868ea6d4e653d99f2f7900b2c1831e1f65ace0c4ef84"; + }; + propagatedBuildInputs = [ ClassLoader MathPari StatisticsChiSquare ]; + meta = { + description = "Interface to /dev/random and /dev/urandom"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CryptRandomSource = buildPerlModule { + pname = "Crypt-Random-Source"; + version = "0.14"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Crypt-Random-Source-0.14.tar.gz"; + sha256 = "1rpdds3sy5l1fhngnkrsgwsmwd54wpicx3i9ds69blcskwkcwkpc"; + }; + buildInputs = [ ModuleBuildTiny TestFatal TestSimple13 ]; + propagatedBuildInputs = [ CaptureTiny ModuleFind Moo SubExporter TypeTiny namespaceclean ]; + meta = { + description = "Get weak or strong random data from pluggable sources"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CryptRandomTESHA2 = buildPerlPackage { + pname = "Crypt-Random-TESHA2"; + version = "0.01"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DANAJ/Crypt-Random-TESHA2-0.01.tar.gz"; + sha256 = "a0912b42c52be173da528d5527e40d967324bc04ac78d9fc2ddc91ff16fe9633"; + }; + meta = { + homepage = "https://github.com/danaj/Crypt-Random-TESHA2"; + description = "Random numbers using timer/schedule entropy, aka userspace voodoo entropy"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CryptRC4 = buildPerlPackage { + pname = "Crypt-RC4"; + version = "2.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SI/SIFUKURT/Crypt-RC4-2.02.tar.gz"; + sha256 = "1sp099cws0q225h6j4y68hmfd1lnv5877gihjs40f8n2ddf45i2y"; + }; + }; + + CryptRandPasswd = buildPerlPackage { + pname = "Crypt-RandPasswd"; + version = "0.06"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NE/NEILB/Crypt-RandPasswd-0.06.tar.gz"; + sha256 = "0ca8544371wp4vvqsa19lnhl02hczpkbwkgsgm65ziwwim3r1gdi"; + }; + }; + + CryptRIPEMD160 = buildPerlPackage { + pname = "Crypt-RIPEMD160"; + version = "0.08"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TODDR/Crypt-RIPEMD160-0.08.tar.gz"; + sha256 = "0cmj620kfg08yvh81bq1sbabdyyc3g9pc6vlngxdxjgn0xvcil9l"; + }; + meta = { + homepage = "https://wiki.github.com/toddr/Crypt-RIPEMD160"; + description = "Perl extension for the RIPEMD-160 Hash function"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + CryptMySQL = buildPerlModule { + pname = "Crypt-MySQL"; + version = "0.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/I/IK/IKEBE/Crypt-MySQL-0.04.tar.gz"; + sha256 = "93ebdfaaefcfe9ab683f0121c85f24475d8197f0bcec46018219e4111434dde3"; + }; + propagatedBuildInputs = [ DigestSHA1 ]; + perlPreHook = lib.optionalString (stdenv.isi686 || stdenv.isDarwin) "export LD=$CC"; + }; + + CryptRijndael = buildPerlPackage { + pname = "Crypt-Rijndael"; + version = "1.15"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LE/LEONT/Crypt-Rijndael-1.15.tar.gz"; + sha256 = "0qs1b6ma4sj0ip5d8544fzgc1bbankc4qlmznp8hay8dk5arp650"; + }; + }; + + CryptUnixCryptXS = buildPerlPackage { + pname = "Crypt-UnixCrypt_XS"; + version = "0.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BO/BORISZ/Crypt-UnixCrypt_XS-0.11.tar.gz"; + sha256 = "1ajg3x6kwxy4x9p3nw1j36qjxpjvdpi9wkca5gfd86y9q8939sv2"; + }; + }; + + CryptURandom = buildPerlPackage { + pname = "Crypt-URandom"; + version = "0.36"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DD/DDICK/Crypt-URandom-0.36.tar.gz"; + sha256 = "81fec9921adc5d3c91cbe0ad8cb2bb89b045c4fb0de9cb3c43f17e58e477f8a1"; + }; + meta = { + description = "Provide non blocking randomness"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + CryptScryptKDF = buildPerlModule { + pname = "Crypt-ScryptKDF"; + version = "0.010"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIK/Crypt-ScryptKDF-0.010.tar.gz"; + sha256 = "7d16ee95cce3eb54c174673a7299f4c086fba3ac85f847d0e134feed5f776017"; + }; + propagatedBuildInputs = [ CryptOpenSSLRandom ]; + perlPreHook = "export LD=$CC"; + meta = { + description = "Scrypt password based key derivation function"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/DCIT/perl-Crypt-ScryptKDF"; + maintainers = [ maintainers.sgo ]; + }; + }; + + CryptSmbHash = buildPerlPackage { + pname = "Crypt-SmbHash"; + version = "0.12"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BJ/BJKUIT/Crypt-SmbHash-0.12.tar.gz"; + sha256 = "0dxivcqmabkhpz5xzph6rzl8fvq9xjy26b2ci77pv5gsmdzari38"; + }; + }; + + CryptSodium = buildPerlPackage { + pname = "Crypt-Sodium"; + version = "0.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MG/MGREGORO/Crypt-Sodium-0.11.tar.gz"; + sha256 = "0y3c24zv4iwnvlf9zwxambk8ddram54fm6l1m5yhbskc0nhp6z4h"; + }; + NIX_CFLAGS_COMPILE = "-I${pkgs.libsodium.dev}/include"; + NIX_CFLAGS_LINK = "-L${pkgs.libsodium.out}/lib -lsodium"; + meta = { + homepage = "https://metacpan.org/release/Crypt-Sodium"; + description = "Perl bindings for libsodium (NaCL)"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + CryptTwofish = buildPerlPackage { + pname = "Crypt-Twofish"; + version = "2.18"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AM/AMS/Crypt-Twofish-2.18.tar.gz"; + sha256 = "00fms8v94wr3lmn1nqjcfw30p5scsyr4s3dah8ijm5w7c5fmb0aq"; + }; + meta = { + description = "The Twofish Encryption Algorithm"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + CryptOpenPGP = buildPerlPackage { + pname = "Crypt-OpenPGP"; + version = "1.12"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SR/SROMANOV/Crypt-OpenPGP-1.12.tar.gz"; + sha256 = "e8a7ff2a993b76a69ad6dffdbe55755be5678b84e6ec494dcd9ab966f766f50e"; + }; + patches = [ + # See https://github.com/NixOS/nixpkgs/pull/93599 + ../development/perl-modules/crypt-openpgp-remove-impure-keygen-tests.patch + ]; + buildInputs = [ TestException ]; + propagatedBuildInputs = [ AltCryptRSABigInt CryptCAST5_PP CryptDES_EDE3 CryptDSA CryptIDEA CryptRIPEMD160 CryptRijndael CryptTwofish FileHomeDir LWP ]; + + nativeBuildInputs = lib.optional stdenv.isDarwin shortenPerlShebang; + postInstall = lib.optionalString stdenv.isDarwin '' + shortenPerlShebang $out/bin/pgplet + ''; + + meta = { + homepage = "https://github.com/btrott/Crypt-OpenPGP"; + description = "Pure-Perl OpenPGP implementation"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + doCheck = false; /* test fails with 'No random source available!' */ + }; + + CryptOpenSSLAES = buildPerlPackage { + pname = "Crypt-OpenSSL-AES"; + version = "0.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TT/TTAR/Crypt-OpenSSL-AES-0.02.tar.gz"; + sha256 = "b66fab514edf97fc32f58da257582704a210c2b35e297d5c31b7fa2ffd08e908"; + }; + NIX_CFLAGS_COMPILE = "-I${pkgs.openssl.dev}/include"; + NIX_CFLAGS_LINK = "-L${pkgs.openssl.out}/lib -lcrypto"; + meta = with lib; { + description = "Perl wrapper around OpenSSL's AES library"; + license = with licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CryptOpenSSLBignum = buildPerlPackage { + pname = "Crypt-OpenSSL-Bignum"; + version = "0.09"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KM/KMX/Crypt-OpenSSL-Bignum-0.09.tar.gz"; + sha256 = "1p22znbajq91lbk2k3yg12ig7hy5b4vy8igxwqkmbm4nhgxp4ki3"; + }; + NIX_CFLAGS_COMPILE = "-I${pkgs.openssl.dev}/include"; + NIX_CFLAGS_LINK = "-L${pkgs.openssl.out}/lib -lcrypto"; + }; + + CryptOpenSSLGuess = buildPerlPackage { + pname = "Crypt-OpenSSL-Guess"; + version = "0.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AK/AKIYM/Crypt-OpenSSL-Guess-0.11.tar.gz"; + sha256 = "0rvi9l4ljcbhwwvspq019nfq2h2v746dk355h2nwnlmqikiihsxa"; + }; + meta = { + description = "Guess OpenSSL include path"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/akiym/Crypt-OpenSSL-Guess"; + }; + }; + + CryptOpenSSLRandom = buildPerlPackage { + pname = "Crypt-OpenSSL-Random"; + version = "0.15"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RU/RURBAN/Crypt-OpenSSL-Random-0.15.tar.gz"; + sha256 = "1x6ffps8q7mnawmcfq740llzy7i10g3319vap0wiw4d33fm6z1zh"; + }; + NIX_CFLAGS_COMPILE = "-I${pkgs.openssl.dev}/include"; + NIX_CFLAGS_LINK = "-L${pkgs.openssl.out}/lib -lcrypto"; + buildInputs = [ CryptOpenSSLGuess ]; + }; + + CryptOpenSSLRSA = buildPerlPackage { + pname = "Crypt-OpenSSL-RSA"; + version = "0.31"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TODDR/Crypt-OpenSSL-RSA-0.31.tar.gz"; + sha256 = "4173403ad4cf76732192099f833fbfbf3cd8104e0246b3844187ae384d2c5436"; + }; + propagatedBuildInputs = [ CryptOpenSSLRandom ]; + NIX_CFLAGS_COMPILE = "-I${pkgs.openssl.dev}/include"; + NIX_CFLAGS_LINK = "-L${pkgs.openssl.out}/lib -lcrypto"; + buildInputs = [ CryptOpenSSLGuess ]; + }; + + CryptOpenSSLX509 = buildPerlPackage rec { + pname = "Crypt-OpenSSL-X509"; + version = "1.813"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JO/JONASBN/Crypt-OpenSSL-X509-1.813.tar.gz"; + sha256 = "684bd888d2ed4c748f8f6dd8e87c14afa2974b12ee01faa082ad9cfa1e321e62"; + }; + NIX_CFLAGS_COMPILE = "-I${pkgs.openssl.dev}/include"; + NIX_CFLAGS_LINK = "-L${pkgs.openssl.out}/lib -lcrypto"; + meta = { + homepage = "https://github.com/dsully/perl-crypt-openssl-x509"; + description = "Perl extension to OpenSSL's X509 API"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + CryptPBKDF2 = buildPerlPackage { + pname = "Crypt-PBKDF2"; + version = "0.161520"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AR/ARODLAND/Crypt-PBKDF2-0.161520.tar.gz"; + sha256 = "97dfa79a309a086e184a4e61047f8a10ffb3db051025e7d222a25f19130ba417"; + }; + buildInputs = [ TestFatal ]; + propagatedBuildInputs = [ DigestHMAC DigestSHA3 Moo TypeTiny namespaceautoclean strictures ]; + meta = { + homepage = "https://metacpan.org/release/Crypt-PBKDF2"; + description = "The PBKDF2 password hash algorithm"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + CryptPerl = buildPerlPackage { + pname = "Crypt-Perl"; + version = "0.34"; + src = fetchurl { + url = "mirror://cpan/authors/id/F/FE/FELIPE/Crypt-Perl-0.34.tar.gz"; + sha256 = "0e1cb223df0041f6d9b010f11e6f97a97ab55a118a273938eb4fe85d403f1b11"; + }; + checkInputs = [ pkgs.openssl MathBigIntGMP ]; + buildInputs = [ CallContext FileSlurp FileWhich TestClass TestDeep TestException TestFailWarnings TestNoWarnings ]; + propagatedBuildInputs = [ BytesRandomSecureTiny ClassAccessor ConvertASN1 CryptFormat MathProvablePrime SymbolGet TryTiny ]; + meta = { + description = "Cryptography in pure Perl"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + CryptEd25519 = buildPerlPackage { + pname = "Crypt-Ed25519"; + version = "1.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/ML/MLEHMANN/Crypt-Ed25519-1.04.tar.gz"; + sha256 = "1jwh6b8b2ppvzxaljz287zakj4q3ip4zq121i23iwh26wxhlll2q"; + }; + + nativeBuildInputs = [ CanaryStability ]; + + meta = { + description = "Minimal Ed25519 bindings"; + license = lib.licenses.artistic2; + maintainers = [ maintainers.thoughtpolice ]; + }; + buildInputs = [ CanaryStability ]; + }; + + CryptSSLeay = buildPerlPackage { + pname = "Crypt-SSLeay"; + version = "0.73_06"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NA/NANIS/Crypt-SSLeay-0.73_06.tar.gz"; + sha256 = "0b159lw3ia5r87qsgff3qhdnz3l09xcz04rbk4ji7fbyr12wmv7q"; + }; + + makeMakerFlags = "--libpath=${pkgs.openssl.out}/lib --incpath=${pkgs.openssl.dev}/include"; + buildInputs = [ PathClass ]; + propagatedBuildInputs = [ BytesRandomSecure LWPProtocolHttps ]; + }; + + CSSDOM = buildPerlPackage { + pname = "CSS-DOM"; + version = "0.17"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SP/SPROUT/CSS-DOM-0.17.tar.gz"; + sha256 = "09phb6c9czpcp9imq06khm54kspsx6hnvfrjxramx663ygmpifb5"; + }; + propagatedBuildInputs = [ Clone ]; + }; + + CSSMinifier = buildPerlPackage { + pname = "CSS-Minifier"; + version = "0.01"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PM/PMICHAUX/CSS-Minifier-0.01.tar.gz"; + sha256 = "0Kk0m46LfoOrcM+IVM+7Qv8pwfbHyCmPIlfdIaoMf+8="; + }; + meta = with lib; { + description = "Perl extension for minifying CSS"; + license = licenses.artistic1; + maintainers = teams.determinatesystems.members; + }; + }; + + CSSMinifierXS = buildPerlModule { + pname = "CSS-Minifier-XS"; + version = "0.09"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GT/GTERMARS/CSS-Minifier-XS-0.09.tar.gz"; + sha256 = "1myswrmh0sqp5xjpp03x45z8arfmgkjx0srl3r6kjsyzl1zrk9l8"; + }; + perlPreHook = lib.optionalString (stdenv.isi686 || stdenv.isDarwin) "export LD=$CC"; + meta = { + description = "XS based CSS minifier"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CSSSquish = buildPerlPackage { + pname = "CSS-Squish"; + version = "0.10"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TS/TSIBLEY/CSS-Squish-0.10.tar.gz"; + sha256 = "65fc0d69acd1fa33d9a4c3b09cce0fbd737d747b1fcc4e9d87ebd91050cbcb4e"; + }; + buildInputs = [ TestLongString ]; + propagatedBuildInputs = [ URI ]; + meta = { + description = "Compact many CSS files into one big file"; + }; + }; + + Curses = buildPerlPackage { + pname = "Curses"; + version = "1.37"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GI/GIRAFFED/Curses-1.37.tar.gz"; + sha256 = "086vaj4wh5473hbp5f4amk6l0yzm66yxdcd2znz5pcqrmpiplw3l"; + }; + propagatedBuildInputs = [ pkgs.ncurses ]; + NIX_CFLAGS_LINK = "-lncurses"; + meta = { + description = "Perl bindings to ncurses"; + license = lib.licenses.artistic1; + }; + }; + + CursesUI = buildPerlPackage { + pname = "Curses-UI"; + version = "0.9609"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MD/MDXI/Curses-UI-0.9609.tar.gz"; + sha256 = "1bqf4h8z70f78nzqq5yj4ahvsbhxxal6bc2g301l9qdn2fjjgf0a"; + }; + meta = { + description = "curses based OO user interface framework"; + license = lib.licenses.artistic1; + }; + propagatedBuildInputs = [ Curses TermReadKey ]; + }; + + CursesUIGrid = buildPerlPackage { + pname = "Curses-UI-Grid"; + version = "0.15"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AD/ADRIANWIT/Curses-UI-Grid-0.15.tar.gz"; + sha256 = "0820ca4a9fb949ba8faf97af574018baeffb694e980c5087bb6522aa70b9dbec"; + }; + propagatedBuildInputs = [ CursesUI TestPod TestPodCoverage ]; + meta = { + description = "Create and manipulate data in grid model"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CryptX = buildPerlPackage { + pname = "CryptX"; + version = "0.069"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIK/CryptX-0.069.tar.gz"; + sha256 = "b5503a35046a973174234a823dba63403b080957c4a370d60d66aa7c7587d850"; + }; + meta = { + description = "Crypto toolkit"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CryptX509 = buildPerlPackage { + pname = "Crypt-X509"; + version = "0.53"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MR/MRSCOTTY/Crypt-X509-0.53.tar.gz"; + sha256 = "d2ff614f9457dc87ab277b81bced3532c3ed309b73b9a61aaefbe9488c9e660f"; + }; + propagatedBuildInputs = [ ConvertASN1 ]; + meta = { + description = "Parse a X.509 certificate"; + }; + }; + + CwdGuard = buildPerlModule { + pname = "Cwd-Guard"; + version = "0.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KA/KAZEBURO/Cwd-Guard-0.05.tar.gz"; + sha256 = "0xwf4rmii55k3lp19mpbh00mbgby7rxdk2lk84148bjhp6i7rz3s"; + }; + meta = { + description = "Temporary changing working directory (chdir)"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ TestRequires ]; + }; + + DataClone = buildPerlPackage { + pname = "Data-Clone"; + version = "0.004"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GF/GFUJI/Data-Clone-0.004.tar.gz"; + sha256 = "0g1qhi5qyk4fp0pwyaw90vxiyyn8las0i8ghzrnr4srai1wy3r9g"; + }; + buildInputs = [ TestRequires ]; + meta = { + description = "Polymorphic data cloning"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DataCompare = buildPerlPackage { + pname = "Data-Compare"; + version = "1.27"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DC/DCANTRELL/Data-Compare-1.27.tar.gz"; + sha256 = "1gg8rqbv3x6a1lrpabv6vnlab53zxmpwz2ygad9fcx4gygqj12l1"; + }; + propagatedBuildInputs = [ Clone FileFindRule ]; + }; + + DataDump = buildPerlPackage { + pname = "Data-Dump"; + version = "1.23"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GA/GAAS/Data-Dump-1.23.tar.gz"; + sha256 = "0r9ba52b7p8nnn6nw0ygm06lygi8g68piri78jmlqyrqy5gb0lxg"; + }; + meta = { + description = "Pretty printing of data structures"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DataDumperAutoEncode = buildPerlModule { + pname = "Data-Dumper-AutoEncode"; + version = "1.00"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BA/BAYASHI/Data-Dumper-AutoEncode-1.00.tar.gz"; + sha256 = "2d9a0262ad443d321dc489ef6dfa7b3eed11a2708a75d397d371bb2585e5eca1"; + }; + buildInputs = [ ModuleBuildPluggable ModuleBuildPluggableCPANfile ]; + propagatedBuildInputs = [ IOInteractiveTiny ]; + meta = { + description = "Dump with recursive encoding"; + license = lib.licenses.artistic2; + }; + }; + + DataDumperConcise = buildPerlPackage { + pname = "Data-Dumper-Concise"; + version = "2.023"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Data-Dumper-Concise-2.023.tar.gz"; + sha256 = "a6c22f113caf31137590def1b7028a7e718eface3228272d0672c25e035d5853"; + }; + meta = { + description = "Less indentation and newlines plus sub deparsing"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DataEntropy = buildPerlModule { + pname = "Data-Entropy"; + version = "0.007"; + src = fetchurl { + url = "mirror://cpan/authors/id/Z/ZE/ZEFRAM/Data-Entropy-0.007.tar.gz"; + sha256 = "2611c4a1a3038594d79ea4ed14d9e15a9af8f77105f51667795fe4f8a53427e4"; + }; + propagatedBuildInputs = [ CryptRijndael DataFloat HTTPLite ParamsClassify ]; + }; + + DataFloat = buildPerlModule { + pname = "Data-Float"; + version = "0.013"; + src = fetchurl { + url = "mirror://cpan/authors/id/Z/ZE/ZEFRAM/Data-Float-0.013.tar.gz"; + sha256 = "e2b1523d858930b8bbdbd196f08235f5e678b84919ba87712e26313b9c27518a"; + }; + }; + + DataFormValidator = buildPerlPackage { + pname = "Data-FormValidator"; + version = "4.88"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DF/DFARRELL/Data-FormValidator-4.88.tar.gz"; + sha256 = "c1a539f91c92cbcd8a8d83597ec9a7643fcd8ccf5a94e15382c3765289170066"; + }; + propagatedBuildInputs = [ DateCalc EmailValid FileMMagic ImageSize MIMETypes RegexpCommon ]; + meta = { + description = "Validates user input (usually from an HTML form) based on input profile"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ CGI ]; + }; + + DataGUID = buildPerlPackage { + pname = "Data-GUID"; + version = "0.049"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Data-GUID-0.049.tar.gz"; + sha256 = "0yx7d4qwsr9n85gslip0y3mdwr5fkncfbwxz7si2a17x95yl7bxq"; + }; + propagatedBuildInputs = [ DataUUID SubExporter ]; + meta = { + homepage = "https://github.com/rjbs/Data-GUID"; + description = "Globally unique identifiers"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DataHexDump = buildPerlPackage { + pname = "Data-HexDump"; + version = "0.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/F/FT/FTASSIN/Data-HexDump-0.02.tar.gz"; + sha256 = "1a9d843e7f667c1c6f77c67af5d77e7462ff23b41937cb17454d03535cd9be70"; + }; + meta = { + description = "Hexadecimal Dumper"; + maintainers = with maintainers; [ AndersonTorres ]; + }; + }; + + DataHexdumper = buildPerlPackage { + pname = "Data-Hexdumper"; + version = "3.0001"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DC/DCANTRELL/Data-Hexdumper-3.0001.tar.gz"; + sha256 = "f9243cbe8affed5045fe4df505726a7a7289471e30c51ac065b3ed6ce0d1a604"; + }; + meta = { + description = "Make binary data human-readable"; + license = with lib.licenses; [ artistic1 gpl2 ]; + }; + }; + + DataHierarchy = buildPerlPackage { + pname = "Data-Hierarchy"; + version = "0.34"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CL/CLKAO/Data-Hierarchy-0.34.tar.gz"; + sha256 = "1vfrkygdaq0k7006i83jwavg9wgszfcyzbl9b7fp37z2acmyda5k"; + }; + buildInputs = [ TestException ]; + }; + + DataICal = buildPerlPackage { + pname = "Data-ICal"; + version = "0.24"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BP/BPS/Data-ICal-0.24.tar.gz"; + sha256 = "7331c7c84886c53337c0db823615e0e7134a8f13efd284e5c20726d5bcd52dff"; + }; + buildInputs = [ TestLongString TestNoWarnings TestWarn ]; + propagatedBuildInputs = [ ClassReturnValue TextvFileasData ]; + meta = { + description = "Generates iCalendar (RFC 2445) calendar files"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DataIEEE754 = buildPerlPackage { + pname = "Data-IEEE754"; + version = "0.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MAXMIND/Data-IEEE754-0.02.tar.gz"; + sha256 = "07b73dlxd0qmxgkkrpa2xr61y18v3adlf1qgnl9k90kj8q9spx66"; + }; + buildInputs = [ TestBits ]; + meta = { + description = "Pack and unpack big-endian IEEE754 floats and doubles"; + license = with lib.licenses; [ artistic2 ]; + }; + }; + + DataInteger = buildPerlModule { + pname = "Data-Integer"; + version = "0.006"; + src = fetchurl { + url = "mirror://cpan/authors/id/Z/ZE/ZEFRAM/Data-Integer-0.006.tar.gz"; + sha256 = "0m53zxhx9sn49yqh7azlpyy9m65g54v8cd2ha98y77337gg7xdv3"; + }; + }; + + DataMessagePack = buildPerlModule { + pname = "Data-MessagePack"; + version = "1.01"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SY/SYOHEX/Data-MessagePack-1.01.tar.gz"; + sha256 = "8fa0ed0101d04e661821a7b78e8d62ce3e19b299275bbfed178e2ba8912663ea"; + }; + buildInputs = [ ModuleBuildXSUtil TestRequires ]; + meta = { + homepage = "https://github.com/msgpack/msgpack-perl"; + description = "MessagePack serializing/deserializing"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + broken = stdenv.isDarwin; # never built on Hydra https://hydra.nixos.org/job/nixpkgs/staging-next/perl534Packages.DataMessagePack.x86_64-darwin + }; + }; + + DataOptList = buildPerlPackage { + pname = "Data-OptList"; + version = "0.110"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Data-OptList-0.110.tar.gz"; + sha256 = "1hzmgr2imdg1fc3hmwx0d56fhsdfyrgmgx7jb4jkyiv6575ifq9n"; + }; + propagatedBuildInputs = [ ParamsUtil SubInstall ]; + meta = { + homepage = "https://github.com/rjbs/data-optlist"; + description = "Parse and validate simple name/value option pairs"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DataPage = buildPerlPackage { + pname = "Data-Page"; + version = "2.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Data-Page-2.03.tar.gz"; + sha256 = "12rxrr2b11qjk0c437cisw2kfqkafw1awcng09cv6yhzglb55yif"; + }; + propagatedBuildInputs = [ ClassAccessorChained ]; + buildInputs = [ TestException ]; + }; + + DataPagePageset = buildPerlModule { + pname = "Data-Page-Pageset"; + version = "1.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CH/CHUNZI/Data-Page-Pageset-1.02.tar.gz"; + sha256 = "142isi8la383dbjxj7lfgcbmmrpzwckcc4wma6rdl8ryajsipb6f"; + }; + buildInputs = [ ClassAccessor DataPage TestException ]; + meta = { + description = "change long page list to be shorter and well navigate"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DataPassword = buildPerlPackage { + pname = "Data-Password"; + version = "1.12"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RA/RAZINF/Data-Password-1.12.tar.gz"; + sha256 = "830cde81741ff384385412e16faba55745a54a7cc019dd23d7ed4f05d551a961"; + }; + }; + + DataPerl = buildPerlPackage { + pname = "Data-Perl"; + version = "0.002011"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TOBYINK/Data-Perl-0.002011.tar.gz"; + sha256 = "8d34dbe314cfa2d99bd9aae546bbde94c38bb05b74b07c89bde1673a6f6c55f4"; + }; + buildInputs = [ TestDeep TestFatal TestOutput ]; + propagatedBuildInputs = [ ClassMethodModifiers ListMoreUtils ModuleRuntime RoleTiny strictures ]; + meta = { + homepage = "https://github.com/mattp-/Data-Perl"; + description = "Base classes wrapping fundamental Perl data types"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DataPrinter = buildPerlPackage { + pname = "Data-Printer"; + version = "0.40"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GA/GARU/Data-Printer-0.40.tar.gz"; + sha256 = "0njjh8zp5afc4602jrnmg89icj7gfsil6i955ypcqxc2gl830sb0"; + }; + propagatedBuildInputs = [ ClonePP FileHomeDir PackageStash SortNaturally ]; + meta = { + description = "colored pretty-print of Perl data structures and objects"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DataRandom = buildPerlPackage { + pname = "Data-Random"; + version = "0.13"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BA/BAREFOOT/Data-Random-0.13.tar.gz"; + sha256 = "eb590184a8db28a7e49eab09e25f8650c33f1f668b6a472829de74a53256bfc0"; + }; + buildInputs = [ FileShareDirInstall TestMockTime ]; + meta = { + description = "Perl module to generate random data"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DataSection = buildPerlPackage { + pname = "Data-Section"; + version = "0.200007"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Data-Section-0.200007.tar.gz"; + sha256 = "1pmlxca0a8sv2jjwvhwgqavq6iwys6kf457lby4anjp3f1dpx4yd"; + }; + propagatedBuildInputs = [ MROCompat SubExporter ]; + meta = { + homepage = "https://github.com/rjbs/data-section"; + description = "Read multiple hunks of data out of your DATA section"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ TestFailWarnings ]; + }; + + DataSectionSimple = buildPerlPackage { + pname = "Data-Section-Simple"; + version = "0.07"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIYAGAWA/Data-Section-Simple-0.07.tar.gz"; + sha256 = "0b3035ffdb909aa1f7ded6b608fa9d894421c82c097d51e7171170d67579a9cb"; + }; + buildInputs = [ TestRequires ]; + meta = { + homepage = "https://github.com/miyagawa/Data-Section-Simple"; + description = "Read data from __DATA__"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DataSerializer = buildPerlModule { + pname = "Data-Serializer"; + version = "0.65"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NE/NEELY/Data-Serializer-0.65.tar.gz"; + sha256 = "048zjy8valnil8yawa3vrxr005rz95gpfwvmy2jq0g830195l58j"; + }; + meta = { + description = "Modules that serialize data structures"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DataSExpression = buildPerlPackage { + pname = "Data-SExpression"; + version = "0.41"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NE/NELHAGE/Data-SExpression-0.41.tar.gz"; + sha256 = "8162426a4285a094385fdfaf6d09ced106d5af57553f953acb1d56867dd0149b"; + }; + buildInputs = [ TestDeep ]; + propagatedBuildInputs = [ ClassAccessor ]; + meta = { + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DataSpreadPagination = buildPerlPackage { + pname = "Data-SpreadPagination"; + version = "0.1.2"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KN/KNEW/Data-SpreadPagination-0.1.2.tar.gz"; + sha256 = "74ebfd847132c38cc9e835e14e82c43f1809a95cbc98bb84d1f7ce2e4ef487e3"; + }; + propagatedBuildInputs = [ DataPage MathRound ]; + meta = { + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DataStreamBulk = buildPerlPackage { + pname = "Data-Stream-Bulk"; + version = "0.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DO/DOY/Data-Stream-Bulk-0.11.tar.gz"; + sha256 = "06e08432a6b97705606c925709b99129ad926516e477d58e4461e4b3d9f30917"; + }; + buildInputs = [ TestRequires ]; + propagatedBuildInputs = [ Moose PathClass namespaceclean ]; + meta = { + description = "N at a time iteration API"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DataStructureUtil = buildPerlPackage { + pname = "Data-Structure-Util"; + version = "0.16"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AN/ANDYA/Data-Structure-Util-0.16.tar.gz"; + sha256 = "9cd42a13e65cb15f3a76296eb9a134da220168ec747c568d331a50ae7a2ddbc6"; + }; + buildInputs = [ TestPod ]; + meta = { + description = "Change nature of data within a structure"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DataTaxi = buildPerlPackage { + pname = "Data-Taxi"; + version = "0.96"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIKO/Data-Taxi-0.96.tar.gz"; + sha256 = "0y4wls4jlwd6prvd77szymddhq9sfj06kaqnk4frlvd0zh83djxb"; + }; + buildInputs = [ DebugShowStuff ]; + }; + + DataULID = buildPerlPackage { + pname = "Data-ULID"; + version = "1.0.0"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BA/BALDUR/Data-ULID-1.0.0.tar.gz"; + sha256 = "4d757475893dbad5165f0a65c446d38b47f39019d36f77da9d29c98cbf27206f"; + }; + propagatedBuildInputs = [ DateTime EncodeBase32GMP MathRandomSecure ]; + meta = { + homepage = "https://metacpan.org/release/Data-ULID"; + description = "Universally Unique Lexicographically Sortable Identifier"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = with maintainers; [ sgo ]; + }; + }; + + DataUniqid = buildPerlPackage { + pname = "Data-Uniqid"; + version = "0.12"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MW/MWX/Data-Uniqid-0.12.tar.gz"; + sha256 = "b6919ba49b9fe98bfdf3e8accae7b9b7f78dc9e71ebbd0b7fef7a45d99324ccb"; + }; + }; + + DataUtil = buildPerlModule { + pname = "Data-Util"; + version = "0.66"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SY/SYOHEX/Data-Util-0.66.tar.gz"; + sha256 = "1x662pqjg9p0wcigi7pwf969b2ymk66ncm2vd5dfm5i08pdkjpf3"; + }; + buildInputs = [ HashUtilFieldHashCompat ModuleBuildXSUtil ScopeGuard TestException ]; + perlPreHook = lib.optionalString stdenv.isi686 "export LD=$CC"; # fix undefined reference to `__stack_chk_fail_local' + meta = { + description = "A selection of utilities for data and data types"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/gfx/Perl-Data-Util"; + broken = stdenv.isDarwin; # never built on Hydra https://hydra.nixos.org/job/nixpkgs/staging-next/perl534Packages.DataUtil.x86_64-darwin + }; + }; + + DataURIEncode = buildPerlPackage { + pname = "Data-URIEncode"; + version = "0.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RH/RHANDOM/Data-URIEncode-0.11.tar.gz"; + sha256 = "51c9efbf8423853616eaa24841e4d1996b2db0036900617fb1dbc76c75a1f360"; + }; + meta = { + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DataUUID = buildPerlPackage { + pname = "Data-UUID"; + version = "1.226"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Data-UUID-1.226.tar.gz"; + sha256 = "0lv4k4ibxwkw7zz9hw97s34za9nvjxb4kbmgmx5sj4fll3zmfg89"; + }; + }; + + DataUUIDMT = buildPerlPackage { + pname = "Data-UUID-MT"; + version = "1.001"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DAGOLDEN/Data-UUID-MT-1.001.tar.gz"; + sha256 = "0bb7qibq1c5lhaihxa1sck9pb744p8c7172jgx5zh4c32ac4nk1h"; + }; + buildInputs = [ ListAllUtils ]; + propagatedBuildInputs = [ MathRandomMTAuto ]; + meta = { + description = "Fast random UUID generator using the Mersenne Twister algorithm"; + license = lib.licenses.asl20; + }; + }; + + DataValidateDomain = buildPerlPackage { + pname = "Data-Validate-Domain"; + version = "0.14"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DR/DROLSKY/Data-Validate-Domain-0.14.tar.gz"; + sha256 = "4470f253b8d2720a4dd3fa3ae550995417c2269f3be7ff030e01afa04a3a9421"; + }; + buildInputs = [ Test2Suite ]; + propagatedBuildInputs = [ NetDomainTLD ]; + meta = { + description = "Domain and host name validation"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DataValidateIP = buildPerlPackage { + pname = "Data-Validate-IP"; + version = "0.27"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DR/DROLSKY/Data-Validate-IP-0.27.tar.gz"; + sha256 = "e1aa92235dcb9c6fd9b6c8cda184d1af73537cc77f4f83a0f88207a8bfbfb7d6"; + }; + buildInputs = [ TestRequires ]; + propagatedBuildInputs = [ NetAddrIP ]; + meta = { + description = "IPv4 and IPv6 validation methods"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DataValidateURI = buildPerlPackage { + pname = "Data-Validate-URI"; + version = "0.07"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SO/SONNEN/Data-Validate-URI-0.07.tar.gz"; + sha256 = "f06418d2a4603913d1b6ce52b167dd13e787e13bf2be325a065df7d408f79c60"; + }; + propagatedBuildInputs = [ DataValidateDomain DataValidateIP ]; + meta = { + description = "Common URL validation methods"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DataVisitor = buildPerlPackage { + pname = "Data-Visitor"; + version = "0.31"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Data-Visitor-0.31.tar.gz"; + sha256 = "0vjcsc2hbhml1w126673z31z9rr0hxz64f5rvk7drlmwicr6kc9b"; + }; + buildInputs = [ TestNeeds ]; + propagatedBuildInputs = [ Moose TieToObject namespaceclean ]; + }; + + DateCalc = buildPerlPackage { + pname = "Date-Calc"; + version = "6.4"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/ST/STBEY/Date-Calc-6.4.tar.gz"; + sha256 = "1barz0jgdaan3jm7ciphs5n3ahwkl42imprs3y8c1dwpwyr3gqbw"; + }; + propagatedBuildInputs = [ BitVector ]; + doCheck = false; # some of the checks rely on the year being <2015 + }; + + DateExtract = buildPerlPackage { + pname = "Date-Extract"; + version = "0.06"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AL/ALEXMV/Date-Extract-0.06.tar.gz"; + sha256 = "bc7658d5c50c3525ec0efcb55236a5de2d5d4fc06fc147fa3929c8f0953cda2b"; + }; + buildInputs = [ TestMockTime ]; + propagatedBuildInputs = [ DateTimeFormatNatural ]; + }; + + DateManip = buildPerlPackage { + pname = "Date-Manip"; + version = "6.83"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SB/SBECK/Date-Manip-6.83.tar.gz"; + sha256 = "1ylrj6g1sccnyd5k0dq3xl3l40y1jgcbpcb3jnjj5hknv3hv54gl"; + }; + # for some reason, parsing /etc/localtime does not work anymore - make sure that the fallback "/bin/date +%Z" will work + patchPhase = '' + sed -i "s#/bin/date#${pkgs.coreutils}/bin/date#" lib/Date/Manip/TZ.pm + ''; + doCheck = !stdenv.isi686; # build freezes during tests on i686 + meta = { + description = "Date manipulation routines"; + }; + buildInputs = [ TestInter ]; + }; + + DateSimple = buildPerlPackage { + pname = "Date-Simple"; + version = "3.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/I/IZ/IZUT/Date-Simple-3.03.tar.gz"; + sha256 = "29a1926314ce1681a312d6155c29590c771ddacf91b7485873ce449ef209dd04"; + }; + meta = { + license = with lib.licenses; [ artistic1 gpl2Plus ]; + }; + }; + + DateTime = buildPerlPackage { + pname = "DateTime"; + version = "1.54"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DR/DROLSKY/DateTime-1.54.tar.gz"; + sha256 = "1rxjagwmkdlmksz1cbxwx2ad51pv5q7dri2djqkz44q7j1nxlbmi"; + }; + buildInputs = [ CPANMetaCheck TestFatal TestWarnings ]; + propagatedBuildInputs = [ DateTimeLocale DateTimeTimeZone ]; + meta = { + description = "A date and time object"; + license = lib.licenses.artistic2; + }; + }; + + DateTimeCalendarJulian = buildPerlPackage { + pname = "DateTime-Calendar-Julian"; + version = "0.102"; + src = fetchurl { + url = "mirror://cpan/authors/id/W/WY/WYANT/DateTime-Calendar-Julian-0.102.tar.gz"; + sha256 = "0j95dhma66spjyb04zi6rwy7l33hibnrx02mn0znd9m89aiq52s6"; + }; + meta = { + description = "Dates in the Julian calendar"; + license = lib.licenses.artistic2; + }; + propagatedBuildInputs = [ DateTime ]; + }; + + DateTimeEventICal = buildPerlPackage { + pname = "DateTime-Event-ICal"; + version = "0.13"; + src = fetchurl { + url = "mirror://cpan/authors/id/F/FG/FGLOCK/DateTime-Event-ICal-0.13.tar.gz"; + sha256 = "1skmykxbrf98ldi72d5s1v6228gfdr5iy4y0gpl0xwswxy247njk"; + }; + propagatedBuildInputs = [ DateTimeEventRecurrence ]; + meta = { + description = "DateTime rfc2445 recurrences"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DateTimeEventRecurrence = buildPerlPackage { + pname = "DateTime-Event-Recurrence"; + version = "0.19"; + src = fetchurl { + url = "mirror://cpan/authors/id/F/FG/FGLOCK/DateTime-Event-Recurrence-0.19.tar.gz"; + sha256 = "f9408789a461107766ca1a232bb3ec1e702eec7ca8167401ea6ec3f4b6d0b5a5"; + }; + propagatedBuildInputs = [ DateTimeSet ]; + }; + + DateTimeFormatBuilder = buildPerlPackage { + pname = "DateTime-Format-Builder"; + version = "0.83"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DR/DROLSKY/DateTime-Format-Builder-0.83.tar.gz"; + sha256 = "61ffb23d85b3ca1786b2da3289e99b57e0625fe0e49db02a6dc0cb62c689e2f2"; + }; + propagatedBuildInputs = [ DateTimeFormatStrptime ParamsValidate ]; + meta = { + description = "Create DateTime parser classes and objects"; + license = lib.licenses.artistic2; + }; + }; + + DateTimeFormatDateParse = buildPerlModule { + pname = "DateTime-Format-DateParse"; + version = "0.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JH/JHOBLITT/DateTime-Format-DateParse-0.05.tar.gz"; + sha256 = "f6eca4c8be66ce9992ee150932f8fcf07809fd3d1664caf200b8a5fd3a7e5ebc"; + }; + propagatedBuildInputs = [ DateTime TimeDate ]; + meta = { + description = "Parses Date::Parse compatible formats"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DateTimeFormatFlexible = buildPerlPackage { + pname = "DateTime-Format-Flexible"; + version = "0.32"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TH/THINC/DateTime-Format-Flexible-0.32.tar.gz"; + sha256 = "50a7b9feb287bb14b27323a53c2324486181a3ab6cb3f4c7662d42be901ad8ee"; + }; + propagatedBuildInputs = [ DateTimeFormatBuilder ListMoreUtils ModulePluggable ]; + meta = { + description = "Flexibly parse strings and turn them into DateTime objects"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ TestException TestMockTime TestNoWarnings ]; + }; + + DateTimeFormatHTTP = buildPerlModule { + pname = "DateTime-Format-HTTP"; + version = "0.42"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CK/CKRAS/DateTime-Format-HTTP-0.42.tar.gz"; + sha256 = "0h6qqdg1yzqkdxp7hqlp0qa7d1y64nilgimxs79dys2ryjfpcknh"; + }; + propagatedBuildInputs = [ DateTime HTTPDate ]; + meta = { + description = "Date conversion routines"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DateTimeFormatICal = buildPerlModule { + pname = "DateTime-Format-ICal"; + version = "0.09"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DR/DROLSKY/DateTime-Format-ICal-0.09.tar.gz"; + sha256 = "8b09f6539f5e9c0df0e6135031699ed4ef9eef8165fc80aefeecc817ef997c33"; + }; + propagatedBuildInputs = [ DateTimeEventICal ]; + meta = { + description = "Parse and format iCal datetime and duration strings"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DateTimeFormatISO8601 = buildPerlPackage { + pname = "DateTime-Format-ISO8601"; + version = "0.15"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DR/DROLSKY/DateTime-Format-ISO8601-0.15.tar.gz"; + sha256 = "1afslsr2axkamdfjqk6i3w092hp20dznqffk4lgpxmxrd31ni5ql"; + }; + propagatedBuildInputs = [ DateTimeFormatBuilder ]; + meta = { + description = "Parses ISO8601 formats"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ Test2Suite ]; + }; + + DateTimeFormatMail = buildPerlPackage { + pname = "DateTime-Format-Mail"; + version = "0.403"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BO/BOOK/DateTime-Format-Mail-0.403.tar.gz"; + sha256 = "8df8e35c4477388ff5c7ce8b3e8b6ae4ed30209c7a5051d41737bd14d755fcb0"; + }; + propagatedBuildInputs = [ DateTime ParamsValidate ]; + meta = { + description = "Convert between DateTime and RFC2822/822 formats"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DateTimeFormatNatural = buildPerlModule { + pname = "DateTime-Format-Natural"; + version = "1.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SC/SCHUBIGER/DateTime-Format-Natural-1.11.tar.gz"; + sha256 = "0lj5yh1k4dl06p9ydyscd4ic330w8ygz88m38bhzlbz42kxv13vk"; + }; + buildInputs = [ ModuleUtil TestMockTime ]; + propagatedBuildInputs = [ Clone DateTime ListMoreUtils ParamsValidate boolean ]; + meta = { + description = "Create machine readable date/time with natural parsing logic"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DateTimeFormatMySQL = buildPerlModule { + pname = "DateTime-Format-MySQL"; + version = "0.06"; + src = fetchurl { + url = "mirror://cpan/authors/id/X/XM/XMIKEW/DateTime-Format-MySQL-0.06.tar.gz"; + sha256 = "07cgz60gxvrv7xqvngyll60pa8cx93h3jyx9kc9wdkn95qbd864q"; + }; + propagatedBuildInputs = [ DateTimeFormatBuilder ]; + meta = { + description = "Parse and format MySQL dates and times"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DateTimeFormatPg = buildPerlModule { + pname = "DateTime-Format-Pg"; + version = "0.16013"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DM/DMAKI/DateTime-Format-Pg-0.16013.tar.gz"; + sha256 = "16siw0f3a0ilzv5fnfas5s9n92drjy271yf6qvmmpm0vwnjjx1kz"; + }; + propagatedBuildInputs = [ DateTimeFormatBuilder ]; + meta = { + description = "Parse and format PostgreSQL dates and times"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ ModuleBuildTiny ]; + }; + + DateTimeFormatStrptime = buildPerlPackage { + pname = "DateTime-Format-Strptime"; + version = "1.77"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DR/DROLSKY/DateTime-Format-Strptime-1.77.tar.gz"; + sha256 = "2fa43c838ecf5356f221a91a41c81dba22e7860c5474b4a61723259898173e4a"; + }; + buildInputs = [ TestFatal TestWarnings ]; + propagatedBuildInputs = [ DateTime ]; + meta = { + description = "Parse and format strp and strf time patterns"; + license = lib.licenses.artistic2; + }; + }; + + DateTimeFormatSQLite = buildPerlPackage { + pname = "DateTime-Format-SQLite"; + version = "0.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CF/CFAERBER/DateTime-Format-SQLite-0.11.tar.gz"; + sha256 = "cc1f4e0ae1d39b0d4c3dddccfd7423c77c67a70950c4b5ecabf8ca553ab294b4"; + }; + propagatedBuildInputs = [ DateTimeFormatBuilder ]; + meta = { + description = "Parse and format SQLite dates and times"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DateTimeFormatW3CDTF = buildPerlPackage { + pname = "DateTime-Format-W3CDTF"; + version = "0.07"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GW/GWILLIAMS/DateTime-Format-W3CDTF-0.07.tar.gz"; + sha256 = "69a02b661bbf1daa14a4813cb6786eaa66dbdf2743f0b3f458e30234c3a26268"; + }; + propagatedBuildInputs = [ DateTime ]; + meta = { + description = "Parse and format W3CDTF datetime strings"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DateTimeLocale = buildPerlPackage { + pname = "DateTime-Locale"; + version = "1.28"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DR/DROLSKY/DateTime-Locale-1.28.tar.gz"; + sha256 = "6c604d8c5c9c2739b78e0538a402283b82b1df419e60bef20b04843e4584bade"; + }; + buildInputs = [ CPANMetaCheck FileShareDirInstall IPCSystemSimple PathTiny Test2PluginNoWarnings Test2Suite TestFileShareDir ]; + propagatedBuildInputs = [ FileShareDir ParamsValidationCompiler Specio namespaceautoclean ]; + meta = { + description = "Localization support for DateTime.pm"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DateTimeFormatRFC3339 = buildPerlPackage rec { + pname = "DateTime-Format-RFC3339"; + version = "1.2.0"; + src = fetchurl { + url = "mirror://cpan/authors/id/I/IK/IKEGAMI/DateTime-Format-RFC3339-v${version}.tar.gz"; + sha256 = "1xqdbbiksy6kapc3mv3ayjahmxxlzmb5x7rad4by1iii9hif2vhk"; + }; + propagatedBuildInputs = [ DateTime ]; + meta = { + description = "Parse and format RFC3339 datetime strings"; + license = lib.licenses.cc0; + }; + }; + + DateTimeSet = buildPerlModule { + pname = "DateTime-Set"; + version = "0.3900"; + src = fetchurl { + url = "mirror://cpan/authors/id/F/FG/FGLOCK/DateTime-Set-0.3900.tar.gz"; + sha256 = "94f41c3924aafde4ef7fa6b58e0595d4038d8ac5ffd62ba111b13c5f4dbc0946"; + }; + propagatedBuildInputs = [ DateTime ParamsValidate SetInfinite ]; + meta = { + description = "DateTime set objects"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DateTimeTimeZone = buildPerlPackage { + pname = "DateTime-TimeZone"; + version = "2.44"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DR/DROLSKY/DateTime-TimeZone-2.44.tar.gz"; + sha256 = "09j5rqid1mv0cgm1vc89l2anbb3q8w4bzlm7sqrkiz9dk82x8gap"; + }; + buildInputs = [ TestFatal TestRequires ]; + propagatedBuildInputs = [ ClassSingleton ParamsValidationCompiler Specio namespaceautoclean ]; + meta = { + description = "Time zone object base class and factory"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DateTimeXEasy = buildPerlPackage { + pname = "DateTimeX-Easy"; + version = "0.089"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RO/ROKR/DateTimeX-Easy-0.089.tar.gz"; + sha256 = "17e6d202e7ac6049523048e97bb8f195e3c79208570da1504f4313584e487a79"; + }; + buildInputs = [ TestMost ]; + propagatedBuildInputs = [ DateTimeFormatFlexible DateTimeFormatICal DateTimeFormatNatural TimeDate ]; + doCheck = false; + meta = { + description = "Parse a date/time string using the best method available"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DebugShowStuff = buildPerlModule { + pname = "Debug-ShowStuff"; + version = "1.16"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIKO/Debug-ShowStuff-1.16.tar.gz"; + sha256 = "1drcrnji3yrd0s3xb69bxnqa51s19c13w68vhvjad3nvswn5vpd4"; + }; + propagatedBuildInputs = [ ClassISA DevelStackTrace StringUtil TermReadKey TextTabularDisplay TieIxHash ]; + meta = { + description = "A collection of handy debugging routines for displaying the values of variables with a minimum of coding"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Deliantra = buildPerlPackage rec { + pname = "Deliantra"; + version = "2.01"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/ML/MLEHMANN/${pname}-${version}.tar.gz"; + sha256 = "2716d9b1f05627d60942ce0634b9c1a25109b164818285d45b609ae8596e2b17"; + }; + propagatedBuildInputs = [ AnyEvent CompressLZF JSONXS commonsense ]; + meta = { + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DevelCaller = buildPerlPackage { + pname = "Devel-Caller"; + version = "2.06"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RC/RCLAMP/Devel-Caller-2.06.tar.gz"; + sha256 = "1pxpimifzmnjnvf4icclx77myc15ahh0k56sj1djad1855mawwva"; + }; + propagatedBuildInputs = [ PadWalker ]; + meta = { + description = "Meatier versions of C<caller>"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DevelCheckBin = buildPerlPackage { + pname = "Devel-CheckBin"; + version = "0.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TOKUHIROM/Devel-CheckBin-0.04.tar.gz"; + sha256 = "1r735yzgvsxkj4m6ks34xva5m21cfzp9qiis2d4ivv99kjskszqm"; + }; + meta = { + description = "check that a command is available"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/tokuhirom/Devel-CheckBin"; + }; + }; + + DevelCheckCompiler = buildPerlModule { + pname = "Devel-CheckCompiler"; + version = "0.07"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SY/SYOHEX/Devel-CheckCompiler-0.07.tar.gz"; + sha256 = "1db973a4dbyknjxq608hywil5ai6vplnayshqxrd7m5qnjbpd2vn"; + }; + buildInputs = [ ModuleBuildTiny ]; + meta = { + description = "Check the compiler's availability"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/tokuhirom/Devel-CheckCompiler"; + }; + }; + + DevelChecklib = buildPerlPackage { + pname = "Devel-CheckLib"; + version = "1.14"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MATTN/Devel-CheckLib-1.14.tar.gz"; + sha256 = "15621qh5gaan1sgmk9y9svl70nm8viw17x5h1kf0zknkk8lmw77j"; + }; + buildInputs = [ CaptureTiny MockConfig ]; + }; + + DevelCheckOS = buildPerlPackage { + pname = "Devel-CheckOS"; + version = "1.85"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DC/DCANTRELL/Devel-CheckOS-1.85.tar.gz"; + sha256 = "1jjqwrx8mydyhqwwjlgimribz0yq0b6q66xnr6mgvyn63pdajhvg"; + }; + propagatedBuildInputs = [ FileFindRule ]; + }; + + DevelLeak = buildPerlPackage { + pname = "Devel-Leak"; + version = "0.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NI/NI-S/Devel-Leak-0.03.tar.gz"; + sha256 = "0lkj2xwc3lhxv7scl43r8kfmls4am0b98sqf5vmf7d72257w6hkg"; + }; + meta = { + description = "Utility for looking for perl objects that are not reclaimed"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; # According to Debian + }; + }; + + DevelPatchPerl = buildPerlPackage { + pname = "Devel-PatchPerl"; + version = "2.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BI/BINGOS/Devel-PatchPerl-2.04.tar.gz"; + sha256 = "1q8xhz2sdlz2266pjl8j9vcixbhcaxsprmvsx56ra998miayc42p"; + }; + propagatedBuildInputs = [ Filepushd ModulePluggable ]; + meta = { + homepage = "https://github.com/bingos/devel-patchperl"; + description = "Patch perl source a la Devel::PPPort's buildperl.pl"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DevelRefcount = buildPerlModule { + pname = "Devel-Refcount"; + version = "0.10"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PEVANS/Devel-Refcount-0.10.tar.gz"; + sha256 = "0jnaraqkigyinhwz4nqk1ndq7ssjizr98nd1dd183a6icdlx8m5n"; + }; + buildInputs = [ TestFatal ]; + meta = { + description = "obtain the REFCNT value of a referent"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DevelPPPort = buildPerlPackage { + pname = "Devel-PPPort"; + version = "3.62"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AT/ATOOMIC/Devel-PPPort-3.62.tar.gz"; + sha256 = "16w1mmx304bhql27mgy0l1qjwjr86vn7j0133i0hln9fdz2097gi"; + }; + meta = { + description = "Perl/Pollution/Portability"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DevelTrace = buildPerlPackage { + pname = "Devel-Trace"; + version = "0.12"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MJ/MJD/Devel-Trace-0.12.tar.gz"; + sha256 = "0s1q1a05gk3xvwqkya3k05vqjk13rvb489g0frprhzpzfvvwl0gm"; + }; + meta = { + description = "Print out each line before it is executed (like sh -x)"; + license = lib.licenses.publicDomain; + }; + }; + + DeviceMAC = buildPerlPackage { + pname = "Device-MAC"; + version = "1.00"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JA/JASONK/Device-MAC-1.00.tar.gz"; + sha256 = "c42182a9a8489a314cbfe6e1c8452f32b3b626aa6c89fee1d8925e6dfb64fad5"; + }; + buildInputs = [ TestDeep TestDifferences TestException TestMost TestWarn ]; + propagatedBuildInputs = [ DeviceOUI Moose ]; + meta = { + description = "Handle hardware MAC Addresses (EUI-48 and EUI-64)"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + DeviceOUI = buildPerlPackage { + pname = "Device-OUI"; + version = "1.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JA/JASONK/Device-OUI-1.04.tar.gz"; + sha256 = "4b367e61b1fadde77fb6fb729f3cd5acd1d46e71218d96f406bcba38d43b4bef"; + }; + buildInputs = [ TestException ]; + patches = [ ../development/perl-modules/Device-OUI-1.04-hash.patch ]; + propagatedBuildInputs = [ ClassAccessorGrouped LWP SubExporter ]; + meta = { + description = "Resolve an Organizationally Unique Identifier"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + DBDCSV = buildPerlPackage { + pname = "DBD-CSV"; + version = "0.56"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HM/HMBRAND/DBD-CSV-0.56.tgz"; + sha256 = "16rhgchwlnnvjklca0d4sa3lmlj29zc0iwclk41y5fz6kg8c2qjs"; + }; + propagatedBuildInputs = [ DBI SQLStatement TextCSV_XS ]; + }; + + DBDMock = buildPerlModule { + pname = "DBD-Mock"; + version = "1.58"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JL/JLCOOPER/DBD-Mock-1.58.tar.gz"; + sha256 = "0g67r5i5qad5knjph4ybfpqxabgi2h7svpl3pgjrc4qh4h0vy7mv"; + }; + propagatedBuildInputs = [ DBI ]; + buildInputs = [ ModuleBuildTiny TestException ]; + }; + + DBDSQLite = buildPerlPackage { + pname = "DBD-SQLite"; + version = "1.70"; + + src = fetchurl { + url = "mirror://cpan/authors/id/I/IS/ISHIGAKI/DBD-SQLite-1.70.tar.gz"; + sha256 = "0gpyv89p3yfwifbm005bz5ci8c63jikkfvafg8x7f3lyaggqvza0"; + }; + + propagatedBuildInputs = [ DBI ]; + buildInputs = [ pkgs.sqlite ]; + + patches = [ + # Support building against our own sqlite. + ../development/perl-modules/DBD-SQLite/external-sqlite.patch + + # Pull upstream fix for test failures against sqlite-3.37. + (fetchpatch { + name = "sqlite-3.37-compat.patch"; + url = "https://github.com/DBD-SQLite/DBD-SQLite/commit/ba4f472e7372dbf453444c7764d1c342e7af12b8.patch"; + sha256 = "02lg1y6px7h89pfvgrf23anhbl3v050gn0kmaajvv5h6layhjzly"; + }) + ]; + + makeMakerFlags = "SQLITE_INC=${pkgs.sqlite.dev}/include SQLITE_LIB=${pkgs.sqlite.out}/lib"; + + postInstall = '' + # Get rid of a pointless copy of the SQLite sources. + rm -rf $out/${perl.libPrefix}/*/*/auto/share + ''; + + preCheck = "rm t/65_db_config.t"; # do not run failing tests + + meta = with lib; { + description = "Self Contained SQLite RDBMS in a DBI Driver"; + license = with licenses; [ artistic1 gpl1Plus ]; + platforms = platforms.unix; + }; + }; + + DBDMariaDB = buildPerlPackage { + pname = "DBD-MariaDB"; + version = "1.21"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PA/PALI/DBD-MariaDB-1.21.tar.gz"; + sha256 = "068l4ybja5mmy89lwgzl9c1xs37f4fgvf7j7n8k4f78dg8rjp5zm"; + }; + buildInputs = [ pkgs.mariadb-connector-c DevelChecklib TestDeep TestDistManifest TestPod ]; + propagatedBuildInputs = [ DBI ]; + meta = { + homepage = "https://github.com/gooddata/DBD-MariaDB"; + description = "MariaDB and MySQL driver for the Perl5 Database Interface (DBI)"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + DBDmysql = buildPerlPackage { + pname = "DBD-mysql"; + version = "4.050"; + + src = fetchurl { + url = "mirror://cpan/authors/id/D/DV/DVEEDEN/DBD-mysql-4.050.tar.gz"; + sha256 = "0y4djb048i09dk19av7mzfb3khr72vw11p3ayw2p82jsy4gm8j2g"; + }; + + buildInputs = [ pkgs.libmysqlclient DevelChecklib TestDeep TestDistManifest TestPod ]; + propagatedBuildInputs = [ DBI ]; + + doCheck = false; + + # makeMakerFlags = "MYSQL_HOME=${mysql}"; + }; + + DBDOracle = buildPerlPackage { + pname = "DBD-Oracle"; + version = "1.80"; + + src = fetchurl { + url = "mirror://cpan/authors/id/M/MJ/MJEVANS/DBD-Oracle-1.80.tar.gz"; + sha256 = "1rza36dywbsaync99ibscpqdp53m0yg2748bbib16gbf4cl2apph"; + }; + + ORACLE_HOME = "${pkgs.oracle-instantclient.lib}/lib"; + + buildInputs = [ pkgs.oracle-instantclient TestNoWarnings ]; + propagatedBuildInputs = [ DBI ]; + + postBuild = lib.optionalString stdenv.isDarwin '' + install_name_tool -add_rpath "${pkgs.oracle-instantclient.lib}/lib" blib/arch/auto/DBD/Oracle/Oracle.bundle + ''; + }; + + DBDPg = buildPerlPackage { + pname = "DBD-Pg"; + version = "3.14.2"; + + src = fetchurl { + url = "mirror://cpan/authors/id/T/TU/TURNSTEP/DBD-Pg-3.14.2.tar.gz"; + sha256 = "0kcfqq7g3832wiix0sbyvlc885qghjrp2ah3akn7h2lnb22fjwy9"; + }; + + buildInputs = [ pkgs.postgresql ]; + propagatedBuildInputs = [ DBI ]; + + makeMakerFlags = "POSTGRES_HOME=${pkgs.postgresql}"; + + # tests freeze in a sandbox + doCheck = false; + + meta = { + description = "DBI PostgreSQL interface"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + platforms = lib.platforms.unix; + }; + }; + + DBDsybase = buildPerlPackage { + pname = "DBD-Sybase"; + version = "1.16"; + + src = fetchurl { + url = "mirror://cpan/authors/id/M/ME/MEWP/DBD-Sybase-1.16.tar.gz"; + sha256 = "1k6n261nrrcll9wxn5xwi4ibpavqv1il96687k62mbpznzl2gx37"; + }; + + SYBASE = pkgs.freetds; + + buildInputs = [ pkgs.freetds ]; + propagatedBuildInputs = [ DBI ]; + + doCheck = false; + + meta = { + broken = stdenv.isDarwin; # never built on Hydra https://hydra.nixos.org/job/nixpkgs/staging-next/perl534Packages.DBDsybase.x86_64-darwin + }; + }; + + DBFile = buildPerlPackage { + pname = "DB_File"; + version = "1.855"; + + src = fetchurl { + url = "mirror://cpan/authors/id/P/PM/PMQS/DB_File-1.855.tar.gz"; + sha256 = "0q599h7g4jkzks5dxf1zifx9k7l9vif26r2dlgkzxkg6bfif5zyr"; + }; + + preConfigure = '' + cat > config.in <<EOF + PREFIX = size_t + HASH = u_int32_t + LIB = ${pkgs.db.out}/lib + INCLUDE = ${pkgs.db.dev}/include + EOF + ''; + }; + + DBI = buildPerlPackage { + pname = "DBI"; + version = "1.643"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TI/TIMB/DBI-1.643.tar.gz"; + sha256 = "8a2b993db560a2c373c174ee976a51027dd780ec766ae17620c20393d2e836fa"; + }; + postInstall = lib.optionalString (perl ? crossVersion) '' + mkdir -p $out/${perl.libPrefix}/cross_perl/${perl.version}/DBI + cat > $out/${perl.libPrefix}/cross_perl/${perl.version}/DBI.pm <<EOF + package DBI; + BEGIN { + our \$VERSION = "$version"; + } + 1; + EOF + + autodir=$(echo $out/${perl.libPrefix}/${perl.version}/*/auto/DBI) + cat > $out/${perl.libPrefix}/cross_perl/${perl.version}/DBI/DBD.pm <<EOF + package DBI::DBD; + use Exporter (); + use vars qw (@ISA @EXPORT); + @ISA = qw(Exporter); + @EXPORT = qw(dbd_postamble); + sub dbd_postamble { + return ' + # --- This section was generated by DBI::DBD::dbd_postamble() + DBI_INSTARCH_DIR=$autodir + DBI_DRIVER_XST=$autodir/Driver.xst + + # The main dependency (technically correct but probably not used) + \$(BASEEXT).c: \$(BASEEXT).xsi + + # This dependency is needed since MakeMaker uses the .xs.o rule + \$(BASEEXT)\$(OBJ_EXT): \$(BASEEXT).xsi + + \$(BASEEXT).xsi: \$(DBI_DRIVER_XST) $autodir/Driver_xst.h + ''\t\$(PERL) -p -e "s/~DRIVER~/\$(BASEEXT)/g" \$(DBI_DRIVER_XST) > \$(BASEEXT).xsi + + # --- + '; + } + 1; + EOF + ''; + meta = { + homepage = "https://dbi.perl.org/"; + description = "Database independent interface for Perl"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DBICxTestDatabase = buildPerlPackage { + pname = "DBICx-TestDatabase"; + version = "0.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JR/JROCKWAY/DBICx-TestDatabase-0.05.tar.gz"; + sha256 = "8e3bc2530b01216188c3aa65acdbd2f59c4e631f3ae085dfc439abd89f8f0acf"; + }; + buildInputs = [ DBIxClass TestSimple13 ]; + propagatedBuildInputs = [ DBDSQLite SQLTranslator ]; + meta = { + homepage = "https://metacpan.org/pod/DBICx::TestDatabase"; + description = "Create a temporary database from a DBIx::Class::Schema"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + DBIxClass = buildPerlPackage { + pname = "DBIx-Class"; + version = "0.082842"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RI/RIBASUSHI/DBIx-Class-0.082842.tar.gz"; + sha256 = "1rh7idjjbibc1zmiaaarask434lh0lx7f2xyfwmy37k9fa0xcpmh"; + }; + patches = [ + # https://github.com/Perl5/DBIx-Class/pull/141 + (fetchpatch { + url = "https://github.com/Perl5/DBIx-Class/commit/fb896701d23fa4da622b5b1b2afbbba3da2dd8f3.patch"; + sha256 = "sha256-MSbV9UfHu90NCdC5IFwuy/vpSDw4atfellYh7Ydvkm4="; + }) + ]; + buildInputs = [ DBDSQLite TestDeep TestException TestWarn ]; + propagatedBuildInputs = [ ClassAccessorGrouped ClassC3Componentised ConfigAny ContextPreserve DBI DataDumperConcise DataPage DevelGlobalDestruction ModuleFind PathClass SQLAbstractClassic ScopeGuard SubName namespaceclean ]; + meta = { + homepage = "https://metacpan.org/pod/DBIx::Class"; + description = "Extensible and flexible object <-> relational mapper"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DBIxClassCandy = buildPerlPackage { + pname = "DBIx-Class-Candy"; + version = "0.005003"; + src = fetchurl { + url = "mirror://cpan/authors/id/F/FR/FREW/DBIx-Class-Candy-0.005003.tar.gz"; + sha256 = "b8a229a7b15f559095d4561cf8220460128541ba7fc3545ed35869923d46565c"; + }; + buildInputs = [ TestDeep TestFatal ]; + propagatedBuildInputs = [ DBIxClass LinguaENInflect SubExporter ]; + meta = { + homepage = "https://github.com/frioux/DBIx-Class-Candy"; + description = "Sugar for your favorite ORM, DBIx::Class"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DBIxClassCursorCached = buildPerlPackage { + pname = "DBIx-Class-Cursor-Cached"; + version = "1.001004"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AR/ARCANEZ/DBIx-Class-Cursor-Cached-1.001004.tar.gz"; + sha256 = "09b2jahn2x12qm4f7qm1jzsxbz7qn1czp6a3fnl5l2i3l4r5421p"; + }; + buildInputs = [ CacheCache DBDSQLite ]; + propagatedBuildInputs = [ CarpClan DBIxClass ]; + meta = { + description = "Cursor class with built-in caching support"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DBIxClassDynamicDefault = buildPerlPackage { + pname = "DBIx-Class-DynamicDefault"; + version = "0.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MS/MSTROUT/DBIx-Class-DynamicDefault-0.04.tar.gz"; + sha256 = "228f51ab224642584b4dc63db6de2667c5bfae2a894a9376b210a104806a5afb"; + }; + buildInputs = [ DBICxTestDatabase ]; + propagatedBuildInputs = [ DBIxClass ]; + meta = { + homepage = "https://metacpan.org/pod/DBIx::Class::DynamicDefault"; + description = "Automatically set and update fields"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + DBIxClassHTMLWidget = buildPerlPackage { + pname = "DBIx-Class-HTMLWidget"; + version = "0.16"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AN/ANDREMAR/DBIx-Class-HTMLWidget-0.16.tar.gz"; + sha256 = "05zhniyzl31nq410ywhxm0vmvac53h7ax42hjs9mmpvf45ipahj1"; + }; + propagatedBuildInputs = [ DBIxClass HTMLWidget ]; + }; + + DBIxClassHelpers = buildPerlPackage { + pname = "DBIx-Class-Helpers"; + version = "2.036000"; + src = fetchurl { + url = "mirror://cpan/authors/id/F/FR/FREW/DBIx-Class-Helpers-2.036000.tar.gz"; + sha256 = "b7b8b4891a983c034ef0b45f4112404a0a40550c4e217daeb7a22ca16861efdb"; + }; + buildInputs = [ DBDSQLite DateTimeFormatSQLite TestDeep TestFatal TestRoo aliased ]; + propagatedBuildInputs = [ CarpClan DBIxClassCandy DBIxIntrospector SafeIsa TextBrew ]; + meta = { + homepage = "https://github.com/frioux/DBIx-Class-Helpers"; + description = "Simplify the common case stuff for DBIx::Class"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DBIxClassInflateColumnSerializer = buildPerlPackage { + pname = "DBIx-Class-InflateColumn-Serializer"; + version = "0.09"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MR/MRUIZ/DBIx-Class-InflateColumn-Serializer-0.09.tar.gz"; + sha256 = "6262b4871db6a6c45a0cbe7cde8f1b890b22c291add4ecc40caaeeab5a3a6f50"; + }; + buildInputs = [ DBDSQLite TestException ]; + propagatedBuildInputs = [ DBIxClass JSONMaybeXS YAML ]; + meta = { + homepage = "https://metacpan.org/pod/DBIx::Class::InflateColumn::Serializer"; + description = "Inflators to serialize data structures for DBIx::Class"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + DBIxClassIntrospectableM2M = buildPerlPackage { + pname = "DBIx-Class-IntrospectableM2M"; + version = "0.001002"; + src = fetchurl { + url = "mirror://cpan/authors/id/I/IL/ILMARI/DBIx-Class-IntrospectableM2M-0.001002.tar.gz"; + sha256 = "c6baafb4241693fdb34b29ebd906993add364bf31aafa4462f3e062204cc87f0"; + }; + propagatedBuildInputs = [ DBIxClass ]; + meta = { + description = "Introspect many-to-many relationships"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DBIxClassSchemaLoader = buildPerlPackage { + pname = "DBIx-Class-Schema-Loader"; + version = "0.07049"; + src = fetchurl { + url = "mirror://cpan/authors/id/I/IL/ILMARI/DBIx-Class-Schema-Loader-0.07049.tar.gz"; + sha256 = "e869cdde1378cfebccf229b0cde58d2746dc6080b75f56d072aa5f1fce76a764"; + }; + buildInputs = [ DBDSQLite TestDeep TestDifferences TestException TestWarn ]; + propagatedBuildInputs = [ CarpClan ClassUnload DBIxClass DataDump StringToIdentifierEN curry ]; + meta = { + description = "Create a DBIx::Class::Schema based on a database"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DBIxConnector = buildPerlModule { + pname = "DBIx-Connector"; + version = "0.56"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DW/DWHEELER/DBIx-Connector-0.56.tar.gz"; + sha256 = "57c08d2c1951486cb95cfb83f518f462a3dbf20d353f3eee4f46af44fa19c359"; + }; + buildInputs = [ TestMockModule ]; + propagatedBuildInputs = [ DBI ]; + meta = { + description = "Fast, safe DBI connection and transaction management"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DBIxDBSchema = buildPerlPackage { + pname = "DBIx-DBSchema"; + version = "0.45"; + src = fetchurl { + url = "mirror://cpan/authors/id/I/IV/IVAN/DBIx-DBSchema-0.45.tar.gz"; + sha256 = "7a2a978fb6d9feaa3e4b109c71c963b26a008a2d130c5876ecf24c5a72338a1d"; + }; + propagatedBuildInputs = [ DBI ]; + }; + + DBIxSearchBuilder = buildPerlPackage { + pname = "DBIx-SearchBuilder"; + version = "1.68"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BP/BPS/DBIx-SearchBuilder-1.68.tar.gz"; + sha256 = "be197c0f83c426996f77d22126f3103f958fc4bd1791c6962b793cc2779601f8"; + }; + buildInputs = [ DBDSQLite ]; + propagatedBuildInputs = [ CacheSimpleTimedExpiry ClassAccessor ClassReturnValue Clone DBIxDBSchema Want capitalization ]; + meta = { + description = "Encapsulate SQL queries and rows in simple perl objects"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DBIxSimple = buildPerlPackage { + pname = "DBIx-Simple"; + version = "1.37"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JU/JUERD/DBIx-Simple-1.37.tar.gz"; + sha256 = "46d311aa2ce08907401c56119658426dbb044c5a40de73d9a7b79bf50390cae3"; + }; + propagatedBuildInputs = [ DBI ]; + meta = { + description = "Very complete easy-to-use OO interface to DBI"; + }; + }; + + DataBinary = buildPerlPackage { + pname = "Data-Binary"; + version = "0.01"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SN/SNKWATT/Data-Binary-0.01.tar.gz"; + sha256 = "0wwdrgkz4yqpzdmfvid63v5v10b9hwdsg15jvks0hwdc23ga48a8"; + }; + meta = { + description = "Simple detection of binary versus text in strings"; + license = with lib.licenses; [ artistic2 ]; + }; + }; + + DataBuffer = buildPerlPackage { + pname = "Data-Buffer"; + version = "0.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BT/BTROTT/Data-Buffer-0.04.tar.gz"; + sha256 = "2b3d09b7bcf389fc116207b283bee250e348d44c9c63460bee67efab4dd21bb4"; + }; + meta = { + description = "Read/write buffer class"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + DBIxIntrospector = buildPerlPackage { + pname = "DBIx-Introspector"; + version = "0.001005"; + src = fetchurl { + url = "mirror://cpan/authors/id/F/FR/FREW/DBIx-Introspector-0.001005.tar.gz"; + sha256 = "0fp6h71xv4pgb8l815rs6ad4camzhjqf64s1sf7zmhchqqn4vacn"; + }; + + propagatedBuildInputs = [ DBI Moo ]; + buildInputs = [ DBDSQLite TestFatal TestRoo ]; + }; + + DevelCamelcadedb = buildPerlPackage { + pname = "Devel-Camelcadedb"; + version = "2021.2"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HU/HURRICUP/Devel-Camelcadedb-v2021.2.tar.gz"; + sha256 = "88a1d9e95d398ffe4d4114861e21c36f7c22315b3d03e7f764ccbce018ab3e47"; + }; + propagatedBuildInputs = [ HashStoredIterator JSONXS PadWalker ]; + perlPreHook = lib.optionalString stdenv.isDarwin "export LD=$CC"; + meta = { + description = "Perl side of the Perl debugger for IntelliJ IDEA and other JetBrains IDEs"; + license = lib.licenses.mit; + }; + }; + + DevelCycle = buildPerlPackage { + pname = "Devel-Cycle"; + version = "1.12"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LD/LDS/Devel-Cycle-1.12.tar.gz"; + sha256 = "1hhb77kz3dys8yaik452j22cm3510zald2mpvfyv5clqv326aczx"; + }; + meta = { + description = "Find memory cycles in objects"; + }; + }; + + DevelDeclare = buildPerlPackage { + pname = "Devel-Declare"; + version = "0.006022"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Devel-Declare-0.006022.tar.gz"; + sha256 = "72f29ca35646a593be98311ffddb72033ae1e8a9d8254c62aa248bd6260e596e"; + }; + buildInputs = [ ExtUtilsDepends TestRequires ]; + propagatedBuildInputs = [ BHooksEndOfScope BHooksOPCheck SubName ]; + meta = { + description = "Adding keywords to perl, in perl"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DevelFindPerl = buildPerlPackage { + pname = "Devel-FindPerl"; + version = "0.015"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LE/LEONT/Devel-FindPerl-0.015.tar.gz"; + sha256 = "1z1xfj3178w632mqddyklk355a19bsgzkilznrng3rvg4bfbfxaj"; + }; + meta = { + description = "Find the path to your perl"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DevelGlobalDestruction = buildPerlPackage { + pname = "Devel-GlobalDestruction"; + version = "0.14"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HA/HAARG/Devel-GlobalDestruction-0.14.tar.gz"; + sha256 = "1aslj6myylsvzr0vpqry1cmmvzbmpbdcl4v9zrl18ccik7rabf1l"; + }; + propagatedBuildInputs = [ SubExporterProgressive ]; + meta = { + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DevelGlobalPhase = buildPerlPackage { + pname = "Devel-GlobalPhase"; + version = "0.003003"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HA/HAARG/Devel-GlobalPhase-0.003003.tar.gz"; + sha256 = "1x9jzy3l7gwikj57swzl94qsq03j9na9h1m69azzs7d7ghph58wd"; + }; + meta = { + description = "Detect perl's global phase on older perls."; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DevelHide = buildPerlPackage { + pname = "Devel-Hide"; + version = "0.0013"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DC/DCANTRELL/Devel-Hide-0.0013.tar.gz"; + sha256 = "1jvyy3yasiwyjsn9ay9sja3ch4wcjc4wk5l22vjsclq29z7vphvg"; + }; + }; + + DevelNYTProf = buildPerlPackage { + pname = "Devel-NYTProf"; + version = "6.10"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JK/JKEENAN/Devel-NYTProf-6.10.tar.gz"; + sha256 = "24ac4174f1f01322063fa4e119b247d371d3260ddca6e778c6c1a0e3f905f58e"; + }; + propagatedBuildInputs = [ FileWhich JSONMaybeXS ]; + meta = { + homepage = "https://github.com/timbunce/devel-nytprof"; + description = "Powerful fast feature-rich Perl source code profiler"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ CaptureTiny TestDifferences ]; + nativeBuildInputs = lib.optional stdenv.isDarwin shortenPerlShebang; + postInstall = lib.optionalString stdenv.isDarwin '' + shortenPerlShebang $out/bin/* + ''; + }; + + DevelOverloadInfo = buildPerlPackage { + pname = "Devel-OverloadInfo"; + version = "0.005"; + src = fetchurl { + url = "mirror://cpan/authors/id/I/IL/ILMARI/Devel-OverloadInfo-0.005.tar.gz"; + sha256 = "1rx6g8pyhi7lx6z130b7vlf8syzrq92w9ky8mpw4d6bwlkzy5zcb"; + }; + propagatedBuildInputs = [ MROCompat PackageStash SubIdentify ]; + buildInputs = [ TestFatal ]; + meta = { + description = "introspect overloaded operators"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DevelPartialDump = buildPerlPackage { + pname = "Devel-PartialDump"; + version = "0.20"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Devel-PartialDump-0.20.tar.gz"; + sha256 = "01yrsdpn9ns9iwwc92bhjn2605b7ys7i3198gjb935lsllzgzw5f"; + }; + propagatedBuildInputs = [ ClassTiny SubExporter namespaceclean ]; + buildInputs = [ TestSimple13 TestWarnings ]; + }; + + DevelStackTrace = buildPerlPackage { + pname = "Devel-StackTrace"; + version = "2.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DR/DROLSKY/Devel-StackTrace-2.04.tar.gz"; + sha256 = "cd3c03ed547d3d42c61fa5814c98296139392e7971c092e09a431f2c9f5d6855"; + }; + meta = { + description = "An object representing a stack trace"; + license = lib.licenses.artistic2; + }; + }; + + DevelSize = buildPerlPackage { + pname = "Devel-Size"; + version = "0.83"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NW/NWCLARK/Devel-Size-0.83.tar.gz"; + sha256 = "757a67e0aa59ae103ea5ca092cbecc025644ebdc326731688ffab6f8823ef4b3"; + }; + meta = { + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DevelStackTraceAsHTML = buildPerlPackage { + pname = "Devel-StackTrace-AsHTML"; + version = "0.15"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIYAGAWA/Devel-StackTrace-AsHTML-0.15.tar.gz"; + sha256 = "0iri5nb2lb76qv5l9z0vjpfrq5j2fyclkd64kh020bvy37idp0v2"; + }; + propagatedBuildInputs = [ DevelStackTrace ]; + meta = { + description = "Displays stack trace in HTML"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DevelSymdump = buildPerlPackage { + pname = "Devel-Symdump"; + version = "2.18"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AN/ANDK/Devel-Symdump-2.18.tar.gz"; + sha256 = "826f81a107f5592a2516766ed43beb47e10cc83edc9ea48090b02a36040776c0"; + }; + meta = { + description = "Dump symbol names or the symbol table"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DigestCRC = buildPerlPackage { + pname = "Digest-CRC"; + version = "0.22.2"; + src = fetchurl { + url = "mirror://cpan/authors/id/O/OL/OLIMAUL/Digest-CRC-0.22.2.tar.gz"; + sha256 = "112b50f7fbc6f6baf5d4584ee97f542ced6c9ec03a3147f7902c84b8b26778cb"; + }; + meta = { + description = "Module that calculates CRC sums of all sorts"; + license = lib.licenses.publicDomain; + }; + }; + + DigestHMAC = buildPerlPackage { + pname = "Digest-HMAC"; + version = "1.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GA/GAAS/Digest-HMAC-1.03.tar.gz"; + sha256 = "0naavabbm1c9zgn325ndy66da4insdw9l3mrxwxdfi7i7xnjrirv"; + }; + meta = { + description = "Keyed-Hashing for Message Authentication"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DigestJHash = buildPerlPackage { + pname = "Digest-JHash"; + version = "0.10"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/Digest-JHash-0.10.tar.gz"; + sha256 = "c746cf0a861a004090263cd54d7728d0c7595a0cf90cbbfd8409b396ee3b0063"; + }; + meta = { + description = "Perl extension for 32 bit Jenkins Hashing Algorithm"; + license = lib.licenses.artistic2; + }; + }; + + DigestMD2 = buildPerlPackage { + pname = "Digest-MD2"; + version = "2.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GA/GAAS/Digest-MD2-2.04.tar.gz"; + sha256 = "d0aabf4834c20ac411bea427c4a308b59a5fcaa327679ef5294c1d68ab71eed3"; + }; + meta = { + description = "Perl interface to the MD2 Algorithm"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + DigestMD4 = buildPerlPackage { + pname = "Digest-MD4"; + version = "1.9"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIKEM/DigestMD4/Digest-MD4-1.9.tar.gz"; + sha256 = "19ma1hmvgiznq95ngzvm6v4dfxc9zmi69k8iyfcg6w14lfxi0lb6"; + }; + }; + + DigestMD5 = buildPerlPackage rec { + pname = "Digest-MD5"; + version = "2.55"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GA/GAAS/${pname}-${version}.tar.gz"; + sha256 = "03b198a2d14425d951e5e50a885d3818c3162c8fe4c21e18d7798a9a179d0e3c"; + }; + meta = { + description = "Perl interface to the MD-5 algorithm"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DigestMD5File = buildPerlPackage { + pname = "Digest-MD5-File"; + version = "0.08"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DM/DMUEY/Digest-MD5-File-0.08.tar.gz"; + sha256 = "060jzf45dlwysw5wsm7av1wvpl06xgk415kwwpvv89r6wda3md5d"; + }; + propagatedBuildInputs = [ LWP ]; + meta = { + description = "Perl extension for getting MD5 sums for files and urls"; + }; + }; + + DigestPerlMD5 = buildPerlPackage { + pname = "Digest-Perl-MD5"; + version = "1.9"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DE/DELTA/Digest-Perl-MD5-1.9.tar.gz"; + sha256 = "7100cba1710f45fb0e907d8b1a7bd8caef35c64acd31d7f225aff5affeecd9b1"; + }; + meta = { + description = "Perl Implementation of Rivest's MD5 algorithm"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DigestSHA1 = buildPerlPackage { + pname = "Digest-SHA1"; + version = "2.13"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GA/GAAS/Digest-SHA1-2.13.tar.gz"; + sha256 = "1k23p5pjk42vvzg8xcn4iwdii47i0qm4awdzgbmz08bl331dmhb8"; + }; + meta = { + description = "Perl interface to the SHA-1 algorithm"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DigestSHA3 = buildPerlPackage { + pname = "Digest-SHA3"; + version = "1.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MS/MSHELOR/Digest-SHA3-1.04.tar.gz"; + sha256 = "4a68b67c5034f40fbb1344b304cd66caaa5e320eb523005201cc24f76d470c14"; + }; + meta = { + homepage = "https://metacpan.org/release/Digest-SHA3"; + description = "Perl extension for SHA-3"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + DirManifest = buildPerlModule { + pname = "Dir-Manifest"; + version = "0.6.1"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/Dir-Manifest-0.6.1.tar.gz"; + sha256 = "01g54wlvp647zvhn0sxl2pqajly17044qd3pxib8cpixhwk75zw4"; + }; + propagatedBuildInputs = [ Moo PathTiny ]; + meta = { + description = "treat a directory and a manifest file as a hash/dictionary of keys to texts or blobs"; + license = with lib.licenses; [ mit ]; + }; + }; + + DirSelf = buildPerlPackage { + pname = "Dir-Self"; + version = "0.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MAUKE/Dir-Self-0.11.tar.gz"; + sha256 = "e251a51abc7d9ba3e708f73c2aa208e09d47a0c528d6254710fa78cc8d6885b5"; + }; + meta = { + homepage = "https://github.com/mauke/Dir-Self"; + description = "A __DIR__ constant for the directory your source file is in"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DispatchClass = buildPerlPackage { + pname = "Dispatch-Class"; + version = "0.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MAUKE/Dispatch-Class-0.02.tar.gz"; + sha256 = "10k5l4n2mp0hfn9jwn785k211n75y56zwny1zx3bvs7r38xv8kfp"; + }; + propagatedBuildInputs = [ ExporterTiny ]; + meta = { + description = "dispatch on the type (class) of an argument"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DistCheckConflicts = buildPerlPackage { + pname = "Dist-CheckConflicts"; + version = "0.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DO/DOY/Dist-CheckConflicts-0.11.tar.gz"; + sha256 = "1i7dr9jpdiy2nijl2p4q5zg2q2s9ckbj2hs4kmnnckf9hsb4p17a"; + }; + buildInputs = [ TestFatal ]; + propagatedBuildInputs = [ ModuleRuntime ]; + meta = { + description = "Declare version conflicts for your dist"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DistZilla = buildPerlPackage { + pname = "Dist-Zilla"; + version = "6.017"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Dist-Zilla-6.017.tar.gz"; + sha256 = "1vkg5cyazhy2kdffwlcr2k52awlyfzxgr0vggs9mx2xc6g7313aw"; + }; + buildInputs = [ CPANMetaCheck TestDeep TestFailWarnings TestFatal TestFileShareDir ]; + propagatedBuildInputs = [ AppCmd CPANUploader ConfigMVPReaderINI DateTime FileCopyRecursive FileFindRule FileShareDirInstall Filepushd LogDispatchouli MooseXLazyRequire MooseXSetOnce MooseXTypesPerl PathTiny PerlPrereqScanner SoftwareLicense TermEncoding TermUI YAMLTiny ]; + nativeBuildInputs = lib.optional stdenv.isDarwin shortenPerlShebang; + postInstall = lib.optionalString stdenv.isDarwin '' + shortenPerlShebang $out/bin/dzil + ''; + meta = { + homepage = "http://dzil.org/"; + description = "Distribution builder; installer not included!"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + doCheck = false; + }; + + DistZillaPluginBundleTestingMania = buildPerlModule { + pname = "Dist-Zilla-PluginBundle-TestingMania"; + version = "0.25"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DO/DOHERTY/Dist-Zilla-PluginBundle-TestingMania-0.25.tar.gz"; + sha256 = "072rsilh88xnk18ldbr8d0svji72r79sabyird6xc3ql1z0b42sy"; + }; + buildInputs = [ MooseAutobox TestCPANMeta TestPerlCritic TestVersion ]; + propagatedBuildInputs = [ DistZillaPluginMojibakeTests DistZillaPluginTestCPANChanges DistZillaPluginTestCPANMetaJSON DistZillaPluginTestCompile DistZillaPluginTestDistManifest DistZillaPluginTestEOL DistZillaPluginTestKwalitee DistZillaPluginTestMinimumVersion DistZillaPluginTestNoTabs DistZillaPluginTestPerlCritic DistZillaPluginTestPodLinkCheck DistZillaPluginTestPortability DistZillaPluginTestSynopsis DistZillaPluginTestUnusedVars DistZillaPluginTestVersion PodCoverageTrustPod ]; + meta = { + description = "Test your dist with every testing plugin conceivable"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + doCheck = false; /* fails with 'open3: exec of .. perl .. failed: Argument list too long at .../TAP/Parser/Iterator/Process.pm line 165.' */ + }; + + DistZillaPluginCheckChangeLog = buildPerlPackage { + pname = "Dist-Zilla-Plugin-CheckChangeLog"; + version = "0.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/F/FA/FAYLAND/Dist-Zilla-Plugin-CheckChangeLog-0.05.tar.gz"; + sha256 = "b0b34d6d70b56f1944d03c5f0dc3b8f6f24474c816d07b657a116c692c2e052a"; + }; + propagatedBuildInputs = [ DistZilla ]; + meta = { + description = "Dist::Zilla with Changes check"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ PathClass PodCoverage PodCoverageTrustPod PodMarkdown TestDeep TestException TestPod TestPodCoverage ]; + }; + + DistZillaPluginMojibakeTests = buildPerlPackage { + pname = "Dist-Zilla-Plugin-MojibakeTests"; + version = "0.8"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SY/SYP/Dist-Zilla-Plugin-MojibakeTests-0.8.tar.gz"; + sha256 = "f1fff547ea24a8f7a483406a72ed6c4058d746d9dae963725502ddba025ab380"; + }; + propagatedBuildInputs = [ DistZilla ]; + meta = { + homepage = "https://github.com/creaktive/Dist-Zilla-Plugin-MojibakeTests"; + description = "Release tests for source encoding"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ TestMojibake ]; + }; + + DistZillaPluginPodWeaver = buildPerlPackage { + pname = "Dist-Zilla-Plugin-PodWeaver"; + version = "4.008"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Dist-Zilla-Plugin-PodWeaver-4.008.tar.gz"; + sha256 = "0ff1i26s54z292j8w8vm3gw3p7w1yq35wi8g978c84ia7y1y7n8z"; + }; + propagatedBuildInputs = [ DistZilla PodElementalPerlMunger PodWeaver ]; + meta = { + homepage = "https://github.com/rjbs/Dist-Zilla-Plugin-PodWeaver"; + description = "Weave your Pod together from configuration and Dist::Zilla"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DistZillaPluginReadmeAnyFromPod = buildPerlPackage { + pname = "Dist-Zilla-Plugin-ReadmeAnyFromPod"; + version = "0.163250"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RT/RTHOMPSON/Dist-Zilla-Plugin-ReadmeAnyFromPod-0.163250.tar.gz"; + sha256 = "d44f2799922f78b2a7961ed89123e11bdd77abfe85ba2040d82b80ad72ed13bc"; + }; + buildInputs = [ TestDeep TestDifferences TestException TestFatal TestMost TestRequires TestSharedFork TestWarn ]; + propagatedBuildInputs = [ DistZillaRoleFileWatcher MooseXHasSugar PodMarkdownGithub ]; + meta = { + homepage = "https://github.com/DarwinAwardWinner/Dist-Zilla-Plugin-ReadmeAnyFromPod"; + description = "Automatically convert POD to a README in any format for Dist::Zilla"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DistZillaPluginReadmeMarkdownFromPod = buildPerlPackage { + pname = "Dist-Zilla-Plugin-ReadmeMarkdownFromPod"; + version = "0.141140"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RT/RTHOMPSON/Dist-Zilla-Plugin-ReadmeMarkdownFromPod-0.141140.tar.gz"; + sha256 = "9caad7b366ea59119ad73cdd99dcdd53f877a515bd0164fc28b339c01739a801"; + }; + buildInputs = [ TestDeep TestDifferences TestException TestMost TestWarn ]; + propagatedBuildInputs = [ DistZillaPluginReadmeAnyFromPod ]; + meta = { + homepage = "https://github.com/DarwinAwardWinner/Dist-Zilla-Plugin-ReadmeMarkdownFromPod"; + description = "Automatically convert POD to a README.mkdn for Dist::Zilla"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DistZillaPluginTestCPANChanges = buildPerlPackage { + pname = "Dist-Zilla-Plugin-Test-CPAN-Changes"; + version = "0.012"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DO/DOHERTY/Dist-Zilla-Plugin-Test-CPAN-Changes-0.012.tar.gz"; + sha256 = "215b3a5c3c58c8bab0ea27130441bbdaec737eecc00f0670937f608bdbf64806"; + }; + buildInputs = [ CPANChanges TestDeep ]; + propagatedBuildInputs = [ DistZilla ]; + meta = { + description = "Release tests for your changelog"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DistZillaPluginTestCPANMetaJSON = buildPerlModule { + pname = "Dist-Zilla-Plugin-Test-CPAN-Meta-JSON"; + version = "0.004"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DO/DOHERTY/Dist-Zilla-Plugin-Test-CPAN-Meta-JSON-0.004.tar.gz"; + sha256 = "0a573e1d5640374e6ee4d56d4fb94a3c67d4e75d52b3ddeae70cfa6450e1af22"; + }; + buildInputs = [ MooseAutobox TestCPANMetaJSON TestDeep ]; + propagatedBuildInputs = [ DistZilla ]; + meta = { + homepage = "http://p3rl.org/Dist::Zilla::Plugin::Test::CPAN::Meta::JSON"; + description = "Release tests for your META.json"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DistZillaPluginTestCompile = buildPerlModule { + pname = "Dist-Zilla-Plugin-Test-Compile"; + version = "2.058"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Dist-Zilla-Plugin-Test-Compile-2.058.tar.gz"; + sha256 = "d0cf93e525f102eca0f7f3967124d2e59d0a212f738ce54c1ddd91dda268d88a"; + }; + buildInputs = [ CPANMetaCheck ModuleBuildTiny TestDeep TestMinimumVersion TestWarnings ]; + propagatedBuildInputs = [ DistZilla ]; + meta = { + homepage = "https://github.com/karenetheridge/Dist-Zilla-Plugin-Test-Compile"; + description = "Common tests to check syntax of your modules, only using core modules"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DistZillaPluginTestDistManifest = buildPerlModule { + pname = "Dist-Zilla-Plugin-Test-DistManifest"; + version = "2.000005"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DO/DOHERTY/Dist-Zilla-Plugin-Test-DistManifest-2.000005.tar.gz"; + sha256 = "4f0af27bb38745d2dec7d941bcf749e6d7fbeaf8e7bcf8a79a1310a9639b0f65"; + }; + buildInputs = [ TestDeep TestDistManifest TestOutput ]; + propagatedBuildInputs = [ DistZilla ]; + meta = { + description = "Release tests for the manifest"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DistZillaPluginTestEOL = buildPerlModule { + pname = "Dist-Zilla-Plugin-Test-EOL"; + version = "0.19"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Dist-Zilla-Plugin-Test-EOL-0.19.tar.gz"; + sha256 = "0f23g931azz1k41xdfxw7kayy4snhw4qdr9ysknk5k1cl33mkfd2"; + }; + buildInputs = [ ModuleBuildTiny TestDeep TestEOL TestWarnings ]; + propagatedBuildInputs = [ DistZilla ]; + meta = { + description = "Author tests making sure correct line endings are used"; + license = lib.licenses.artistic2; + }; + }; + + DistZillaPluginTestKwalitee = buildPerlModule { + pname = "Dist-Zilla-Plugin-Test-Kwalitee"; + version = "2.12"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Dist-Zilla-Plugin-Test-Kwalitee-2.12.tar.gz"; + sha256 = "bddbcfcc75e8eb2d2d9c8611552f00cdc1b051f0f00798623b8692ff5030af2f"; + }; + buildInputs = [ ModuleBuildTiny TestDeep TestFatal TestKwalitee ]; + propagatedBuildInputs = [ DistZilla ]; + meta = { + description = "Release tests for kwalitee"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DistZillaPluginTestMinimumVersion = buildPerlModule { + pname = "Dist-Zilla-Plugin-Test-MinimumVersion"; + version = "2.000010"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Dist-Zilla-Plugin-Test-MinimumVersion-2.000010.tar.gz"; + sha256 = "b8b71f4b64b689f4b647a3a87d6aaaae45a68892d35e36baa976f605736370fb"; + }; + buildInputs = [ ModuleBuildTiny TestDeep TestMinimumVersion TestOutput ]; + propagatedBuildInputs = [ DistZilla ]; + meta = { + description = "Release tests for minimum required versions"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DistZillaPluginTestNoTabs = buildPerlModule { + pname = "Dist-Zilla-Plugin-Test-NoTabs"; + version = "0.15"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Dist-Zilla-Plugin-Test-NoTabs-0.15.tar.gz"; + sha256 = "196hchmn8y591533v3p7kl75nlhpaygbfdiw2iqbnab9j510qq8v"; + }; + propagatedBuildInputs = [ DistZilla ]; + buildInputs = [ ModuleBuildTiny TestDeep TestNoTabs TestRequires ]; + meta = { + description = "Author tests that ensure hard tabs are not used"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/karenetheridge/Dist-Zilla-Plugin-Test-NoTabs"; + }; + }; + + DistZillaPluginTestPerlCritic = buildPerlModule { + pname = "Dist-Zilla-Plugin-Test-Perl-Critic"; + version = "3.001"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Dist-Zilla-Plugin-Test-Perl-Critic-3.001.tar.gz"; + sha256 = "9250b59d5dc1ae4c6893ba783bd3f05131b14ff9e91afb4555314f55268a3825"; + }; + buildInputs = [ ModuleBuildTiny TestDeep TestPerlCritic ]; + propagatedBuildInputs = [ DistZilla ]; + meta = { + description = "Tests to check your code against best practices"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DistZillaPluginTestPodLinkCheck = buildPerlPackage { + pname = "Dist-Zilla-Plugin-Test-Pod-LinkCheck"; + version = "1.004"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RW/RWSTAUNER/Dist-Zilla-Plugin-Test-Pod-LinkCheck-1.004.tar.gz"; + sha256 = "325d236da0940388d2aa86ec5c1326516b4ad45adef8e7a4f83bb91d5ee15490"; + }; +# buildInputs = [ TestPodLinkCheck ]; + propagatedBuildInputs = [ DistZilla ]; + meta = { + homepage = "https://github.com/rwstauner/Dist-Zilla-Plugin-Test-Pod-LinkCheck"; + description = "Add release tests for POD links"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ TestPodLinkCheck ]; + }; + + DistZillaPluginTestPortability = buildPerlModule { + pname = "Dist-Zilla-Plugin-Test-Portability"; + version = "2.001000"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Dist-Zilla-Plugin-Test-Portability-2.001000.tar.gz"; + sha256 = "e08ff5bd9e24cf9503055330148913808d91a3dfe320a2bdf8b0fc638719b179"; + }; + buildInputs = [ ModuleBuildTiny TestDeep TestPortabilityFiles TestWarnings ]; + propagatedBuildInputs = [ DistZilla ]; + meta = { + description = "Release tests for portability"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DistZillaPluginTestSynopsis = buildPerlPackage { + pname = "Dist-Zilla-Plugin-Test-Synopsis"; + version = "2.000007"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DO/DOHERTY/Dist-Zilla-Plugin-Test-Synopsis-2.000007.tar.gz"; + sha256 = "e7d5e2530cd8a5bb5aadf3e1669a653aaa96e32cad7bd6b9caba6b425ceab563"; + }; + buildInputs = [ TestDeep TestOutput TestSynopsis ]; + propagatedBuildInputs = [ DistZilla ]; + meta = { + description = "Release tests for synopses"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DistZillaPluginTestUnusedVars = buildPerlModule { + pname = "Dist-Zilla-Plugin-Test-UnusedVars"; + version = "2.000007"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DO/DOHERTY/Dist-Zilla-Plugin-Test-UnusedVars-2.000007.tar.gz"; + sha256 = "ea0199a3a0043213ddc132508b9ed9b131ef717735b8f93d78291191d04b43c2"; + }; + buildInputs = [ TestDeep TestOutput TestVars ]; + propagatedBuildInputs = [ DistZilla ]; + meta = { + description = "Release tests for unused variables"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DistZillaPluginTestVersion = buildPerlPackage { + pname = "Dist-Zilla-Plugin-Test-Version"; + version = "1.09"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PL/PLICEASE/Dist-Zilla-Plugin-Test-Version-1.09.tar.gz"; + sha256 = "7240508731bc1bf6dfad7701ec65450a18ef9245a521ab26ebd6acb39a9ebe17"; + }; + buildInputs = [ Filechdir TestDeep TestEOL TestNoTabs TestScript TestVersion ]; + propagatedBuildInputs = [ DistZilla ]; + meta = { + description = "Release Test::Version tests"; + license = lib.licenses.artistic2; + }; + }; + + DistZillaRoleFileWatcher = buildPerlModule { + pname = "Dist-Zilla-Role-FileWatcher"; + version = "0.006"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Dist-Zilla-Role-FileWatcher-0.006.tar.gz"; + sha256 = "15jfpr257xxp27gz156npgpj7kh2dchzgfmvzivi5bvdb2wl8fpy"; + }; + propagatedBuildInputs = [ DistZilla SafeIsa ]; + buildInputs = [ ModuleBuildTiny TestDeep TestFatal ]; + meta = { + description = "Receive notification when something changes a file's contents"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/karenetheridge/Dist-Zilla-Role-FileWatcher"; + }; + }; + + Dotenv = buildPerlPackage { + pname = "Dotenv"; + version = "0.002"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BO/BOOK/Dotenv-0.002.tar.gz"; + sha256 = "04c7a7cc4511617d7a70c4ca410d10707dc496248cdad20240ae242223212454"; + }; + buildInputs = [ TestCPANMeta TestPod TestPodCoverage ]; + propagatedBuildInputs = [ PathTiny ]; + meta = { + description = "Support for C<dotenv> in Perl"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Dumbbench = buildPerlPackage { + pname = "Dumbbench"; + version = "0.111"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BD/BDFOY/Dumbbench-0.111.tar.gz"; + sha256 = "1ixjb9y9d0k1vd4mzbi4sgvr99ay4z9jkgychf0r5gbjsskkq7fk"; + }; + propagatedBuildInputs = [ CaptureTiny ClassXSAccessor DevelCheckOS NumberWithError StatisticsCaseResampling ]; + meta = { + description = "More reliable benchmarking with the least amount of thinking"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/briandfoy/dumbbench"; + }; + }; + + EmailAbstract = buildPerlPackage { + pname = "Email-Abstract"; + version = "3.008"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Email-Abstract-3.008.tar.gz"; + sha256 = "fc7169acb6c43df7f005e7ef6ad08ee8ca6eb6796b5d1604593c997337cc8240"; + }; + propagatedBuildInputs = [ EmailSimple MROCompat ModulePluggable ]; + meta = { + homepage = "https://github.com/rjbs/Email-Abstract"; + description = "Unified interface to mail representations"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + EmailAddress = buildPerlPackage { + pname = "Email-Address"; + version = "1.912"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Email-Address-1.912.tar.gz"; + sha256 = "1vzr0vx4zsw4zbc9xdffc31wnkc1raqmyfiyws06fbyck197i8qg"; + }; + meta = { + description = "RFC 2822 Address Parsing"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + EmailAddressList = buildPerlPackage { + pname = "Email-Address-List"; + version = "0.06"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BP/BPS/Email-Address-List-0.06.tar.gz"; + sha256 = "305b94c778011cee70d9f21514d92e985fa9dccbb84c64798f0c1f0b24eb870e"; + }; + buildInputs = [ JSON ]; + propagatedBuildInputs = [ EmailAddress ]; + meta = { + description = "RFC close address list parsing"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + EmailAddressXS = buildPerlPackage { + pname = "Email-Address-XS"; + version = "1.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PA/PALI/Email-Address-XS-1.04.tar.gz"; + sha256 = "0gjrrl81z3sfwavgx5kwjd87gj44mlnbbqsm3dgdv1xllw26spwr"; + }; + meta = { + description = "Parse and format RFC 2822 email addresses and groups"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + EmailDateFormat = buildPerlPackage { + pname = "Email-Date-Format"; + version = "1.005"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Email-Date-Format-1.005.tar.gz"; + sha256 = "579c617e303b9d874411c7b61b46b59d36f815718625074ae6832e7bb9db5104"; + }; + meta = { + homepage = "https://github.com/rjbs/Email-Date-Format"; + description = "Produce RFC 2822 date strings"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + EmailReply = buildPerlPackage { + pname = "Email-Reply"; + version = "1.204"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Email-Reply-1.204.tar.gz"; + sha256 = "ba4fd80ac5017d6d132e0358c786b0ecd1c7adcbeee5c19fb3da2964791a56f0"; + }; + propagatedBuildInputs = [ EmailAbstract EmailAddress EmailMIME ]; + meta = { + description = "Reply to an email message"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + EmailMessageID = buildPerlPackage { + pname = "Email-MessageID"; + version = "1.406"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Email-MessageID-1.406.tar.gz"; + sha256 = "1f22sdnfq169qw1l0lg7y74pmiam7j9v95bggjnf3q4mygdmshpc"; + }; + meta = { + description = "Generate world unique message-ids"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + EmailMIME = buildPerlPackage { + pname = "Email-MIME"; + version = "1.949"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Email-MIME-1.949.tar.gz"; + sha256 = "3b0adf6bb413cfe51d75f8ba79aca80deafc98dc1179aa7b2d7a79aff5a6ab9c"; + }; + propagatedBuildInputs = [ EmailAddressXS EmailMIMEContentType EmailMIMEEncodings EmailMessageID EmailSimple MIMETypes ModuleRuntime ]; + meta = { + homepage = "https://github.com/rjbs/Email-MIME"; + description = "Easy MIME message handling"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + EmailMIMEAttachmentStripper = buildPerlPackage { + pname = "Email-MIME-Attachment-Stripper"; + version = "1.317"; + buildInputs = [ CaptureTiny ]; + propagatedBuildInputs = [ EmailAbstract EmailMIME ]; + + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Email-MIME-Attachment-Stripper-1.317.tar.gz"; + sha256 = "dcb98b09dc3e8f757ec3882a4234548108bb2d12e3cfadf95a26cef381a9e789"; + }; + meta = { + description = "Strip the attachments from an email"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + EmailMIMEContentType = buildPerlPackage { + pname = "Email-MIME-ContentType"; + version = "1.024"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Email-MIME-ContentType-1.024.tar.gz"; + sha256 = "42d164ac7ff4dc2ea848e710fe21fa85509a3bcbb91ed2d356e4aba951ed8835"; + }; + meta = { + homepage = "https://github.com/rjbs/Email-MIME-ContentType"; + description = "Parse a MIME Content-Type Header"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + propagatedBuildInputs = [ TextUnidecode ]; + }; + + EmailMIMEEncodings = buildPerlPackage { + pname = "Email-MIME-Encodings"; + version = "1.315"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Email-MIME-Encodings-1.315.tar.gz"; + sha256 = "4c71045507b31ec853dd60152b40e33ba3741779c0f49bb143b50cf8d243ab5c"; + }; + buildInputs = [ CaptureTiny ]; + meta = { + homepage = "https://github.com/rjbs/Email-MIME-Encodings"; + description = "A unified interface to MIME encoding and decoding"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + EmailSend = buildPerlPackage { + pname = "Email-Send"; + version = "2.201"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Email-Send-2.201.tar.gz"; + sha256 = "4bbec933558d7cc9b8152bad86dd313de277a21a89b4ea83d84e61587e95dbc6"; + }; + propagatedBuildInputs = [ EmailAbstract EmailAddress ReturnValue ]; + meta = { + homepage = "https://github.com/rjbs/Email-Send"; + description = "Simply Sending Email"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ MIMETools MailTools ]; + }; + + EmailOutlookMessage = buildPerlModule { + pname = "Email-Outlook-Message"; + version = "0.920"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MV/MVZ/Email-Outlook-Message-0.920.tar.gz"; + sha256 = "1063wpdf90k1f6vcqvs92cwm93zvmh3l09pfnrrsp6vqkyah48lj"; + }; + propagatedBuildInputs = [ EmailMIME EmailSender IOAll IOString OLEStorage_Lite ]; + preCheck = "rm t/internals.t t/plain_jpeg_attached.t"; # these tests expect EmailMIME version 1.946 and fail with 1.949 (the output difference in benign) + meta = with lib; { + homepage = "https://www.matijs.net/software/msgconv/"; + description = "A .MSG to mbox converter"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = with maintainers; [ peterhoeg ]; + }; + }; + + EmailSender = buildPerlPackage { + pname = "Email-Sender"; + version = "1.300035"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Email-Sender-1.300035.tar.gz"; + sha256 = "0yfssp3rqdx1dmgvnygarzgkpkhqm28r5sd0gh87ksk8yxndhjql"; + }; + buildInputs = [ CaptureTiny ]; + propagatedBuildInputs = [ EmailAbstract EmailAddress MooXTypesMooseLike SubExporter Throwable TryTiny ]; + nativeBuildInputs = lib.optional stdenv.isDarwin shortenPerlShebang; + postPatch = '' + patchShebangs --build util + ''; + preCheck = lib.optionalString stdenv.isDarwin '' + shortenPerlShebang util/sendmail + ''; + meta = { + homepage = "https://github.com/rjbs/Email-Sender"; + description = "A library for sending email"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + EmailSimple = buildPerlPackage { + pname = "Email-Simple"; + version = "2.216"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Email-Simple-2.216.tar.gz"; + sha256 = "d85f63cd1088d11311103676a8cf498fff564a201b538de52cd753b5e5ca8bd4"; + }; + propagatedBuildInputs = [ EmailDateFormat ]; + meta = { + homepage = "https://github.com/rjbs/Email-Simple"; + description = "Simple parsing of RFC2822 message format and headers"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + EmailStuffer = buildPerlPackage { + pname = "Email-Stuffer"; + version = "0.018"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Email-Stuffer-0.018.tar.gz"; + sha256 = "02wapphmcqbl1sg32x2az863lz5bb2dlckibxfqrjdlny27a406h"; + }; + buildInputs = [ Moo TestFatal ]; + propagatedBuildInputs = [ EmailMIME EmailSender ModuleRuntime ParamsUtil ]; + meta = { + homepage = "https://github.com/rjbs/Email-Stuffer"; + description = "A more casual approach to creating and sending Email:: emails"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = with maintainers; [ sgo ]; + }; + }; + + EmailValid = buildPerlPackage { + pname = "Email-Valid"; + version = "1.202"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Email-Valid-1.202.tar.gz"; + sha256 = "18hkmhddzbd23s6ak64d4j6q8ijykjyp5nxbr2hfcq1acsdhh8fh"; + }; + propagatedBuildInputs = [ IOCaptureOutput MailTools NetDNS NetDomainTLD ]; + doCheck = false; + }; + + EmailValidLoose = buildPerlPackage { + pname = "Email-Valid-Loose"; + version = "0.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIYAGAWA/Email-Valid-Loose-0.05.tar.gz"; + sha256 = "e718e76eddee240251c999e139c8cbe6f2cc80192da5af875cbd12fa8ab93a59"; + }; + propagatedBuildInputs = [ EmailValid ]; + meta = { + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Encode = buildPerlPackage { + pname = "Encode"; + version = "3.08"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DANKOGAI/Encode-3.08.tar.gz"; + sha256 = "0nvvs5a7sz2x38isr5na31fa6ja85cpvmbn07qx0l50ss00ks1pd"; + }; + meta = { + description = "Character encodings in Perl"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + EncodeBase32GMP = buildPerlPackage { + pname = "Encode-Base32-GMP"; + version = "0.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JW/JWANG/Encode-Base32-GMP-0.02.tar.gz"; + sha256 = "454206fa7d82e55e03274698732341b607150f00e8e2aec58f35326a030832dc"; + }; + buildInputs = [ TestBase ]; + propagatedBuildInputs = [ MathGMPz ]; + meta = { + homepage = "https://metacpan.org/release/Encode-Base32-GMP"; + description = "High speed Base32 encoding using GMP with BigInt and MD5 support"; + license = lib.licenses.mit; + maintainers = with maintainers; [ sgo ]; + }; + }; + + EncodeDetect = buildPerlModule { + pname = "Encode-Detect"; + version = "1.01"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JG/JGMYERS/Encode-Detect-1.01.tar.gz"; + sha256 = "834d893aa7db6ce3f158afbd0e432d6ed15a276e0940db0a74be13fd9c4bbbf1"; + }; + nativeBuildInputs = [ pkgs.ld-is-cc-hook ]; + meta = { + description = "An Encode::Encoding subclass that detects the encoding of data"; + license = lib.licenses.free; + }; + }; + + + EncodeEUCJPASCII = buildPerlPackage { + pname = "Encode-EUCJPASCII"; + version = "0.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NE/NEZUMI/Encode-EUCJPASCII-0.03.tar.gz"; + sha256 = "f998d34d55fd9c82cf910786a0448d1edfa60bf68e2c2306724ca67c629de861"; + }; + outputs = [ "out" ]; + meta = { + description = "EucJP-ascii - An eucJP-open mapping"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + EncodeHanExtra = buildPerlPackage { + pname = "Encode-HanExtra"; + version = "0.23"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AU/AUDREYT/Encode-HanExtra-0.23.tar.gz"; + sha256 = "1fd4b06cada70858003af153f94c863b3b95f2e3d03ba18d0451a81d51db443a"; + }; + meta = { + description = "Extra sets of Chinese encodings"; + license = lib.licenses.mit; + }; + }; + + EncodeJIS2K = buildPerlPackage { + pname = "Encode-JIS2K"; + version = "0.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DANKOGAI/Encode-JIS2K-0.03.tar.gz"; + sha256 = "1ec84d72db39deb4dad6fca95acfcc21033f45a24d347c20f9a1a696896c35cc"; + }; + outputs = [ "out" ]; + meta = { + }; + }; + + EncodeLocale = buildPerlPackage { + pname = "Encode-Locale"; + version = "1.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GA/GAAS/Encode-Locale-1.05.tar.gz"; + sha256 = "176fa02771f542a4efb1dbc2a4c928e8f4391bf4078473bd6040d8f11adb0ec1"; + }; + preCheck = if stdenv.isCygwin then '' + sed -i"" -e "s@plan tests => 13@plan tests => 10@" t/env.t + sed -i"" -e "s@ok(env(\"\\\x@#ok(env(\"\\\x@" t/env.t + sed -i"" -e "s@ok(\$ENV{\"\\\x@#ok(\$ENV{\"\\\x@" t/env.t + '' else null; + meta = { + description = "Determine the locale encoding"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + EncodeNewlines = buildPerlPackage { + pname = "Encode-Newlines"; + version = "0.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NE/NEILB/Encode-Newlines-0.05.tar.gz"; + sha256 = "1gipd3wnma28w5gjbzycfkpi6chksy14lhxkp4hwizf8r351zcrl"; + }; + meta = { + description = "Normalize line ending sequences"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/neilb/Encode-Newlines"; + }; + }; + + EncodePunycode = buildPerlPackage { + pname = "Encode-Punycode"; + version = "1.002"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CF/CFAERBER/Encode-Punycode-1.002.tar.gz"; + sha256 = "ca3aceecdb80b5d45aa10e1cde8fec4e90b4f8c9189c7504dd8658f071f77194"; + }; + buildInputs = [ TestNoWarnings ]; + propagatedBuildInputs = [ NetIDNEncode ]; + meta = { + homepage = "http://search.cpan.org/dist/Encode-Punycode"; + description = "Encode plugin for Punycode (RFC 3492)"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + enum = buildPerlPackage { + pname = "enum"; + version = "1.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NE/NEILB/enum-1.11.tar.gz"; + sha256 = "d2f36b5015f1e35f640159867b60bf5d5cd66b56cd5e42d33f531be68e5eee35"; + }; + meta = { + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Env = buildPerlPackage { + pname = "Env"; + version = "1.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/F/FL/FLORA/Env-1.04.tar.gz"; + sha256 = "d94a3d412df246afdc31a2199cbd8ae915167a3f4684f7b7014ce1200251ebb0"; + }; + meta = { + description = "Perl module that imports environment variables as scalars or arrays"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + EnvPath = buildPerlPackage { + pname = "Env-Path"; + version = "0.19"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DS/DSB/Env-Path-0.19.tar.gz"; + sha256 = "1qhmj15a66h90pjl2dgnxsb9jj3b1r5mpvnr87cafcl8g69z0jr4"; + }; + }; + + EnvSanctify = buildPerlPackage { + pname = "Env-Sanctify"; + version = "1.12"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BI/BINGOS/Env-Sanctify-1.12.tar.gz"; + sha256 = "0prj51c9w4k6nrpnpfw6an96953vna74g698kyk78m163ikbbqr0"; + }; + meta = { + description = "Lexically scoped sanctification of %ENV"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/bingos/env-sanctify"; + }; + }; + + Error = buildPerlModule { + pname = "Error"; + version = "0.17029"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/Error-0.17029.tar.gz"; + sha256 = "1p3spyarrh8y14d3j9s71xcndjlr70x3f8c3nvaddbij628zf8qs"; + }; + }; + + EV = buildPerlPackage { + pname = "EV"; + version = "4.33"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/ML/MLEHMANN/EV-4.33.tar.gz"; + sha256 = "4aee8391b88113b42187f91fd49245fdc8e9b193a15ac202f519caae2aa8ea35"; + }; + buildInputs = [ CanaryStability ]; + propagatedBuildInputs = [ commonsense ]; + meta = { + license = lib.licenses.gpl1Plus; + }; + }; + + EvalClosure = buildPerlPackage { + pname = "Eval-Closure"; + version = "0.14"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DO/DOY/Eval-Closure-0.14.tar.gz"; + sha256 = "1bcc47r6zm3hfr6ccsrs72kgwxm3wkk07mgnpsaxi67cypr482ga"; + }; + buildInputs = [ TestFatal TestRequires ]; + meta = { + description = "Safely and cleanly create closures via string eval"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ExcelWriterXLSX = buildPerlPackage { + pname = "Excel-Writer-XLSX"; + version = "1.09"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JM/JMCNAMARA/Excel-Writer-XLSX-1.09.tar.gz"; + sha256 = "d679c6ac19e93c32ab77594c793e41b948c7bb3873b600e70ad637d093dca187"; + }; + propagatedBuildInputs = [ ArchiveZip ]; + meta = { + homepage = "http://jmcnamara.github.com/excel-writer-xlsx/"; + description = "Create a new file in the Excel 2007+ XLSX format"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ExceptionBase = buildPerlModule { + pname = "Exception-Base"; + version = "0.2501"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DE/DEXTER/Exception-Base-0.2501.tar.gz"; + sha256 = "5723dd78f4ac0b4d262a05ea46af663ea00d8096b2e9c0a43515c210760e1e75"; + }; + buildInputs = [ TestUnitLite ]; + meta = { + description = "Lightweight exceptions"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ExceptionClass = buildPerlPackage { + pname = "Exception-Class"; + version = "1.44"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DR/DROLSKY/Exception-Class-1.44.tar.gz"; + sha256 = "03gf4cdgrjnljgrlxkvbh2cahsyzn0zsh2zcli7b1lrqn7wgpwrk"; + }; + propagatedBuildInputs = [ ClassDataInheritable DevelStackTrace ]; + }; + + ExceptionDied = buildPerlModule { + pname = "Exception-Died"; + version = "0.06"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DE/DEXTER/Exception-Died-0.06.tar.gz"; + sha256 = "1dcajw2m3x5m76fpi3fvy9fjkmfrd171pnx087i5fkgx5ay41i1m"; + }; + buildInputs = [ TestAssert TestUnitLite ]; + propagatedBuildInputs = [ ExceptionBase constantboolean ]; + }; + + ExceptionWarning = buildPerlModule { + pname = "Exception-Warning"; + version = "0.0401"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DE/DEXTER/Exception-Warning-0.0401.tar.gz"; + sha256 = "1a6k3sbhkxmz00wrmhv70f9kxjf7fklp1y6mnprfvcdmrsk9qdkv"; + }; + buildInputs = [ TestAssert TestUnitLite ]; + propagatedBuildInputs = [ ExceptionBase ]; + }; + + ExporterDeclare = buildPerlModule { + pname = "Exporter-Declare"; + version = "0.114"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/EX/EXODIST/Exporter-Declare-0.114.tar.gz"; + sha256 = "4bd70d6ca76f6f6ba7e4c618d4ac93b8593a58f1233ccbe18b10f5f204f1d4e4"; + }; + buildInputs = [ FennecLite TestException ]; + propagatedBuildInputs = [ MetaBuilder aliased ]; + meta = { + homepage = "https://metacpan.org/release/Exporter-Declare"; + description = "Exporting done right"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ExporterLite = buildPerlPackage { + pname = "Exporter-Lite"; + version = "0.08"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NE/NEILB/Exporter-Lite-0.08.tar.gz"; + sha256 = "1hns15imih8z2h6zv3m1wwmv9fiysacsb52y94v6zf2cmw4kjny0"; + }; + meta = { + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ExporterTiny = buildPerlPackage { + pname = "Exporter-Tiny"; + version = "1.002002"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TOBYINK/Exporter-Tiny-1.002002.tar.gz"; + sha256 = "00f0b95716b18157132c6c118ded8ba31392563d19e490433e9a65382e707101"; + }; + meta = { + description = "An exporter with the features of Sub::Exporter but only core dependencies"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ExtUtilsCBuilder = buildPerlPackage { + pname = "ExtUtils-CBuilder"; + version = "0.280234"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AM/AMBS/ExtUtils-CBuilder-0.280234.tar.gz"; + sha256 = "1hzixkg85mys94a2i658pdr28xhzyrisvknsps691d183zm9a06q"; + }; + meta = { + description = "Compile and link C code for Perl modules"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://metacpan.org/release/ExtUtils-CBuilder"; + }; + }; + + Expect = buildPerlPackage { + pname = "Expect"; + version = "1.35"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JA/JACOBY/Expect-1.35.tar.gz"; + sha256 = "09d92761421decd495853103379165a99efbf452c720f30277602cf23679fd06"; + }; + propagatedBuildInputs = [ IOTty ]; + meta = { + description = "Automate interactions with command line programs that expose a text terminal interface"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ExpectSimple = buildPerlPackage { + pname = "Expect-Simple"; + version = "0.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DJ/DJERIUS/Expect-Simple-0.04.tar.gz"; + sha256 = "af83b92185e642695913ff138efe819752e80857759996deafcaab2700ad5db5"; + }; + propagatedBuildInputs = [ Expect ]; + meta = { + description = "Wrapper around the Expect module"; + license = lib.licenses.free; + }; + }; + + ExtUtilsCChecker = buildPerlModule { + pname = "ExtUtils-CChecker"; + version = "0.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PEVANS/ExtUtils-CChecker-0.11.tar.gz"; + sha256 = "1x8vafpff5nma18svxp1h3mp069fjmzlsdvnbcgn3z1pgrkkcxqi"; + }; + buildInputs = [ TestFatal ]; + meta = { + description = "Configure-time utilities for using C headers,"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ExtUtilsConfig = buildPerlPackage { + pname = "ExtUtils-Config"; + version = "0.008"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LE/LEONT/ExtUtils-Config-0.008.tar.gz"; + sha256 = "ae5104f634650dce8a79b7ed13fb59d67a39c213a6776cfdaa3ee749e62f1a8c"; + }; + meta = { + description = "A wrapper for perl's configuration"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ExtUtilsConstant = buildPerlPackage { + pname = "ExtUtils-Constant"; + version = "0.25"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NW/NWCLARK/ExtUtils-Constant-0.25.tar.gz"; + sha256 = "6933d0e963b62281ef7561068e6aecac8c4ac2b476b2bba09ab0b90fbac9d757"; + }; + }; + + ExtUtilsCppGuess = buildPerlPackage { + pname = "ExtUtils-CppGuess"; + version = "0.21"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETJ/ExtUtils-CppGuess-0.21.tar.gz"; + sha256 = "0ls1y9bb2nff9djli91s86541r7ajcjp22gqhcdmj7hs69w92qpz"; + }; + nativeBuildInputs = [ pkgs.ld-is-cc-hook ]; + propagatedBuildInputs = [ CaptureTiny ]; + buildInputs = [ ModuleBuild ]; + }; + + ExtUtilsDepends = buildPerlPackage { + pname = "ExtUtils-Depends"; + version = "0.8000"; + src = fetchurl { + url = "mirror://cpan/authors/id/X/XA/XAOC/ExtUtils-Depends-0.8000.tar.gz"; + sha256 = "165y1cjirbq64w39svkz82cb5jjqkjm8f4c0wqi2lk6050hzf3vq"; + }; + meta = { + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ExtUtilsF77 = buildPerlPackage rec { + pname = "ExtUtils-F77"; + version = "1.24"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KG/KGB/ExtUtils-F77-1.24.tar.gz"; + sha256 = "355878a4a7f901eb18d21f9e21be8c8bfc6aaf9665d34b241bc1d43e32c5b730"; + }; + buildInputs = [ pkgs.gfortran ]; + meta = { + description = "A simple interface to F77 libs"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + propagatedBuildInputs = [ FileWhich ]; + }; + + ExtUtilsHelpers = buildPerlPackage { + pname = "ExtUtils-Helpers"; + version = "0.026"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LE/LEONT/ExtUtils-Helpers-0.026.tar.gz"; + sha256 = "05ilqcj1rg5izr09dsqmy5di4fvq6ph4k0chxks7qmd4j1kip46y"; + }; + meta = { + description = "Various portability utilities for module builders"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ExtUtilsInstall = buildPerlPackage { + pname = "ExtUtils-Install"; + version = "2.18"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BI/BINGOS/ExtUtils-Install-2.18.tar.gz"; + sha256 = "1i9hgvk3wcyshigfwvlrm2qilh8xvb7lfk3qdjrbnrrvl9xqgpg5"; + }; + meta = { + description = "Install files from here to there"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ExtUtilsInstallPaths = buildPerlPackage { + pname = "ExtUtils-InstallPaths"; + version = "0.012"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LE/LEONT/ExtUtils-InstallPaths-0.012.tar.gz"; + sha256 = "1v9lshfhm9ck4p0v77arj5f7haj1mmkqal62lgzzvcds6wq5www4"; + }; + propagatedBuildInputs = [ ExtUtilsConfig ]; + meta = { + description = "Build.PL install path logic made easy"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ExtUtilsLibBuilder = buildPerlModule { + pname = "ExtUtils-LibBuilder"; + version = "0.08"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AM/AMBS/ExtUtils-LibBuilder-0.08.tar.gz"; + sha256 = "1lmmfcjxvsvhn4f3v2lyylgr8dzcf5j7mnd1pkq3jc75dph724f5"; + }; + perlPreHook = "export LD=$CC"; + meta = { + description = "A tool to build C libraries"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ExtUtilsMakeMaker = buildPerlPackage { + pname = "ExtUtils-MakeMaker"; + version = "7.62"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BI/BINGOS/ExtUtils-MakeMaker-7.62.tar.gz"; + sha256 = "5022ad857fd76bd3f6b16af099fe2324639d9932e08f21e891fb313d9cae1705"; + }; + meta = { + description = "Create a module Makefile"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ExtUtilsMakeMakerCPANfile = buildPerlPackage { + pname = "ExtUtils-MakeMaker-CPANfile"; + version = "0.09"; + src = fetchurl { + url = "mirror://cpan/authors/id/I/IS/ISHIGAKI/ExtUtils-MakeMaker-CPANfile-0.09.tar.gz"; + sha256 = "0xg2z100vjhcndwaz9m3mmi90rb8h5pggpvlj1b0i8dhsh3pc1rc"; + }; + propagatedBuildInputs = [ ModuleCPANfile ]; + meta = { + description = "cpanfile support for EUMM"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ExtUtilsPkgConfig = buildPerlPackage { + pname = "ExtUtils-PkgConfig"; + version = "1.16"; + src = fetchurl { + url = "mirror://cpan/authors/id/X/XA/XAOC/ExtUtils-PkgConfig-1.16.tar.gz"; + sha256 = "bbeaced995d7d8d10cfc51a3a5a66da41ceb2bc04fedcab50e10e6300e801c6e"; + }; + nativeBuildInputs = [ buildPackages.pkg-config ]; + propagatedBuildInputs = [ pkgs.pkg-config ]; + postPatch = '' + # no pkg-config binary when cross-compiling so the check fails + substituteInPlace Makefile.PL \ + --replace "pkg-config" "$PKG_CONFIG" + ''; + doCheck = false; # expects test_glib-2.0.pc in PKG_CONFIG_PATH + meta = { + homepage = "http://gtk2-perl.sourceforge.net"; + description = "Simplistic interface to pkg-config"; + license = lib.licenses.lgpl21Plus; + }; + }; + + # From CPAN[1]: + # This module exists merely as a compatibility wrapper around + # ExtUtils::Typemaps. In a nutshell, ExtUtils::Typemap was renamed to + # ExtUtils::Typemaps because the Typemap directory in lib/ could collide with + # the typemap file on case-insensitive file systems. + # + # The ExtUtils::Typemaps module is part of the ExtUtils::ParseXS distribution + # and ships with the standard library of perl starting with perl version + # 5.16. + # + # [1] https://metacpan.org/pod/release/SMUELLER/ExtUtils-Typemap-1.00/lib/ExtUtils/Typemap.pm: + ExtUtilsTypemap = buildPerlPackage { + pname = "ExtUtils-Typemap"; + version = "1.00"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SM/SMUELLER/ExtUtils-Typemap-1.00.tar.gz"; + sha256 = "1iqz0xlscg655gnwb2h1wrjj70llblps1zznl29qn1mv5mvibc5i"; + }; + }; + + ExtUtilsTypemapsDefault = buildPerlModule { + pname = "ExtUtils-Typemaps-Default"; + version = "1.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SM/SMUELLER/ExtUtils-Typemaps-Default-1.05.tar.gz"; + sha256 = "1phmha0ks95kvzl00r1kgnd5hvg7qb1q9jmzjmw01p5zgs1zbyix"; + }; + }; + + ExtUtilsXSBuilder = buildPerlPackage { + pname = "ExtUtils-XSBuilder"; + version = "0.28"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GR/GRICHTER/ExtUtils-XSBuilder-0.28.tar.gz"; + sha256 = "8cced386e3d544c5ec2deb3aed055b72ebcfc2ea9a6c807da87c4245272fe80a"; + }; + propagatedBuildInputs = [ ParseRecDescent TieIxHash ]; + }; + + ExtUtilsXSpp = buildPerlModule { + pname = "ExtUtils-XSpp"; + version = "0.18"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SM/SMUELLER/ExtUtils-XSpp-0.18.tar.gz"; + sha256 = "1zx84f93lkymqz7qa4d63gzlnhnkxm5i3gvsrwkvvqr9cxjasxli"; + }; + buildInputs = [ TestBase TestDifferences ]; + }; + + FatalException = buildPerlModule { + pname = "Fatal-Exception"; + version = "0.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DE/DEXTER/Fatal-Exception-0.05.tar.gz"; + sha256 = "0kzfwc44vpxla3j637kfmnwmv57g6x4899ijqb4ljamk7whms298"; + }; + buildInputs = [ ExceptionWarning TestAssert TestUnitLite ]; + propagatedBuildInputs = [ ExceptionDied ]; + }; + + FCGI = buildPerlPackage { + pname = "FCGI"; + version = "0.79"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/FCGI-0.79.tar.gz"; + sha256 = "1r1lzd74lzzdl2brcanw4n70m37nd8n6gv9clb55m3gv2hdlxylc"; + }; + postPatch = lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) '' + sed -i '/use IO::File/d' Makefile.PL + ''; + }; + + FCGIClient = buildPerlModule { + pname = "FCGI-Client"; + version = "0.09"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TOKUHIROM/FCGI-Client-0.09.tar.gz"; + sha256 = "1s11casbv0jmkcl5dk8i2vhfy1nc8rg43d3bg923zassrq4wndym"; + }; + propagatedBuildInputs = [ Moo TypeTiny ]; + meta = { + description = "client library for fastcgi protocol"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ ModuleBuildTiny ]; + }; + + FCGIProcManager = buildPerlPackage { + pname = "FCGI-ProcManager"; + version = "0.28"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AR/ARODLAND/FCGI-ProcManager-0.28.tar.gz"; + sha256 = "e1c958c042427a175e051e0008f2025e8ec80613d3c7750597bf8e529b04420e"; + }; + meta = { + description = "A perl-based FastCGI process manager"; + }; + }; + + FFICheckLib = buildPerlPackage { + pname = "FFI-CheckLib"; + version = "0.27"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PL/PLICEASE/FFI-CheckLib-0.27.tar.gz"; + sha256 = "0x1dk4hlhvcbgwivf345phbqz0v5hawxxnby21h8bkagq93jfi4d"; + }; + buildInputs = [ Test2Suite ]; + meta = { + description = "Check that a library is available for FFI"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + FennecLite = buildPerlModule { + pname = "Fennec-Lite"; + version = "0.004"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/EX/EXODIST/Fennec-Lite-0.004.tar.gz"; + sha256 = "dce28e3932762c2ff92aa52d90405c06e898e81cb7b164ccae8966ae77f1dcab"; + }; + meta = { + homepage = "https://metacpan.org/release/Fennec-Lite"; + description = "Minimalist Fennec, the commonly used bits"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + FileChangeNotify = buildPerlPackage { + pname = "File-ChangeNotify"; + version = "0.31"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DR/DROLSKY/File-ChangeNotify-0.31.tar.gz"; + sha256 = "192bdb1ce76266c6a694a8e962d039e3adeeb829b6ac1e23f5057f2b506392bd"; + }; + buildInputs = [ Test2Suite TestRequires TestWithoutModule ]; + propagatedBuildInputs = [ ModulePluggable Moo TypeTiny namespaceautoclean ]; + meta = with lib; { + description = "Watch for changes to files, cross-platform style"; + license = licenses.artistic2; + }; + }; + + Filechdir = buildPerlPackage { + pname = "File-chdir"; + version = "0.1010"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DAGOLDEN/File-chdir-0.1010.tar.gz"; + sha256 = "009b8p2fzj4nhl03fpkhrn0rsh7myxqbrf69iqpzd86p1gs23hgg"; + }; + }; + + FileBaseDir = buildPerlModule { + version = "0.08"; + pname = "File-BaseDir"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KI/KIMRYAN/File-BaseDir-0.08.tar.gz"; + sha256 = "c065fcd3e2f22ae769937bcc971b91f80294d5009fac140bfba83bf7d35305e3"; + }; + configurePhase = '' + runHook preConfigure + perl Build.PL PREFIX="$out" prefix="$out" + ''; + propagatedBuildInputs = [ IPCSystemSimple ]; + buildInputs = [ FileWhich ]; + }; + + FileBOM = buildPerlModule { + pname = "File-BOM"; + version = "0.18"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MATTLAW/File-BOM-0.18.tar.gz"; + sha256 = "28edc43fcb118e11bc458c9ae889d56d388c1d9bc29997b00b1dffd8573823a3"; + }; + buildInputs = [ TestException ]; + propagatedBuildInputs = [ Readonly ]; + meta = { + description = "Utilities for handling Byte Order Marks"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + FileCheckTree = buildPerlPackage { + pname = "File-CheckTree"; + version = "4.42"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/File-CheckTree-4.42.tar.gz"; + sha256 = "66fb417f8ff8a5e5b7ea25606156e70e204861c59fa8c3831925b4dd3f155f8a"; + }; + meta = { + description = "Run many filetest checks on a tree"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Filechmod = buildPerlPackage { + pname = "File-chmod"; + version = "0.42"; + src = fetchurl { + url = "mirror://cpan/authors/id/X/XE/XENO/File-chmod-0.42.tar.gz"; + sha256 = "6cafafff68bc84215168b55ede0d191dcb57f9a3201b51d61edb2858a2407795"; + }; + meta = { + homepage = "https://metacpan.org/dist/File-chmod"; + description = "Implements symbolic and ls chmod modes"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + FilechmodRecursive = buildPerlPackage { + pname = "File-chmod-Recursive"; + version = "1.0.3"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MITHUN/File-chmod-Recursive-v1.0.3.tar.gz"; + sha256 = "9348ca5c5b88deadcc483b9399ef7c2e0fc2504f9058db65f3c3c53c41139aa7"; + }; + propagatedBuildInputs = [ Filechmod ]; + meta = { + homepage = "https://github.com/mithun/perl-file-chmod-recursive"; + description = "Run chmod recursively against directories"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + FileCopyRecursive = buildPerlPackage { + pname = "File-Copy-Recursive"; + version = "0.45"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DM/DMUEY/File-Copy-Recursive-0.45.tar.gz"; + sha256 = "0mqivx4nbzagl3s2kxka72050sfb75xvn25j8a0f6ic3ibvir5yk"; + }; + buildInputs = [ PathTiny TestDeep TestFatal TestFile TestWarnings ]; + }; + + FileCopyRecursiveReduced = buildPerlPackage { + pname = "File-Copy-Recursive-Reduced"; + version = "0.006"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JK/JKEENAN/File-Copy-Recursive-Reduced-0.006.tar.gz"; + sha256 = "0b3yf33bahaf4ipfqipn8y5z4296k3vgzzsqbhh5ahwzls9zj676"; + }; + buildInputs = [ CaptureTiny PathTiny ]; + meta = { + description = "Recursive copying of files and directories within Perl 5 toolchain"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "http://thenceforward.net/perl/modules/File-Copy-Recursive-Reduced/"; + }; + }; + + FileCountLines = buildPerlPackage { + pname = "File-CountLines"; + version = "0.0.3"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MO/MORITZ/File-CountLines-v0.0.3.tar.gz"; + sha256 = "cfd97cce7c9613e4e569d47874a2b5704f1be9eced2f0739c870725694382a62"; + }; + meta = { + description = "Efficiently count the number of line breaks in a file"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + FileDesktopEntry = buildPerlPackage { + version = "0.22"; + pname = "File-DesktopEntry"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MICHIELB/File-DesktopEntry-0.22.tar.gz"; + sha256 = "169c01e3dae2f629767bec1a9f1cdbd6ec6d713d1501e0b2786e4dd1235635b8"; + }; + propagatedBuildInputs = [ FileBaseDir URI ]; + }; + + FileFindIterator = buildPerlPackage { + pname = "File-Find-Iterator"; + version = "0.4"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TE/TEXMEC/File-Find-Iterator-0.4.tar.gz"; + sha256 = "a2b87ab9756a2e5bb674adbd39937663ed20c28c716bf5a1095a3ca44d54ab2c"; + }; + propagatedBuildInputs = [ ClassIterator ]; + meta = { + }; + }; + + FileFindObject = buildPerlModule { + pname = "File-Find-Object"; + version = "0.3.5"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/File-Find-Object-0.3.5.tar.gz"; + sha256 = "dc4124abe64dc1274e8e8a5e5bf9e17a2a9269debace458115b57469f1e16a91"; + }; + propagatedBuildInputs = [ ClassXSAccessor ]; + meta = { + description = "An object oriented File::Find replacement"; + license = lib.licenses.artistic2; + }; + }; + + FileFindObjectRule = buildPerlModule { + pname = "File-Find-Object-Rule"; + version = "0.0312"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/File-Find-Object-Rule-0.0312.tar.gz"; + sha256 = "3e0b6c8dadf6362e65f2310530b1be637ed6aac113399d10c6f9129e734afff9"; + }; + propagatedBuildInputs = [ FileFindObject NumberCompare TextGlob ]; + # restore t/sample-data which is corrupted by patching shebangs + preCheck = '' + tar xf $src */t/sample-data --strip-components=1 + ''; + meta = { + homepage = "https://www.shlomifish.org/open-source/projects/File-Find-Object/"; + description = "Alternative interface to File::Find::Object"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + FileFindRule = buildPerlPackage { + pname = "File-Find-Rule"; + version = "0.34"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RC/RCLAMP/File-Find-Rule-0.34.tar.gz"; + sha256 = "1znachnhmi1w5pdqx8dzgfa892jb7x8ivrdy4pzjj7zb6g61cvvy"; + }; + propagatedBuildInputs = [ NumberCompare TextGlob ]; + }; + + FileFindRulePerl = buildPerlPackage { + pname = "File-Find-Rule-Perl"; + version = "1.15"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/File-Find-Rule-Perl-1.15.tar.gz"; + sha256 = "9a48433f86e08ce18e03526e2982de52162eb909d19735460f07eefcaf463ea6"; + }; + propagatedBuildInputs = [ FileFindRule ParamsUtil ]; + meta = { + description = "Common rules for searching for Perl things"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + FileFinder = buildPerlPackage { + pname = "File-Finder"; + version = "0.53"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/ME/MERLYN/File-Finder-0.53.tar.gz"; + sha256 = "2ecbc19ac67a9e635c872a807a8d3eaaff5babc054f15a191d47cdfc5f176a74"; + }; + propagatedBuildInputs = [ TextGlob ]; + meta = { + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + FileFnMatch = buildPerlPackage { + pname = "File-FnMatch"; + version = "0.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MJ/MJP/File-FnMatch-0.02.tar.gz"; + sha256 = "05p9m7kpmjv8bmmbs5chb5fqyshcgmskbbzq5c9qpskbx2w5894n"; + }; + meta = { + maintainers = teams.deshaw.members; + description = "simple filename and pathname matching"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + FileGrep = buildPerlPackage { + pname = "File-Grep"; + version = "0.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MN/MNEYLON/File-Grep-0.02.tar.gz"; + sha256 = "462e15274eb6278521407ea302d9eea7252cd44cab2382871f7de833d5f85632"; + }; + meta = { + description = "Find matches to a pattern in a series of files and related functions"; + maintainers = teams.deshaw.members; + }; + }; + + FileHandleUnget = buildPerlPackage { + pname = "FileHandle-Unget"; + version = "0.1634"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DC/DCOPPIT/FileHandle-Unget-0.1634.tar.gz"; + sha256 = "380f34ad3ce5e9ec661d4c468bb3392231c162317d4172df378146b42aab1785"; + }; + buildInputs = [ FileSlurper TestCompile UNIVERSALrequire URI ]; + meta = { + homepage = "https://github.com/coppit/filehandle-unget/"; + description = "FileHandle which supports multi-byte unget"; + license = lib.licenses.gpl2; + maintainers = with maintainers; [ romildo ]; + }; + }; + + FileHomeDir = buildPerlPackage { + pname = "File-HomeDir"; + version = "1.006"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RE/REHSACK/File-HomeDir-1.006.tar.gz"; + sha256 = "0ll8akqmwrh9q3nkxhv2caxlaya1fr20nbhjsjsxmxph5p33fdsr"; + }; + propagatedBuildInputs = [ FileWhich ]; + meta = { + description = "Find your home and other directories on any platform"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + preCheck = "export HOME=$TMPDIR"; + doCheck = !stdenv.isDarwin; + }; + + FileKeePass = buildPerlPackage { + pname = "File-KeePass"; + version = "2.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RH/RHANDOM/File-KeePass-2.03.tar.gz"; + sha256 = "c30c688027a52ff4f58cd69d6d8ef35472a7cf106d4ce94eb73a796ba7c7ffa7"; + }; + propagatedBuildInputs = [ CryptRijndael ]; + }; + + Filelchown = buildPerlModule { + pname = "File-lchown"; + version = "0.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PEVANS/File-lchown-0.02.tar.gz"; + sha256 = "a02fbf285406a8a4d9399284f032f2d55c56975154c2e1674bd109837b8096ec"; + }; + buildInputs = [ ExtUtilsCChecker ]; + perlPreHook = lib.optionalString (stdenv.isi686 || stdenv.isDarwin) "export LD=$CC"; # fix undefined reference to `__stack_chk_fail_local' + meta = { + description = "Modify attributes of symlinks without dereferencing them"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + FileLibMagic = buildPerlPackage { + pname = "File-LibMagic"; + version = "1.23"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DR/DROLSKY/File-LibMagic-1.23.tar.gz"; + sha256 = "52e6b1dc7cb2d87a4cdf439ba145e0b9e8cf28cc26a48a3cf9977c83463967ee"; + }; + buildInputs = [ pkgs.file ConfigAutoConf TestFatal ]; + makeMakerFlags = "--lib=${pkgs.file}/lib"; + preCheck = '' + substituteInPlace t/oo-api.t \ + --replace "/usr/share/file/magic.mgc" "${pkgs.file}/share/misc/magic.mgc" + ''; + meta = { + description = "Determine MIME types of data or files using libmagic"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + broken = stdenv.isDarwin; # never built on Hydra https://hydra.nixos.org/job/nixpkgs/staging-next/perl534Packages.FileLibMagic.x86_64-darwin + }; + }; + + FileListing = buildPerlPackage { + pname = "File-Listing"; + version = "6.14"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PL/PLICEASE/File-Listing-6.14.tar.gz"; + sha256 = "1zs8gfngqsd6jbsqajf95kql3bshsis1nf16y8v4l5i33s3s9cqm"; + }; + propagatedBuildInputs = [ HTTPDate ]; + }; + + FileLoadLines = buildPerlPackage { + pname = "File-LoadLines"; + version = "1.01"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JV/JV/File-LoadLines-1.01.tar.gz"; + sha256 = "1lar8s1mc4d36lhxgqyk3hpwdc1bk6j6dfdzzacbjz4zlim6x33f"; + }; + buildInputs = [ TestException ]; + meta = { + description = "Load lines from file"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + FileMimeInfo = buildPerlPackage { + pname = "File-MimeInfo"; + version = "0.30"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MICHIELB/File-MimeInfo-0.30.tar.gz"; + sha256 = "0wm87gpagb35d7c4nyaf9z3ry0jb3g5xpyjfzcxqcfxyj2zy9ip2"; + }; + doCheck = false; # Failed test 'desktop file is the right one' + buildInputs = [ FileBaseDir FileDesktopEntry EncodeLocale ]; + }; + + FileMMagic = buildPerlPackage { + pname = "File-MMagic"; + version = "1.30"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KN/KNOK/File-MMagic-1.30.tar.gz"; + sha256 = "cf0c1b1eb29705c02d97c2913648009c0be42ce93ec24b36c696bf2d4f5ebd7e"; + }; + meta = { + description = "Guess file type from contents"; + license = lib.licenses.free; # Some form of BSD4/Apache mix. + }; + }; + + FileMap = buildPerlModule { + pname = "File-Map"; + version = "0.67"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LE/LEONT/File-Map-0.67.tar.gz"; + sha256 = "1hpv4aprgypjxjx1kzbjnf6r29a98rw7mndlinixzk62vyz5sy0j"; + }; + perlPreHook = "export LD=$CC"; + propagatedBuildInputs = [ PerlIOLayers SubExporterProgressive ]; + buildInputs = [ TestFatal TestWarnings ]; + meta = { + description = "Memory mapping made simple and safe."; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + FileModified = buildPerlPackage { + pname = "File-Modified"; + version = "0.10"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NE/NEILB/File-Modified-0.10.tar.gz"; + sha256 = "6b50b1aab6ec6998a017f6403c2735b3bc1e1cf46187bd134d7eb6df3fc45144"; + }; + meta = { + homepage = "https://github.com/neilbowers/File-Modified"; + description = "Checks intelligently if files have changed"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + FileNext = buildPerlPackage { + pname = "File-Next"; + version = "1.18"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PETDANCE/File-Next-1.18.tar.gz"; + sha256 = "1vy2dqpc1nbjrnga08xr2hcxxfzifc5s2lfam5lf3djya0wwn07r"; + }; + }; + + FileNFSLock = buildPerlPackage { + pname = "File-NFSLock"; + version = "1.29"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BB/BBB/File-NFSLock-1.29.tar.gz"; + sha256 = "0dzssj15faz9cn1w3xi7jwm64gyjyazapv4bkgglw5l1njcibm31"; + }; + }; + + FilePath = buildPerlPackage { + pname = "File-Path"; + version = "2.18"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JK/JKEENAN/File-Path-2.18.tar.gz"; + sha256 = "1pddss5hwzng0rxgsi8cz3hcsaarkxzkayydx53dylxkxlbhl3wq"; + }; + meta = { + description = "Create or remove directory trees"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + FilePid = buildPerlPackage { + pname = "File-Pid"; + version = "1.01"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CW/CWEST/File-Pid-1.01.tar.gz"; + sha256 = "bafeee8fdc96eb06306a0c58bbdb7209b6de45f850e75fdc6b16db576e05e422"; + }; + patches = [(fetchpatch { + name = "missing-pidfile.patch"; + url = "https://sources.debian.org/data/main/libf/libfile-pid-perl/1.01-2/debian/patches/missing-pidfile.patch"; + sha256 = "1wvax2qdpfs9mgksnc12dhby9b9w19isp50dc55wd3d741ihh6sl"; + })]; + propagatedBuildInputs = [ ClassAccessor ]; + meta = { + license = with lib.licenses; [ artistic1 gpl1Plus ]; + description = "Pid File Manipulation"; + maintainers = teams.deshaw.members; + }; + }; + + Filepushd = buildPerlPackage { + pname = "File-pushd"; + version = "1.016"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DAGOLDEN/File-pushd-1.016.tar.gz"; + sha256 = "d73a7f09442983b098260df3df7a832a5f660773a313ca273fa8b56665f97cdc"; + }; + meta = { + description = "Change directory temporarily for a limited scope"; + license = lib.licenses.asl20; + }; + }; + + FileReadBackwards = buildPerlPackage { + pname = "File-ReadBackwards"; + version = "1.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/U/UR/URI/File-ReadBackwards-1.05.tar.gz"; + sha256 = "82b261af87507cc3e7e66899c457104ebc8d1c09fb85c53f67c1f90f70f18d6e"; + }; + meta = { + description = "Read a file backwards by lines"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + FileRemove = buildPerlModule { + pname = "File-Remove"; + version = "1.60"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/File-Remove-1.60.tar.gz"; + sha256 = "19lc9xr8w38i4bq3mbr0hadmyjm1dgyh6587gmlxbipdzx02lvp8"; + }; + }; + + FileShare = buildPerlPackage { + pname = "File-Share"; + version = "0.25"; + src = fetchurl { + url = "mirror://cpan/authors/id/I/IN/INGY/File-Share-0.25.tar.gz"; + sha256 = "0w3h800qqcf1sn79h84zngnn788rg2jx4jjb70l44f6419p2b7cf"; + }; + propagatedBuildInputs = [ FileShareDir ]; + meta = { + homepage = "https://github.com/ingydotnet/file-share-pm"; + description = "Extend File::ShareDir to Local Libraries"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + FileShareDir = buildPerlPackage { + pname = "File-ShareDir"; + version = "1.118"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RE/REHSACK/File-ShareDir-1.118.tar.gz"; + sha256 = "0n69h793jxz1zkp8ng6yqjwdh0yr0py0c8sg1bf5iyaxlc5s5civ"; + }; + propagatedBuildInputs = [ ClassInspector ]; + meta = { + description = "Locate per-dist and per-module shared files"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ FileShareDirInstall ]; + }; + + FileShareDirInstall = buildPerlPackage { + pname = "File-ShareDir-Install"; + version = "0.13"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/File-ShareDir-Install-0.13.tar.gz"; + sha256 = "1yc0wlkav2l2wr36a53n4mnhsy2zv29z5nm14mygxgjwv7qgvgj5"; + }; + meta = { + description = "Install shared files"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + FilesysDf = buildPerlPackage { + pname = "Filesys-Df"; + version = "0.92"; + src = fetchurl { + url = "mirror://cpan/authors/id/I/IG/IGUTHRIE/Filesys-Df-0.92.tar.gz"; + sha256 = "fe89cbb427e0e05f1cd97c2dd6d3866ac6b21bc7a85734ede159bdc35479552a"; + }; + meta = { + description = "Perl extension for filesystem disk space information."; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + FilesysNotifySimple = buildPerlPackage { + pname = "Filesys-Notify-Simple"; + version = "0.14"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIYAGAWA/Filesys-Notify-Simple-0.14.tar.gz"; + sha256 = "192m0l4cnfskdmhgaxk3bm1rvbmzxzwgcdgdb60qdqd59cnp3nhz"; + }; + meta = { + description = "Simple and dumb file system watcher"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ TestSharedFork ]; + }; + + FilesysDiskUsage = buildPerlPackage { + pname = "Filesys-DiskUsage"; + version = "0.13"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MANWAR/Filesys-DiskUsage-0.13.tar.gz"; + sha256 = "fd3e52c6f6241271a281348d1d43c44154c2f61a32543db46aa9e15692d1b713"; + }; + buildInputs = [ TestWarn ]; + meta = { + description = "Estimate file space usage (similar to `du`)"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + FileSlurp = buildPerlPackage { + pname = "File-Slurp"; + version = "9999.32"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CA/CAPOEIRAB/File-Slurp-9999.32.tar.gz"; + sha256 = "1c655gxs0pjm5yd50rcx4rbq1lr77p4a6x6xg4xbwhlx5acj2g2c"; + }; + meta = { + description = "Simple and Efficient Reading/Writing/Modifying of Complete Files"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + FileSlurper = buildPerlPackage { + pname = "File-Slurper"; + version = "0.012"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LE/LEONT/File-Slurper-0.012.tar.gz"; + sha256 = "4efb2ea416b110a1bda6f8133549cc6ea3676402e3caf7529fce0313250aa578"; + }; + buildInputs = [ TestWarnings ]; + meta = { + description = "A simple, sane and efficient module to slurp a file"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + FileSlurpTiny = buildPerlPackage { + pname = "File-Slurp-Tiny"; + version = "0.004"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LE/LEONT/File-Slurp-Tiny-0.004.tar.gz"; + sha256 = "452995beeabf0e923e65fdc627a725dbb12c9e10c00d8018c16d10ba62757f1e"; + }; + meta = { + description = "A simple, sane and efficient file slurper [DISCOURAGED]"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + FileTail = buildPerlPackage { + pname = "File-Tail"; + version = "1.3"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MG/MGRABNAR/File-Tail-1.3.tar.gz"; + sha256 = "1ixg6kn4h330xfw3xgvqcbzfc3v2wlzjim9803jflhvfhf0rzl16"; + }; + meta = { + description = "Perl extension for reading from continously updated files"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = teams.deshaw.members; + }; + }; + + FileTouch = buildPerlPackage { + pname = "File-Touch"; + version = "0.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NE/NEILB/File-Touch-0.11.tar.gz"; + sha256 = "e379a5ff89420cf39906e5ceff309b8ce958f99f9c3e57ad52b5002a3982d93c"; + }; + meta = { + homepage = "https://github.com/neilb/File-Touch"; + description = "Update file access and modification times, optionally creating files if needed"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = teams.deshaw.members; + }; + }; + + FileType = buildPerlModule { + pname = "File-Type"; + version = "0.22"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PM/PMISON/File-Type-0.22.tar.gz"; + sha256 = "0hfkaafp6wb0nw19x47wc6wc9mwlw8s2rxiii3ylvzapxxgxjp6k"; + }; + meta = { + description = "File::Type uses magic numbers (typically at the start of a file) to determine the MIME type of that file."; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + FileUtil = buildPerlModule { + pname = "File-Util"; + version = "4.201720"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TOMMY/File-Util-4.201720.tar.gz"; + sha256 = "d4491021850d5c5cbd702c7e4744858079841d2fa93f1c2d09ddc9a7863608df"; + }; + buildInputs = [ TestNoWarnings ]; + meta = { + homepage = "https://github.com/tommybutler/file-util/wiki"; + description = "Easy, versatile, portable file handling"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + FileUtilTempdir = buildPerlPackage { + pname = "File-Util-Tempdir"; + version = "0.034"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PERLANCAR/File-Util-Tempdir-0.034.tar.gz"; + sha256 = "076wdwbvqsg64wr5np8j6pnmmhs9li64g9mw2h33zbbgbv7f47fi"; + }; + buildInputs = [ Perlosnames TestException ]; + meta = { + homepage = "https://metacpan.org/release/File-Util-Tempdir"; + description = "Cross-platform way to get system-wide & user private temporary directory"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + FileWhich = buildPerlPackage { + pname = "File-Which"; + version = "1.23"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PL/PLICEASE/File-Which-1.23.tar.gz"; + sha256 = "b79dc2244b2d97b6f27167fc3b7799ef61a179040f3abd76ce1e0a3b0bc4e078"; + }; + meta = { + homepage = "https://metacpan.org/release/File-Which"; + description = "Perl implementation of the which utility as an API"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + FileZglob = buildPerlPackage { + pname = "File-Zglob"; + version = "0.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TOKUHIROM/File-Zglob-0.11.tar.gz"; + sha256 = "16v61rn0yimpv5kp6b20z2f1c93n5kpsyjvr0gq4w2dc43gfvc8w"; + }; + meta = { + description = "Extended globs."; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Filter = buildPerlPackage { + pname = "Filter"; + version = "1.60"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RU/RURBAN/Filter-1.60.tar.gz"; + sha256 = "e11ef2f2ee8727b7f666fd249a3226f768e6eadfd51d9cdb49b3c3f1a35464f9"; + }; + meta = { + description = "Source Filters"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + FinanceQuote = buildPerlPackage { + pname = "Finance-Quote"; + version = "1.49"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/EC/ECOCODE/Finance-Quote-1.49.tar.gz"; + sha256 = "0lxz9fsm4ld3l900zxh2w91wjygk0ifn4miw6q5k4mm67d2c9nwm"; + }; + propagatedBuildInputs = [ CGI DateTimeFormatStrptime HTMLTableExtract JSON JSONParse LWPProtocolHttps StringUtil TextTemplate ]; + meta = with lib; { + homepage = "http://finance-quote.sourceforge.net/"; + description = "Get stock and mutual fund quotes from various exchanges"; + license = licenses.gpl2; + }; + buildInputs = [ TestPod ]; + }; + + FindLib = buildPerlPackage { + pname = "Find-Lib"; + version = "1.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/Y/YA/YANNK/Find-Lib-1.04.tar.gz"; + sha256 = "0lg88v0sqfpq4d3jwvk6c9blqnpxbz8f4s22zr3b1qb160g94wqx"; + }; + meta = with lib; { + description = "Helper to smartly find libs to use in the filesystem tree"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + FontAFM = buildPerlPackage { + pname = "Font-AFM"; + version = "1.20"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GA/GAAS/Font-AFM-1.20.tar.gz"; + sha256 = "32671166da32596a0f6baacd0c1233825a60acaf25805d79c81a3f18d6088bc1"; + }; + }; + + FontTTF = buildPerlPackage { + pname = "Font-TTF"; + version = "1.06"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BH/BHALLISSY/Font-TTF-1.06.tar.gz"; + sha256 = "4b697d444259759ea02d2c442c9bffe5ffe14c9214084a01f743693a944cc293"; + }; + meta = { + description = "TTF font support for Perl"; + license = lib.licenses.artistic2; + }; + buildInputs = [ IOString ]; + }; + + ForksSuper = buildPerlPackage { + pname = "Forks-Super"; + version = "0.97"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MO/MOB/Forks-Super-0.97.tar.gz"; + sha256 = "0kias11b4zchxy5x9ns2wwjzvzxlzsbap8sq587z9micw5bl7nrk"; + }; + doCheck = false; + meta = { + description = "Extensions and convenience methods to manage background processes"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + propagatedBuildInputs = [ URI ]; + }; + + FormValidatorSimple = buildPerlPackage { + pname = "FormValidator-Simple"; + version = "0.29"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LY/LYOKATO/FormValidator-Simple-0.29.tar.gz"; + sha256 = "fc3a63dc54b962d74586070176adaf5be869f09b561bb30f5fd32ef531792666"; + }; + propagatedBuildInputs = [ ClassAccessor ClassDataAccessor DateCalc DateTimeFormatStrptime EmailValidLoose ListMoreUtils TieIxHash UNIVERSALrequire YAML ]; + meta = { + description = "Validation with simple chains of constraints"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ CGI ]; + }; + + FreezeThaw = buildPerlPackage { + pname = "FreezeThaw"; + version = "0.5001"; + src = fetchurl { + url = "mirror://cpan/authors/id/I/IL/ILYAZ/modules/FreezeThaw-0.5001.tar.gz"; + sha256 = "0h8gakd6b9770n2xhld1hhqghdar3hrq2js4mgiwxy86j4r0hpiw"; + }; + doCheck = false; + }; + + FunctionParameters = buildPerlPackage { + pname = "Function-Parameters"; + version = "2.001003"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MAUKE/Function-Parameters-2.001003.tar.gz"; + sha256 = "eaa22c6b43c02499ec7db0758c2dd218a3b2ab47a714b2bdf8010b5ee113c242"; + }; + buildInputs = [ DirSelf TestFatal ]; + meta = { + description = "Define functions and methods with parameter lists (\"subroutine signatures\")"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Furl = buildPerlModule { + pname = "Furl"; + version = "3.13"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TOKUHIROM/Furl-3.13.tar.gz"; + sha256 = "1wxa2v9yjzvnzp62p1jvcx8x61z5qvlvzyah853vvaywpjxwyyl8"; + }; + propagatedBuildInputs = [ ClassAccessorLite HTTPParserXS MozillaCA ]; + buildInputs = [ HTTPCookieJar HTTPProxy ModuleBuildTiny Plack Starlet TestFakeHTTPD TestRequires TestSharedFork TestTCP TestValgrind URI ]; + meta = { + description = "Lightning-fast URL fetcher"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Future = buildPerlModule { + pname = "Future"; + version = "0.47"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PEVANS/Future-0.47.tar.gz"; + sha256 = "1pmhkhrmvaf8c3jbrfqqhmxjrzcsxdn2q7apj033gwxggland88h"; + }; + buildInputs = [ TestFatal TestIdentity TestRefcount ]; + meta = { + description = "represent an operation awaiting completion"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + FutureAsyncAwait = buildPerlModule rec { + pname = "Future-AsyncAwait"; + version = "0.52"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PEVANS/Future-AsyncAwait-${version}.tar.gz"; + sha256 = "0dwij2r51vij91hx808zc2l5q38h55jahzrh73h4rn816jv597yx"; + }; + buildInputs = [ TestRefcount ]; + propagatedBuildInputs = [ Future XSParseKeyword XSParseSublike ]; + perlPreHook = lib.optionalString stdenv.isDarwin "export LD=$CC"; + meta = { + description = "Deferred subroutine syntax for futures"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.zakame ]; + }; + }; + + GamesSolitaireVerify = buildPerlModule { + pname = "Games-Solitaire-Verify"; + version = "0.2403"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/Games-Solitaire-Verify-0.2403.tar.gz"; + sha256 = "e5ab475c82ba1cb088ad28f423ca514d46944d6ae3c3eb55e9636e9e7f1dc893"; + }; + buildInputs = [ DirManifest TestDifferences ]; + propagatedBuildInputs = [ ClassXSAccessor ExceptionClass PathTiny ]; + meta = { + description = "Verify solutions for solitaire games"; + license = lib.licenses.mit; + }; + }; + + GD = buildPerlPackage { + pname = "GD"; + version = "2.73"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RU/RURBAN/GD-2.73.tar.gz"; + sha256 = "0arjpa8id6k5yjxfq0j2hsinhhjzjch5lwk6gscf48l54drrw729"; + }; + + buildInputs = [ pkgs.gd pkgs.libjpeg pkgs.zlib pkgs.freetype pkgs.libpng pkgs.fontconfig pkgs.xorg.libXpm ExtUtilsPkgConfig TestFork ]; + + # otherwise "cc1: error: -Wformat-security ignored without -Wformat [-Werror=format-security]" + hardeningDisable = [ "format" ]; + + makeMakerFlags = "--lib_png_path=${pkgs.libpng.out} --lib_jpeg_path=${pkgs.libjpeg.out} --lib_zlib_path=${pkgs.zlib.out} --lib_ft_path=${pkgs.freetype.out} --lib_fontconfig_path=${pkgs.fontconfig.lib} --lib_xpm_path=${pkgs.xorg.libXpm.out}"; + }; + + GDGraph = buildPerlPackage { + pname = "GDGraph"; + version = "1.54"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RU/RUZ/GDGraph-1.54.tar.gz"; + sha256 = "0kzsdc07ycxjainmz0dnsclb15w2j1y7g8b5mcb7vhannq85qvxr"; + }; + propagatedBuildInputs = [ GDText ]; + buildInputs = [ CaptureTiny TestException ]; + meta = { + description = "Graph Plotting Module for Perl 5"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + GDSecurityImage = buildPerlPackage { + pname = "GD-SecurityImage"; + version = "1.75"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BU/BURAK/GD-SecurityImage-1.75.tar.gz"; + sha256 = "19lf1kzdavrkkx3f900jnpynr55d5kjd2sdmwpfir5dsmkcj9pix"; + }; + propagatedBuildInputs = [ GD ]; + meta = { + description = "Security image (captcha) generator"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + GDText = buildPerlPackage { + pname = "GDTextUtil"; + version = "0.86"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MV/MVERB/GDTextUtil-0.86.tar.gz"; + sha256 = "1g0nc7fz4d672ag7brlrrcz7ibm98x49qs75bq9z957ybkwcnvl8"; + }; + propagatedBuildInputs = [ GD ]; + meta = { + description = "Text utilities for use with GD"; + }; + }; + + GeoIP = buildPerlPackage { + pname = "Geo-IP"; + version = "1.51"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MAXMIND/Geo-IP-1.51.tar.gz"; + sha256 = "1fka8fr7fw6sh3xa9glhs1zjg3s2gfkhi7n7da1l2m2wblqj0c0n"; + }; + makeMakerFlags = "LIBS=-L${pkgs.geoip}/lib INC=-I${pkgs.geoip}/include"; + doCheck = false; # seems to access the network + }; + + GeoIP2 = buildPerlPackage { + pname = "GeoIP2"; + version = "2.006002"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MAXMIND/GeoIP2-2.006002.tar.gz"; + sha256 = "0d4qq0k0pd0xd83iykr0jkyizl499ii6ajwwwl93rgg9xsl44189"; + }; + propagatedBuildInputs = [ JSONMaybeXS LWPProtocolHttps MaxMindDBReader ParamsValidate Throwable ]; + buildInputs = [ PathClass TestFatal TestNumberDelta ]; + meta = { + description = "Perl API for MaxMind's GeoIP2 web services and databases"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + GetoptArgvFile = buildPerlPackage { + pname = "Getopt-ArgvFile"; + version = "1.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JS/JSTENZEL/Getopt-ArgvFile-1.11.tar.gz"; + sha256 = "3709aa513ce6fd71d1a55a02e34d2f090017d5350a9bd447005653c9b0835b22"; + }; + meta = { + license = lib.licenses.artistic1; + maintainers = [ maintainers.pSub ]; + }; + }; + + GetoptLong = buildPerlPackage { + pname = "Getopt-Long"; + version = "2.52"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JV/JV/Getopt-Long-2.52.tar.gz"; + sha256 = "1yh5fykxrw68pvdvhvjh3wfs7a1s29xqwm5fxw2mqg9mfg1sgiwx"; + }; + }; + + GetoptLongDescriptive = buildPerlPackage { + pname = "Getopt-Long-Descriptive"; + version = "0.105"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Getopt-Long-Descriptive-0.105.tar.gz"; + sha256 = "a71cdbcf4043588b26a42a13d151c243f6eccf38e8fc0b18ffb5b53651ab8c15"; + }; + buildInputs = [ CPANMetaCheck TestFatal TestWarnings ]; + propagatedBuildInputs = [ ParamsValidate SubExporter ]; + meta = { + homepage = "https://github.com/rjbs/Getopt-Long-Descriptive"; + description = "Getopt::Long, but simpler and more powerful"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + GetoptTabular = buildPerlPackage { + pname = "Getopt-Tabular"; + version = "0.3"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GW/GWARD/Getopt-Tabular-0.3.tar.gz"; + sha256 = "0xskl9lcj07sdfx5dkma5wvhhgf5xlsq0khgh8kk34dm6dv0dpwv"; + }; + }; + + Git = buildPerlPackage { + pname = "Git"; + version = "0.42"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MS/MSOUTH/Git-0.42.tar.gz"; + sha256 = "9469a9f398f3a2bf2b0500566ee41d3ff6fae460412a137185767a1cc4783a6d"; + }; + propagatedBuildInputs = [ Error ]; + meta = { + maintainers = teams.deshaw.members; + description = "This is the Git.pm, plus the other files in the perl/Git directory, from github's git/git"; + license = lib.licenses.free; + }; + }; + + GitAutofixup = buildPerlPackage rec { + pname = "App-Git-Autofixup"; + version = "0.003001"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TORBIAK/App-Git-Autofixup-0.003001.tar.gz"; + sha256 = "1q7im0zj238k5agwi7d1mz26a8r0wrxwfwp1l8n5k777gx3b5xhp"; + }; + nativeBuildInputs = lib.optional stdenv.isDarwin shortenPerlShebang; + postInstall = lib.optionalString stdenv.isDarwin '' + shortenPerlShebang $out/bin/git-autofixup + ''; + meta = { + maintainers = [ maintainers.DamienCassou ]; + description = "Create fixup commits for topic branches"; + license = lib.licenses.artistic2; + }; + }; + + GitPurePerl = buildPerlPackage { + pname = "Git-PurePerl"; + version = "0.53"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BR/BROQ/Git-PurePerl-0.53.tar.gz"; + sha256 = "987c74366cc4c37ee084050f985fa254359c89c12507f5b8bfc6607de538d5a8"; + }; + buildInputs = [ Testutf8 ]; + propagatedBuildInputs = [ ArchiveExtract ConfigGitLike DataStreamBulk DateTime FileFindRule IODigest MooseXStrictConstructor MooseXTypesPathClass ]; + doCheck = false; + meta = { + description = "A Pure Perl interface to Git repositories"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + GitRepository = buildPerlPackage { + pname = "Git-Repository"; + version = "1.324"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BO/BOOK/Git-Repository-1.324.tar.gz"; + sha256 = "814dfad104a9546349f9e0fd492c86137de827ebc284017a91a5267c120ad4f6"; + }; + buildInputs = [ TestRequiresGit ]; + propagatedBuildInputs = [ GitVersionCompare SystemCommand namespaceclean ]; + meta = { + description = "Perl interface to Git repositories"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + GitVersionCompare = buildPerlPackage { + pname = "Git-Version-Compare"; + version = "1.004"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BO/BOOK/Git-Version-Compare-1.004.tar.gz"; + sha256 = "63e8264ed351cb2371b47852a72366214164b5f3fad9dbd68309c7fc63d06491"; + }; + buildInputs = [ TestNoWarnings ]; + meta = { + description = "Functions to compare Git versions"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Glib = buildPerlPackage { + pname = "Glib"; + version = "1.3293"; + src = fetchurl { + url = "mirror://cpan/authors/id/X/XA/XAOC/Glib-1.3293.tar.gz"; + sha256 = "005m3inz12xcsd5sr056cm1kbhmxsx2ly88ifbdv6p6cwz0s05kk"; + }; + buildInputs = [ pkgs.glib ]; + meta = { + homepage = "http://gtk2-perl.sourceforge.net/"; + description = "Perl wrappers for the GLib utility and Object libraries"; + license = lib.licenses.lgpl21Plus; + }; + propagatedBuildInputs = [ ExtUtilsDepends ExtUtilsPkgConfig ]; + }; + + GlibObjectIntrospection = buildPerlPackage { + pname = "Glib-Object-Introspection"; + version = "0.049"; + src = fetchurl { + url = "mirror://cpan/authors/id/X/XA/XAOC/Glib-Object-Introspection-0.049.tar.gz"; + sha256 = "0mxg6pz8qfyipw0ypr54alij0c4adzg94f62702b2a6hkp5jhij6"; + }; + checkInputs = [ pkgs.cairo CairoGObject ]; + propagatedBuildInputs = [ pkgs.gobject-introspection Glib ]; + preCheck = '' + # Our gobject-introspection patches make the shared library paths absolute + # in the GIR files. When running tests, the library is not yet installed, + # though, so we need to replace the absolute path with a local one during build. + # We are using a symlink that we will delete after the execution of the tests. + mkdir -p $out/lib + ln -s $PWD/build/*.so $out/lib/ + ''; + postCheck = '' + rm -r $out/lib + ''; + meta = { + description = "Dynamically create Perl language bindings"; + license = lib.licenses.lgpl2Plus; + }; + }; + + Gnome2 = buildPerlPackage { + pname = "Gnome2"; + version = "1.047"; + src = fetchurl { + url = "mirror://cpan/authors/id/X/XA/XAOC/Gnome2-1.047.tar.gz"; + sha256 = "ccc85c5dc3c14f915ed1a186d238681d83fef3d17eed1c20001499ff56b6390c"; + }; + buildInputs = [ ExtUtilsDepends ExtUtilsPkgConfig Glib Gnome2Canvas Gnome2VFS Gtk2 ]; + propagatedBuildInputs = [ pkgs.gnome2.libgnomeui ]; + meta = { + homepage = "http://gtk2-perl.sourceforge.net"; + description = "Perl interface to the 2.x series of the GNOME libraries"; + license = lib.licenses.lgpl21Plus; + broken = stdenv.isDarwin; # never built on Hydra https://hydra.nixos.org/job/nixpkgs/staging-next/perl534Packages.Gnome2Canvas.x86_64-darwin + }; + }; + + Gnome2Canvas = buildPerlPackage { + pname = "Gnome2-Canvas"; + version = "1.004"; + src = fetchurl { + url = "mirror://cpan/authors/id/X/XA/XAOC/Gnome2-Canvas-1.004.tar.gz"; + sha256 = "0g42bfmqq5395m55np95pfj4i1qbrmx2ml4zhi4cw4sx4fdv7drr"; + }; + buildInputs = [ pkgs.gnome2.libgnomecanvas ]; + meta = { + license = lib.licenses.lgpl2Plus; + }; + propagatedBuildInputs = [ Gtk2 ]; + }; + + Gnome2VFS = buildPerlPackage { + pname = "Gnome2-VFS"; + version = "1.083"; + src = fetchurl { + url = "mirror://cpan/authors/id/X/XA/XAOC/Gnome2-VFS-1.083.tar.gz"; + sha256 = "eca974669df4e7f21b4fcedb96c8a328422369c68b8c2cd99b9ce9cc5d7a7979"; + }; + propagatedBuildInputs = [ pkgs.gnome2.gnome_vfs Glib ]; + meta = { + description = "Perl interface to the 2.x series of the GNOME VFS library"; + license = lib.licenses.lgpl21Plus; + }; + }; + + Gnome2Wnck = buildPerlPackage { + pname = "Gnome2-Wnck"; + version = "0.16"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TS/TSCH/Gnome2-Wnck-0.16.tar.gz"; + sha256 = "604a8ece88ac29f132d59b0caac27657ec31371c1606a4698a2160e88ac586e5"; + }; + buildInputs = [ pkgs.libwnck2 pkgs.glib pkgs.gtk2 ]; + propagatedBuildInputs = [ Gtk2 ]; + meta = { + description = "Perl interface to the Window Navigator Construction Kit"; + license = lib.licenses.lgpl21Plus; + }; + }; + + GnuPG = buildPerlPackage { + pname = "GnuPG"; + version = "0.19"; + src = fetchurl { + url = "mirror://cpan/authors/id/Y/YA/YANICK/GnuPG-0.19.tar.gz"; + sha256 = "af53f2d3f63297e046676eae14a76296afdd2910e09723b6b113708622b7989b"; + }; + buildInputs = [ pkgs.gnupg1orig ]; + doCheck = false; + }; + + GnuPGInterface = buildPerlPackage { + pname = "GnuPG-Interface"; + version = "1.00"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JE/JESSE/GnuPG-Interface-1.00.tar.gz"; + sha256 = "97e9c809491a061b2e99fb4e50c7bf74eb42e1deb11c64b081b21b4dbe6aec2f"; + }; + buildInputs = [ pkgs.which pkgs.gnupg1compat ]; + propagatedBuildInputs = [ MooXHandlesVia MooXlate ]; + doCheck = false; + meta = { + description = "Supply object methods for interacting with GnuPG"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + GoferTransporthttp = buildPerlPackage { + pname = "GoferTransport-http"; + version = "1.017"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TI/TIMB/GoferTransport-http-1.017.tar.gz"; + sha256 = "f73effe3ea7afa1907ce8977c87387abb0d4404f85a724ae2637b29a73154a9b"; + }; + propagatedBuildInputs = [ DBI LWP mod_perl2 ]; + doCheck = false; # no make target 'test' + meta = { + description = "HTTP transport for DBI stateless proxy driver DBD::Gofer"; + }; + }; + + GooCanvas = buildPerlPackage { + pname = "Goo-Canvas"; + version = "0.06"; + src = fetchurl { + url = "mirror://cpan/authors/id/Y/YE/YEWENBIN/Goo-Canvas-0.06.tar.gz"; + sha256 = "0c588c507eed5e62d12ed1cc1e491c6ff3a1f59c4fb3d435e14214b37ab39251"; + }; + propagatedBuildInputs = [ pkgs.goocanvas pkgs.gtk2 Gtk2 ]; + meta = { + description = "Perl interface to the GooCanvas"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + GooCanvas2 = buildPerlPackage { + pname = "GooCanvas2"; + version = "0.06"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PERLMAX/GooCanvas2-0.06.tar.gz"; + sha256 = "0l1vsvyv9hjxhsxrahq4h64axh7qmk50kiz2spa3s1hr7s3qfk72"; + }; + buildInputs = [ pkgs.gtk3 ]; + propagatedBuildInputs = [ pkgs.goocanvas2 Gtk3 ]; + meta = { + description = "Perl binding for GooCanvas2 widget using Glib::Object::Introspection"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + GooCanvas2CairoTypes = buildPerlPackage rec { + pname = "GooCanvas2-CairoTypes"; + version = "0.001"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AS/ASOKOLOV/GooCanvas2-CairoTypes-${version}.tar.gz"; + sha256 = "sha256-uoBnNuvMnePYFBp2Omgr3quxy4cCveKZrf1XSs6HUFI="; + }; + propagatedBuildInputs = [ pkgs.goocanvas2 Gtk3 ]; + meta = { + description = "Bridge between GooCanvas2 and Cairo types"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + GoogleProtocolBuffers = buildPerlPackage { + pname = "Google-ProtocolBuffers"; + version = "0.12"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SA/SAXJAZMAN/protobuf/Google-ProtocolBuffers-0.12.tar.gz"; + sha256 = "0wad56n12h9yhnrq1m1z3jna1ch3mg3mqj41wkfi49ws1g34k15k"; + }; + propagatedBuildInputs = [ ClassAccessor ParseRecDescent ]; + patches = + [ ../development/perl-modules/Google-ProtocolBuffers-multiline-comments.patch ]; + meta = { + description = "Simple interface to Google Protocol Buffers"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + gotofile = buildPerlPackage { + pname = "goto-file"; + version = "0.005"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/EX/EXODIST/goto-file-0.005.tar.gz"; + sha256 = "c6cdd5ee4a6cdcbdbf314d92a4f9985dbcdf9e4258048cae76125c052aa31f77"; + }; + buildInputs = [ Test2Suite ]; + meta = { + description = "Stop parsing the current file and move on to a different one"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Graph = buildPerlPackage { + pname = "Graph"; + version = "0.9722"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETJ/Graph-0.9722.tar.gz"; + sha256 = "c113633833f3a1bef8fa8eb96680be36d00e41ef404bddd7fc0bb98703e28d4d"; + }; + propagatedBuildInputs = [ HeapFibonacci SetObject ]; + meta = { + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + GraphicsColor = buildPerlPackage { + pname = "Graphics-Color"; + version = "0.31"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GP/GPHAT/Graphics-Color-0.31.tar.gz"; + sha256 = "faa8fed5b2d80e5160af976e5db2242c0b3555542ce1042575ff6b694587a33d"; + }; + buildInputs = [ TestNumberDelta ModulePluggable ]; + propagatedBuildInputs = [ ColorLibrary Moose MooseXAliases MooseXClone MooseXStorage MooseXTypes ]; + meta = { + homepage = "https://github.com/gphat/graphics-color"; + description = "Device and library agnostic color spaces"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + GraphicsTIFF = buildPerlPackage { + pname = "Graphics-TIFF"; + version = "16"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RA/RATCLIFFE/Graphics-TIFF-9.tar.gz"; + sha256 = "Kv0JTCBGnvp8+cMmDjzuqd4Qw9r+BjOo0eJC405OOdg="; + }; + buildInputs = [ pkgs.libtiff ExtUtilsDepends ExtUtilsPkgConfig ]; + propagatedBuildInputs = [ Readonly ]; + checkInputs = [ TestRequires TestDeep pkgs.hexdump ]; + meta = { + description = "Perl extension for the libtiff library"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + GraphViz = buildPerlPackage { + pname = "GraphViz"; + version = "2.24"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RS/RSAVAGE/GraphViz-2.24.tgz"; + sha256 = "1bgm4a8kan53r30qiknr4kasvhar1khf7vq064l1inzfrp2glpnr"; + }; + + # XXX: It'd be nicer it `GraphViz.pm' could record the path to graphviz. + buildInputs = [ pkgs.graphviz TestPod ]; + propagatedBuildInputs = [ FileWhich IPCRun ParseRecDescent XMLTwig XMLXPath ]; + + meta = with lib; { + description = "Perl interface to the GraphViz graphing tool"; + license = licenses.artistic2; + }; + }; + + grepmail = buildPerlPackage { + pname = "grepmail"; + version = "5.3111"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DC/DCOPPIT/grepmail-5.3111.tar.gz"; + sha256 = "d0984e3f7a1be17ae014575f70c1678151a5bcc9622185dc5a052cb63271a761"; + }; + buildInputs = [ FileHomeDir FileSlurper TestCompile UNIVERSALrequire URI ]; + propagatedBuildInputs = [ MailMboxMessageParser TimeDate ]; + outputs = [ "out" ]; + meta = { + homepage = "https://github.com/coppit/grepmail"; + description = "Search mailboxes for mail matching a regular expression"; + license = lib.licenses.gpl2; + maintainers = with maintainers; [ romildo ]; + }; + }; + + GrowlGNTP = buildPerlModule { + pname = "Growl-GNTP"; + version = "0.21"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MATTN/Growl-GNTP-0.21.tar.gz"; + sha256 = "0gq8ypam6ifp8f3s2mf5d6sw53m7h3ki1zfahh2p41kl8a77yy98"; + }; + buildInputs = [ ModuleBuildTiny ]; + propagatedBuildInputs = [ CryptCBC DataUUID ]; + }; + + GSSAPI = buildPerlPackage { + pname = "GSSAPI"; + version = "0.28"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AG/AGROLMS/GSSAPI-0.28.tar.gz"; + sha256 = "1mkhwxjjlhr58pd770i9gnf7zy7jj092iv6jfbnb8bvnc5xjr3vx"; + }; + propagatedBuildInputs = [ pkgs.krb5Full.dev ]; + meta = { + maintainers = teams.deshaw.members; + description = "Perl extension providing access to the GSSAPIv2 library"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + makeMakerFlags = "--gssapiimpl ${pkgs.krb5Full.dev}"; + }; + + Gtk2 = buildPerlPackage { + pname = "Gtk2"; + version = "1.24993"; + src = fetchurl { + url = "mirror://cpan/authors/id/X/XA/XAOC/Gtk2-1.24993.tar.gz"; + sha256 = "0ry9jfvfgdwzalxcvwsgr7plhk3agx7p40l0fqdf3vrf7ds47i29"; + }; + buildInputs = [ pkgs.gtk2 ]; + # https://rt.cpan.org/Public/Bug/Display.html?id=130742 + # doCheck = !stdenv.isDarwin; + doCheck = false; + meta = { + homepage = "http://gtk2-perl.sourceforge.net/"; + description = "Perl interface to the 2.x series of the Gimp Toolkit library"; + license = lib.licenses.lgpl21Plus; + }; + propagatedBuildInputs = [ Pango ]; + }; + + Gtk2TrayIcon = buildPerlPackage { + pname = "Gtk2-TrayIcon"; + version = "0.06"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BO/BORUP/Gtk2-TrayIcon-0.06.tar.gz"; + sha256 = "cbb7632b75d7f41554dfe8ee9063dbfd1d8522291077c65d0d82e9ceb5e94ae2"; + }; + propagatedBuildInputs = [ pkgs.gtk2 Gtk2 ]; + meta = { + license = lib.licenses.gpl2; + broken = stdenv.isDarwin; # never built on Hydra https://hydra.nixos.org/job/nixpkgs/staging-next/perl534Packages.Gtk2TrayIcon.x86_64-darwin + }; + }; + + Gtk2AppIndicator = buildPerlPackage { + pname = "Gtk2-AppIndicator"; + version = "0.15"; + src = fetchurl { + url = "mirror://cpan/authors/id/O/OE/OESTERHOL/Gtk2-AppIndicator-0.15.tar.gz"; + sha256 = "a25cb071e214fb89b4450aa4605031eae89b7961e149b0d6e8f491c19c14a90a"; + }; + propagatedBuildInputs = [ pkgs.libappindicator-gtk2 pkgs.libdbusmenu-gtk2 pkgs.gtk2 pkgs.pkg-config Gtk2 ]; + # Tests fail due to no display: + # Gtk-WARNING **: cannot open display: at /nix/store/HASH-perl-Gtk2-1.2498/lib/perl5/site_perl/5.22.2/x86_64-linux-thread-multi/Gtk2.pm line 126. + doCheck = false; + meta = { + description = "Perl extension for libappindicator"; + license = lib.licenses.artistic1; + }; + }; + + Gtk2ImageView = buildPerlPackage { + pname = "Gtk2-ImageView"; + version = "0.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RA/RATCLIFFE/Gtk2-ImageView-0.05.tar.gz"; + sha256 = "087186c3693acf196451cf59cc8b7f5cf9a7b05abe20d32dcbcba0822953fb80"; + }; + buildInputs = [ pkgs.gtkimageview pkgs.gtk2 ]; + propagatedBuildInputs = [ Gtk2 ]; + # Tests fail due to no display server: + # Gtk-WARNING **: cannot open display: at /nix/store/HASH-perl-Gtk2-1.2498/lib/perl5/site_perl/5.22.2/x86_64-linux-thread-multi/Gtk2.pm line 126. + # t/animview.t ........... + doCheck = false; + meta = { + description = "Perl bindings for the GtkImageView widget"; + license = lib.licenses.free; + }; + }; + + Gtk2Unique = buildPerlPackage { + pname = "Gtk2-Unique"; + version = "0.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PO/POTYL/Gtk2-Unique-0.05.tar.gz"; + sha256 = "ae8dfb0f6844ddaa2ce7b5b44553419490c8e83c24fd35c431406a58f6be0f4f"; + }; + propagatedBuildInputs = [ pkgs.libunique pkgs.gtk2 Gtk2 ]; + meta = { + description = "Use single instance applications"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + broken = stdenv.isDarwin; # never built on Hydra https://hydra.nixos.org/job/nixpkgs/staging-next/perl534Packages.Gtk2Unique.x86_64-darwin + }; + }; + + Gtk3 = buildPerlPackage { + pname = "Gtk3"; + version = "0.037"; + src = fetchurl { + url = "mirror://cpan/authors/id/X/XA/XAOC/Gtk3-0.037.tar.gz"; + sha256 = "0l9zis8l9jall1m48mgd5g4f85lsz4hcp22spal8r9wlf9af2nmz"; + }; + propagatedBuildInputs = [ pkgs.gtk3 CairoGObject GlibObjectIntrospection ]; + meta = { + description = "Perl interface to the 3.x series of the GTK toolkit"; + license = lib.licenses.lgpl21Plus; + }; + }; + + Gtk3ImageView = buildPerlPackage rec { + pname = "Gtk3-ImageView"; + version = "10"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AS/ASOKOLOV/Gtk3-ImageView-${version}.tar.gz"; + sha256 = "sha256-vHfnBgaeZPK7hBgZcP1KjepG+IvsDE3XwrH9U4xoN+Y="; + }; + buildInputs = [ pkgs.gtk3 ]; + propagatedBuildInputs = [ Readonly Gtk3 ]; + checkInputs = [ TestDifferences TestDeep ImageMagick TryTiny TestMockObject CarpAlways pkgs.librsvg ]; + checkPhase = '' + ${pkgs.xvfb-run}/bin/xvfb-run -s '-screen 0 800x600x24' \ + make test + ''; + meta = { + description = "Image viewer widget for Gtk3"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Gtk3SimpleList = buildPerlPackage { + pname = "Gtk3-SimpleList"; + version = "0.21"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TV/TVIGNAUD/Gtk3-SimpleList-0.21.tar.gz"; + sha256 = "1158mnr2ldq02098hqbkwfv64d83zl3a8scll9s09g7k1c86ai0x"; + }; + meta = { + description = "A simple interface to Gtk3's complex MVC list widget"; + license = lib.licenses.lgpl21Plus; + }; + propagatedBuildInputs = [ Gtk3 ]; + }; + + Guard = buildPerlPackage { + pname = "Guard"; + version = "1.023"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/ML/MLEHMANN/Guard-1.023.tar.gz"; + sha256 = "34c4ddf91fc93d1090d86da14df706d175b1610c67372c01e12ce9555d4dd1dc"; + }; + }; + + HamAPRSFAP = buildPerlPackage { + pname = "Ham-APRS-FAP"; + version = "1.21"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HE/HESSU/Ham-APRS-FAP-1.21.tar.gz"; + sha256 = "e01b455d46f44710dbcf21b6fa843f09358ce60eee1c4141bc74e0a204d3a020"; + }; + propagatedBuildInputs = [ DateCalc ]; + meta = with lib; { + description = "Finnish APRS Parser (Fabulous APRS Parser)"; + maintainers = with maintainers; [ andrew-d ]; + license = with licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Hailo = buildPerlPackage { + pname = "Hailo"; + version = "0.75"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AV/AVAR/Hailo-0.75.tar.gz"; + sha256 = "bba99cb0cfa3ee8632dd89906c6e6fa05fe6bb367f2282e88909cefd8f9174c2"; + }; + buildInputs = [ BotTrainingMegaHAL BotTrainingStarCraft DataSection FileSlurp PodSection TestException TestExpect TestOutput TestScript TestScriptRun ]; + propagatedBuildInputs = [ ClassLoad DBDSQLite DataDump DirSelf FileCountLines GetoptLongDescriptive IOInteractive IPCSystemSimple ListMoreUtils Moose MooseXGetopt MooseXStrictConstructor MooseXTypes RegexpCommon TermSk namespaceclean ]; + nativeBuildInputs = lib.optional stdenv.isDarwin shortenPerlShebang; + postPatch = '' + patchShebangs bin + ''; + postInstall = lib.optionalString stdenv.isDarwin '' + shortenPerlShebang $out/bin/hailo + ''; + meta = { + homepage = "https://github.com/hailo/hailo"; + description = "A pluggable Markov engine analogous to MegaHAL"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + HashDiff = buildPerlPackage { + pname = "Hash-Diff"; + version = "0.010"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BO/BOLAV/Hash-Diff-0.010.tar.gz"; + sha256 = "1ig0l859gq00k0r9l85274r2lbvwl7wsndcy52c0m3y9isilm6mw"; + }; + propagatedBuildInputs = [ HashMerge ]; + + meta = { + license = with lib.licenses; [ artistic1 ]; + description = "Return difference between two hashes as a hash"; + }; + buildInputs = [ TestSimple13 ]; + }; + + ham = callPackage ../development/perl-modules/ham { }; + + HashFlatten = buildPerlPackage { + pname = "Hash-Flatten"; + version = "1.19"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BB/BBC/Hash-Flatten-1.19.tar.gz"; + sha256 = "162b9qgkr19f97w4pic6igyk3zd0sbnrhl3s8530fikciffw9ikh"; + }; + buildInputs = [ TestAssertions ]; + propagatedBuildInputs = [ LogTrace ]; + }; + + HashMerge = buildPerlPackage { + pname = "Hash-Merge"; + version = "0.302"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HE/HERMES/Hash-Merge-0.302.tar.gz"; + sha256 = "0i46agids6pk445gfck80f8z7q3pjvkp0ip1vmhqnq1rcpvj41df"; + }; + propagatedBuildInputs = [ CloneChoose ]; + meta = { + description = "Merges arbitrarily deep hashes into a single hash"; + }; + buildInputs = [ Clone ClonePP ]; + }; + + HashMergeSimple = buildPerlPackage { + pname = "Hash-Merge-Simple"; + version = "0.051"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RO/ROKR/Hash-Merge-Simple-0.051.tar.gz"; + sha256 = "1c56327873d2f04d5722777f044863d968910466997740d55a754071c6287b73"; + }; + buildInputs = [ TestDeep TestDifferences TestException TestMost TestWarn ]; + propagatedBuildInputs = [ Clone ]; + meta = { + description = "Recursively merge two or more hashes, simply"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + HashMoreUtils = buildPerlPackage { + pname = "Hash-MoreUtils"; + version = "0.06"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RE/REHSACK/Hash-MoreUtils-0.06.tar.gz"; + sha256 = "db9a8fb867d50753c380889a5e54075651b5e08c9b3b721cb7220c0883547de8"; + }; + meta = { + description = "Provide the stuff missing in Hash::Util"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + HashMultiValue = buildPerlPackage { + pname = "Hash-MultiValue"; + version = "0.16"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AR/ARISTOTLE/Hash-MultiValue-0.16.tar.gz"; + sha256 = "1x3k7h542xnigz0b8vsfiq580p5r325wi5b8mxppiqk8mbvis636"; + }; + meta = { + description = "Store multiple values per key"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + HashSharedMem = buildPerlModule { + pname = "Hash-SharedMem"; + version = "0.005"; + src = fetchurl { + url = "mirror://cpan/authors/id/Z/ZE/ZEFRAM/Hash-SharedMem-0.005.tar.gz"; + sha256 = "324776808602f7bdc44adaa937895365454029a926fa611f321c9bf6b940bb5e"; + }; + buildInputs = [ ScalarString ]; + meta = { + description = "Efficient shared mutable hash"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + broken = stdenv.isDarwin; # never built on Hydra https://hydra.nixos.org/job/nixpkgs/staging-next/perl534Packages.HashSharedMem.x86_64-darwin + }; + }; + + HashStoredIterator = buildPerlModule { + pname = "Hash-StoredIterator"; + version = "0.008"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MS/MSCHWERN/Hash-StoredIterator-0.008.tar.gz"; + sha256 = "b9cbc4dcd8233e8d1d7f1481ddb79a4a5f9db7180cb3ef02b4bcbee05e65ea0c"; + }; + buildInputs = [ Test2Suite ]; + perlPreHook = lib.optionalString stdenv.isDarwin "export LD=$CC"; + meta = { + description = "Functions for accessing a hashes internal iterator"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + HashUtilFieldHashCompat = buildPerlPackage { + pname = "Hash-Util-FieldHash-Compat"; + version = "0.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Hash-Util-FieldHash-Compat-0.11.tar.gz"; + sha256 = "06vlygjyk7rkkw0di3252mma141w801qn3xk40aa2yskbfklcbk4"; + }; + }; + + HeapFibonacci = buildPerlPackage { + pname = "Heap"; + version = "0.80"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JM/JMM/Heap-0.80.tar.gz"; + sha256 = "1plv2djbyhvkdcw2ic54rdqb745cwksxckgzvw7ssxiir7rjknnc"; + }; + }; + + HookLexWrap = buildPerlPackage { + pname = "Hook-LexWrap"; + version = "0.26"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Hook-LexWrap-0.26.tar.gz"; + sha256 = "b60bdc5f98f94f9294b06adef82b1d996da192d5f183f9f434b610fd1137ec2d"; + }; + buildInputs = [ pkgs.unzip ]; + meta = { + homepage = "https://github.com/chorny/Hook-LexWrap"; + description = "Lexically scoped subroutine wrappers"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + HTMLClean = buildPerlPackage { + pname = "HTML-Clean"; + version = "1.4"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AZ/AZJADFTRE/HTML-Clean-1.4.tar.gz"; + sha256 = "01l7g2hr0kjbh1wk7cv03ijmpjlbm1vm661m99mkrz2ilyyllzd6"; + }; + meta = { + description = "Cleans up HTML code for web browsers, not humans"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + HTMLElementExtended = buildPerlPackage { + pname = "HTML-Element-Extended"; + version = "1.18"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MS/MSISK/HTML-Element-Extended-1.18.tar.gz"; + sha256 = "f3ef1af108f27fef15ebec66479f251ce08aa49bd00b0462c9c80c86b4b6b32b"; + }; + propagatedBuildInputs = [ HTMLTree ]; + }; + + HTMLEscape = buildPerlModule { + pname = "HTML-Escape"; + version = "1.10"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TOKUHIROM/HTML-Escape-1.10.tar.gz"; + sha256 = "b1cbac4157ad8dedac6914e1628855e05b8dc885a4007d2e4df8177c6a9b70fb"; + }; + buildInputs = [ ModuleBuildPluggablePPPort TestRequires ]; + perlPreHook = lib.optionalString stdenv.isi686 "export LD=$CC"; # fix undefined reference to `__stack_chk_fail_local' + meta = { + homepage = "https://github.com/tokuhirom/HTML-Escape"; + description = "Extremely fast HTML escaping"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + broken = stdenv.isDarwin; # never built on Hydra https://hydra.nixos.org/job/nixpkgs/staging-next/perl534Packages.HTMLEscape.x86_64-darwin + }; + }; + + HTMLFromANSI = buildPerlPackage { + pname = "HTML-FromANSI"; + version = "2.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NU/NUFFIN/HTML-FromANSI-2.03.tar.gz"; + sha256 = "21776345ed701b2c04c7b09380af943f9984cc7f99624087aea45db5fc09c359"; + }; + propagatedBuildInputs = [ HTMLParser TermVT102Boundless ]; + meta = { + }; + }; + + HTMLForm = buildPerlPackage { + pname = "HTML-Form"; + version = "6.07"; + src = fetchurl { + url = "mirror://cpan/authors/id/O/OA/OALDERS/HTML-Form-6.07.tar.gz"; + sha256 = "09v29cdzwjm139c67y1np3kvx2ymg3s8n723qc0ma07lmxz8rakx"; + }; + propagatedBuildInputs = [ HTMLParser ]; + meta = { + description = "Class that represents an HTML form element"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + HTMLFormatter = buildPerlPackage { + pname = "HTML-Formatter"; + version = "2.16"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NI/NIGELM/HTML-Formatter-2.16.tar.gz"; + sha256 = "cb0a0dd8aa5e8ba9ca214ce451bf4df33aa09c13e907e8d3082ddafeb30151cc"; + }; + buildInputs = [ FileSlurper TestWarnings ]; + propagatedBuildInputs = [ FontAFM HTMLTree ]; + meta = { + description = "Base class for HTML formatters"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + HTMLFormatExternal = buildPerlPackage { + pname = "HTML-FormatExternal"; + version = "26"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KR/KRYDE/HTML-FormatExternal-26.tar.gz"; + sha256 = "3c59f233d0b10686a85aed0c994011cec68626da0128dea90b5c4fdc1746cfc3"; + }; + propagatedBuildInputs = [ IPCRun URI constant-defer ]; + meta = { + homepage = "http://user42.tuxfamily.org/html-formatexternal/index.html"; + description = "HTML to text formatting using external programs"; + license = lib.licenses.gpl3Plus; + }; + }; + + HTMLFormatTextWithLinks = buildPerlModule { + pname = "HTML-FormatText-WithLinks"; + version = "0.15"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/ST/STRUAN/HTML-FormatText-WithLinks-0.15.tar.gz"; + sha256 = "7fcc1ab79eb58fb97d43e5bdd14e21791a250a204998918c62d6a171131833b1"; + }; + propagatedBuildInputs = [ HTMLFormatter ]; + meta = { + description = "HTML to text conversion with links as footnotes"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + HTMLFormatTextWithLinksAndTables = buildPerlPackage { + pname = "HTML-FormatText-WithLinks-AndTables"; + version = "0.07"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DALEEVANS/HTML-FormatText-WithLinks-AndTables-0.07.tar.gz"; + sha256 = "809ee2f11705706b33c54312b5c7bee674838f2beaaedaf8cb945e702aae39b6"; + }; + propagatedBuildInputs = [ HTMLFormatTextWithLinks ]; + meta = { + description = "Converts HTML to Text with tables intact"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + HTMLFormFu = buildPerlPackage { + pname = "HTML-FormFu"; + version = "2.07"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CF/CFRANKS/HTML-FormFu-2.07.tar.gz"; + sha256 = "0cpbcrip95rvihc7i8dywca6lx9ws67ch1hjx6vgnm47g9zh2bsg"; + }; + buildInputs = [ CGI FileShareDirInstall RegexpAssemble TestException TestMemoryCycle TestRequiresInternet ]; + propagatedBuildInputs = [ ConfigAny DataVisitor DateTimeFormatBuilder DateTimeFormatNatural EmailValid HTMLScrubber HTMLTokeParserSimple HashFlatten JSONMaybeXS MooseXAliases MooseXAttributeChained NumberFormat PathClass Readonly RegexpCommon TaskWeaken YAMLLibYAML ]; + meta = { + description = "HTML Form Creation, Rendering and Validation Framework"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + HTMLFormFuMultiForm = buildPerlPackage { + pname = "HTML-FormFu-MultiForm"; + version = "1.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NI/NIGELM/HTML-FormFu-MultiForm-1.03.tar.gz"; + sha256 = "17qm94hwhn6jyhd2am4gqxq7yrlhv3jv0ayx17df95mqdgbhrw1n"; + }; + propagatedBuildInputs = [ CryptCBC CryptDES HTMLFormFu ]; + meta = { + description = "Handle multi-page/stage forms with FormFu"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/FormFu/HTML-FormFu-MultiForm"; + }; + }; + + HTMLFormHandler = buildPerlPackage { + pname = "HTML-FormHandler"; + version = "0.40068"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GS/GSHANK/HTML-FormHandler-0.40068.tar.gz"; + sha256 = "09z8rpb3avdd8984rm6j6gd2igbzjz9rc0ycig654mqjlgfphyzb"; + }; + # a single test is failing on perl 5.20 + doCheck = false; + buildInputs = [ FileShareDirInstall PadWalker TestDifferences TestException TestMemoryCycle TestWarn ]; + propagatedBuildInputs = [ CryptBlowfish CryptCBC DataClone DateTimeFormatStrptime EmailValid HTMLTree JSONMaybeXS MooseXGetopt MooseXTypesCommon MooseXTypesLoadableClass aliased ]; + meta = { + description = "HTML forms using Moose"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + HTMLGumbo = buildPerlModule { + pname = "HTML-Gumbo"; + version = "0.18"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RU/RUZ/HTML-Gumbo-0.18.tar.gz"; + sha256 = "bf50b61c24656cc3fc958602d80a9c7d017247af38d8dbfa0e9dec5b75425d5f"; + }; + propagatedBuildInputs = [ AlienLibGumbo ]; + meta = { + description = "HTML5 parser based on gumbo C library"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + HTMLMason = buildPerlPackage { + pname = "HTML-Mason"; + version = "1.59"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DR/DROLSKY/HTML-Mason-1.59.tar.gz"; + sha256 = "95bed2a6c488370046aa314be4b592bd65a6522f8845da8b36a6aff9a8b439d0"; + }; + buildInputs = [ TestDeep ]; + propagatedBuildInputs = [ CGI CacheCache ClassContainer ExceptionClass LogAny ]; + meta = { + description = "High-performance, dynamic web site authoring system"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + HTMLMasonPSGIHandler = buildPerlPackage { + pname = "HTML-Mason-PSGIHandler"; + version = "0.53"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RU/RUZ/HTML-Mason-PSGIHandler-0.53.tar.gz"; + sha256 = "eafd7c7655dfa8261df3446b931a283d30306877b83ac4671c49cff74ea7f00b"; + }; + buildInputs = [ Plack ]; + propagatedBuildInputs = [ CGIPSGI HTMLMason ]; + meta = { + description = "PSGI handler for HTML::Mason"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + HTMLParser = buildPerlPackage { + pname = "HTML-Parser"; + version = "3.75"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CA/CAPOEIRAB/HTML-Parser-3.75.tar.gz"; + sha256 = "1ack2799azfciyiw3vccq126gaxrbz2927i0hm4gaynzm0jmwsxc"; + }; + propagatedBuildInputs = [ HTMLTagset HTTPMessage ]; + meta = { + description = "HTML parser class"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + HTMLTagCloud = buildPerlModule { + pname = "HTML-TagCloud"; + version = "0.38"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RO/ROBERTSD/HTML-TagCloud-0.38.tar.gz"; + sha256 = "05bhnrwwlwd6cj3cn91zw5r99xddvy142bznid26p1pg5m3rk029"; + }; + meta = { + description = "Generate An HTML Tag Cloud"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + HTMLQuoted = buildPerlPackage { + pname = "HTML-Quoted"; + version = "0.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TS/TSIBLEY/HTML-Quoted-0.04.tar.gz"; + sha256 = "8b41f313fdc1812f02f6f6c37d58f212c84fdcf7827f7fd4b030907f39dc650c"; + }; + propagatedBuildInputs = [ HTMLParser ]; + meta = { + description = "Extract structure of quoted HTML mail message"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + HTMLRewriteAttributes = buildPerlPackage { + pname = "HTML-RewriteAttributes"; + version = "0.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TS/TSIBLEY/HTML-RewriteAttributes-0.05.tar.gz"; + sha256 = "1808ec7cdf40d2708575fe6155a88f103b17fec77973a5831c2f24c250e7a58c"; + }; + propagatedBuildInputs = [ HTMLParser ]; + meta = { + description = "Concise attribute rewriting"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + HTMLSelectorXPath = buildPerlPackage { + pname = "HTML-Selector-XPath"; + version = "0.25"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CO/CORION/HTML-Selector-XPath-0.25.tar.gz"; + sha256 = "1qbad8ayffpx7wj76ip05p6rh9p1lkir6qknpl76zy679ghlsp8s"; + }; + buildInputs = [ TestBase ]; + }; + + HTMLScrubber = buildPerlPackage { + pname = "HTML-Scrubber"; + version = "0.19"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NI/NIGELM/HTML-Scrubber-0.19.tar.gz"; + sha256 = "1c9b4r9x96a8fbz2zy52fxgq7djp9dq38hiyqra92psnz1w5aa5f"; + }; + propagatedBuildInputs = [ HTMLParser ]; + buildInputs = [ TestDifferences TestMemoryCycle ]; + }; + + HTMLStripScripts = buildPerlPackage { + pname = "HTML-StripScripts"; + version = "1.06"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DR/DRTECH/HTML-StripScripts-1.06.tar.gz"; + sha256 = "222bfb7ec1fdfa465e32da3dc4abed2edc7364bbe19e8e3c513c7d585b0109ad"; + }; + meta = { + description = "Strip scripting constructs out of HTML"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + HTMLStripScriptsParser = buildPerlPackage { + pname = "HTML-StripScripts-Parser"; + version = "1.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DR/DRTECH/HTML-StripScripts-Parser-1.03.tar.gz"; + sha256 = "478c1a4e46eb77fa7bce96ba288168f0b98c27f250e00dc6312365081aed3407"; + }; + propagatedBuildInputs = [ HTMLParser HTMLStripScripts ]; + meta = { + description = "XSS filter using HTML::Parser"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + HTMLTableExtract = buildPerlPackage { + pname = "HTML-TableExtract"; + version = "2.15"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MS/MSISK/HTML-TableExtract-2.15.tar.gz"; + sha256 = "1kry9igbcjyiwpwivq5in41dmx02zfhgaqjyv9sa2g6sb2frric6"; + }; + preCheck = '' + # https://rt.cpan.org/Public/Bug/Display.html?id=121920 + rm t/30_tree.t + ''; + propagatedBuildInputs = [ HTMLElementExtended ]; + }; + + HTMLTagset = buildPerlPackage { + pname = "HTML-Tagset"; + version = "3.20"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PETDANCE/HTML-Tagset-3.20.tar.gz"; + sha256 = "1qh8249wgr4v9vgghq77zh1d2zs176bir223a8gh3k9nksn7vcdd"; + }; + }; + + HTMLTemplate = buildPerlPackage { + pname = "HTML-Template"; + version = "2.97"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SA/SAMTREGAR/HTML-Template-2.97.tar.gz"; + sha256 = "17qjw8swj2q4b1ic285pndgrkmvpsqw0j68nhqzpk1daydhsyiv5"; + }; + propagatedBuildInputs = [ CGI ]; + buildInputs = [ TestPod ]; + }; + + HTMLTidy = buildPerlPackage { + pname = "HTML-Tidy"; + version = "1.60"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PETDANCE/HTML-Tidy-1.60.tar.gz"; + sha256 = "1iyp2fd6j75cn1xvcwl2lxr8qpjxssy2360cyqn6g3kzd1fzdyxw"; + }; + + patchPhase = '' + sed -i "s#/usr/include/tidyp#${pkgs.tidyp}/include/tidyp#" Makefile.PL + sed -i "s#/usr/lib#${pkgs.tidyp}/lib#" Makefile.PL + ''; + buildInputs = [ TestException ]; + }; + + HTMLTiny = buildPerlPackage { + pname = "HTML-Tiny"; + version = "1.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AN/ANDYA/HTML-Tiny-1.05.tar.gz"; + sha256 = "d7cdc9d5985e2e44ceba10b756acf1e0d3a1b3ee3b516e5b54adb850fe79fda3"; + }; + meta = { + description = "Lightweight, dependency free HTML/XML generation"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + HTMLTokeParserSimple = buildPerlModule { + pname = "HTML-TokeParser-Simple"; + version = "3.16"; + src = fetchurl { + url = "mirror://cpan/authors/id/O/OV/OVID/HTML-TokeParser-Simple-3.16.tar.gz"; + sha256 = "17aa1v62sp8ycxcicwhankmj4brs6nnfclk9z7mf1rird1f164gd"; + }; + propagatedBuildInputs = [ HTMLParser SubOverride ]; + }; + + HTMLTree = buildPerlModule { + pname = "HTML-Tree"; + version = "5.07"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KE/KENTNL/HTML-Tree-5.07.tar.gz"; + sha256 = "1gyvm4qlwm9y6hczkpnrdfl303ggbybr0nqxdjw09hii8yw4sdzh"; + }; + buildInputs = [ TestFatal ]; + propagatedBuildInputs = [ HTMLParser ]; + meta = { + description = "Work with HTML in a DOM-like tree structure"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + HTMLTreeBuilderXPath = buildPerlPackage { + pname = "HTML-TreeBuilder-XPath"; + version = "0.14"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIROD/HTML-TreeBuilder-XPath-0.14.tar.gz"; + sha256 = "1wx4i1scng20n405fp3a4vrwvvq9bvbmg977wnd5j2ja8jrbvsr5"; + }; + propagatedBuildInputs = [ HTMLTree XMLXPathEngine ]; + meta = { + description = "Add XPath support to HTML::TreeBuilder"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + HTMLWidget = buildPerlPackage { + pname = "HTML-Widget"; + version = "1.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CF/CFRANKS/HTML-Widget-1.11.tar.gz"; + sha256 = "02w21rd30cza094m5xs9clzw8ayigbhg2ddzl6jycp4jam0dyhmy"; + }; + doCheck = false; + propagatedBuildInputs = [ ClassAccessorChained ClassDataAccessor DateCalc EmailValid HTMLScrubber HTMLTree ModulePluggableFast ]; + buildInputs = [ TestNoWarnings ]; + }; + + HTTPAcceptLanguage = buildPerlModule { + pname = "HTTP-AcceptLanguage"; + version = "0.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/Y/YA/YAPPO/HTTP-AcceptLanguage-0.02.tar.gz"; + sha256 = "1bs29r72ibp0kmr3l1ypzszflpcw7z4yxxcgaijspsy99rb5yq1f"; + }; + buildInputs = [ ModuleBuildTiny ]; + meta = { + homepage = "https://github.com/yappo/p5-HTTP-AcceptLanguage"; + description = "Accept-Language header parser and find available language"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + HTTPBody = buildPerlPackage { + pname = "HTTP-Body"; + version = "1.22"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GE/GETTY/HTTP-Body-1.22.tar.gz"; + sha256 = "fc0d2c585b3bd1532d92609965d589e0c87cd380e7cca42fb9ad0a1311227297"; + }; + buildInputs = [ TestDeep ]; + propagatedBuildInputs = [ HTTPMessage ]; + meta = { + description = "HTTP Body Parser"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + HTTPCookieJar = buildPerlPackage { + pname = "HTTP-CookieJar"; + version = "0.010"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DAGOLDEN/HTTP-CookieJar-0.010.tar.gz"; + sha256 = "1l7mqsca4fmls7agzwmp6yq1x16y9jwq4114i6i75n654gl37qsn"; + }; + propagatedBuildInputs = [ HTTPDate ]; + buildInputs = [ TestDeep TestRequires URI ]; + meta = { + description = "A minimalist HTTP user agent cookie jar"; + license = with lib.licenses; [ asl20 ]; + homepage = "https://github.com/dagolden/HTTP-CookieJar"; + }; + }; + + HTTPCookies = buildPerlPackage { + pname = "HTTP-Cookies"; + version = "6.09"; + src = fetchurl { + url = "mirror://cpan/authors/id/O/OA/OALDERS/HTTP-Cookies-6.09.tar.gz"; + sha256 = "1q0z3n3bl5lg5z0bhvk3zgmw536cri7c3vwhrjcqbdx5z9x02gwh"; + }; + propagatedBuildInputs = [ HTTPMessage ]; + meta = { + description = "HTTP cookie jars"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + HTTPDaemon = buildPerlPackage rec { + pname = "HTTP-Daemon"; + version = "6.01"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GA/GAAS/HTTP-Daemon-6.01.tar.gz"; + sha256 = "1hmd2isrkilf0q0nkxms1q64kikjmcw9imbvrjgky6kh89vqdza3"; + }; + propagatedBuildInputs = [ HTTPMessage ]; + checkInputs = [ TestNeeds ]; + meta = { + description = "A simple http server class"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + HTTPDate = buildPerlPackage { + pname = "HTTP-Date"; + version = "6.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/O/OA/OALDERS/HTTP-Date-6.05.tar.gz"; + sha256 = "0awjdbz7x0jd5pna55dwxhs3k6xp3sw6b2zg3p2yndxxvya64p9n"; + }; + meta = { + description = "Date conversion routines"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + propagatedBuildInputs = [ TimeDate ]; + }; + + HTTPEntityParser = buildPerlModule { + pname = "HTTP-Entity-Parser"; + version = "0.25"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KA/KAZEBURO/HTTP-Entity-Parser-0.25.tar.gz"; + sha256 = "0fpchgj6jgxmjkmljjnrpmyj9anz85rjvs2fq3c7rld3rgcd131s"; + }; + propagatedBuildInputs = [ HTTPMultiPartParser HashMultiValue JSONMaybeXS StreamBuffered WWWFormUrlEncoded ]; + buildInputs = [ HTTPMessage ModuleBuildTiny ]; + meta = { + description = "PSGI compliant HTTP Entity Parser"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/kazeburo/HTTP-Entity-Parser"; + }; + }; + + HTTPDAV = buildPerlPackage { + pname = "HTTP-DAV"; + version = "0.49"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CO/COSIMO/HTTP-DAV-0.49.tar.gz"; + sha256 = "0z4mgb8mc6l5nfsm3ihndjqgpk43q39x1kq9hryy6v8hxkwrscrk"; + }; + meta = { + description = "WebDAV client library."; + }; + propagatedBuildInputs = [ XMLDOM ]; + }; + + HTTPHeadersActionPack = buildPerlPackage { + pname = "HTTP-Headers-ActionPack"; + version = "0.09"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DR/DROLSKY/HTTP-Headers-ActionPack-0.09.tar.gz"; + sha256 = "c78111ab857e48c69824903d4b6ce8293feffc6b5d670db550a767f853acc7da"; + }; + buildInputs = [ TestFatal TestWarnings ]; + propagatedBuildInputs = [ HTTPDate HTTPMessage ModuleRuntime SubExporter URI ]; + meta = { + description = "HTTP Action, Adventure and Excitement"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + HTTPHeaderParserXS = buildPerlPackage { + pname = "HTTP-HeaderParser-XS"; + version = "0.20"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MARKSMITH/HTTP-HeaderParser-XS-0.20.tar.gz"; + sha256 = "1vs6sw431nnlnbdy6jii9vqlz30ndlfwdpdgm8a1m6fqngzhzq59"; + }; + meta.broken = + stdenv.isi686 # loadable library and perl binaries are mismatched (got handshake key 0x7d40080, needed 0x7dc0080) + || stdenv.isDarwin; # never built on Hydra https://hydra.nixos.org/job/nixpkgs/staging-next/perl534Packages.HTTPHeaderParserXS.x86_64-darwin + }; + + HTTPHeadersFast = buildPerlModule { + pname = "HTTP-Headers-Fast"; + version = "0.22"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TOKUHIROM/HTTP-Headers-Fast-0.22.tar.gz"; + sha256 = "cc431db68496dd884db4bc0c0b7112c1f4a4f1dc68c4f5a3caa757a1e7481b48"; + }; + buildInputs = [ ModuleBuildTiny TestRequires ]; + propagatedBuildInputs = [ HTTPDate ]; + meta = { + homepage = "https://github.com/tokuhirom/HTTP-Headers-Fast"; + description = "Faster implementation of HTTP::Headers"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + HTTPLite = buildPerlPackage { + pname = "HTTP-Lite"; + version = "2.44"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NE/NEILB/HTTP-Lite-2.44.tar.gz"; + sha256 = "0z77nflj8zdcfg70kc93glq5kmd6qxn2nf7h70x4xhfg25wkvr1q"; + }; + buildInputs = [ CGI ]; + }; + + HTTPMessage = buildPerlPackage { + pname = "HTTP-Message"; + version = "6.26"; + src = fetchurl { + url = "mirror://cpan/authors/id/O/OA/OALDERS/HTTP-Message-6.26.tar.gz"; + sha256 = "1q952w7r1yj4s2v2cly5zzir7v45nj4h2fbad63bphvmvrcw7rkc"; + }; + buildInputs = [ TryTiny ]; + propagatedBuildInputs = [ EncodeLocale HTTPDate IOHTML LWPMediaTypes URI ]; + meta = { + homepage = "https://github.com/libwww-perl/HTTP-Message"; + description = "HTTP style message (base class)"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + HTTPMultiPartParser = buildPerlPackage { + pname = "HTTP-MultiPartParser"; + version = "0.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CH/CHANSEN/HTTP-MultiPartParser-0.02.tar.gz"; + sha256 = "04hbs0b1lzv2c8dqfcc9qjm5akh25fn40903is36zlalkwaxmpay"; + }; + buildInputs = [ TestDeep ]; + meta = { + description = "HTTP MultiPart Parser"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + HTTPNegotiate = buildPerlPackage { + pname = "HTTP-Negotiate"; + version = "6.01"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GA/GAAS/HTTP-Negotiate-6.01.tar.gz"; + sha256 = "05p053vjs5g91v5cmjnny7a3xzddz5k7vnjw81wfh01ilqg9qwhw"; + }; + propagatedBuildInputs = [ HTTPMessage ]; + meta = { + description = "Choose a variant to serve"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + HTTPParserXS = buildPerlPackage { + pname = "HTTP-Parser-XS"; + version = "0.17"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KA/KAZUHO/HTTP-Parser-XS-0.17.tar.gz"; + sha256 = "02d84xq1mm53c7jl33qyb7v5w4372vydp74z6qj0vc96wcrnhkkr"; + }; + }; + + HTTPProxy = buildPerlPackage { + pname = "HTTP-Proxy"; + version = "0.304"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BO/BOOK/HTTP-Proxy-0.304.tar.gz"; + sha256 = "b05290534ec73625c21a0565fc35170890dab163843d95331c292c23f504c69d"; + }; + propagatedBuildInputs = [ LWP ]; + meta = { + description = "A pure Perl HTTP proxy"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + # tests fail because they require network access + doCheck = false; + }; + + HTTPRequestAsCGI = buildPerlPackage { + pname = "HTTP-Request-AsCGI"; + version = "1.2"; + src = fetchurl { + url = "mirror://cpan/authors/id/F/FL/FLORA/HTTP-Request-AsCGI-1.2.tar.gz"; + sha256 = "1smwmiarwcgq7vjdblnb6ldi2x1s5sk5p15p7xvm5byiqq3znnwl"; + }; + propagatedBuildInputs = [ ClassAccessor HTTPMessage ]; + }; + + HTTPResponseEncoding = buildPerlPackage { + pname = "HTTP-Response-Encoding"; + version = "0.06"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DANKOGAI/HTTP-Response-Encoding-0.06.tar.gz"; + sha256 = "1am8lis8107s5npca1xgazdy5sknknzcqyhdmc220s4a4f77n5hh"; + }; + propagatedBuildInputs = [ HTTPMessage ]; + meta = { + description = "Adds encoding() to HTTP::Response"; + }; + buildInputs = [ LWP ]; + }; + + HTTPServerSimple = buildPerlPackage { + pname = "HTTP-Server-Simple"; + version = "0.52"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BP/BPS/HTTP-Server-Simple-0.52.tar.gz"; + sha256 = "0k6bg7k6mjixfzxdkkdrhqvaqmdhjszx0zsk8g0bimiby6j9z4yq"; + }; + doCheck = false; + meta = { + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + propagatedBuildInputs = [ CGI ]; + }; + + HTTPServerSimpleAuthen = buildPerlPackage { + pname = "HTTP-Server-Simple-Authen"; + version = "0.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIYAGAWA/HTTP-Server-Simple-Authen-0.04.tar.gz"; + sha256 = "2dddc8ab9dc8986980151e4ba836a6bbf091f45cf195be1768ebdb4a993ed59b"; + }; + propagatedBuildInputs = [ AuthenSimple HTTPServerSimple ]; + meta = { + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + HTTPServerSimpleMason = buildPerlPackage { + pname = "HTTP-Server-Simple-Mason"; + version = "0.14"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JE/JESSE/HTTP-Server-Simple-Mason-0.14.tar.gz"; + sha256 = "b7a49d8e6e55bff0b1f0278d951685466b143243b6f9e59e071f5472ca2a025a"; + }; + propagatedBuildInputs = [ HTMLMason HTTPServerSimple HookLexWrap ]; + meta = { + description = "A simple mason server"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + HTTPServerSimplePSGI = buildPerlPackage { + pname = "HTTP-Server-Simple-PSGI"; + version = "0.16"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIYAGAWA/HTTP-Server-Simple-PSGI-0.16.tar.gz"; + sha256 = "1fhx2glycd66m4l4m1gja81ixq8nh4r5g9wjhhkrffq4af2cnz2z"; + }; + propagatedBuildInputs = [ HTTPServerSimple ]; + meta = { + description = "PSGI handler for HTTP::Server::Simple"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/miyagawa/HTTP-Server-Simple-PSGI"; + }; + }; + + HTTPTinyCache = buildPerlPackage { + pname = "HTTP-Tiny-Cache"; + version = "0.002"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PERLANCAR/HTTP-Tiny-Cache-0.002.tar.gz"; + sha256 = "08c6274x7fxl9r7cw1yiq21wv2mjgxw7db0wv5r80dyw377vfzbk"; + }; + propagatedBuildInputs = [ FileUtilTempdir Logger ]; + meta = { + homepage = "https://metacpan.org/release/HTTP-Tiny-Cache"; + description = "Cache HTTP::Tiny responses"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + HTTPTinyish = buildPerlPackage { + pname = "HTTP-Tinyish"; + version = "0.17"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIYAGAWA/HTTP-Tinyish-0.17.tar.gz"; + sha256 = "47bd111e474566d733c41870e2374c81689db5e0b5a43adc48adb665d89fb067"; + }; + propagatedBuildInputs = [ FileWhich IPCRun3 ]; + meta = { + homepage = "https://github.com/miyagawa/HTTP-Tinyish"; + description = "HTTP::Tiny compatible HTTP client wrappers"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + iCalParser = buildPerlPackage { + pname = "iCal-Parser"; + version = "1.21"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RI/RIXED/iCal-Parser-1.21.tar.gz"; + sha256 = "0d7939a644a8e67017ec7239d3d9604f3986bb9a4ff80be68fe7299ebfd2270c"; + }; + propagatedBuildInputs = [ DateTimeFormatICal FreezeThaw IOString TextvFileasData ]; + meta = { + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ImagePNGLibpng = buildPerlPackage { + pname = "Image-PNG-Libpng"; + version = "0.57"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BK/BKB/Image-PNG-Libpng-0.56.tar.gz"; + sha256 = "+vu/6/9CP3u4XvJ6MEH7YpG1AzbHpYIiSlysQzHDx9k="; + }; + buildInputs = [ pkgs.libpng ]; + meta = { + description = "Perl interface to the C library \"libpng\""; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + broken = stdenv.isDarwin; # never built on Hydra https://hydra.nixos.org/job/nixpkgs/staging-next/perl534Packages.ImagePNGLibpng.x86_64-darwin + }; + }; + + Imager = buildPerlPackage { + pname = "Imager"; + version = "1.012"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TONYC/Imager-1.012.tar.gz"; + sha256 = "a321c728e3277fd15de842351e69bbef0e2a5a608a31d089e5029b8381e23f21"; + }; + buildInputs = [ pkgs.freetype pkgs.fontconfig pkgs.libjpeg pkgs.libpng ]; + makeMakerFlags = "--incpath ${pkgs.libjpeg.dev}/include --libpath ${pkgs.libjpeg.out}/lib --incpath ${pkgs.libpng.dev}/include --libpath ${pkgs.libpng.out}/lib"; + meta = { + homepage = "http://imager.perl.org/"; + description = "Perl extension for Generating 24 bit Images"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ImagerQRCode = buildPerlPackage { + pname = "Imager-QRCode"; + version = "0.035"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KU/KURIHARA/Imager-QRCode-0.035.tar.gz"; + sha256 = "2a848deba29eb3942c44709a6853e318acab0c468cbfedbb9baae54760032513"; + }; + propagatedBuildInputs = [ Imager ]; + meta = { + description = "Generate QR Code with Imager using libqrencode"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = with maintainers; [ sgo ]; + }; + }; + + ImageInfo = buildPerlPackage { + pname = "Image-Info"; + version = "1.42"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SR/SREZIC/Image-Info-1.42.tar.gz"; + sha256 = "2bca560c3f71b3c1cd63ac3a974e62f3baeb986b7ffaa026b929081b914a8f4f"; + }; + propagatedBuildInputs = [ IOStringy ]; + meta = { + description = "Extract meta information from image files"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ImageSane = buildPerlPackage { + pname = "Image-Sane"; + version = "5"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RA/RATCLIFFE/Image-Sane-5.tar.gz"; + sha256 = "229aa0e9f049efa760f3c2f6e61d9d539af43d8f764b50a6e03064b4729a35ff"; + }; + buildInputs = [ pkgs.sane-backends ExtUtilsDepends ExtUtilsPkgConfig TestRequires TryTiny ]; + propagatedBuildInputs = [ ExceptionClass Readonly ]; + meta = { + description = "Perl extension for the SANE (Scanner Access Now Easy) Project"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ImageScale = buildPerlPackage { + pname = "Image-Scale"; + version = "0.14"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AG/AGRUNDMA/Image-Scale-0.14.tar.gz"; + sha256 = "f09c5f0663b87738365ac2819e186b909abeb9ed85d83bc15ee76872c947cdf8"; + }; + buildInputs = [ pkgs.libpng pkgs.libjpeg TestNoWarnings ]; + propagatedBuildInputs = [ pkgs.zlib ]; + makeMakerFlags = "--with-jpeg-includes=${pkgs.libjpeg.dev}/include --with-jpeg-libs=${pkgs.libjpeg.out}/lib --with-png-includes=${pkgs.libpng.dev}/include --with-png-libs=${pkgs.libpng.out}/lib"; + meta = { + description = "Fast, high-quality fixed-point image resizing"; + license = lib.licenses.gpl2Plus; + }; + }; + + ImageSize = buildPerlPackage { + pname = "Image-Size"; + version = "3.300"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJRAY/Image-Size-3.300.tar.gz"; + sha256 = "0sq2kwdph55h4adx50fmy86brjkkv8grsw33xrhf1k9icpwb3jak"; + }; + buildInputs = [ ModuleBuild ]; + meta = { + description = "Read the dimensions of an image in several popular formats"; + license = with lib.licenses; [ artistic1 lgpl21Plus ]; + }; + }; + + ImageOCRTesseract = buildPerlPackage { + pname = "Image-OCR-Tesseract"; + version = "1.26"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LE/LEOCHARRE/Image-OCR-Tesseract-1.26.tar.gz"; + sha256 = "98d904266a7062f09c9b46f77c4e94529e1fe99339e3f83fda1f92013f007cea"; + }; + nativeBuildInputs = [ pkgs.which pkgs.makeWrapper pkgs.tesseract pkgs.imagemagick ]; + propagatedBuildInputs = [ FileFindRule FileWhich LEOCHARRECLI StringShellQuote ]; + postPatch = '' + substituteInPlace lib/Image/OCR/Tesseract.pm \ + --replace "which('tesseract')" "\"${pkgs.tesseract}/bin/tesseract\"" \ + --replace "which('convert')" "\"${pkgs.imagemagick}/bin/convert"\" + ''; + postInstall = '' + wrapProgram $out/bin/ocr --prefix PATH : ${lib.makeBinPath [ pkgs.tesseract pkgs.imagemagick ]} + ''; + meta = { + description = "Read an image with tesseract ocr and get output"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + IMAPClient = buildPerlPackage { + pname = "IMAP-Client"; + version = "0.13"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CO/CONTEB/IMAP-Client-0.13.tar.gz"; + sha256 = "15fa4hpw2rqg2iadyz10rnv99hns78wph5qlh3257a3mbfjjyyla"; + }; + doCheck = false; # nondeterministic + }; + + Importer = buildPerlPackage { + pname = "Importer"; + version = "0.026"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/EX/EXODIST/Importer-0.026.tar.gz"; + sha256 = "e08fa84e13cb998b7a897fc8ec9c3459fcc1716aff25cc343e36ef875891b0ef"; + }; + meta = { + description = "Alternative but compatible interface to modules that export symbols"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ImportInto = buildPerlPackage { + pname = "Import-Into"; + version = "1.002005"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HA/HAARG/Import-Into-1.002005.tar.gz"; + sha256 = "0rq5kz7c270q33jq6hnrv3xgkvajsc62ilqq7fs40av6zfipg7mx"; + }; + propagatedBuildInputs = [ ModuleRuntime ]; + meta = { + description = "Import packages into other packages"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + IO = buildPerlPackage { + pname = "IO"; + version = "1.42"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TODDR/IO-1.42.tar.gz"; + sha256 = "eec5cc33a6cddba8b5d2425b60752882add7e4d41b7431a0ea4dcd73cc1f8cca"; + }; + doCheck = false; + meta = { + description = "Perl core IO modules"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + IOAIO = buildPerlPackage { + pname = "IO-AIO"; + version = "4.73"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/ML/MLEHMANN/IO-AIO-4.73.tar.gz"; + sha256 = "0nmcwj385zdk65z8b9ivsvbm1d7a3d5gfnhy7mkbgyi4h33lfnws"; + }; + buildInputs = [ CanaryStability ]; + propagatedBuildInputs = [ commonsense ]; + nativeBuildInputs = lib.optional stdenv.isDarwin shortenPerlShebang; + postInstall = lib.optionalString stdenv.isDarwin '' + shortenPerlShebang $out/bin/treescan + ''; + meta = { + description = "Asynchronous/Advanced Input/Output"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + IOAll = buildPerlPackage { + pname = "IO-All"; + version = "0.87"; + src = fetchurl { + url = "mirror://cpan/authors/id/F/FR/FREW/IO-All-0.87.tar.gz"; + sha256 = "0nsd9knlbd7if2v6zwj4q978axq0w5hk8ymp61z14a821hjivqjl"; + }; + meta = { + homepage = "https://github.com/ingydotnet/io-all-pm"; + description = "IO::All of it to Graham and Damian!"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + IOAsync = buildPerlModule { + pname = "IO-Async"; + version = "0.78"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PEVANS/IO-Async-0.78.tar.gz"; + sha256 = "sha256-P7UYhZd7hiGKiepC84yvvOWCO/SPqqLRhaGGwqNYNmw="; + }; + preCheck = "rm t/50resolver.t"; # this test fails with "Temporary failure in name resolution" in sandbox + propagatedBuildInputs = [ Future StructDumb ]; + buildInputs = [ TestFatal TestIdentity TestMetricsAny TestRefcount ]; + meta = { + description = "Asynchronous event-driven programming"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + IOAsyncSSL = buildPerlModule { + pname = "IO-Async-SSL"; + version = "0.22"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PEVANS/IO-Async-SSL-0.22.tar.gz"; + sha256 = "0c7363a7f1a08805bd1b2cf2b1a42a950ca71914c2aedbdd985970e011331a21"; + }; + buildInputs = [ TestIdentity ]; + propagatedBuildInputs = [ Future IOAsync IOSocketSSL ]; + meta = { + description = "Use SSL/TLS with IO::Async"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.zakame ]; + }; + }; + + IOCapture = buildPerlPackage { + pname = "IO-Capture"; + version = "0.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RE/REYNOLDS/IO-Capture-0.05.tar.gz"; + sha256 = "c2c15a254ca74fb8c57d25d7b6cbcaff77a3b4fb5695423f1f80bb423abffea9"; + }; + meta = { + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + IOCaptureOutput = buildPerlPackage { + pname = "IO-CaptureOutput"; + version = "1.1105"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DAGOLDEN/IO-CaptureOutput-1.1105.tar.gz"; + sha256 = "ae99009fca1273800f169ecb82f4ed1cc6c76795f156bee5c0093005d572f487"; + }; + meta = { + homepage = "https://github.com/dagolden/IO-CaptureOutput"; + description = "Capture STDOUT and STDERR from Perl code, subprocesses or XS"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + IOCompress = buildPerlPackage { + pname = "IO-Compress"; + version = "2.102"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PM/PMQS/IO-Compress-2.102.tar.gz"; + sha256 = "193jvi4800cbcac5n1swj9zgwwqck9c47g0g592ldr7fbfd7zynn"; + }; + propagatedBuildInputs = [ CompressRawBzip2 CompressRawZlib ]; + meta = { + description = "IO Interface to compressed data files/buffers"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + # Same as CompressRawZlib + doCheck = false && !stdenv.isDarwin; + }; + + IODigest = buildPerlPackage { + pname = "IO-Digest"; + version = "0.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CL/CLKAO/IO-Digest-0.11.tar.gz"; + sha256 = "14kz7z4xw179aya3116wxac29l4y2wmwrba087lya4v2gxdgiz4g"; + }; + propagatedBuildInputs = [ PerlIOviadynamic ]; + }; + + IOHTML = buildPerlPackage { + pname = "IO-HTML"; + version = "1.004"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CJ/CJM/IO-HTML-1.004.tar.gz"; + sha256 = "1xcbplf8rxb3z4wz66h5w7vy1g83bkxksxwnjp1z5fv3jksjsyy8"; + }; + meta = { + description = "Open an HTML file with automatic charset detection"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + IOHandleUtil = buildPerlModule { + pname = "IO-Handle-Util"; + version = "0.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/IO-Handle-Util-0.02.tar.gz"; + sha256 = "1vncvsx53iiw1yy3drlk44hzx2pk5cial0h74djf9i6s2flndfcd"; + }; + propagatedBuildInputs = [ IOString SubExporter asa ]; + meta = { + }; + buildInputs = [ ModuleBuildTiny TestSimple13 ]; + }; + + IOInteractive = buildPerlPackage { + pname = "IO-Interactive"; + version = "1.022"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BD/BDFOY/IO-Interactive-1.022.tar.gz"; + sha256 = "0ed53b8ae93ae877e98e0d89b7b429e29ccd1ee4c28e952c4ea9aa73d01febdc"; + }; + meta = { + description = "Utilities for interactive I/O"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + IOInteractiveTiny = buildPerlPackage { + pname = "IO-Interactive-Tiny"; + version = "0.2"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DM/DMUEY/IO-Interactive-Tiny-0.2.tar.gz"; + sha256 = "45c0696505c7e4347845f5cd2512b7b1bc78fbce4cbed2b58008283fc95ea5f9"; + }; + meta = { + description = "Is_interactive() without large deps"; + license = lib.licenses.artistic2; + }; + }; + + IOLockedFile = buildPerlPackage { + pname = "IO-LockedFile"; + version = "0.23"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RA/RANI/IO-LockedFile-0.23.tar.gz"; + sha256 = "1dgq8zfkaszisdb5hz8jgcl0xc3qpv7bbv562l31xgpiddm7xnxi"; + }; + }; + + IOMultiplex = buildPerlPackage { + pname = "IO-Multiplex"; + version = "1.16"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BB/BBB/IO-Multiplex-1.16.tar.gz"; + sha256 = "74d22c44b5ad2e7190e2786e8a17d74bbf4cef89b4d1157ba33598b5a2720dad"; + }; + }; + + IOPager = buildPerlPackage { + version = "2.10"; + pname = "IO-Pager"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JP/JPIERCE/IO-Pager-2.10.tgz"; + sha256 = "15dimh3i61y6kybhbap91kwh9837xfww072rh95h7j40sb1did5w"; + }; + propagatedBuildInputs = [ pkgs.more FileWhich TermReadKey ]; # `more` used in tests + }; + + IOPty = buildPerlModule { + pname = "IO-Pty"; + version = "1.16"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TODDR/IO-Tty-1.16.tar.gz"; + sha256 = "sha256-jxoJwHBzitxpXfkD8uf3QwjdjZkbkUwLw5Cg5gISlN0="; + }; + buildPhase = "make"; + checkPhase = "make test"; + installPhase = "make install"; + meta = { + homepage = "https://github.com/toddr/IO-Tty"; + description = "Pseudo TTY object class"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + IOPrompt = buildPerlModule { + pname = "IO-Prompt"; + version = "0.997004"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DC/DCONWAY/IO-Prompt-0.997004.tar.gz"; + sha256 = "f17bb305ee6ac8b5b203e6d826eb940c4f3f6d6f4bfe719c3b3a225f46f58615"; + }; + propagatedBuildInputs = [ TermReadKey Want ]; + doCheck = false; # needs access to /dev/tty + meta = { + description = "Interactively prompt for user input"; + }; + }; + + IOSessionData = buildPerlPackage { + pname = "IO-SessionData"; + version = "1.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PH/PHRED/IO-SessionData-1.03.tar.gz"; + sha256 = "1p9d77pqy9a8dbgw7h7vmmkg0rlckk19dchd4c8gvcyv7qm73934"; + }; + outputs = [ "out" "dev" ]; # no "devdoc" + meta = { + description = "supporting module for SOAP::Lite"; + }; + }; + + IOSocketInet6 = buildPerlModule { + pname = "IO-Socket-INET6"; + version = "2.72"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/IO-Socket-INET6-2.72.tar.gz"; + sha256 = "1fqypz6qa5rw2d5y2zq7f49frwra0aln13nhq5gi514j2zx21q45"; + }; + propagatedBuildInputs = [ Socket6 ]; + doCheck = false; + }; + + IOSocketSSL = buildPerlPackage { + pname = "IO-Socket-SSL"; + version = "2.068"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SU/SULLR/IO-Socket-SSL-2.068.tar.gz"; + sha256 = "4420fc0056f1827b4dd1245eacca0da56e2182b4ef6fc078f107dc43c3fb8ff9"; + }; + propagatedBuildInputs = [ MozillaCA NetSSLeay ]; + # Fix path to default certificate store. + postPatch = '' + substituteInPlace lib/IO/Socket/SSL.pm \ + --replace "\$openssldir/cert.pem" "/etc/ssl/certs/ca-certificates.crt" + ''; + meta = { + homepage = "https://github.com/noxxi/p5-io-socket-ssl"; + description = "Nearly transparent SSL encapsulation for IO::Socket::INET"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + doCheck = false; # tries to connect to facebook.com etc. + }; + + IOSocketTimeout = buildPerlModule { + pname = "IO-Socket-Timeout"; + version = "0.32"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DAMS/IO-Socket-Timeout-0.32.tar.gz"; + sha256 = "edf915d6cc66bee43503aa6dc2b373366f38eaff701582183dad10cb8adf2972"; + }; + buildInputs = [ ModuleBuildTiny TestSharedFork TestTCP ]; + propagatedBuildInputs = [ PerlIOviaTimeout ]; + meta = { + description = "IO::Socket with read/write timeout"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + IOString = buildPerlPackage { + pname = "IO-String"; + version = "1.08"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GA/GAAS/IO-String-1.08.tar.gz"; + sha256 = "2a3f4ad8442d9070780e58ef43722d19d1ee21a803bf7c8206877a10482de5a0"; + }; + }; + + IOStringy = buildPerlPackage { + pname = "IO-Stringy"; + version = "2.113"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CA/CAPOEIRAB/IO-Stringy-2.113.tar.gz"; + sha256 = "0kpycb56l6ilvmdx9swx9wpj1x3vfnqdflfjd6dn6spnz750y8ji"; + }; + }; + + IOStty = buildPerlModule { + pname = "IO-Stty"; + version = "0.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TODDR/IO-Stty-0.04.tar.gz"; + sha256 = "sha256-XJUJ8ahpPYKH+gE97wv4eqZM2ScThGHvjetVUDxmUcI="; + }; + buildPhase = "make"; + checkPhase = "make test"; + installPhase = "make install"; + meta = { + homepage = "http://wiki.github.com/toddr/IO-Stty"; + description = "Change and print terminal line settings"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + IOTee = buildPerlPackage { + pname = "IO-Tee"; + version = "0.66"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NE/NEILB/IO-Tee-0.66.tar.gz"; + sha256 = "1q2jhp02rywrbyhvl2lv6qp70dcv5cfalrx3cc4c7y8nclhfg71d"; + }; + }; + + IOTieCombine = buildPerlPackage { + pname = "IO-TieCombine"; + version = "1.005"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/IO-TieCombine-1.005.tar.gz"; + sha256 = "1bv9ampayf4bvyxg4ivy18l8k79jvq55x6gl68b2fg8b62w4sba0"; + }; + meta = { + homepage = "https://github.com/rjbs/io-tiecombine"; + description = "Produce tied (and other) separate but combined variables"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + IOTty = buildPerlPackage { + pname = "IO-Tty"; + version = "1.15"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TODDR/IO-Tty-1.15.tar.gz"; + sha256 = "06mmyr4fkkix1z0j8hnhrccn93isnabf3408kqavn2v2hw7wrya3"; + }; + doCheck = !stdenv.isDarwin; # openpty fails in the sandbox + }; + + IPCountry = buildPerlPackage { + pname = "IP-Country"; + version = "2.28"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NW/NWETTERS/IP-Country-2.28.tar.gz"; + sha256 = "88db833a5ab22ed06cb53d6f205725e3b5371b254596053738885e91fa105f75"; + }; + propagatedBuildInputs = [ GeographyCountries ]; + meta = { + description = "Fast lookup of country codes from IP addresses"; + license = lib.licenses.mit; + }; + }; + + GeographyCountries = buildPerlPackage { + pname = "Geography-Countries"; + version = "2009041301"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AB/ABIGAIL/Geography-Countries-2009041301.tar.gz"; + sha256 = "48c42e40e8281ba7c981743a854c48e6def2d51eb0925ea6c96e25c74497f20f"; + }; + meta = { + description = "2-letter, 3-letter, and numerical codes for countries"; + license = lib.licenses.mit; + }; + }; + + + IPCRun = buildPerlPackage { + pname = "IPC-Run"; + version = "20200505.0"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TODDR/IPC-Run-20200505.0.tar.gz"; + sha256 = "00f9wjvhn55zbk3n9il76xvsqy7ddk60lg6phg2rkpx0gwhvyvl1"; + }; + doCheck = false; /* attempts a network connection to localhost */ + meta = { + description = "System() and background procs w/ piping, redirs, ptys (Unix, Win32)"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + propagatedBuildInputs = [ IOTty ]; + buildInputs = [ Readonly ]; + }; + + IPCRun3 = buildPerlPackage { + pname = "IPC-Run3"; + version = "0.048"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/IPC-Run3-0.048.tar.gz"; + sha256 = "0r9m8q78bg7yycpixd7738jm40yz71p2q7inm766kzsw3g6c709x"; + }; + }; + + IPCShareLite = buildPerlPackage { + pname = "IPC-ShareLite"; + version = "0.17"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AN/ANDYA/IPC-ShareLite-0.17.tar.gz"; + sha256 = "1gz7dbwxrzbzdsjv11kb49jlf9q6lci2va6is0hnavd93nwhdm0l"; + }; + }; + + IPCSystemSimple = buildPerlPackage { + pname = "IPC-System-Simple"; + version = "1.30"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JK/JKEENAN/IPC-System-Simple-1.30.tar.gz"; + sha256 = "22e6f5222b505ee513058fdca35ab7a1eab80539b98e5ca4a923a70a8ae9ba9e"; + }; + meta = { + description = "Run commands simply, with detailed diagnostics"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + IPCSysV = buildPerlPackage { + pname = "IPC-SysV"; + version = "2.09"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MH/MHX/IPC-SysV-2.09.tar.gz"; + sha256 = "1g9ddlba4w2jpasn4sh5v1spag4x87rhfv7b0w8gsj6mfhf595qq"; + }; + meta = { + description = "System V IPC constants and system calls"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + IRCUtils = buildPerlPackage { + pname = "IRC-Utils"; + version = "0.12"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HI/HINRIK/IRC-Utils-0.12.tar.gz"; + sha256 = "c7d6311eb6c79e983833c9e6b4e8d426d07a9874d20f4bc641b313b99c9bc8a0"; + }; + meta = { + homepage = "https://metacpan.org/release/IRC-Utils"; + description = "Common utilities for IRC-related tasks"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = with maintainers; [ sgo ]; + }; + }; + + ImageExifTool = buildPerlPackage rec { + pname = "Image-ExifTool"; + version = "12.39"; + + src = fetchurl { + url = "https://exiftool.org/Image-ExifTool-${version}.tar.gz"; + sha256 = "sha256-QDq1KTpEcl8EWj9a/bxF0TwghUulH30O5yDV0wsxy6I="; + }; + + nativeBuildInputs = lib.optional stdenv.isDarwin shortenPerlShebang; + postInstall = lib.optionalString stdenv.isDarwin '' + shortenPerlShebang $out/bin/exiftool + ''; + + meta = with lib; { + description = "A tool to read, write and edit EXIF meta information"; + homepage = "https://exiftool.org/"; + + longDescription = '' + ExifTool is a platform-independent Perl library plus a command-line + application for reading, writing and editing meta information in a wide + variety of files. ExifTool supports many different metadata formats + including EXIF, GPS, IPTC, XMP, JFIF, GeoTIFF, ICC Profile, Photoshop + IRB, FlashPix, AFCP and ID3, as well as the maker notes of many digital + cameras by Canon, Casio, DJI, FLIR, FujiFilm, GE, GoPro, HP, + JVC/Victor, Kodak, Leaf, Minolta/Konica-Minolta, Motorola, Nikon, + Nintendo, Olympus/Epson, Panasonic/Leica, Pentax/Asahi, Phase One, + Reconyx, Ricoh, Samsung, Sanyo, Sigma/Foveon and Sony. + ''; + + license = with licenses; [ gpl1Plus /* or */ artistic2 ]; + + maintainers = [ maintainers.kiloreux ]; + }; + }; + + Inline = buildPerlPackage { + pname = "Inline"; + version = "0.86"; + src = fetchurl { + url = "mirror://cpan/authors/id/I/IN/INGY/Inline-0.86.tar.gz"; + sha256 = "510a7de2d011b0db80b0874e8c0f7390010991000ae135cff7474df1e6d51e3a"; + }; + buildInputs = [ TestWarn ]; + meta = { + homepage = "https://github.com/ingydotnet/inline-pm"; + description = "Write Perl Subroutines in Other Programming Languages"; + longDescription = '' + The Inline module allows you to put source code from other + programming languages directly "inline" in a Perl script or + module. The code is automatically compiled as needed, and then loaded + for immediate access from Perl. + ''; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + InlineC = buildPerlPackage { + pname = "Inline-C"; + version = "0.81"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TI/TINITA/Inline-C-0.81.tar.gz"; + sha256 = "f185258d9050d7f79b4f00f12625cc469c2f700ff62d3e831cb18d80d2c87aac"; + }; + buildInputs = [ FileCopyRecursive TestWarn YAMLLibYAML ]; + propagatedBuildInputs = [ Inline ParseRecDescent Pegex ]; + postPatch = '' + # this test will fail with chroot builds + rm -f t/08taint.t + rm -f t/28autowrap.t + ''; + meta = { + homepage = "https://github.com/ingydotnet/inline-c-pm"; + description = "C Language Support for Inline"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + InlineJava = buildPerlPackage { + pname = "Inline-Java"; + version = "0.66"; + + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETJ/Inline-Java-0.66.tar.gz"; + sha256 = "0j6r6gxdn3wzx36cgcx4znj4ihp5fjl4gzk1623vvwgnwrlf0hy7"; + }; + + propagatedBuildInputs = [ Inline ]; + + # TODO: upgrade https://github.com/NixOS/nixpkgs/pull/89731 + makeMakerFlags = "J2SDK=${pkgs.jdk8}"; + + # FIXME: Apparently tests want to access the network. + doCheck = false; + + meta = { + description = "Inline::Java -- Write Perl classes in Java"; + + longDescription = '' + The Inline::Java module allows you to put Java source code directly + "inline" in a Perl script or module. A Java compiler is launched and + the Java code is compiled. Then Perl asks the Java classes what + public methods have been defined. These classes and methods are + available to the Perl program as if they had been written in Perl. + ''; + + license = lib.licenses.artistic2; + broken = stdenv.isDarwin; # never built on Hydra https://hydra.nixos.org/job/nixpkgs/staging-next/perl534Packages.InlineJava.x86_64-darwin + }; + }; + + IPCSignal = buildPerlPackage { + pname = "IPC-Signal"; + version = "1.00"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RO/ROSCH/IPC-Signal-1.00.tar.gz"; + sha256 = "1l3g0zrcwf2whwjhbpwdcridb7c77mydwxvfykqg1h6hqb4gj8bw"; + }; + }; + + JavaScriptMinifierXS = buildPerlModule { + pname = "JavaScript-Minifier-XS"; + version = "0.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GT/GTERMARS/JavaScript-Minifier-XS-0.11.tar.gz"; + sha256 = "1vlyhckpjbrg2v4dy9szsxxl0q44n0y1xl763mg2y2ym9g5144hm"; + }; + perlPreHook = lib.optionalString (stdenv.isi686 || stdenv.isDarwin) "export LD=$CC"; + meta = { + description = "XS based JavaScript minifier"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + JavaScriptValueEscape = buildPerlModule { + pname = "JavaScript-Value-Escape"; + version = "0.07"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KA/KAZEBURO/JavaScript-Value-Escape-0.07.tar.gz"; + sha256 = "1p5365lvnax8kbcfrj169lx05af3i3qi5wg5x9mizqgd10vxmjws"; + }; + meta = { + description = "Avoid XSS with JavaScript value interpolation"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/kazeburo/JavaScript-Value-Escape"; + }; + }; + + JSON = buildPerlPackage { + pname = "JSON"; + version = "4.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/I/IS/ISHIGAKI/JSON-4.02.tar.gz"; + sha256 = "0z32x2lijij28c9fhmzgxc41i9nw24fyvd2a8ajs5zw9b9sqhjj4"; + }; + # Do not abort cross-compilation on failure to load native JSON module into host perl + preConfigure = lib.optionalString (stdenv.buildPlatform != stdenv.hostPlatform) '' + substituteInPlace Makefile.PL --replace "exit 0;" "" + ''; + buildInputs = [ TestPod ]; + meta = { + description = "JSON (JavaScript Object Notation) encoder/decoder"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + JSONAny = buildPerlPackage { + pname = "JSON-Any"; + version = "1.39"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/JSON-Any-1.39.tar.gz"; + sha256 = "1hspg6khjb38syn59cysnapc1q77qgavfym3fqr6l2kiydf7ajdf"; + }; + meta = { + description = "Wrapper Class for the various JSON classes"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ TestFatal TestRequires TestWarnings TestWithoutModule ]; + }; + + JSONCreate = buildPerlPackage { + pname = "JSON-Create"; + version = "0.35"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BK/BKB/JSON-Create-0.35.tar.gz"; + sha256 = "5faefe0d833b8132568865308f3239d3cdaa1b8a1ecc9b5624dcf1efbe10683e"; + }; + propagatedBuildInputs = [ JSONParse UnicodeUTF8 ]; + meta = { + description = "Create JSON"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + JSONMaybeXS = buildPerlPackage { + pname = "JSON-MaybeXS"; + version = "1.004003"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/JSON-MaybeXS-1.004003.tar.gz"; + sha256 = "1grg8saa318bs4x2wqnww7y0nra7azrzg35bk5pgvkwxzwbkpvjv"; + }; + meta = { + description = "Use L<Cpanel::JSON::XS> with a fallback to L<JSON::XS> and L<JSON::PP>"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ TestNeeds ]; + }; + + JSONPP = buildPerlPackage { + pname = "JSON-PP"; + version = "4.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/I/IS/ISHIGAKI/JSON-PP-4.05.tar.gz"; + sha256 = "1kphifz5zzyjnn4s9d8dynvinm76bbsf1b7a7bs48kfgpjkbr8nm"; + }; + meta = { + description = "JSON::XS compatible pure-Perl module"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + JSONPPCompat5006 = buildPerlPackage { + pname = "JSON-PP-Compat5006"; + version = "1.09"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MAKAMAKA/JSON-PP-Compat5006-1.09.tar.gz"; + sha256 = "197030df52635f9bbe25af10742eea5bd74971473118c11311fcabcb62e3716a"; + }; + meta = { + description = "Helper module in using JSON::PP in Perl 5.6"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + JSONParse = buildPerlPackage { + pname = "JSON-Parse"; + version = "0.61"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BK/BKB/JSON-Parse-0.61.tar.gz"; + sha256 = "ce8e55e70bef9bcbba2e96af631d10a605900961a22cad977e71aab56c3f2806"; + }; + meta = { + description = "Read JSON into a Perl variable"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + JSONValidator = buildPerlPackage { + pname = "JSON-Validator"; + version = "4.16"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JH/JHTHORSEN/JSON-Validator-4.16.tar.gz"; + sha256 = "0mhdczx2pxzi4lrrzkxl2a3r0s2b79ffsrar6g2l01idfpri6gi2"; + }; + buildInputs = [ TestDeep ]; + propagatedBuildInputs = [ DataValidateDomain DataValidateIP Mojolicious NetIDNEncode YAMLLibYAML ]; + meta = { + homepage = "https://github.com/mojolicious/json-validator"; + description = "Validate data against a JSON schema"; + license = lib.licenses.artistic2; + maintainers = [ maintainers.sgo ]; + }; + }; + + JSONWebToken = buildPerlModule { + pname = "JSON-WebToken"; + version = "0.10"; + src = fetchurl { + url = "mirror://cpan/authors/id/X/XA/XAICRON/JSON-WebToken-0.10.tar.gz"; + sha256 = "77c182a98528f1714d82afc548d5b3b4dc93e67069128bb9b9413f24cf07248b"; + }; + buildInputs = [ TestMockGuard TestRequires ]; + propagatedBuildInputs = [ JSON ModuleRuntime ]; + meta = { + homepage = "https://github.com/xaicron/p5-JSON-WebToken"; + description = "JSON Web Token (JWT) implementation"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + JSONXS = buildPerlPackage { + pname = "JSON-XS"; + version = "4.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/ML/MLEHMANN/JSON-XS-4.03.tar.gz"; + sha256 = "0s4hdfjwi1sq3cx4bjxrg8k1s4nhb0vm6948iklag89gbzs3cmai"; + }; + propagatedBuildInputs = [ TypesSerialiser ]; + buildInputs = [ CanaryStability ]; + }; + + JSONXSVersionOneAndTwo = buildPerlPackage { + pname = "JSON-XS-VersionOneAndTwo"; + version = "0.31"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LB/LBROCARD/JSON-XS-VersionOneAndTwo-0.31.tar.gz"; + sha256 = "e6092c4d961fae777acf7fe99fb3cd6e5b710fec85765a6b90417480e4c94a34"; + }; + propagatedBuildInputs = [ JSONXS ]; + meta = { + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Later = buildPerlPackage { + version = "0.21"; + pname = "Object-Realize-Later"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MARKOV/Object-Realize-Later-0.21.tar.gz"; + sha256 = "1nfqssld7pcdw9sj4mkfnh75w51wl14i1h7npj9fld4fri09cywg"; + }; + }; + + LaTeXML = buildPerlPackage rec { + pname = "LaTeXML"; + version = "0.8.6"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BR/BRMILLER/${pname}-${version}.tar.gz"; + sha256 = "1ccvdq7asxq6iw8x8ihwf5xs2mp7fkwm467xy7g8spkznr8wcacm"; + }; + patches = [ + (fetchpatch { + # https://github.com/brucemiller/LaTeXML/issues/1669 + name = "downgrade-security-FileTemp.patch"; + url = "https://github.com/brucemiller/LaTeXML/commit/c3d6b9b88f9eafce6eee52b1634ea33085ba9ec6.patch"; + sha256 = "12w6nfv0bkj2mr4xwcqzkdngrpbq4fn52n85r9njdg913cvfirm7"; + }) + ]; + outputs = [ "out" "tex" ]; + propagatedBuildInputs = [ ArchiveZip DBFile FileWhich IOString ImageMagick ImageSize JSONXS LWP ParseRecDescent PodParser TextUnidecode XMLLibXSLT ]; + nativeBuildInputs = [ pkgs.makeWrapper ] ++ lib.optional stdenv.isDarwin shortenPerlShebang; + makeMakerFlags = "TEXMF=\${tex} NOMKTEXLSR"; + # shebangs need to be patched before executables are copied to $out + preBuild = '' + patchShebangs bin/ + '' + lib.optionalString stdenv.isDarwin '' + for file in bin/*; do + shortenPerlShebang "$file" + done + ''; + postInstall = '' + for file in latexmlc latexmlmath latexmlpost ; do + # add runtime dependencies that cause silent failures when missing + wrapProgram $out/bin/$file --prefix PATH : ${lib.makeBinPath [ pkgs.ghostscript pkgs.potrace ]} + done + ''; + meta = { + description = "Transforms TeX and LaTeX into XML/HTML/MathML"; + homepage = "https://dlmf.nist.gov/LaTeXML/"; + license = lib.licenses.publicDomain; + maintainers = with maintainers; [ xworld21 ]; + }; + passthru = { + tlType = "run"; + pkgs = [ LaTeXML.tex ]; + }; + }; + + LEOCHARRECLI = buildPerlPackage { + pname = "LEOCHARRE-CLI"; + version = "1.19"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LE/LEOCHARRE/LEOCHARRE-CLI-1.19.tar.gz"; + sha256 = "37835f11ee35326241b4d30368ae1bc195a50414b3662db3e13b865bd52fcde9"; + }; + propagatedBuildInputs = [ FileWhich Filechmod LEOCHARREDebug Linuxusermod YAML ]; + meta = { + description = "Useful subs for coding cli scripts"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + LEOCHARREDebug = buildPerlPackage { + pname = "LEOCHARRE-Debug"; + version = "1.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LE/LEOCHARRE/LEOCHARRE-Debug-1.03.tar.gz"; + sha256 = "c1665aa3abd457cc8624b8c418c6f8bdf58fb3a686f8eed515cf7e93514df192"; + }; + meta = { + description = "Debug sub"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + libapreq2 = buildPerlPackage { + pname = "libapreq2"; + version = "2.16"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHAY/libapreq2-2.16.tar.gz"; + sha256 = "e04c855a3ea070b8863569fbae02fe828f534ac88755b23e24d3863cc9598349"; + }; + outputs = [ "out" ]; + buildInputs = [ pkgs.apacheHttpd pkgs.apr pkgs.aprutil ApacheTest ExtUtilsXSBuilder ]; + propagatedBuildInputs = [ (pkgs.apacheHttpdPackages.mod_perl.override { inherit perl; }) ]; + makeMakerFlags = "--with-apache2-src=${pkgs.apacheHttpd.dev} --with-apache2-apxs=${pkgs.apacheHttpd.dev}/bin/apxs --with-apache2-httpd=${pkgs.apacheHttpd.out}/bin/httpd --with-apr-config=${pkgs.apr.dev}/bin/apr-1-config --with-apu-config=${pkgs.aprutil.dev}/bin/apu-1-config"; + preConfigure = '' + # override broken prereq check + substituteInPlace configure --replace "prereq_check=\"\$PERL \$PERL_OPTS build/version_check.pl\"" "prereq_check=\"echo\"" + ''; + preBuild = '' + substituteInPlace apreq2-config --replace "dirname" "${pkgs.coreutils}/bin/dirname" + ''; + installPhase = '' + mkdir $out + + # install the library + make install DESTDIR=$out + cp -r $out/${pkgs.apacheHttpd.dev}/. $out/. + cp -r $out/$out/. $out/. + + # install the perl module + pushd glue/perl + perl Makefile.PL + make install DESTDIR=$out + cp -r $out/${perl}/lib/perl5 $out/lib/ + popd + + # install the apache module + # https://computergod.typepad.com/home/2007/06/webgui_and_suse.html + # NOTE: if using the apache module you must use "apreq" as the module name, not "apreq2" + # services.httpd.extraModules = [ { name = "apreq"; path = "''${pkgs.perlPackages.libapreq2}/modules/mod_apreq2.so"; } ]; + pushd module + make install DESTDIR=$out + cp -r $out/${pkgs.apacheHttpd.out}/modules $out/ + popd + + rm -r $out/nix + ''; + doCheck = false; # test would need to start apache httpd + meta = { + license = lib.licenses.asl20; + }; + }; + + libintl-perl = buildPerlPackage { + pname = "libintl-perl"; + version = "1.32"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GU/GUIDO/libintl-perl-1.32.tar.gz"; + sha256 = "19gbbh9w3rl805mv6mg1q80fsrg610h098qhf7ycnkjnyac84440"; + }; + }; + + libnet = buildPerlPackage { + pname = "libnet"; + version = "3.12"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHAY/libnet-3.13.tar.gz"; + sha256 = "sha256-WjX7Hy1KopFoDrGvOImfq0U8IsKOcffHvTdHtaPbNIw="; + }; + patches = [ + (fetchpatch { + name = "deterministic-libnet.cfg"; + url = "https://github.com/steve-m-hay/perl-libnet/commit/7d076c4352f67ee4ed64092cfad3963a2321bd53.patch"; + sha256 = "0pg9w2m08janqn5nrp4x9w5hbcsyxz87hfskd21zzfrzjk8z28qv"; + }) + ]; + meta = { + description = "Collection of network protocol modules"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + librelative = buildPerlPackage { + pname = "lib-relative"; + version = "1.000"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DB/DBOOK/lib-relative-1.000.tar.gz"; + sha256 = "1mvcdl87d3kyrdx4y6x79k3n5qdd1x5m1hp8lwjxvgfqbw0cgq6z"; + }; + meta = { + description = "Add paths relative to the current file to @INC"; + license = with lib.licenses; [ artistic2 ]; + homepage = "https://github.com/Grinnz/lib-relative"; + }; + }; + + libxml_perl = buildPerlPackage { + pname = "libxml-perl"; + version = "0.08"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KM/KMACLEOD/libxml-perl-0.08.tar.gz"; + sha256 = "1jy9af0ljyzj7wakqli0437zb2vrbplqj4xhab7bfj2xgfdhawa5"; + }; + propagatedBuildInputs = [ XMLParser ]; + }; + + LinguaENFindNumber = buildPerlPackage { + pname = "Lingua-EN-FindNumber"; + version = "1.32"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NE/NEILB/Lingua-EN-FindNumber-1.32.tar.gz"; + sha256 = "1d176d1c863fb9844bd19d2c2a4e68a0ed73da158f724a89405b90db7e8dbd04"; + }; + propagatedBuildInputs = [ LinguaENWords2Nums ]; + meta = { + homepage = "https://github.com/neilbowers/Lingua-EN-FindNumber"; + description = "Locate (written) numbers in English text"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + LinguaENInflect = buildPerlPackage { + pname = "Lingua-EN-Inflect"; + version = "1.905"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DC/DCONWAY/Lingua-EN-Inflect-1.905.tar.gz"; + sha256 = "15ij4rk1nznnd9hyg2hzy1ydpi9h1cdii8hdlq9j6mrf931rxhh5"; + }; + meta = { + description = "Convert singular to plural. Select 'a' or 'an'"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + LinguaENInflectNumber = buildPerlPackage { + pname = "Lingua-EN-Inflect-Number"; + version = "1.12"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NE/NEILB/Lingua-EN-Inflect-Number-1.12.tar.gz"; + sha256 = "66fb33838512746f5c597e80264fea66643f7f26570ec2f9205b6135ad67acbf"; + }; + propagatedBuildInputs = [ LinguaENInflect ]; + meta = { + homepage = "https://github.com/neilbowers/Lingua-EN-Inflect-Number"; + description = "Force number of words to singular or plural"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + LinguaENInflectPhrase = buildPerlPackage { + pname = "Lingua-EN-Inflect-Phrase"; + version = "0.20"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RK/RKITOVER/Lingua-EN-Inflect-Phrase-0.20.tar.gz"; + sha256 = "55058911a99f1755de3eb449a99ffbeb92d88c01ff5dc60511a24679050ddea8"; + }; + buildInputs = [ TestNoWarnings ]; + propagatedBuildInputs = [ LinguaENInflectNumber LinguaENNumberIsOrdinal LinguaENTagger ]; + meta = { + description = "Inflect short English Phrases"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + LinguaENNumberIsOrdinal = buildPerlPackage { + pname = "Lingua-EN-Number-IsOrdinal"; + version = "0.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RK/RKITOVER/Lingua-EN-Number-IsOrdinal-0.05.tar.gz"; + sha256 = "28d5695400c0f4e2bd209793cb74f6da2b9257356aacb2947c603425e09618d6"; + }; + buildInputs = [ TestFatal TryTiny ]; + propagatedBuildInputs = [ LinguaENFindNumber ]; + meta = { + description = "Detect if English number is ordinal or cardinal"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + LinguaENTagger = buildPerlPackage { + pname = "Lingua-EN-Tagger"; + version = "0.31"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AC/ACOBURN/Lingua-EN-Tagger-0.31.tar.gz"; + sha256 = "14z9fbl3mf6lxhp0v2apdlxy1fw1y07j4ydrjsh7p3w0wj3qr7ll"; + }; + propagatedBuildInputs = [ HTMLParser LinguaStem MemoizeExpireLRU ]; + meta = { + description = "Part-of-speech tagger for English natural language processing"; + license = lib.licenses.gpl3; + }; + }; + + LinguaENWords2Nums = buildPerlPackage { + pname = "Lingua-EN-Words2Nums"; + version = "0.18"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JO/JOEY/Lingua-EN-Words2Nums-0.18.tar.gz"; + sha256 = "686556797cd2a4eaa066f19bbf03ab25c06278292c9ead2f187dfd9031ea1d85"; + }; + meta = { + description = "Convert English text to numbers"; + }; + }; + + LinguaPTStemmer = buildPerlPackage { + pname = "Lingua-PT-Stemmer"; + version = "0.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NE/NEILB/Lingua-PT-Stemmer-0.02.tar.gz"; + sha256 = "17c48sfbgwd2ivlgf59sr6jdhwa3aim8750f8pyzz7xpi8gz0var"; + }; + meta = { + description = "Portuguese language stemming"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/neilb/Lingua-PT-Stemmer"; + }; + }; + + LinguaStem = buildPerlModule { + pname = "Lingua-Stem"; + version = "2.31"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SN/SNOWHARE/Lingua-Stem-2.31.tar.gz"; + sha256 = "0r02cf5p09r09ivxhn4xmsgmbk041p6qq6p6af15jzj2nqr9j6ma"; + }; + doCheck = false; + propagatedBuildInputs = [ LinguaPTStemmer LinguaStemFr LinguaStemIt LinguaStemRu LinguaStemSnowballDa SnowballNorwegian SnowballSwedish TextGerman ]; + }; + + LinguaStemFr = buildPerlPackage { + pname = "Lingua-Stem-Fr"; + version = "0.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SD/SDP/Lingua-Stem-Fr-0.02.tar.gz"; + sha256 = "0vyrspwzaqjxm5mqshf4wvwa3938mkajd1918d9ii2l9m2rn8kwx"; + }; + meta = { + }; + }; + + LinguaStemIt = buildPerlPackage { + pname = "Lingua-Stem-It"; + version = "0.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AC/ACALPINI/Lingua-Stem-It-0.02.tar.gz"; + sha256 = "1207r183s5hlh4mfwa6p46vzm0dhvrs2dnss5s41a0gyfkxp7riq"; + }; + meta = { + }; + }; + + LinguaStemRu = buildPerlPackage { + pname = "Lingua-Stem-Ru"; + version = "0.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NE/NEILB/Lingua-Stem-Ru-0.04.tar.gz"; + sha256 = "0a2jmdz7jn32qj5hyiw5kbv8fvlpmws8i00a6xcbkzb48yvwww0j"; + }; + meta = { + description = "Porter's stemming algorithm for Russian (KOI8-R only)"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/neilb/Lingua-Stem-Ru"; + }; + }; + + LinguaStemSnowballDa = buildPerlPackage { + pname = "Lingua-Stem-Snowball-Da"; + version = "1.01"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CI/CINE/Lingua-Stem-Snowball-Da-1.01.tar.gz"; + sha256 = "0mm0m7glm1s6i9f6a78jslw6wh573208arxhq93yriqmw17bwf9f"; + }; + meta = { + }; + }; + + LinguaTranslit = buildPerlPackage { + pname = "Lingua-Translit"; + version = "0.28"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AL/ALINKE/Lingua-Translit-0.28.tar.gz"; + sha256 = "113f91d8fc2c630437153a49fb7a52b023af8f6278ed96c070b1f60824b8eae1"; + }; + doCheck = false; + }; + + LinkEmbedder = buildPerlPackage { + pname = "LinkEmbedder"; + version = "1.20"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JH/JHTHORSEN/LinkEmbedder-1.20.tar.gz"; + sha256 = "19fwr3y8dd1bya2z86x3904s4dxfx15h7b777529j8n74m78ppmi"; + }; + buildInputs = [ TestDeep ]; + propagatedBuildInputs = [ Mojolicious ]; + meta = { + homepage = "https://github.com/jhthorsen/linkembedder"; + description = "Embed / expand oEmbed resources and other URL / links"; + license = lib.licenses.artistic2; + maintainers = with maintainers; [ sgo ]; + }; + }; + + LinuxACL = buildPerlPackage { + pname = "Linux-ACL"; + version = "0.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NA/NAZAROV/Linux-ACL-0.05.tar.gz"; + sha256 = "312940c1f60f47c4fc93fa0a9d2a626425faa837040c8c2f1ad58ee09f62f371"; + }; + buildInputs = [ pkgs.acl ]; + NIX_CFLAGS_LINK = "-L${pkgs.acl.out}/lib -lacl"; + meta = { + maintainers = teams.deshaw.members; + description = "Perl extension for reading and setting Access Control Lists for files by libacl linux library"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + LinuxDesktopFiles = buildPerlModule { + pname = "Linux-DesktopFiles"; + version = "0.25"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TR/TRIZEN/Linux-DesktopFiles-0.25.tar.gz"; + sha256 = "60377a74fba90fa465200ee1c7430dbdde69d454d85f9ee101c039803a07e5f5"; + }; + meta = { + homepage = "https://github.com/trizen/Linux-DesktopFiles"; + description = "Fast parsing of the Linux desktop files"; + license = lib.licenses.artistic2; + }; + }; + + LinuxDistribution = buildPerlModule { + pname = "Linux-Distribution"; + version = "0.23"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CH/CHORNY/Linux-Distribution-0.23.tar.gz"; + sha256 = "603e27da607b3e872a669d7a66d75982f0969153eab2d4b20c341347b4ebda5f"; + }; + # The tests fail if the distro it's built on isn't in the supported list. + # This includes NixOS. + doCheck = false; + meta = { + description = "Perl extension to detect on which Linux distribution we are running"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + platforms = lib.platforms.linux; + }; + }; + + LinuxFD = buildPerlModule { + pname = "Linux-FD"; + version = "0.011"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LE/LEONT/Linux-FD-0.011.tar.gz"; + sha256 = "6bb579d47644cb0ed35626ff77e909ae69063073c6ac09aa0614fef00fa37356"; + }; + buildInputs = [ TestException ]; + propagatedBuildInputs = [ SubExporter ]; + perlPreHook = lib.optionalString stdenv.isi686 "export LD=$CC"; # fix undefined reference to `__stack_chk_fail_local' + meta = { + description = "Linux specific special filehandles"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + platforms = lib.platforms.linux; + }; + }; + + LinuxInotify2 = buildPerlPackage { + pname = "Linux-Inotify2"; + version = "2.2"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/ML/MLEHMANN/Linux-Inotify2-2.2.tar.gz"; + sha256 = "0crlxmaa4lsgdjm5p9ib8rdxiy70qj1s68za3q3v57v8ll6s4hfx"; + }; + propagatedBuildInputs = [ commonsense ]; + + meta = { + description = "Scalable directory/file change notification for Perl on Linux"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + platforms = lib.platforms.linux; + }; + }; + + Linuxusermod = buildPerlPackage { + pname = "Linux-usermod"; + version = "0.69"; + src = fetchurl { + url = "mirror://cpan/authors/id/V/VI/VIDUL/Linux-usermod-0.69.tar.gz"; + sha256 = "97ca186a3c416bf69ed62da046f1a60d88d89b8e6ed25008b2f96e787dee9d60"; + }; + meta = { + description = "This module adds, removes and modify user and group accounts according to the passwd and shadow files syntax"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + platforms = lib.platforms.linux; + }; + }; + + ListAllUtils = buildPerlPackage { + pname = "List-AllUtils"; + version = "0.18"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DR/DROLSKY/List-AllUtils-0.18.tar.gz"; + sha256 = "b7c4bf80090b281c4a1560c76a1a819094c3a1294302f77afb8c60ca4862ecf9"; + }; + propagatedBuildInputs = [ ListSomeUtils ListUtilsBy ]; + meta = { + description = "Combines List::Util and List::MoreUtils in one bite-sized package"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ListBinarySearch = buildPerlPackage { + pname = "List-BinarySearch"; + version = "0.25"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DAVIDO/List-BinarySearch-0.25.tar.gz"; + sha256 = "0ap8y9rsjxg75887klgij90mf459f8dwy0dbx1g06h30pmqk04f8"; + }; + }; + + ListCompare = buildPerlPackage { + pname = "List-Compare"; + version = "0.55"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JK/JKEENAN/List-Compare-0.55.tar.gz"; + sha256 = "cc719479836579d52b02bc328ed80a98f679df043a99b5710ab2c191669eb837"; + }; + buildInputs = [ CaptureTiny ]; + meta = { + homepage = "http://thenceforward.net/perl/modules/List-Compare/"; + description = "Compare elements of two or more lists"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ListMoreUtils = buildPerlPackage { + pname = "List-MoreUtils"; + version = "0.430"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RE/REHSACK/List-MoreUtils-0.430.tar.gz"; + sha256 = "09v5cipjf634a1176wy2wicibzz51lry0d0yim9rnbfl5j2ggcb3"; + }; + propagatedBuildInputs = [ ExporterTiny ListMoreUtilsXS ]; + meta = { + description = "Provide the stuff missing in List::Util"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ TestLeakTrace ]; + }; + + ListMoreUtilsXS = buildPerlPackage { + pname = "List-MoreUtils-XS"; + version = "0.430"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RE/REHSACK/List-MoreUtils-XS-0.430.tar.gz"; + sha256 = "0hmjkhmk1qlzbg8skq7g1zral07k1x0fk4w2fpcfr7hpgkaldkp8"; + }; + preConfigure = '' + export LD=$CC + ''; + meta = { + description = "Provide the stuff missing in List::Util in XS"; + license = with lib.licenses; [ asl20 ]; + }; + }; + + ListSomeUtils = buildPerlPackage { + pname = "List-SomeUtils"; + version = "0.58"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DR/DROLSKY/List-SomeUtils-0.58.tar.gz"; + sha256 = "96eafb359339d22bf2a2de421298847a3c40f6a28b6d44005d0965da86a5469d"; + }; + buildInputs = [ TestLeakTrace ]; + propagatedBuildInputs = [ ModuleImplementation ]; + meta = { + description = "Provide the stuff missing in List::Util"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ListUtilsBy = buildPerlModule { + pname = "List-UtilsBy"; + version = "0.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PEVANS/List-UtilsBy-0.11.tar.gz"; + sha256 = "0nkpylkqccxanr8wc7j9wg6jdrizybjjd6p8q3jbh7f29cxz9pgs"; + }; + }; + + LocaleCodes = buildPerlPackage { + pname = "Locale-Codes"; + version = "3.66"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SB/SBECK/Locale-Codes-3.66.tar.gz"; + sha256 = "1rspbig3zb7l7s1mlsk9n0rrisy8qrzwn0ix6a7sd372arnwvylr"; + }; + meta = { + description = "A distribution of modules to handle locale codes"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ TestInter ]; + }; + + LocaleGettext = buildPerlPackage { + pname = "gettext"; + version = "1.07"; + buildInputs = [ pkgs.gettext ]; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PV/PVANDRY/gettext-1.07.tar.gz"; + sha256 = "05cwqjxxary11di03gg3fm6j9lbvg1dr2wpr311c1rwp8salg7ch"; + }; + LANG="C"; + }; + + LocaleMaketextLexiconGetcontext = buildPerlPackage { + pname = "Locale-Maketext-Lexicon-Getcontext"; + version = "0.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SA/SAPER/Locale-Maketext-Lexicon-Getcontext-0.05.tar.gz"; + sha256 = "75cb33df9472a5962de54082f42c6a76b260fc405ba10ca53246fb1f82c09208"; + }; + propagatedBuildInputs = [ LocaleMaketextLexicon ]; + meta = { + description = "PO file parser for Maketext"; + license = lib.licenses.mit; + }; + }; + + LocaleMOFile = buildPerlPackage { + pname = "Locale-MO-File"; + version = "0.09"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/ST/STEFFENW/Locale-MO-File-0.09.tar.gz"; + sha256 = "0gsaaqimsh5bdhns2v67j1nvb178hx2536lxmr971cwxy31ns0wp"; + }; + propagatedBuildInputs = [ ConstFast MooXStrictConstructor MooXTypesMooseLike ParamsValidate namespaceautoclean ]; + buildInputs = [ TestDifferences TestException TestHexDifferences TestNoWarnings ]; + meta = { + description = "Locale::MO::File - Write or read gettext MO files."; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + LocaleMaketextFuzzy = buildPerlPackage { + pname = "Locale-Maketext-Fuzzy"; + version = "0.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AU/AUDREYT/Locale-Maketext-Fuzzy-0.11.tar.gz"; + sha256 = "3785171ceb78cc7671319a3a6d8ced9b190e097dfcd9b2a9ebc804cd1a282f96"; + }; + meta = { + description = "Maketext from already interpolated strings"; + license = "unrestricted"; + }; + }; + + LocaleMaketextLexicon = buildPerlPackage { + pname = "Locale-Maketext-Lexicon"; + version = "1.00"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DR/DRTECH/Locale-Maketext-Lexicon-1.00.tar.gz"; + sha256 = "b73f6b04a58d3f0e38ebf2115a4c1532f1a4eef6fac5c6a2a449e4e14c1ddc7c"; + }; + meta = { + description = "Use other catalog formats in Maketext"; + license = "mit"; + }; + }; + + LocaleMsgfmt = buildPerlPackage { + pname = "Locale-Msgfmt"; + version = "0.15"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AZ/AZAWAWI/Locale-Msgfmt-0.15.tar.gz"; + sha256 = "c3276831cbeecf58be02081bcc180bd348daa35da21a7737b7b038a59f643ab4"; + }; + meta = { + description = "Compile .po files to .mo files"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + LocalePO = buildPerlPackage { + pname = "Locale-PO"; + version = "0.27"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CO/COSIMO/Locale-PO-0.27.tar.gz"; + sha256 = "3c994a4b63e6e4e836c6f79a93f51921cab77c90c9753fe0f8b5429220d516b9"; + }; + propagatedBuildInputs = [ FileSlurp ]; + meta = { + description = "Perl module for manipulating .po entries from GNU gettext"; + }; + }; + + LocaleTextDomainOO = buildPerlPackage { + pname = "Locale-TextDomain-OO"; + version = "1.036"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/ST/STEFFENW/Locale-TextDomain-OO-1.036.tar.gz"; + sha256 = "0f0fajq4k1sgyywsb7qypsf6xa1sxjx4agm8l8z2284nm3hq65xm"; + }; + propagatedBuildInputs = [ ClassLoad Clone JSON LocaleMOFile LocalePO LocaleTextDomainOOUtil LocaleUtilsPlaceholderBabelFish LocaleUtilsPlaceholderMaketext LocaleUtilsPlaceholderNamed MooXSingleton PathTiny TieSub ]; + buildInputs = [ TestDifferences TestException TestNoWarnings ]; + meta = { + description = "Locale::TextDomain::OO - Perl OO Interface to Uniforum Message Translation"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + LocaleTextDomainOOUtil = buildPerlPackage { + pname = "Locale-TextDomain-OO-Util"; + version = "4.002"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/ST/STEFFENW/Locale-TextDomain-OO-Util-4.002.tar.gz"; + sha256 = "1826pl11vr9p7zv7vqs7kcd8y5218086l90dw8lw0xzdcmzs0prw"; + }; + propagatedBuildInputs = [ namespaceautoclean ]; + buildInputs = [ TestDifferences TestException TestNoWarnings ]; + meta = { + description = "Locale::TextDomain::OO::Util - Lexicon utils"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + LocaleUtilsPlaceholderBabelFish = buildPerlPackage { + pname = "Locale-Utils-PlaceholderBabelFish"; + version = "0.006"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/ST/STEFFENW/Locale-Utils-PlaceholderBabelFish-0.006.tar.gz"; + sha256 = "1k54njj8xz19c8bjb0iln1mnfq55j3pvbff7samyrab3k59h071f"; + }; + propagatedBuildInputs = [ HTMLParser MooXStrictConstructor MooXTypesMooseLike namespaceautoclean ]; + buildInputs = [ TestDifferences TestException TestNoWarnings ]; + meta = { + description = "Locale::Utils::PlaceholderBabelFish - Utils to expand BabelFish palaceholders"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + LocaleUtilsPlaceholderMaketext = buildPerlPackage { + pname = "Locale-Utils-PlaceholderMaketext"; + version = "1.005"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/ST/STEFFENW/Locale-Utils-PlaceholderMaketext-1.005.tar.gz"; + sha256 = "1srlbp8sfnzhndgh9s4d8bglpzw0vb8gnab9r8r8sggkv15n0a2h"; + }; + propagatedBuildInputs = [ MooXStrictConstructor MooXTypesMooseLike namespaceautoclean ]; + buildInputs = [ TestDifferences TestException TestNoWarnings ]; + meta = { + description = "Locale::Utils::PlaceholderMaketext - Utils to expand maketext placeholders"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + LocaleUtilsPlaceholderNamed = buildPerlPackage { + pname = "Locale-Utils-PlaceholderNamed"; + version = "1.004"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/ST/STEFFENW/Locale-Utils-PlaceholderNamed-1.004.tar.gz"; + sha256 = "1gd68lm5w5c6ndcilx91rn84zviqyrk3fx92jjx5khxm76i8xmvg"; + }; + propagatedBuildInputs = [ MooXStrictConstructor MooXTypesMooseLike namespaceautoclean ]; + buildInputs = [ TestDifferences TestException TestNoWarnings ]; + meta = { + description = "Locale::Utils::PlaceholderNamed - Utils to expand named placeholders"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + locallib = buildPerlPackage { + pname = "local-lib"; + version = "2.000024"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HA/HAARG/local-lib-2.000024.tar.gz"; + sha256 = "01cav7m6qc1x96wna1viiw6n212f94ks7cik4vj1a1lasixr36rf"; + }; + meta = { + description = "Create and use a local lib/ for perl modules with PERL5LIB"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + propagatedBuildInputs = [ ModuleBuild ]; + }; + + LockFileSimple = buildPerlPackage { + pname = "LockFile-Simple"; + version = "0.208"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SC/SCHWIGON/lockfile-simple/LockFile-Simple-0.208.tar.gz"; + sha256 = "18pk5a030dsg1h6wd8c47wl8pzrpyh9zi9h2c9gs9855nab7iis5"; + }; + }; + + LogAny = buildPerlPackage { + pname = "Log-Any"; + version = "1.708"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PR/PREACTION/Log-Any-1.708.tar.gz"; + sha256 = "e1407759dc9462ab096d4ddc89feaac8abb341c5429e38cf6f7b8a996a35ecd9"; + }; + # Syslog test fails. + preCheck = "rm t/syslog.t"; + meta = { + homepage = "https://github.com/preaction/Log-Any"; + description = "Bringing loggers and listeners together"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + LogAnyAdapterLog4perl = buildPerlPackage { + pname = "Log-Any-Adapter-Log4perl"; + version = "0.09"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PR/PREACTION/Log-Any-Adapter-Log4perl-0.09.tar.gz"; + sha256 = "19f1drqnzr6g4xwjm6jk4iaa3zmiax8bzxqch04f4jr12bjd75qi"; + }; + propagatedBuildInputs = [ LogAny LogLog4perl ]; + meta = { + description = "Log::Any adapter for Log::Log4perl"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/preaction/Log-Any-Adapter-Log4perl"; + }; + }; + + LogAnyAdapterTAP = buildPerlPackage { + pname = "Log-Any-Adapter-TAP"; + version = "0.003003"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NE/NERDVANA/Log-Any-Adapter-TAP-0.003003.tar.gz"; + sha256 = "131f0689b2b42b1b31449714c6eda8f811dd96a7c86748f1e03b239cfd0121c0"; + }; + propagatedBuildInputs = [ LogAny TryTiny ]; + meta = { + homepage = "https://github.com/silverdirk/perl-Log-Any-Adapter-TAP"; + description = "Logger suitable for use with TAP test files"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + LogContextual = buildPerlPackage { + pname = "Log-Contextual"; + version = "0.008001"; + src = fetchurl { + url = "mirror://cpan/authors/id/F/FR/FREW/Log-Contextual-0.008001.tar.gz"; + sha256 = "b93cbcfbb8796d51c836e3b00243cda5630808c152c14eee5f20ca09c9451993"; + }; + buildInputs = [ TestFatal ]; + propagatedBuildInputs = [ DataDumperConcise ExporterDeclare Moo ]; + meta = { + homepage = "https://github.com/frioux/Log-Contextual"; + description = "Simple logging interface with a contextual log"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + LogDispatch = buildPerlPackage { + pname = "Log-Dispatch"; + version = "2.70"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DR/DROLSKY/Log-Dispatch-2.70.tar.gz"; + sha256 = "089z5723lwa8jhl57xa5b901xmvj8kgz60rid33a7lv74k2irnd3"; + }; + propagatedBuildInputs = [ DevelGlobalDestruction ParamsValidationCompiler Specio namespaceautoclean ]; + meta = { + description = "Dispatches messages to one or more outputs"; + license = lib.licenses.artistic2; + }; + buildInputs = [ IPCRun3 TestFatal TestNeeds ]; + }; + + LogDispatchFileRotate = buildPerlPackage { + pname = "Log-Dispatch-FileRotate"; + version = "1.36"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MS/MSCHOUT/Log-Dispatch-FileRotate-1.36.tar.gz"; + sha256 = "0vlmi17p7fky3x58rs7r5mdxi6l5jla8zhlb55kvssxc1w5v2b27"; + }; + propagatedBuildInputs = [ DateManip LogDispatch ]; + meta = { + description = "Log to Files that Archive/Rotate Themselves"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ PathTiny TestWarn ]; + }; + + Logger = buildPerlPackage { + pname = "Log-ger"; + version = "0.037"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PERLANCAR/Log-ger-0.037.tar.gz"; + sha256 = "0f5078g8lkyw09ijpz7dna5xw6yvpd0m283fdrw3s152xmr43qn2"; + }; + meta = { + homepage = "https://metacpan.org/release/Log-ger"; + description = "A lightweight, flexible logging framework"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + LogHandler = buildPerlModule { + pname = "Log-Handler"; + version = "0.90"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BL/BLOONIX/Log-Handler-0.90.tar.gz"; + sha256 = "0kgp3frz0y51j8kw67d6b4yyrrbh7syqraxchc7pfm442bkq0p1s"; + }; + propagatedBuildInputs = [ ParamsValidate ]; + meta = { + description = "Log messages to several outputs"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + LogMessage = buildPerlPackage { + pname = "Log-Message"; + version = "0.08"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BI/BINGOS/Log-Message-0.08.tar.gz"; + sha256 = "bd697dd62aaf26d118e9f0a0813429deb1c544e4501559879b61fcbdfe99fe46"; + }; + meta = { + description = "Powerful and flexible message logging mechanism"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + LogMessageSimple = buildPerlPackage { + pname = "Log-Message-Simple"; + version = "0.10"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BI/BINGOS/Log-Message-Simple-0.10.tar.gz"; + sha256 = "15nxi935nfrf8dkdrgvcrf2qlai4pbz03yj8sja0n9mcq2jd24ma"; + }; + propagatedBuildInputs = [ LogMessage ]; + meta = { + description = "Simplified interface to Log::Message"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + LogTrace = buildPerlPackage { + pname = "Log-Trace"; + version = "1.070"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BB/BBC/Log-Trace-1.070.tar.gz"; + sha256 = "1qrnxn9b05cqyw1286djllnj8wzys10754glxx6z5hihxxc85jwy"; + }; + }; + + MCE = buildPerlPackage { + pname = "MCE"; + version = "1.874"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MARIOROY/MCE-1.874.tar.gz"; + sha256 = "1l6khsmwzfr88xb81kdvmdskxgz3pm4yz2ybxkbml4bmhh0y62fq"; + }; + meta = { + description = "Many-Core Engine for Perl providing parallel processing capabilities"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/marioroy/mce-perl"; + }; + }; + + LogLog4perl = buildPerlPackage { + pname = "Log-Log4perl"; + version = "1.53"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETJ/Log-Log4perl-1.53.tar.gz"; + sha256 = "13n39byny3yif3x6nrj9iriw8jhbhxqavwrrlm277v3f066v9gwg"; + }; + meta = { + homepage = "https://mschilli.github.io/log4perl/"; + description = "Log4j implementation for Perl"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + LogDispatchArray = buildPerlPackage { + pname = "Log-Dispatch-Array"; + version = "1.003"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Log-Dispatch-Array-1.003.tar.gz"; + sha256 = "0dvzp0gsh17jqg02460ndchyapr1haahndq1p9v6mwkv5wf9680c"; + }; + buildInputs = [ TestDeep ]; + propagatedBuildInputs = [ LogDispatch ]; + meta = { + homepage = "https://github.com/rjbs/log-dispatch-array"; + description = "Log events to an array (reference)"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + LogDispatchouli = buildPerlPackage { + pname = "Log-Dispatchouli"; + version = "2.022"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Log-Dispatchouli-2.022.tar.gz"; + sha256 = "2a2a4176adafb85a1eb9c9dc389052919e8c2c9df99aaba538c06b8da964a5df"; + }; + buildInputs = [ TestDeep TestFatal ]; + propagatedBuildInputs = [ LogDispatchArray StringFlogger SubExporterGlobExporter ]; + meta = { + homepage = "https://github.com/rjbs/Log-Dispatchouli"; + description = "A simple wrapper around Log::Dispatch"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + LogJournald = buildPerlModule rec { + pname = "Log-Journald"; + version = "0.30"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LK/LKUNDRAK/Log-Journald-0.30.tar.gz"; + sha256 = "55992cf9a1e1fb833f428300525bfa7cf7ed46b83ec414f82a091789b37d08a3"; + }; + buildInputs = [ pkgs.pkg-config pkgs.systemd ]; + postPatch = '' + substituteInPlace Build.PL \ + --replace "libsystemd-journal" "libsystemd" + ''; + meta = { + description = "Send messages to a systemd journal"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + LogLogLite = buildPerlPackage { + pname = "Log-LogLite"; + version = "0.82"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RA/RANI/Log-LogLite-0.82.tar.gz"; + sha256 = "0sqsa4750wvhw4cjmxpxqg30i1jjcddadccflisrdb23qn5zn285"; + }; + propagatedBuildInputs = [ IOLockedFile ]; + meta = { + description = "Helps us create simple logs for our application"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + LongJump = buildPerlPackage { + pname = "Long-Jump"; + version = "0.000001"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/EX/EXODIST/Long-Jump-0.000001.tar.gz"; + sha256 = "d5d6456d86992b559d8f66fc90960f919292cd3803c13403faac575762c77af4"; + }; + buildInputs = [ Test2Suite ]; + meta = { + description = "Mechanism for returning to a specific point from a deeply nested stack"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + LWP = buildPerlPackage { + pname = "libwww-perl"; + version = "6.49"; + src = fetchurl { + url = "mirror://cpan/authors/id/O/OA/OALDERS/libwww-perl-6.49.tar.gz"; + sha256 = "19k0cg4j4qz005a4ngy48z4r8dc99dxlpq8kvj7qnk15mvgd1r63"; + }; + propagatedBuildInputs = [ FileListing HTMLParser HTTPCookies HTTPDaemon HTTPNegotiate NetHTTP TryTiny WWWRobotRules ]; + # support cross-compilation by avoiding using `has_module` which does not work in miniperl (it requires B native module) + postPatch = lib.optionalString (stdenv.buildPlatform != stdenv.hostPlatform) '' + substituteInPlace Makefile.PL --replace 'if has_module' 'if 0; #' + ''; + doCheck = !stdenv.isDarwin; + meta = with lib; { + description = "The World-Wide Web library for Perl"; + license = with licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ TestFatal TestNeeds TestRequiresInternet ]; + }; + + LWPAuthenOAuth = buildPerlPackage { + pname = "LWP-Authen-OAuth"; + version = "1.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TI/TIMBRODY/LWP-Authen-OAuth-1.02.tar.gz"; + sha256 = "e78e0bd7de8002cfb4760073258d555ef55b2c27c07a94b3d8a2166a17fd96bc"; + }; + propagatedBuildInputs = [ LWP ]; + meta = { + description = "Generate signed OAuth requests"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + LWPMediaTypes = buildPerlPackage { + pname = "LWP-MediaTypes"; + version = "6.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/O/OA/OALDERS/LWP-MediaTypes-6.04.tar.gz"; + sha256 = "1n8rg6csv3dsvymg06cmxipimr6cb1g9r903ghm1qsmiv89cl6wg"; + }; + meta = { + description = "Guess media type for a file or a URL"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ TestFatal ]; + }; + + LWPProtocolConnect = buildPerlPackage { + pname = "LWP-Protocol-connect"; + version = "6.09"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BE/BENNING/LWP-Protocol-connect-6.09.tar.gz"; + sha256 = "9f252394775e23aa42c3176611e5930638ab528d5190110b4731aa5b0bf35a15"; + }; + buildInputs = [ TestException ]; + propagatedBuildInputs = [ LWPProtocolHttps ]; + meta = { + description = "Provides HTTP/CONNECT proxy support for LWP::UserAgent"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + LWPProtocolHttps = buildPerlPackage { + pname = "LWP-Protocol-https"; + version = "6.09"; + src = fetchurl { + url = "mirror://cpan/authors/id/O/OA/OALDERS/LWP-Protocol-https-6.09.tar.gz"; + sha256 = "14pm785cgyrnppks6ccasb2vkqifh0a8fz36nmnhc2v926jy3kqn"; + }; + patches = [ ../development/perl-modules/lwp-protocol-https-cert-file.patch ]; + propagatedBuildInputs = [ IOSocketSSL LWP ]; + doCheck = false; # tries to connect to https://www.apache.org/. + meta = { + description = "Provide https support for LWP::UserAgent"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ TestRequiresInternet ]; + }; + + LWPProtocolhttp10 = buildPerlPackage { + pname = "LWP-Protocol-http10"; + version = "6.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GA/GAAS/LWP-Protocol-http10-6.03.tar.gz"; + sha256 = "1lxq40qfwfai9ryhzhsdnycc4189c8kfl43rf7qq34fmz48skzzk"; + }; + propagatedBuildInputs = [ LWP ]; + meta = { + description = "Legacy HTTP/1.0 support for LWP"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + LWPUserAgentCached = buildPerlPackage { + pname = "LWP-UserAgent-Cached"; + version = "0.08"; + src = fetchurl { + url = "mirror://cpan/authors/id/O/OL/OLEG/LWP-UserAgent-Cached-0.08.tar.gz"; + hash = "sha256-Pc5atMeAQWVs54Vk92Az5b0ew4b1TS57MHQK5I7nh8M="; + }; + propagatedBuildInputs = [ LWP ]; + meta = { + description = "LWP::UserAgent with simple caching mechanism"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + LWPUserAgentDNSHosts = buildPerlModule { + pname = "LWP-UserAgent-DNS-Hosts"; + version = "0.14"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MASAKI/LWP-UserAgent-DNS-Hosts-0.14.tar.gz"; + sha256 = "07w741r98synwnrh9hkv47wr67arhr2bmnvb6s5zqvq87x27jscr"; + }; + propagatedBuildInputs = [ LWP ScopeGuard ]; + buildInputs = [ ModuleBuildTiny TestFakeHTTPD TestSharedFork TestTCP TestUseAllModules ]; + meta = { + description = "Override LWP HTTP/HTTPS request's host like /etc/hosts"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/masaki/p5-LWP-UserAgent-DNS-Hosts"; + }; + }; + + LWPUserAgentDetermined = buildPerlPackage { + pname = "LWP-UserAgent-Determined"; + version = "1.07"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AL/ALEXMV/LWP-UserAgent-Determined-1.07.tar.gz"; + sha256 = "06d8d50e8cd3692a11cb4fb44a2f84e5476a98f0e2e6a4a0dfce9f67e55ddb53"; + }; + propagatedBuildInputs = [ LWP ]; + meta = { + description = "A virtual browser that retries errors"; + }; + }; + + LWPUserAgentMockable = buildPerlModule { + pname = "LWP-UserAgent-Mockable"; + version = "1.18"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MJ/MJEMMESON/LWP-UserAgent-Mockable-1.18.tar.gz"; + sha256 = "0923ahl22c0gdzrihj7dqnrawia9hmcl462asf4ry8d5wd84z1i5"; + }; + propagatedBuildInputs = [ HookLexWrap LWP SafeIsa ]; + # Tests require network connectivity + # https://rt.cpan.org/Public/Bug/Display.html?id=63966 is the bug upstream, + # which doesn't look like it will get fixed anytime soon. + doCheck = false; + buildInputs = [ ModuleBuildTiny TestRequiresInternet ]; + }; + + LWPxParanoidAgent = buildPerlPackage { + pname = "LWPx-ParanoidAgent"; + version = "1.12"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SA/SAXJAZMAN/lwp/LWPx-ParanoidAgent-1.12.tar.gz"; + sha256 = "0gfhw3jbs25yya2dryv8xvyn9myngcfcmsybj7gkq62fnznil16c"; + }; + doCheck = false; # 3 tests fail, probably because they try to connect to the network + propagatedBuildInputs = [ LWP NetDNS ]; + }; + + maatkit = callPackage ../development/perl-modules/maatkit { }; + + MacPasteboard = buildPerlPackage { + pname = "Mac-Pasteboard"; + version = "0.011"; + src = fetchurl { + url = "mirror://cpan/authors/id/W/WY/WYANT/Mac-Pasteboard-0.011.tar.gz"; + sha256 = "1a82pacp6pph3y2agdihzr4vc0phx85mq5am9czc81g8n484b35x"; + }; + meta = with lib; { + description = "Manipulate Mac OS X pasteboards"; + license = with licenses; [ artistic1 gpl1Plus ]; + platforms = platforms.darwin; + }; + buildInputs = [ pkgs.darwin.apple_sdk.frameworks.ApplicationServices ]; + }; + + MailAuthenticationResults = buildPerlPackage { + pname = "Mail-AuthenticationResults"; + version = "1.20200824.1"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MB/MBRADSHAW/Mail-AuthenticationResults-1.20200824.1.tar.gz"; + sha256 = "16hyl631yk1d5g3jns0n4mkjawlzqnf003brnk6qc3mbkziaifik"; + }; + buildInputs = [ TestException ]; + meta = { + description = "Object Oriented Authentication-Results Headers"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + propagatedBuildInputs = [ JSON ]; + }; + + MailMaildir = buildPerlPackage { + version = "1.0.0"; + pname = "Mail-Maildir"; + src = fetchurl { + url = "mirror://cpan/authors/id/Z/ZE/ZEROALTI/Mail-Maildir-100/Mail-Maildir-1.0.0.tar.bz2"; + sha256 = "1krkqfps6q3ifrhi9450l5gm9199qyfcm6vidllr0dv65kdaqpj4"; + }; + }; + + MailBox = buildPerlPackage { + version = "3.009"; + pname = "Mail-Box"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MARKOV/Mail-Box-3.009.tar.gz"; + sha256 = "0rcig7mzp8c5r4dxnynjaryyv4claljraxl44gn1kj8l1rmj31ci"; + }; + + doCheck = false; + + propagatedBuildInputs = [ DevelGlobalDestruction FileRemove Later MailTransport ]; + }; + + MailMboxMessageParser = buildPerlPackage { + pname = "Mail-Mbox-MessageParser"; + version = "1.5111"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DC/DCOPPIT/Mail-Mbox-MessageParser-1.5111.tar.gz"; + sha256 = "5723c0aa9cc10bab9ed1e3bfd9d5c95f7159e71c1a475414eb1af1dee3a46237"; + }; + buildInputs = [ FileSlurper TestCompile TestPod TestPodCoverage TextDiff UNIVERSALrequire URI ]; + propagatedBuildInputs = [ FileHandleUnget ]; + meta = { + homepage = "https://github.com/coppit/mail-mbox-messageparser"; + description = "A fast and simple mbox folder reader"; + license = lib.licenses.gpl2; + maintainers = with maintainers; [ romildo ]; + }; + }; + + MailMessage = buildPerlPackage { + pname = "Mail-Message"; + version = "3.010"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MARKOV/Mail-Message-3.010.tar.gz"; + sha256 = "04wblxrkcjwn7hw6vkvf307lbpc9blj1glqmm59q3642wcd4nhaq"; + }; + propagatedBuildInputs = [ IOStringy MIMETypes MailTools URI UserIdentity ]; + meta = { + description = "Processing MIME messages"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MailDKIM = buildPerlPackage rec { + pname = "Mail-DKIM"; + version = "1.20200907"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MB/MBRADSHAW/Mail-DKIM-1.20200907.tar.gz"; + sha256 = "1x8v4pa0447c1xqri1jn96i8vlyjpl6jmz63nb1vifbp16yi3zxb"; + }; + propagatedBuildInputs = [ CryptOpenSSLRSA MailAuthenticationResults MailTools NetDNS ]; + doCheck = false; # tries to access the domain name system + buildInputs = [ NetDNSResolverMock TestRequiresInternet YAMLLibYAML ]; + }; + + MailIMAPClient = buildPerlPackage { + pname = "Mail-IMAPClient"; + version = "3.42"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PL/PLOBBES/Mail-IMAPClient-3.42.tar.gz"; + sha256 = "0znf035ikaxyfishv507qq6g691xvbnziqlcwfikkj2l1kan88hw"; + }; + propagatedBuildInputs = [ ParseRecDescent ]; + }; + + MailPOP3Client = buildPerlPackage { + pname = "Mail-POP3Client"; + version = "2.19"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SD/SDOWD/Mail-POP3Client-2.19.tar.gz"; + sha256 = "1142d6247a93cb86b23ed8835553bb2d227ff8213ee2743e4155bb93f47acb59"; + }; + meta = { + description = "Perl 5 module to talk to a POP3 (RFC1939) server"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MailRFC822Address = buildPerlPackage { + pname = "Mail-RFC822-Address"; + version = "0.3"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PD/PDWARREN/Mail-RFC822-Address-0.3.tar.gz"; + sha256 = "351ef4104ecb675ecae69008243fae8243d1a7e53c681eeb759e7b781684c8a7"; + }; + }; + + MailSender = buildPerlPackage { + pname = "Mail-Sender"; + version = "0.903"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CA/CAPOEIRAB/Mail-Sender-0.903.tar.gz"; + sha256 = "4413eb49f520a8318151811ccb05a8d542973aada20aa503ad32f9ffc98a39bf"; + }; + meta = { + homepage = "https://github.com/Perl-Email-Project/Mail-Sender"; + description = "(DEPRECATED) module for sending mails with attachments through an SMTP server"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MailSendmail = buildPerlPackage { + pname = "Mail-Sendmail"; + version = "0.80"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NE/NEILB/Mail-Sendmail-0.80.tar.gz"; + sha256 = "1r38qbkj7jwj8cqy1rnqzkk81psxi08b1aiq392817f3bk5ri2jv"; + }; + # The test suite simply loads the module and attempts to send an email to + # the module's author, the latter of which is a) more of an integration + # test, b) impossible to verify, and c) won't work from a sandbox. Replace + # it in its entirety with the following simple smoke test. + checkPhase = '' + perl -I blib/lib -MMail::Sendmail -e 'print "1..1\nok 1\n"' + ''; + meta = { + maintainers = teams.deshaw.members; + description = "Simple platform independent mailer"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MailSPF = buildPerlPackage { + pname = "Mail-SPF"; + version = "2.9.0"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JM/JMEHNLE/mail-spf/Mail-SPF-v2.9.0.tar.gz"; + sha256 = "61cb5915f1c7acc7a931ffc1bfc1291bdfac555e2a46eb2391b995ea9ecb6162"; + }; + # remove this patch patches = [ ../development/perl-modules/Mail-SPF.patch ]; + + buildInputs = [ ModuleBuild NetDNSResolverProgrammable ]; + propagatedBuildInputs = [ Error NetAddrIP NetDNS URI ]; + + buildPhase = "perl Build.PL --install_base=$out --install_path=\"sbin=$out/bin\" --install_path=\"lib=$out/${perl.libPrefix}\"; ./Build build "; + + doCheck = false; # The main test performs network access + meta = { + description = "An object-oriented implementation of Sender Policy Framework"; + license = lib.licenses.bsd3; + }; + }; + + + MailTools = buildPerlPackage { + pname = "MailTools"; + version = "2.21"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MARKOV/MailTools-2.21.tar.gz"; + sha256 = "1js43bp2dnd8n2rv8clsv749166jnyqnc91k4wkkmw5n4rlbvnaa"; + }; + propagatedBuildInputs = [ TimeDate ]; + meta = { + description = "Various e-mail related modules"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MailTransport = buildPerlPackage { + pname = "Mail-Transport"; + version = "3.005"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MARKOV/Mail-Transport-3.005.tar.gz"; + sha256 = "18wna71iyrgn63l7samacvnx2a5ydpcffkg313c8a4jwf0zvkp6h"; + }; + propagatedBuildInputs = [ MailMessage ]; + meta = { + description = "Email message exchange"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MathBase85 = buildPerlPackage { + pname = "Math-Base85"; + version = "0.4"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PT/PTC/Math-Base85-0.4.tar.gz"; + sha256 = "03cbp5ls98zcj183wjzlzjcrhbc96mw3p1hagzy1yplj1xh5ia4y"; + }; + meta = { + description = "Perl extension for base 85 numbers, as referenced by RFC 1924"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MathBaseConvert = buildPerlPackage { + pname = "Math-Base-Convert"; + version = "0.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIKER/Math-Base-Convert-0.11.tar.gz"; + sha256 = "8c0971355f24c93b79e77ad54a4570090a1a598fcb9b86f5c17eba42f38b40e0"; + }; + }; + + MathLibm = buildPerlPackage { + pname = "Math-Libm"; + version = "1.00"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DS/DSLEWART/Math-Libm-1.00.tar.gz"; + sha256 = "0xn2a950mzzs5q1c4q98ckysn9dz20x7r35g02zvk35chgr0klxz"; + }; + }; + + MathCalcParser = buildPerlPackage { + pname = "Math-Calc-Parser"; + version = "1.005"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DB/DBOOK/Math-Calc-Parser-1.005.tar.gz"; + sha256 = "afc3eb496ab3a3a301b3437af07e197eb743c06090f0101dacf820302f2b7f75"; + }; + buildInputs = [ TestNeeds ]; + meta = { + homepage = "https://github.com/Grinnz/Math-Calc-Parser"; + description = "Parse and evaluate mathematical expressions"; + license = lib.licenses.artistic2; + maintainers = with maintainers; [ sgo ]; + }; + }; + + MathCalcUnits = buildPerlPackage { + pname = "Math-Calc-Units"; + version = "1.07"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SF/SFINK/Math-Calc-Units-1.07.tar.gz"; + sha256 = "13wgbxv2fmigdj0vf7nwkq1y2q07jgfj8wdrpqkywfxv4zdwzqv1"; + }; + meta = { + description = "Human-readable unit-aware calculator"; + license = with lib.licenses; [ artistic1 gpl2 ]; + }; + }; + + MathBigInt = buildPerlPackage { + pname = "Math-BigInt"; + version = "1.999818"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PJ/PJACKLAM/Math-BigInt-1.999818.tar.gz"; + sha256 = "b27634356ce2af9b7c0123ac8395a89a32fb15aeae82fcd39de8156cad278c15"; + }; + meta = { + description = "Arbitrary size integer/float math package"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MathBigIntGMP = buildPerlPackage { + pname = "Math-BigInt-GMP"; + version = "1.6007"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PJ/PJACKLAM/Math-BigInt-GMP-1.6007.tar.gz"; + sha256 = "07y0akadx2nm1bsp17v12785s3ni1l5qyqkk4q3pxcyc41nmwwjx"; + }; + buildInputs = [ pkgs.gmp ]; + doCheck = false; + NIX_CFLAGS_COMPILE = "-I${pkgs.gmp.dev}/include"; + NIX_CFLAGS_LINK = "-L${pkgs.gmp.out}/lib -lgmp"; + propagatedBuildInputs = [ MathBigInt ]; + }; + + MathBigIntLite = buildPerlPackage { + pname = "Math-BigInt-Lite"; + version = "0.19"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PJ/PJACKLAM/Math-BigInt-Lite-0.19.tar.gz"; + sha256 = "06hm4vgihxr7m4jrq558phnnxy4am6ifba447j0h4p6jym5h7xih"; + }; + propagatedBuildInputs = [ MathBigInt ]; + meta = { + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MathClipper = buildPerlModule { + pname = "Math-Clipper"; + version = "1.29"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHELDRAKE/Math-Clipper-1.29.tar.gz"; + sha256 = "14vmz1x8hwnlk239dcsh0n39kd7cd7v5g1iikgbyjvc66gqw89sk"; + }; + nativeBuildInputs = [ pkgs.ld-is-cc-hook ]; + buildInputs = [ ExtUtilsCppGuess ExtUtilsTypemapsDefault ExtUtilsXSpp ModuleBuildWithXSpp TestDeep ]; + }; + + MathConvexHullMonotoneChain = buildPerlPackage { + pname = "Math-ConvexHull-MonotoneChain"; + version = "0.01"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SM/SMUELLER/Math-ConvexHull-MonotoneChain-0.01.tar.gz"; + sha256 = "1xcl7cz62ydddji9qzs4xsfxss484jqjlj4iixa4aci611cw92r8"; + }; + }; + + MathFibonacci = buildPerlPackage { + pname = "Math-Fibonacci"; + version = "1.5"; + src = fetchurl { + url = "mirror://cpan/authors/id/V/VI/VIPUL/Math-Fibonacci-1.5.tar.gz"; + sha256 = "70a8286e94558df99dc92f52d83e1e20a7b8f7852bcc3a1de7d9e338260b99ba"; + }; + meta = { + description = "This module provides a few functions related to Fibonacci numbers"; + license = lib.licenses.artistic2; + }; + }; + + MathGMP = buildPerlPackage { + pname = "Math-GMP"; + version = "2.20"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/Math-GMP-2.20.tar.gz"; + sha256 = "0psmpj3j8cw02b5bzb7qnkd4rcpxm82891rwpdi2hx2jxy0mznhn"; + }; + buildInputs = [ pkgs.gmp AlienGMP ]; + NIX_CFLAGS_COMPILE = "-I${pkgs.gmp.dev}/include"; + NIX_CFLAGS_LINK = "-L${pkgs.gmp.out}/lib -lgmp"; + meta = { + description = "High speed arbitrary size integer math"; + license = with lib.licenses; [ lgpl21Plus ]; + }; + }; + + MathGMPz = buildPerlPackage { + pname = "Math-GMPz"; + version = "0.48"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SI/SISYPHUS/Math-GMPz-0.48.tar.gz"; + sha256 = "f4459ed32fb9bb793e2504fd442c515fd468a4a34d2a1f98e46ca41e275c73cb"; + }; + buildInputs = [ pkgs.gmp ]; + NIX_CFLAGS_LINK = "-L${pkgs.gmp.out}/lib -lgmp"; + meta = { + homepage = "https://github.com/sisyphus/math-gmpz"; + description = "Perl interface to the GMP integer functions"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = with maintainers; [ sgo ]; + }; + }; + + MathGeometryVoronoi = buildPerlPackage { + pname = "Math-Geometry-Voronoi"; + version = "1.3"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SA/SAMTREGAR/Math-Geometry-Voronoi-1.3.tar.gz"; + sha256 = "0b206k2q5cznld45cjhgm0as0clc9hk135ds8qafbkl3k175w1vj"; + }; + propagatedBuildInputs = [ ClassAccessor ParamsValidate ]; + }; + + MathInt128 = buildPerlPackage { + pname = "Math-Int128"; + version = "0.22"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SA/SALVA/Math-Int128-0.22.tar.gz"; + sha256 = "1g0ra7ldv4fz3kqqg45dlrfavi2abfmlhf0py5ank1jk2x0clc56"; + }; + propagatedBuildInputs = [ MathInt64 ]; + meta = { + description = "Manipulate 128 bits integers in Perl"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + broken = stdenv.is32bit; # compiler doesn't support a 128-bit integer type + }; + }; + + MathInt64 = buildPerlPackage { + pname = "Math-Int64"; + version = "0.54"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SA/SALVA/Math-Int64-0.54.tar.gz"; + sha256 = "0lfkc0cry65lnsi28gjyz2kvdkanbhhpc0pyrswsczj3k3k53z6w"; + }; + meta = { + description = "Manipulate 64 bits integers in Perl"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MathPari = buildPerlPackage rec { + pname = "Math-Pari"; + version = "2.030518"; + nativeBuildInputs = [ pkgs.unzip ]; + pariversion = "2.1.7"; + pari_tgz = fetchurl { + url = "https://pari.math.u-bordeaux.fr/pub/pari/OLD/2.1/pari-${pariversion}.tgz"; + sha256 = "1yjml5z1qdn258qh6329v7vib2gyx6q2np0s5ybci0rhmz6z4hli"; + }; + preConfigure = "cp ${pari_tgz} pari-${pariversion}.tgz"; + makeMakerFlags = "pari_tgz=pari-${pariversion}.tgz"; + src = fetchurl { + url = "mirror://cpan/authors/id/I/IL/ILYAZ/modules/Math-Pari-2.030518.zip"; + sha256 = "dc38955a9690be6bafa8de2526212377c3ec9fe8da5ec02263a9caf94b58bb91"; + }; + meta = { + description = "Perl interface to PARI"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MathPlanePath = buildPerlPackage { + pname = "Math-PlanePath"; + version = "129"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KR/KRYDE/Math-PlanePath-129.tar.gz"; + sha256 = "0zirgq9n422wc1j95pijkr88wwmzhll5nxh3sb2vcxsh9l75v8cd"; + }; + propagatedBuildInputs = [ MathLibm constant-defer ]; + buildInputs = [ DataFloat MathBigIntLite NumberFraction ]; + }; + + MathPrimeUtil = buildPerlPackage { + pname = "Math-Prime-Util"; + version = "0.73"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DANAJ/Math-Prime-Util-0.73.tar.gz"; + sha256 = "4afa6dd8cdb97499bd4eca6925861812c29d9f5a0f1ac27ad9d2d9c9b5602894"; + }; + propagatedBuildInputs = [ MathPrimeUtilGMP ]; + meta = { + homepage = "https://github.com/danaj/Math-Prime-Util"; + description = "Utilities related to prime numbers, including fast sieves and factoring"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + buildInputs = [ TestWarn ]; + }; + + MathPrimeUtilGMP = buildPerlPackage { + pname = "Math-Prime-Util-GMP"; + version = "0.52"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DANAJ/Math-Prime-Util-GMP-0.52.tar.gz"; + sha256 = "2697c7fd5c7e35fdec7f50ed56a67be807a2f22657589e637dad3592744003be"; + }; + buildInputs = [ pkgs.gmp ]; + NIX_CFLAGS_COMPILE = "-I${pkgs.gmp.dev}/include"; + NIX_CFLAGS_LINK = "-L${pkgs.gmp.out}/lib -lgmp"; + meta = { + homepage = "https://github.com/danaj/Math-Prime-Util-GMP"; + description = "Utilities related to prime numbers, using GMP"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + MathProvablePrime = buildPerlPackage { + pname = "Math-ProvablePrime"; + version = "0.045"; + src = fetchurl { + url = "mirror://cpan/authors/id/F/FE/FELIPE/Math-ProvablePrime-0.045.tar.gz"; + sha256 = "32dce42861ce065a875a91ec14c6557e89af07df10cc450d1c4ded13dcbe3dd5"; + }; + buildInputs = [ FileWhich TestClass TestDeep TestException TestNoWarnings ]; + propagatedBuildInputs = [ BytesRandomSecureTiny ]; + meta = { + description = "Generate a provable prime number, in pure Perl"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + MathRandom = buildPerlPackage { + pname = "Math-Random"; + version = "0.72"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GR/GROMMEL/Math-Random-0.72.tar.gz"; + sha256 = "0k15pk2qx9wrp5xqzhymm1ph4nb314ysrsyr0pjnvn8ii0r241dy"; + }; + meta = { + }; + }; + + MathRandomISAAC = buildPerlPackage { + pname = "Math-Random-ISAAC"; + version = "1.004"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JA/JAWNSY/Math-Random-ISAAC-1.004.tar.gz"; + sha256 = "0z1b3xbb3xz71h25fg6jgsccra7migq7s0vawx2rfzi0pwpz0wr7"; + }; + buildInputs = [ TestNoWarnings ]; + meta = { + description = "Perl interface to the ISAAC PRNG algorithm"; + license = with lib.licenses; [ publicDomain mit artistic2 gpl3 ]; + }; + }; + + MathRandomMTAuto = buildPerlPackage { + pname = "Math-Random-MT-Auto"; + version = "6.23"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JD/JDHEDDEN/Math-Random-MT-Auto-6.23.tar.gz"; + sha256 = "04v3fxbqg6bs7dpljw64v62jqb10l2xdrln4l3slz5k266nvbg2q"; + }; + propagatedBuildInputs = [ ObjectInsideOut ]; + meta = { + description = "Auto-seeded Mersenne Twister PRNGs"; + license = "unrestricted"; + }; + }; + + MathRandomSecure = buildPerlPackage { + pname = "Math-Random-Secure"; + version = "0.080001"; + src = fetchurl { + url = "mirror://cpan/authors/id/F/FR/FREW/Math-Random-Secure-0.080001.tar.gz"; + sha256 = "0dgbf4ncll4kmgkyb9fsaxn0vf2smc9dmwqzgh3259zc2zla995z"; + }; + buildInputs = [ ListMoreUtils TestSharedFork TestWarn ]; + propagatedBuildInputs = [ CryptRandomSource MathRandomISAAC ]; + meta = { + description = "Cryptographically-secure, cross-platform replacement for rand()"; + license = lib.licenses.artistic2; + }; + }; + + MathRound = buildPerlPackage { + pname = "Math-Round"; + version = "0.07"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GR/GROMMEL/Math-Round-0.07.tar.gz"; + sha256 = "09wkvqj4hfq9y0fimri967rmhnq90dc2wf20lhlmqjp5hsd359vk"; + }; + }; + + MathVecStat = buildPerlPackage { + pname = "Math-VecStat"; + version = "0.08"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AS/ASPINELLI/Math-VecStat-0.08.tar.gz"; + sha256 = "03bdcl9pn2bc9b50c50nhnr7m9wafylnb3v21zlch98h9c78x6j0"; + }; + }; + + MaxMindDBCommon = buildPerlPackage { + pname = "MaxMind-DB-Common"; + version = "0.040001"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MAXMIND/MaxMind-DB-Common-0.040001.tar.gz"; + sha256 = "1mqvnabskhyvi2f10f602gisfk39ws51ky55lixd0033sd5xzikb"; + }; + propagatedBuildInputs = [ DataDumperConcise DateTime ListAllUtils MooXStrictConstructor ]; + meta = { + description = "Code shared by the MaxMind DB reader and writer modules"; + license = with lib.licenses; [ artistic2 ]; + }; + }; + + MaxMindDBReader = buildPerlPackage { + pname = "MaxMind-DB-Reader"; + version = "1.000014"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MAXMIND/MaxMind-DB-Reader-1.000014.tar.gz"; + sha256 = "1a9rrvarw3q6378w3sqv632w36a9bsh0r90yfa49lzwnkj7hf81q"; + }; + propagatedBuildInputs = [ DataIEEE754 DataPrinter DataValidateIP MaxMindDBCommon ]; + buildInputs = [ PathClass TestBits TestFatal TestNumberDelta TestRequires ]; + meta = { + description = "Read MaxMind DB files and look up IP addresses"; + license = with lib.licenses; [ artistic2 ]; + }; + }; + + MaxMindDBReaderXS = buildPerlModule { + pname = "MaxMind-DB-Reader-XS"; + version = "1.000008"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MAXMIND/MaxMind-DB-Reader-XS-1.000008.tar.gz"; + sha256 = "11y71m77y38mi68gw5dqx54z9syvax42x3m9v7mgx35c5z4gpal4"; + }; + propagatedBuildInputs = [ pkgs.libmaxminddb MathInt128 MaxMindDBReader ]; + buildInputs = [ NetWorks PathClass TestFatal TestNumberDelta TestRequires ]; + meta = { + description = "Fast XS implementation of MaxMind DB reader"; + license = with lib.licenses; [ artistic2 ]; + broken = stdenv.isDarwin; # never built on Hydra https://hydra.nixos.org/job/nixpkgs/staging-next/perl534Packages.MaxMindDBReaderXS.x86_64-darwin + }; + }; + + MaxMindDBWriter = buildPerlModule { + pname = "MaxMind-DB-Writer"; + version = "0.300003"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MAXMIND/MaxMind-DB-Writer-0.300003.tar.gz"; + sha256 = "0gpbrlmxjl45k0wg5v9ghw415hd0fns9fk8ncxzlfyjzjsxgalxs"; + }; + propagatedBuildInputs = [ DigestSHA1 MaxMindDBReader MooseXParamsValidate MooseXStrictConstructor NetWorks SerealDecoder SerealEncoder ]; + buildInputs = [ DevelRefcount JSON TestBits TestDeep TestFatal TestHexDifferences TestRequires TestWarnings ]; + hardeningDisable = [ "format" ]; + meta = { + description = "Create MaxMind DB database files"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + broken = stdenv.isDarwin; # never built on Hydra https://hydra.nixos.org/job/nixpkgs/staging-next/perl534Packages.MaxMindDBWriter.x86_64-darwin + }; + }; + + Memoize = buildPerlPackage { + pname = "Memoize"; + version = "1.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MJ/MJD/Memoize-1.03.tgz"; + sha256 = "5239cc5f644a50b0de9ffeaa51fa9991eb06ecb1bf4678873e3ab89af9c0daf3"; + }; + }; + + MemoizeExpireLRU = buildPerlPackage { + pname = "Memoize-ExpireLRU"; + version = "0.56"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NE/NEILB/Memoize-ExpireLRU-0.56.tar.gz"; + sha256 = "1xnp3jqabl4il5kfadlqimbxhzsbm7gpwrgw0m5s5fdsrc0n70zf"; + }; + meta = { + description = "Expiry plug-in for Memoize that adds LRU cache expiration"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/neilb/Memoize-ExpireLRU"; + }; + }; + + Menlo = buildPerlPackage { + pname = "Menlo"; + version = "1.9019"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIYAGAWA/Menlo-1.9019.tar.gz"; + sha256 = "3b573f68e7b3a36a87c860be258599330fac248b518854dfb5657ac483dca565"; + }; + propagatedBuildInputs = [ CPANCommonIndex CPANMetaCheck CaptureTiny ExtUtilsHelpers ExtUtilsInstallPaths Filepushd HTTPTinyish ModuleCPANfile ParsePMFile StringShellQuote Win32ShellQuote locallib ]; + meta = { + homepage = "https://github.com/miyagawa/cpanminus"; + description = "A CPAN client"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MenloLegacy = buildPerlPackage { + pname = "Menlo-Legacy"; + version = "1.9022"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIYAGAWA/Menlo-Legacy-1.9022.tar.gz"; + sha256 = "a6acac3fee318a804b439de54acbc7c27f0b44cfdad8551bbc9cd45986abc201"; + }; + propagatedBuildInputs = [ Menlo ]; + meta = { + homepage = "https://github.com/miyagawa/cpanminus"; + description = "Legacy internal and client support for Menlo"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MetaBuilder = buildPerlModule { + pname = "Meta-Builder"; + version = "0.004"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/EX/EXODIST/Meta-Builder-0.004.tar.gz"; + sha256 = "acb499aa7206eb9db21eb85357a74521bfe3bdae4a6416d50a7c75b939cf56fe"; + }; + buildInputs = [ FennecLite TestException ]; + meta = { + description = "Tools for creating Meta objects to track custom metrics"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MetaCPANClient = buildPerlPackage { + pname = "MetaCPAN-Client"; + version = "2.029000"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MICKEY/MetaCPAN-Client-2.029000.tar.gz"; + sha256 = "0z75qzrr6r9ijp469majavq8la2jbgn1dq02vdm5m6ip7f887n65"; + }; + + # Most tests are online, so we only include offline tests + postPatch = '' + substituteInPlace Makefile.PL \ + --replace '"t/*.t t/api/*.t"' \ + '"t/00-report-prereqs.t t/api/_get.t t/api/_get_or_search.t t/api/_search.t t/entity.t t/request.t t/resultset.t"' + ''; + + buildInputs = [ LWPProtocolHttps TestFatal TestNeeds ]; + propagatedBuildInputs = [ IOSocketSSL JSONMaybeXS Moo RefUtil SafeIsa TypeTiny URI ]; + meta = { + homepage = "https://github.com/metacpan/metacpan-client"; + description = "A comprehensive, DWIM-featured client to the MetaCPAN API"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = with maintainers; [ sgo ]; + }; + }; + + MethodSignaturesSimple = buildPerlPackage { + pname = "Method-Signatures-Simple"; + version = "1.07"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RH/RHESA/Method-Signatures-Simple-1.07.tar.gz"; + sha256 = "1p6sf6iyyn73pc89mfr65bzxvbw1ibcsp4j10iv8ik3p353pvkf8"; + }; + propagatedBuildInputs = [ DevelDeclare ]; + meta = { + description = "Basic method declarations with signatures, without source filters"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MetricsAny = buildPerlModule { + pname = "Metrics-Any"; + version = "0.06"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PEVANS/Metrics-Any-0.06.tar.gz"; + sha256 = "0dwqzd40f6isb2sxn7lymsp0ism7s4xwfhb2ilavnxx2x3w9sllw"; + }; + buildInputs = [ TestFatal ]; + meta = { + description = "abstract collection of monitoring metrics"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + # TODO: use CPAN version + MHonArc = buildPerlPackage rec { + pname = "MHonArc"; + version = "2.6.19"; + + src = fetchurl { + url = "https://www.mhonarc.org/release/MHonArc/tar/MHonArc-${version}.tar.gz"; + sha256 = "0ll3v93yji334zqp6xfzfxc0127pmjcznmai1l5q6dzawrs2igzq"; + }; + + patches = [ ../development/perl-modules/mhonarc.patch ]; + + outputs = [ "out" "dev" ]; # no "devdoc" + + installTargets = [ "install" ]; + + meta = with lib; { + homepage = "https://www.mhonarc.org/"; + description = "A mail-to-HTML converter"; + maintainers = with maintainers; [ lovek323 ]; + license = licenses.gpl2; + }; + }; + + MIMECharset = buildPerlPackage { + pname = "MIME-Charset"; + version = "1.012.2"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NE/NEZUMI/MIME-Charset-1.012.2.tar.gz"; + sha256 = "878c779c0256c591666bd06c0cde4c0d7820eeeb98fd1183082aee9a1e7b1d13"; + }; + meta = { + description = "Charset Information for MIME"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + mimeConstruct = buildPerlPackage { + pname = "mime-construct"; + version = "1.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RO/ROSCH/mime-construct-1.11.tar.gz"; + sha256 = "00wk9950i9q6qwp1vdq9xdddgk54lqd0bhcq2hnijh8xnmhvpmsc"; + }; + outputs = [ "out" ]; + buildInputs = [ ProcWaitStat ]; + }; + + MIMEEncWords = buildPerlPackage { + pname = "MIME-EncWords"; + version = "1.014.3"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NE/NEZUMI/MIME-EncWords-1.014.3.tar.gz"; + sha256 = "e9afb548611d4e7e6c50b7f06bbd2b1bb2808e37a810deefb537c67af5485238"; + }; + propagatedBuildInputs = [ MIMECharset ]; + meta = { + homepage = "https://metacpan.org/pod/MIME::EncWords"; + description = "Deal with RFC 2047 encoded words (improved)"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + MIMELite = buildPerlPackage { + pname = "MIME-Lite"; + version = "3.031"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/MIME-Lite-3.031.tar.gz"; + sha256 = "f1235866482b67f00858b3edaa4ff4cf909ef900f1d15d889948bf9c03a591e0"; + }; + propagatedBuildInputs = [ EmailDateFormat ]; + meta = { + description = "Low-calorie MIME generator (DEPRECATED)"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MIMELiteHTML = buildPerlPackage { + pname = "MIME-Lite-HTML"; + version = "1.24"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AL/ALIAN/MIME-Lite-HTML-1.24.tar.gz"; + sha256 = "db603ccbf6653bcd28cfa824d72e511ead019fc8afb9f1854ec872db2d3cd8da"; + }; + doCheck = false; + propagatedBuildInputs = [ LWP MIMELite ]; + meta = { + description = "Provide routine to transform a HTML page in a MIME-Lite mail"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MIMETools = buildPerlPackage { + pname = "MIME-tools"; + version = "5.509"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DS/DSKOLL/MIME-tools-5.509.tar.gz"; + sha256 = "0wv9rzx5j1wjm01c3dg48qk9wlbm6iyf91j536idk09xj869ymv4"; + }; + propagatedBuildInputs = [ MailTools ]; + buildInputs = [ TestDeep ]; + meta = { + description = "class for parsed-and-decoded MIME message"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MIMETypes = buildPerlPackage { + pname = "MIME-Types"; + version = "2.18"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MARKOV/MIME-Types-2.18.tar.gz"; + sha256 = "1glml03gyj5xkadn3vcxzm06bvi343j1jg6ksz69is9a3yj3bjii"; + }; + meta = { + description = "Definition of MIME types"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Minion = buildPerlPackage { + pname = "Minion"; + version = "10.14"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SR/SRI/Minion-10.14.tar.gz"; + sha256 = "1xs0z61p42qqzqwlag4fci40lzxfy6pdccijgf8wswb2vk6xambg"; + }; + propagatedBuildInputs = [ Mojolicious ]; + meta = { + homepage = "https://github.com/mojolicious/minion"; + description = "A high performance job queue for Perl"; + license = lib.licenses.artistic2; + maintainers = [ maintainers.sgo ]; + }; + }; + + MinionBackendSQLite = buildPerlModule { + pname = "Minion-Backend-SQLite"; + version = "5.0.4"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DB/DBOOK/Minion-Backend-SQLite-v5.0.4.tar.gz"; + sha256 = "0xhcsxm3x5v9azmyy12wiwlbpiisq06hgj3yf9ggqx8fp9jqppb1"; + }; + buildInputs = [ ModuleBuildTiny ]; + propagatedBuildInputs = [ Minion MojoSQLite ]; + meta = { + homepage = "https://github.com/Grinnz/Minion-Backend-SQLite"; + description = "SQLite backend for Minion job queue"; + license = lib.licenses.artistic2; + maintainers = [ maintainers.sgo ]; + }; + }; + + MinionBackendmysql = buildPerlPackage { + pname = "Minion-Backend-mysql"; + version = "0.21"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PR/PREACTION/Minion-Backend-mysql-0.21.tar.gz"; + sha256 = "0dbq0pmyjcrmdjpsrkr1pxvzvdphn6mb6lk5yyyhm380prwrjahn"; + }; + buildInputs = [ Testmysqld ]; + propagatedBuildInputs = [ Minion Mojomysql ]; + meta = { + homepage = "https://github.com/preaction/Minion-Backend-mysql"; + description = "MySQL backend for Minion job queue"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + MixinLinewise = buildPerlPackage { + pname = "Mixin-Linewise"; + version = "0.108"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Mixin-Linewise-0.108.tar.gz"; + sha256 = "7df20678474c0973930a472b0c55e3f8e85b7790b68ab18ef618f9c453c8aef2"; + }; + propagatedBuildInputs = [ PerlIOutf8_strict SubExporter ]; + meta = { + homepage = "https://github.com/rjbs/mixin-linewise"; + description = "Write your linewise code for handles; this does the rest"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MLDBM = buildPerlModule { + pname = "MLDBM"; + version = "2.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CH/CHORNY/MLDBM-2.05.tar.gz"; + sha256 = "586880ed0c20801abbf6734747e13e0203edefece6ebc4f20ddb5059f02a17a2"; + }; + meta = { + description = "Store multi-level Perl hash structure in single level tied hash"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MNI-Perllib = callPackage ../development/perl-modules/MNI {}; + + Mo = buildPerlPackage { + pname = "Mo"; + version = "0.40"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TI/TINITA/Mo-0.40.tar.gz"; + sha256 = "1fff81awg9agfawf3wxx0gpf6vgav8w920rmxsbjg30z75943lli"; + }; + meta = { + description = "Micro Objects. Mo is less."; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/ingydotnet/mo-pm"; + }; + }; + + MockConfig = buildPerlPackage { + pname = "Mock-Config"; + version = "0.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RU/RURBAN/Mock-Config-0.03.tar.gz"; + sha256 = "06q0xkg5cwdwafzmb9rkaa305ddv7vli9gpm6n9jnkyaaxbk9f55"; + }; + meta = { + description = "temporarily set Config or XSConfig values"; + license = with lib.licenses; [ artistic1 gpl1Plus artistic2 ]; + }; + }; + + ModernPerl = buildPerlPackage { + pname = "Modern-Perl"; + version = "1.20200211"; + + src = fetchurl { + url = "mirror://cpan/authors/id/C/CH/CHROMATIC/Modern-Perl-1.20200211.tar.gz"; + sha256 = "da1c83cee84fab9edb9e31d7f7abac43e1337b2e66015191ec4b6da59298c480"; + }; + meta = { + homepage = "https://github.com/chromatic/Modern-Perl"; + description = "Enable all of the features of Modern Perl with one import"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Modulecpmfile = buildPerlModule { + pname = "Module-cpmfile"; + version = "0.002"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SK/SKAJI/Module-cpmfile-0.002.tar.gz"; + sha256 = "18dxc5wgds1way0dvd6dx5rhc2siyaa38nhpy4gb5v7ldnj3yjc8"; + }; + buildInputs = [ ModuleBuildTiny ModuleCPANfile Test2Suite ]; + propagatedBuildInputs = [ YAMLPP ]; + meta = { + homepage = "https://github.com/skaji/cpmfile"; + description = "Parse cpmfile"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.zakame ]; + }; + }; + + ModuleBuild = buildPerlPackage { + pname = "Module-Build"; + version = "0.4231"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LE/LEONT/Module-Build-0.4231.tar.gz"; + sha256 = "05xpn8qg814y49vrih16zfr9iiwb7pmdf57ahjnc2h0p5illq3vy"; + }; + meta = { + description = "Build and install Perl modules"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ModuleBuildDeprecated = buildPerlModule { + pname = "Module-Build-Deprecated"; + version = "0.4210"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LE/LEONT/Module-Build-Deprecated-0.4210.tar.gz"; + sha256 = "be089313fc238ee2183473aca8c86b55fb3cf44797312cbe9b892d6362621703"; + }; + doCheck = false; + meta = { + description = "A collection of modules removed from Module-Build"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ModuleBuildPluggable = buildPerlModule { + pname = "Module-Build-Pluggable"; + version = "0.10"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TOKUHIROM/Module-Build-Pluggable-0.10.tar.gz"; + sha256 = "e5bb2acb117792c984628812acb0fec376cb970caee8ede57535e04d762b0e40"; + }; + propagatedBuildInputs = [ ClassAccessorLite ClassMethodModifiers DataOptList ]; + meta = { + homepage = "https://github.com/tokuhirom/Module-Build-Pluggable"; + description = "Module::Build meets plugins"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ TestSharedFork ]; + }; + + ModuleBuildPluggableCPANfile = buildPerlModule { + pname = "Module-Build-Pluggable-CPANfile"; + version = "0.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KA/KAZEBURO/Module-Build-Pluggable-CPANfile-0.05.tar.gz"; + sha256 = "4aec6cba240cb6e78016406b6a3a875634cc2aec08ffc5f1572da1cdc40e1e7c"; + }; + buildInputs = [ CaptureTiny TestRequires TestSharedFork ]; + propagatedBuildInputs = [ ModuleBuildPluggable ModuleCPANfile ]; + meta = { + homepage = "https://github.com/kazeburo/Module-Build-Pluggable-CPANfile"; + description = "Include cpanfile"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ModuleBuildPluggablePPPort = buildPerlModule { + pname = "Module-Build-Pluggable-PPPort"; + version = "0.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TOKUHIROM/Module-Build-Pluggable-PPPort-0.04.tar.gz"; + sha256 = "44084ba3d8815f343bd391585ac5d8339a4807ce5c0dd84c98db8f310b64c0ea"; + }; + buildInputs = [ TestRequires TestSharedFork ]; + propagatedBuildInputs = [ ModuleBuildPluggable ]; + meta = { + description = "Generate ppport.h"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ModuleBuildTiny = buildPerlModule { + pname = "Module-Build-Tiny"; + version = "0.039"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LE/LEONT/Module-Build-Tiny-0.039.tar.gz"; + sha256 = "7d580ff6ace0cbe555bf36b86dc8ea232581530cbeaaea09bccb57b55797f11c"; + }; + buildInputs = [ FileShareDir ]; + propagatedBuildInputs = [ ExtUtilsHelpers ExtUtilsInstallPaths ]; + meta = { + description = "A tiny replacement for Module::Build"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ModuleBuildWithXSpp = buildPerlModule { + pname = "Module-Build-WithXSpp"; + version = "0.14"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SM/SMUELLER/Module-Build-WithXSpp-0.14.tar.gz"; + sha256 = "0d39fjg9c0n820bk3fb50vvlwhdny4hdl69xmlyzql5xzp4cicsk"; + }; + propagatedBuildInputs = [ ExtUtilsCppGuess ExtUtilsXSpp ]; + }; + + ModuleBuildXSUtil = buildPerlModule { + pname = "Module-Build-XSUtil"; + version = "0.19"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HI/HIDEAKIO/Module-Build-XSUtil-0.19.tar.gz"; + sha256 = "004ly9xxjlsbrr2vhxsa1n84z3034gxrzr7z0wl45szd8v1v6qwh"; + }; + buildInputs = [ CaptureTiny CwdGuard FileCopyRecursiveReduced ]; + propagatedBuildInputs = [ DevelCheckCompiler ]; + perlPreHook = "export LD=$CC"; + meta = { + description = "A Module::Build class for building XS modules"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ModuleCompile = buildPerlPackage rec { + pname = "Module-Compile"; + version = "0.38"; + src = fetchurl { + url = "mirror://cpan/authors/id/I/IN/INGY/Module-Compile-0.38.tar.gz"; + sha256 = "8090cfbb61123437eefec3e3bed86005d1f7c5a529fb6fda2ebebc6564b9aa10"; + }; + propagatedBuildInputs = [ CaptureTiny DigestSHA1 ]; + meta = { + homepage = "https://github.com/ingydotnet/module-compile-pm"; + description = "Perl Module Compilation"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ModuleCPANTSAnalyse = buildPerlPackage { + pname = "Module-CPANTS-Analyse"; + version = "1.01"; + src = fetchurl { + url = "mirror://cpan/authors/id/I/IS/ISHIGAKI/Module-CPANTS-Analyse-1.01.tar.gz"; + sha256 = "0jf83v9ylw7s9i2zv0l1v11gafp3k4389asc52r6s6q5s2j0p6dx"; + }; + propagatedBuildInputs = [ ArchiveAnyLite ArrayDiff DataBinary FileFindObject PerlPrereqScannerNotQuiteLite SoftwareLicense ]; + buildInputs = [ ExtUtilsMakeMakerCPANfile TestFailWarnings ]; + meta = { + description = "Generate Kwalitee ratings for a distribution"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://cpants.cpanauthors.org"; + }; + }; + + ModuleCPANfile = buildPerlPackage { + pname = "Module-CPANfile"; + version = "1.1004"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIYAGAWA/Module-CPANfile-1.1004.tar.gz"; + sha256 = "08a9a5mybf0llwlfvk7n0q7az6lrrzgzwc3432mcwbb4k8pbxvw8"; + }; + meta = { + description = "Parse cpanfile"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/miyagawa/cpanfile"; + }; + buildInputs = [ Filepushd ]; + }; + + ModuleExtractUse = buildPerlModule { + pname = "Module-ExtractUse"; + version = "0.343"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DO/DOMM/Module-ExtractUse-0.343.tar.gz"; + sha256 = "00hcggwnqk953s4zbvkcabd5mfidg60hawlqsw6146in91dlclj8"; + }; + propagatedBuildInputs = [ ParseRecDescent PodStrip ]; + buildInputs = [ TestDeep TestNoWarnings ]; + meta = { + description = "Find out what modules are used"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ModuleFind = buildPerlPackage { + pname = "Module-Find"; + version = "0.15"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CR/CRENZ/Module-Find-0.15.tar.gz"; + sha256 = "0pm8v398rv4sy7sn7zzfbq4szxw6p1q4963ancsi17iyzskq4m2w"; + }; + meta = { + description = "Find and use installed modules in a (sub)category"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ModuleImplementation = buildPerlPackage { + pname = "Module-Implementation"; + version = "0.09"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DR/DROLSKY/Module-Implementation-0.09.tar.gz"; + sha256 = "0vfngw4dbryihqhi7g9ks360hyw8wnpy3hpkzyg0q4y2y091lpy1"; + }; + buildInputs = [ TestFatal TestRequires ]; + propagatedBuildInputs = [ ModuleRuntime TryTiny ]; + meta = { + description = "Loads one of several alternate underlying implementations for a module"; + license = lib.licenses.artistic2; + }; + }; + + ModuleInfo = buildPerlPackage { + pname = "Module-Info"; + version = "0.37"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NE/NEILB/Module-Info-0.37.tar.gz"; + sha256 = "0j143hqxgdkdpj5qssppq72gjr0n73c4f7is6wgrrcchjx905a4f"; + }; + buildInputs = [ TestPod TestPodCoverage ]; + meta = { + description = "Information about Perl modules"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + propagatedBuildInputs = [ BUtils ]; + }; + + ModuleInstall = buildPerlPackage { + pname = "Module-Install"; + version = "1.19"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Module-Install-1.19.tar.gz"; + sha256 = "06q12cm97yh4p7qbm0a2p96996ii6ss59qy57z0f7f9svy6sflqs"; + }; + propagatedBuildInputs = [ FileRemove ModuleBuild ModuleScanDeps YAMLTiny ]; + meta = { + description = "Standalone, extensible Perl module installer"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ModuleInstallAuthorRequires = buildPerlPackage { + pname = "Module-Install-AuthorRequires"; + version = "0.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/F/FL/FLORA/Module-Install-AuthorRequires-0.02.tar.gz"; + sha256 = "1v2ciw75dj5y8lh10d1vrhwmjx266gpqavr8m21jlpblgm9j2qyc"; + }; + propagatedBuildInputs = [ ModuleInstall ]; + meta = { + description = "Declare author-only dependencies"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ModuleInstallAuthorTests = buildPerlPackage { + pname = "Module-Install-AuthorTests"; + version = "0.002"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Module-Install-AuthorTests-0.002.tar.gz"; + sha256 = "121dyggy38316xss06v1zkwx4b59gl7b00c5q99xyzimwqnp49a0"; + }; + propagatedBuildInputs = [ ModuleInstall ]; + meta = { + description = "Designate tests only run by module authors"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ModuleInstallGithubMeta = buildPerlPackage { + pname = "Module-Install-GithubMeta"; + version = "0.30"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BI/BINGOS/Module-Install-GithubMeta-0.30.tar.gz"; + sha256 = "2ead44c973c748d72d9f199e41c44dc1801fe9ae06b0fadc59447693a3c98281"; + }; + buildInputs = [ CaptureTiny ]; + propagatedBuildInputs = [ ModuleInstall ]; + meta = { + homepage = "https://github.com/bingos/module-install-githubmeta/"; + description = "A Module::Install extension to include GitHub meta information in META.yml"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + ModuleInstallReadmeFromPod = buildPerlPackage { + pname = "Module-Install-ReadmeFromPod"; + version = "0.30"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BI/BINGOS/Module-Install-ReadmeFromPod-0.30.tar.gz"; + sha256 = "79f6df5536619faffbda696bdd25ccad17c469bf32e51cd3e613366d49400169"; + }; + buildInputs = [ TestInDistDir ]; + propagatedBuildInputs = [ CaptureTiny IOAll ModuleInstall PodMarkdown ]; + meta = { + homepage = "https://github.com/bingos/module-install-readmefrompod/"; + description = "A Module::Install extension to automatically convert POD to a README"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + ModuleInstallReadmeMarkdownFromPod = buildPerlPackage { + pname = "Module-Install-ReadmeMarkdownFromPod"; + version = "0.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MATTN/Module-Install-ReadmeMarkdownFromPod-0.04.tar.gz"; + sha256 = "300b2e244f83b9a54a95f8404c1cd3af0635b4fae974ca65390ee428ec668591"; + }; + buildInputs = [ URI ]; + propagatedBuildInputs = [ ModuleInstall PodMarkdown ]; + meta = { + homepage = "http://search.cpan.org/dist/Module-Install-ReadmeMarkdownFromPod/"; + description = "Create README.mkdn from POD"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + ModuleInstallRepository = buildPerlPackage { + pname = "Module-Install-Repository"; + version = "0.06"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIYAGAWA/Module-Install-Repository-0.06.tar.gz"; + sha256 = "00e2590d09339ccccbdaa328d12ad8ec77e831a38c9ad663705e59ecbb18722b"; + }; + buildInputs = [ PathClass ]; + meta = { + description = "Automatically sets repository URL from svn/svk/Git checkout"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + ModuleManifest = buildPerlPackage { + pname = "Module-Manifest"; + version = "1.09"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Module-Manifest-1.09.tar.gz"; + sha256 = "a395f80ff15ea0e66fd6c453844b6787ed4a875a3cd8df9f7e29280250bd539b"; + }; + buildInputs = [ TestException TestWarn ]; + propagatedBuildInputs = [ ParamsUtil ]; + meta = { + description = "Parse and examine a Perl distribution MANIFEST file"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ModulePath = buildPerlPackage { + pname = "Module-Path"; + version = "0.19"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NE/NEILB/Module-Path-0.19.tar.gz"; + sha256 = "b33179ce4dd73dfcde7d46808804b9ffbb11db0245fe455a7d001747562feaca"; + }; + buildInputs = [ DevelFindPerl ]; + meta = { + homepage = "https://github.com/neilbowers/Module-Path"; + description = "Get the full path to a locally installed module"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ModulePluggable = buildPerlPackage { + pname = "Module-Pluggable"; + version = "5.2"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SI/SIMONW/Module-Pluggable-5.2.tar.gz"; + sha256 = "b3f2ad45e4fd10b3fb90d912d78d8b795ab295480db56dc64e86b9fa75c5a6df"; + }; + patches = [ + # !!! merge this patch into Perl itself (which contains Module::Pluggable as well) + ../development/perl-modules/module-pluggable.patch + ]; + meta = { + description = "Automatically give your module the ability to have plugins"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ AppFatPacker ]; + }; + + ModulePluggableFast = buildPerlPackage { + pname = "Module-Pluggable-Fast"; + version = "0.19"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MR/MRAMBERG/Module-Pluggable-Fast-0.19.tar.gz"; + sha256 = "0pq758wlasmh77xyd2xh75m5b2x14s8pnsv63g5356gib1q5gj08"; + }; + propagatedBuildInputs = [ UNIVERSALrequire ]; + }; + + ModuleRefresh = buildPerlPackage { + pname = "Module-Refresh"; + version = "0.17"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AL/ALEXMV/Module-Refresh-0.17.tar.gz"; + sha256 = "6b30a6ceddc6512ab4490c16372ecf309a259f2ca147d622e478ac54e08511c3"; + }; + buildInputs = [ PathClass ]; + meta = { + description = "Refresh %INC files when updated on disk"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ModuleRuntime = buildPerlModule { + pname = "Module-Runtime"; + version = "0.016"; + src = fetchurl { + url = "mirror://cpan/authors/id/Z/ZE/ZEFRAM/Module-Runtime-0.016.tar.gz"; + sha256 = "097hy2czwkxlppri32m599ph0xfvfsbf0a5y23a4fdc38v32wc38"; + }; + meta = { + description = "Runtime module handling"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ModuleRuntimeConflicts = buildPerlPackage { + pname = "Module-Runtime-Conflicts"; + version = "0.003"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Module-Runtime-Conflicts-0.003.tar.gz"; + sha256 = "707cdc75038c70fe91779b888ac050f128565d3967ba96680e1b1c7cc9733875"; + }; + propagatedBuildInputs = [ DistCheckConflicts ]; + meta = { + homepage = "https://github.com/karenetheridge/Module-Runtime-Conflicts"; + description = "Provide information on conflicts for Module::Runtime"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ModuleScanDeps = buildPerlPackage { + pname = "Module-ScanDeps"; + version = "1.29"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RS/RSCHUPP/Module-ScanDeps-1.29.tar.gz"; + sha256 = "0kl8p0006j52vq4bd59fyv7pm3yyv0h7pwaalrkn4brs6n8wxc7f"; + }; + buildInputs = [ TestRequires ]; + meta = { + description = "Recursively scan Perl code for dependencies"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ModuleSignature = buildPerlPackage { + pname = "Module-Signature"; + version = "0.87"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AU/AUDREYT/Module-Signature-0.87.tar.gz"; + sha256 = "214e8055c50fec371a95743520fe26940004e76169063b2b44ec90a0d45d6982"; + }; + buildInputs = [ IPCRun ]; + meta = { + description = "Module signature file manipulation"; + license = lib.licenses.cc0; + }; + }; + + ModuleUtil = buildPerlModule { + pname = "Module-Util"; + version = "1.09"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MATTLAW/Module-Util-1.09.tar.gz"; + sha256 = "6cfbcb6a45064446ec8aa0ee1a7dddc420b54469303344187aef84d2c7f3e2c6"; + }; + meta = { + description = "Module name tools and transformations"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ModuleVersions = buildPerlPackage { + pname = "Module-Versions"; + version = "0.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TH/THW/Module-Versions-0.02.zip"; + sha256 = "0g7qs6vqg91xpwg1cdy91m3kh9m1zbkzyz1qsy453b572xdscf0d"; + }; + buildInputs = [ pkgs.unzip ]; + }; + + ModuleVersionsReport = buildPerlPackage { + pname = "Module-Versions-Report"; + version = "1.06"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JE/JESSE/Module-Versions-Report-1.06.tar.gz"; + sha256 = "a3261d0d84b17678d8c4fd55eb0f892f5144d81ca53ea9a38d75d1a00ad9796a"; + }; + meta = { + description = "Report versions of all modules in memory"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MojoDOM58 = buildPerlPackage { + pname = "Mojo-DOM58"; + version = "2.000"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DB/DBOOK/Mojo-DOM58-2.000.tar.gz"; + sha256 = "1wsy0j6jpd06gc1ay6isyzqh5cdc834g5w0amslqcjgvf4snlk46"; + }; + meta = { + description = "Minimalistic HTML/XML DOM parser with CSS selectors"; + license = with lib.licenses; [ artistic2 ]; + homepage = "https://github.com/Grinnz/Mojo-DOM58"; + }; + }; + + mod_perl2 = buildPerlPackage { + pname = "mod_perl"; + version = "2.0.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHAY/mod_perl-2.0.11.tar.gz"; + sha256 = "0x3gq4nz96y202cymgrf56n8spm7bffkd1p74dh9q3zrrlc9wana"; + }; + + patches = [ + # Fix build on perl-5.34.0, https://github.com/Perl/perl5/issues/18617 + ../development/perl-modules/mod_perl2-PL_hash_seed.patch + ]; + + makeMakerFlags = "MP_AP_DESTDIR=$out"; + buildInputs = [ pkgs.apacheHttpd ]; + doCheck = false; # would try to start Apache HTTP server + meta = { + description = "Embed a Perl interpreter in the Apache HTTP server"; + license = lib.licenses.asl20; + }; + + passthru.tests = nixosTests.mod_perl; + }; + + Mojolicious = buildPerlPackage { + pname = "Mojolicious"; + version = "9.19"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SR/SRI/Mojolicious-9.19.tar.gz"; + sha256 = "15qs99sl3ckzqwpqk4kawhamdm6160bzxyikf3blym4fn1k6s1a5"; + }; + meta = { + homepage = "https://mojolicious.org"; + description = "Real-time web framework"; + license = lib.licenses.artistic2; + maintainers = with maintainers; [ thoughtpolice sgo ]; + }; + }; + + MojoliciousPluginAssetPack = buildPerlPackage { + pname = "Mojolicious-Plugin-AssetPack"; + version = "2.13"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SR/SRI/Mojolicious-Plugin-AssetPack-2.13.tar.gz"; + sha256 = "1254yy70c7wv3p64pjyxc2h1p9czs65jm6lzl42qmn1x19i8fggj"; + }; + propagatedBuildInputs = [ FileWhich IPCRun3 Mojolicious ]; + meta = { + homepage = "https://github.com/jhthorsen/mojolicious-plugin-assetpack"; + description = "Compress and convert css, less, sass, javascript and coffeescript files"; + license = lib.licenses.artistic2; + maintainers = with maintainers; [ sgo ]; + }; + }; + + MojoliciousPluginGravatar = buildPerlPackage { + pname = "Mojolicious-Plugin-Gravatar"; + version = "0.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KO/KOORCHIK/Mojolicious-Plugin-Gravatar-0.04.tar.gz"; + sha256 = "a49f970c6c70f9930b304a752163cb95f1d998712f79cb13640832e4b7b675dd"; + }; + propagatedBuildInputs = [ Mojolicious ]; + meta = { + description = "Globally Recognized Avatars for Mojolicious"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = with maintainers; [ sgo ]; + }; + }; + + MojoliciousPluginMail = buildPerlModule { + pname = "Mojolicious-Plugin-Mail"; + version = "1.5"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHARIFULN/Mojolicious-Plugin-Mail-1.5.tar.gz"; + sha256 = "56f0d341ebc3a7acf3919f5add43e98216ea1285aa0d87e7fb00c02bb0eff146"; + }; + propagatedBuildInputs = [ MIMEEncWords MIMELite Mojolicious ]; + meta = { + homepage = "https://github.com/sharifulin/Mojolicious-Plugin-Mail"; + description = "Mojolicious Plugin for send mail"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + MojoliciousPluginOpenAPI = buildPerlPackage { + pname = "Mojolicious-Plugin-OpenAPI"; + version = "4.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JH/JHTHORSEN/Mojolicious-Plugin-OpenAPI-4.02.tar.gz"; + sha256 = "0rkkkcd3y3gjj0kis0hrab6mz8rk1qd57nz4npy39bag6h1kpyfv"; + }; + propagatedBuildInputs = [ JSONValidator ]; + meta = { + homepage = "https://github.com/jhthorsen/mojolicious-plugin-openapi"; + description = "OpenAPI / Swagger plugin for Mojolicious"; + license = lib.licenses.artistic2; + maintainers = [ maintainers.sgo ]; + }; + }; + + MojoliciousPluginStatus = buildPerlPackage { + pname = "Mojolicious-Plugin-Status"; + version = "1.17"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SR/SRI/Mojolicious-Plugin-Status-1.17.tar.gz"; + sha256 = "1d475ch43vbfn3h4lsmr3n6rhgxgz670xqj4rcdjd4g1wfpiyasc"; + }; + propagatedBuildInputs = [ BSDResource CpanelJSONXS FileMap Mojolicious Sereal ]; + meta = { + homepage = "https://github.com/mojolicious/mojo-status"; + description = "Mojolicious server status plugin"; + license = with lib.licenses; [ artistic2 ]; + maintainers = [ maintainers.thoughtpolice ]; + }; + }; + + MojoliciousPluginSyslog = buildPerlPackage { + pname = "Mojolicious-Plugin-Syslog"; + version = "0.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JH/JHTHORSEN/Mojolicious-Plugin-Syslog-0.05.tar.gz"; + sha256 = "sha256-G5Ur6EJ00gAeawLkqw93Et8O4wiPk2qFRlQofh0BPp8="; + }; + propagatedBuildInputs = [ Mojolicious ]; + meta = { + homepage = "https://github.com/jhthorsen/mojolicious-plugin-syslog"; + description = "A plugin for enabling a Mojolicious app to log to syslog"; + license = lib.licenses.artistic2; + maintainers = [ maintainers.sgo ]; + }; + }; + + MojoliciousPluginTextExceptions = buildPerlPackage { + pname = "Mojolicious-Plugin-TextExceptions"; + version = "0.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MR/MRAMBERG/Mojolicious-Plugin-TextExceptions-0.02.tar.gz"; + sha256 = "0x7qkd9nmarzb7kvk4dvhka4s44mfcd026zz3ikfwk3qql2p86rs"; + }; + propagatedBuildInputs = [ Mojolicious ]; + meta = { + homepage = "https://github.com/marcusramberg/mojolicious-plugin-textexceptions"; + description = "Render exceptions as text in command line user agents"; + license = lib.licenses.artistic2; + maintainers = [ maintainers.sgo ]; + }; + }; + + MojoliciousPluginWebpack = buildPerlPackage { + pname = "Mojolicious-Plugin-Webpack"; + version = "1.01"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JH/JHTHORSEN/Mojolicious-Plugin-Webpack-1.01.tar.gz"; + sha256 = "1w6dr7yb8lvvx5z2xsmshp2cf4b7dynv05yhq0rk7zwif5v6gsvm"; + }; + propagatedBuildInputs = [ Mojolicious Filechdir ]; + meta = { + homepage = "https://github.com/jhthorsen/mojolicious-plugin-webpack"; + description = "Mojolicious <3 Webpack"; + license = lib.licenses.artistic2; + maintainers = with maintainers; [ sgo ]; + }; + }; + + MojoRedis = buildPerlPackage { + pname = "Mojo-Redis"; + version = "3.25"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JH/JHTHORSEN/Mojo-Redis-3.25.tar.gz"; + sha256 = "17xxhfavj9j1pzjpxf1j72rq3vm2vj0j4h62088l64v11cs86zig"; + }; + propagatedBuildInputs = [ Mojolicious ProtocolRedisFaster ]; + meta = { + homepage = "https://github.com/jhthorsen/mojo-redis"; + description = "Redis driver based on Mojo::IOLoop"; + license = lib.licenses.artistic2; + maintainers = [ maintainers.sgo ]; + }; + }; + + MojoSAML = buildPerlModule { + pname = "Mojo-SAML"; + version = "0.07"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JB/JBERGER/Mojo-SAML-0.07.tar.gz"; + sha256 = "03biykpz281z9nmd846jlxwzbaqlqwvh987aw9spl7bgvfn4rhkj"; + }; + buildInputs = [ ModuleBuildTiny ]; + propagatedBuildInputs = [ CryptOpenSSLRSA CryptOpenSSLX509 DataGUID Mojolicious XMLCanonicalizeXML ]; + meta = { + description = "A SAML2 toolkit using the Mojo toolkit"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + MojoSQLite = buildPerlModule { + pname = "Mojo-SQLite"; + version = "3.005"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DB/DBOOK/Mojo-SQLite-3.005.tar.gz"; + sha256 = "0appzyhr5adzdfxns31lj568hz18bkmxmcv7fpafrx67b98cpza1"; + }; + buildInputs = [ ModuleBuildTiny ]; + propagatedBuildInputs = [ DBDSQLite Mojolicious SQLAbstract URIdb ]; + meta = { + homepage = "https://github.com/Grinnz/Mojo-SQLite"; + description = "A tiny Mojolicious wrapper for SQLite"; + license = lib.licenses.artistic2; + maintainers = [ maintainers.sgo ]; + }; + }; + + Mojomysql = buildPerlPackage rec { + pname = "Mojo-mysql"; + version = "1.20"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JH/JHTHORSEN/Mojo-mysql-1.20.tar.gz"; + sha256 = "efc0927d3b479b71b4d1e6b476c2b81e01404134cc5d919ac902207e0a219c67"; + }; + propagatedBuildInputs = [ DBDmysql Mojolicious SQLAbstract ]; + buildInputs = [ TestDeep ]; + meta = { + homepage = "https://github.com/jhthorsen/mojo-mysql"; + description = "Mojolicious and Async MySQL/MariaDB"; + license = lib.licenses.artistic2; + maintainers = [ maintainers.sgo ]; + }; + }; + + MojoIOLoopDelay = buildPerlModule { + pname = "Mojo-IOLoop-Delay"; + version = "8.76"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JB/JBERGER/Mojo-IOLoop-Delay-8.76.tar.gz"; + sha256 = "1vd9s1r82wfxh8y1g2ninsyvzkawx7n6ncll8lhdj89p91hw1jwf"; + }; + buildInputs = [ ModuleBuildTiny ]; + propagatedBuildInputs = [ Mojolicious ]; + meta = { + homepage = "https://github.com/jberger/Mojo-IOLoop-Delay"; + description = "(DISCOURAGED) Promises/A+ and flow-control helpers"; + license = lib.licenses.artistic2; + maintainers = [ maintainers.zakame ]; + }; + }; + + MojoIOLoopForkCall = buildPerlModule { + pname = "Mojo-IOLoop-ForkCall"; + version = "0.20"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JB/JBERGER/Mojo-IOLoop-ForkCall-0.20.tar.gz"; + sha256 = "2b9962244c25a71e4757356fb3e1237cf869e26d1c27215115ba7b057a81f1a6"; + }; + propagatedBuildInputs = [ IOPipely Mojolicious MojoIOLoopDelay ]; + preBuild = '' + # This module needs the deprecated Mojo::IOLoop::Delay + substituteInPlace lib/Mojo/IOLoop/ForkCall.pm \ + --replace "use Mojo::IOLoop;" "use Mojo::IOLoop; use Mojo::IOLoop::Delay;" + ''; + meta = { + homepage = "https://github.com/jberger/Mojo-IOLoop-ForkCall"; + description = "Run blocking functions asynchronously by forking (deprecated)"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.zakame ]; + }; + }; + + MojoJWT = buildPerlModule { + pname = "Mojo-JWT"; + version = "0.09"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JB/JBERGER/Mojo-JWT-0.09.tar.gz"; + sha256 = "11jqm2sbgf5nikkb0d56xxwrd74757ks53nh8p72nvqc7sc06kn0"; + }; + buildInputs = [ ModuleBuildTiny ]; + propagatedBuildInputs = [ Mojolicious ]; + meta = { + homepage = "https://github.com/jberger/Mojo-JWT"; + description = "JSON Web Token the Mojo way"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + MojoPg = buildPerlPackage { + pname = "Mojo-Pg"; + version = "4.22"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SR/SRI/Mojo-Pg-4.22.tar.gz"; + sha256 = "11s3f3km6i3in9wx9q4rkxgvj9rc6w8pdahrc19hi6zkxz3i87nr"; + }; + propagatedBuildInputs = [ DBDPg Mojolicious SQLAbstract ]; + buildInputs = [ TestDeep ]; + meta = { + homepage = "https://github.com/mojolicious/mojo-pg"; + description = "Mojolicious <3 PostgreSQL"; + license = lib.licenses.artistic2; + maintainers = [ maintainers.sgo ]; + }; + }; + + MojoUserAgentCached = buildPerlPackage { + pname = "Mojo-UserAgent-Cached"; + version = "1.16"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NI/NICOMEN/Mojo-UserAgent-Cached-1.16.tar.gz"; + sha256 = "17gp1kn97s1wv973w0g92alx13lmcvdan794471sfq2is6s6v1qd"; + }; + buildInputs = [ ModuleInstall ]; + propagatedBuildInputs = [ AlgorithmLCSS CHI DataSerializer DevelStackTrace Mojolicious Readonly StringTruncate ]; + doCheck = !stdenv.isDarwin; + meta = { + homepage = "https://github.com/nicomen/mojo-useragent-cached"; + description = "Caching, Non-blocking I/O HTTP, Local file and WebSocket user agent"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + MongoDB = buildPerlPackage { + pname = "MongoDB"; + version = "2.2.2"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MO/MONGODB/MongoDB-v2.2.2.tar.gz"; + sha256 = "201935f92dac94f39c35de73661e8b252439e496f228657db85ff93257c3268f"; + }; + buildInputs = [ JSONMaybeXS PathTiny TestDeep TestFatal TimeMoment ]; + propagatedBuildInputs = [ AuthenSASLSASLprep AuthenSCRAM BSON IOSocketSSL NetSSLeay ClassXSAccessor BSONXS TypeTinyXS MozillaCA Moo NetDNS SafeIsa SubQuote TieIxHash TypeTiny UUIDURandom boolean namespaceclean ]; + meta = { + homepage = "https://github.com/mongodb-labs/mongo-perl-driver"; + description = "Official MongoDB Driver for Perl (EOL)"; + license = lib.licenses.asl20; + }; + }; + + MonitoringPlugin = buildPerlPackage { + pname = "Monitoring-Plugin"; + version = "0.40"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NI/NIERLEIN/Monitoring-Plugin-0.40.tar.gz"; + sha256 = "0vr3wwdn3zs246qwi04bqk8jir6l88j5m59jk97hmfyj4xz6pfpq"; + }; + propagatedBuildInputs = [ ClassAccessor ConfigTiny MathCalcUnits ParamsValidate ]; + meta = { + description = '' + A family of perl modules to streamline writing Naemon, + Nagios, Icinga or Shinken (and compatible) plugins + ''; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + IOPipely = buildPerlPackage { + pname = "IO-Pipely"; + version = "0.005"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RC/RCAPUTO/IO-Pipely-0.005.tar.gz"; + sha256 = "e33b6cf5cb2b46ee308513f51e623987a50a89901e81bf19701dce35179f2e74"; + }; + meta = { + description = "Portably create pipe() or pipe-like handles"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Moo = buildPerlPackage { + pname = "Moo"; + version = "2.004004"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HA/HAARG/Moo-2.004004.tar.gz"; + sha256 = "0ii2rzzs0wfc697d7v3s76fi1y3kl7p1hvxbv330i1vq2nqpfjvi"; + }; + buildInputs = [ TestFatal ]; + propagatedBuildInputs = [ ClassMethodModifiers ModuleRuntime RoleTiny SubQuote ]; + meta = { + description = "Minimalist Object Orientation (with Moose compatibility)"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Moose = buildPerlPackage { + pname = "Moose"; + version = "2.2013"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Moose-2.2013.tar.gz"; + sha256 = "df74dc78088921178edf72d827017d6c92737c986659f2dadc533ae24675e77c"; + }; + buildInputs = [ CPANMetaCheck TestCleanNamespaces TestFatal TestRequires ]; + propagatedBuildInputs = [ ClassLoadXS DevelGlobalDestruction DevelOverloadInfo DevelStackTrace EvalClosure ModuleRuntimeConflicts PackageDeprecationManager PackageStashXS SubExporter ]; + preConfigure = '' + export LD=$CC + ''; + meta = { + homepage = "http://moose.perl.org/"; + description = "A postmodern object system for Perl 5"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.eelco ]; + }; + }; + + MooXHandlesVia = buildPerlPackage { + pname = "MooX-HandlesVia"; + version = "0.001009"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TOBYINK/MooX-HandlesVia-0.001009.tar.gz"; + sha256 = "04kcyflg49rclxa1nm035c05jpyvhdacjyy1wklbgv4li3im6qvi"; + }; + buildInputs = [ MooXTypesMooseLike TestException TestFatal ]; + propagatedBuildInputs = [ DataPerl Moo ]; + meta = { + description = "NativeTrait-like behavior for Moo"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MooXLocalePassthrough = buildPerlPackage { + pname = "MooX-Locale-Passthrough"; + version = "0.001"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RE/REHSACK/MooX-Locale-Passthrough-0.001.tar.gz"; + sha256 = "04h5xhqdvydd4xk9ckb6a79chn0ygf915ix55vg1snmba9z841bs"; + }; + propagatedBuildInputs = [ Moo ]; + meta = { + description = "provide API used in translator modules without translating"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MooXLocaleTextDomainOO = buildPerlPackage { + pname = "MooX-Locale-TextDomain-OO"; + version = "0.001"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RE/REHSACK/MooX-Locale-TextDomain-OO-0.001.tar.gz"; + sha256 = "0g8pwj45ccqrzvs9cqyhw29nm68vai1vj46ad39rajnqzp7m53jv"; + }; + propagatedBuildInputs = [ LocaleTextDomainOO MooXLocalePassthrough ]; + meta = { + description = "provide API used in translator modules without translating"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MooXOptions = buildPerlPackage { + pname = "MooX-Options"; + version = "4.103"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RE/REHSACK/MooX-Options-4.103.tar.gz"; + sha256 = "0v9j0wxx4f6z6lrmdqf2k084b2c2f2jbvh86pwib0vgjz1sdbyad"; + }; + propagatedBuildInputs = [ GetoptLongDescriptive MROCompat MooXLocalePassthrough PathClass UnicodeLineBreak strictures ]; + buildInputs = [ Mo MooXCmd MooXLocaleTextDomainOO Moose TestTrap ]; + preCheck = "rm t/16-namespace_clean.t"; # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=942275 + meta = { + description = "Explicit Options eXtension for Object Class"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MooXSingleton = buildPerlModule { + pname = "MooX-Singleton"; + version = "1.20"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AJ/AJGB/MooX-Singleton-1.20.tar.gz"; + sha256 = "03i1wfag279ldjjkwi9gvpfs8fgi05my47icq5ggi66yzxpn5mzp"; + }; + propagatedBuildInputs = [ RoleTiny ]; + buildInputs = [ Moo ]; + meta = { + description = "turn your Moo class into singleton"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MooXStrictConstructor = buildPerlPackage { + pname = "MooX-StrictConstructor"; + version = "0.011"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HA/HARTZELL/MooX-StrictConstructor-0.011.tar.gz"; + sha256 = "1qjkqrmzgz7lxhv14klsv0v9v6blf8js86d47ah24kpw5y12yf6s"; + }; + propagatedBuildInputs = [ Moo strictures ]; + buildInputs = [ TestFatal ]; + meta = { + description = "Make your Moo-based object constructors blow up on unknown attributes."; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MooXTypesMooseLike = buildPerlPackage { + pname = "MooX-Types-MooseLike"; + version = "0.29"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MATEU/MooX-Types-MooseLike-0.29.tar.gz"; + sha256 = "1d6jg9x3p7gm2r0xmbcag374a44gf5pcga2swvxhlhzakfm80dqx"; + }; + propagatedBuildInputs = [ ModuleRuntime ]; + buildInputs = [ Moo TestFatal ]; + }; + + MooXTypesMooseLikeNumeric = buildPerlPackage { + pname = "MooX-Types-MooseLike-Numeric"; + version = "1.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MATEU/MooX-Types-MooseLike-Numeric-1.03.tar.gz"; + sha256 = "16adeb617b963d010179922c2e4e8762df77c75232e17320b459868c4970c44b"; + }; + buildInputs = [ Moo TestFatal ]; + propagatedBuildInputs = [ MooXTypesMooseLike ]; + meta = { + description = "Moo types for numbers"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MooXTypeTiny = buildPerlPackage { + pname = "MooX-TypeTiny"; + version = "0.002003"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HA/HAARG/MooX-TypeTiny-0.002003.tar.gz"; + sha256 = "d81e26ff6f8db10261f0087f96dc54367dcb49a9f3de8d53238f834ece19624b"; + }; + buildInputs = [ TestFatal ]; + propagatedBuildInputs = [ Moo TypeTiny ]; + meta = { + description = "Optimized type checks for Moo + Type::Tiny"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MooseAutobox = buildPerlModule { + pname = "Moose-Autobox"; + version = "0.16"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Moose-Autobox-0.16.tar.gz"; + sha256 = "0mbhd0p7gf6qdhaylldl0ahq59zghs0vd5n1iqcbfkj8ryj1sh4j"; + }; + buildInputs = [ ModuleBuildTiny TestException ]; + propagatedBuildInputs = [ ListMoreUtils Moose SyntaxKeywordJunction autobox namespaceautoclean ]; + meta = { + description = "Autoboxed wrappers for Native Perl datatypes"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MooseXABC = buildPerlPackage { + pname = "MooseX-ABC"; + version = "0.06"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DO/DOY/MooseX-ABC-0.06.tar.gz"; + sha256 = "1sky0dpi22wrymmkjmqba4k966zn7vrbpx918wn2nmg48swyrgjf"; + }; + buildInputs = [ TestFatal ]; + propagatedBuildInputs = [ Moose ]; + meta = { + description = "Abstract base classes for Moose"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MooseXAliases = buildPerlPackage { + pname = "MooseX-Aliases"; + version = "0.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DO/DOY/MooseX-Aliases-0.11.tar.gz"; + sha256 = "0j07zqczjfmng3md6nkha7560i786d0cp3gdmrx49hr64jbhz1f4"; + }; + buildInputs = [ TestFatal ]; + propagatedBuildInputs = [ Moose ]; + }; + + MooseXAppCmd = buildPerlModule { + pname = "MooseX-App-Cmd"; + version = "0.32"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/MooseX-App-Cmd-0.32.tar.gz"; + sha256 = "2e3bbf7283a4bee72d91d26eb204436030992bbe55cbd35ec33a546f16f973ff"; + }; + buildInputs = [ ModuleBuildTiny MooseXConfigFromFile TestOutput YAML ]; + propagatedBuildInputs = [ AppCmd MooseXGetopt MooseXNonMoose ]; + meta = { + homepage = "https://github.com/moose/MooseX-App-Cmd"; + description = "Mashes up MooseX::Getopt and App::Cmd"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MooseXStorageFormatJSONpm = buildPerlPackage { + pname = "MooseX-Storage-Format-JSONpm"; + version = "0.093093"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/MooseX-Storage-Format-JSONpm-0.093093.tar.gz"; + sha256 = "ebe0407a7eb1870270e0e2579f097dfd7df2aea3307fb71f324fb69e242cc58f"; + }; + buildInputs = [ Moose TestDeepJSON TestWithoutModule DigestHMAC MooseXTypes ]; + propagatedBuildInputs = [ JSON MooseXRoleParameterized MooseXStorage namespaceautoclean ]; + meta = { + homepage = "https://github.com/rjbs/MooseX-Storage-Format-JSONpm"; + description = "A format role for MooseX::Storage using JSON.pm"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MooX = buildPerlPackage { + pname = "MooX"; + version = "0.101"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GE/GETTY/MooX-0.101.tar.gz"; + sha256 = "2ff91a656e78aae0aca42293829d7a7e5acb9bf22b0401635b2ab6c870de32d5"; + }; + propagatedBuildInputs = [ DataOptList ImportInto Moo ]; + meta = { + homepage = "https://github.com/Getty/p5-moox"; + description = "Using Moo and MooX:: packages the most lazy way"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MooXAliases = buildPerlPackage { + pname = "MooX-Aliases"; + version = "0.001006"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HA/HAARG/MooX-Aliases-0.001006.tar.gz"; + sha256 = "0rrqqsm8i6rckzxgzcj2p2s4cfszzddzwbcm04yjcqdcihkk2q01"; + }; + propagatedBuildInputs = [ Moo strictures ]; + buildInputs = [ TestFatal ]; + meta = { + description = "easy aliasing of methods and attributes in Moo"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MooXCmd = buildPerlPackage { + pname = "MooX-Cmd"; + version = "0.017"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RE/REHSACK/MooX-Cmd-0.017.tar.gz"; + sha256 = "1xbhmq07v9z371ygkyghva9aryhc22kwbzn5qwkp72c0ma6z4gwl"; + }; + propagatedBuildInputs = [ ListMoreUtils ModulePluggable Moo PackageStash ParamsUtil RegexpCommon ]; + buildInputs = [ CaptureTiny ]; + meta = { + description = "Giving an easy Moo style way to make command organized CLI apps"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MooXlate = buildPerlPackage { + pname = "MooX-late"; + version = "0.100"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TOBYINK/MooX-late-0.100.tar.gz"; + sha256 = "2ae5b1e3da5abc0e4006278ecbcfa8fa7c224ea5529a6a688acbb229c09e6a5f"; + }; + buildInputs = [ TestFatal TestRequires ]; + propagatedBuildInputs = [ Moo SubHandlesVia ]; + meta = { + description = "Easily translate Moose code to Moo"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MouseXSimpleConfig = buildPerlPackage { + pname = "MouseX-SimpleConfig"; + version = "0.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MJ/MJGARDNER/MouseX-SimpleConfig-0.11.tar.gz"; + sha256 = "257f384091d33d340373a6153947039c698dc449d1ef989335644fc3d2da0069"; + }; + propagatedBuildInputs = [ ConfigAny MouseXConfigFromFile ]; + meta = { + description = "A Mouse role for setting attributes from a simple configfile"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestPostgreSQL = buildPerlModule { + pname = "Test-PostgreSQL"; + version = "1.27"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TJ/TJC/Test-PostgreSQL-1.27.tar.gz"; + sha256 = "b1bd231693100cc40905fb0ba3173173201621de9c8301f21c5b593b0a46f907"; + }; + buildInputs = [ ModuleBuildTiny TestSharedFork pkgs.postgresql ]; + propagatedBuildInputs = [ DBDPg DBI FileWhich FunctionParameters Moo TieHashMethod TryTiny TypeTiny ]; + + makeMakerFlags = "POSTGRES_HOME=${pkgs.postgresql}"; + + meta = { + homepage = "https://github.com/TJC/Test-postgresql"; + description = "PostgreSQL runner for tests"; + license = with lib.licenses; [ artistic2 ]; + }; + }; + + TestUseAllModules = buildPerlPackage { + pname = "Test-UseAllModules"; + version = "0.17"; + src = fetchurl { + url = "mirror://cpan/authors/id/I/IS/ISHIGAKI/Test-UseAllModules-0.17.tar.gz"; + sha256 = "a71f2fe8b96ab8bfc2760aa1d3135ea049a5b20dcb105457b769a1195c7a2509"; + }; + meta = { + description = "Do use_ok() for all the MANIFESTed modules"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestValgrind = buildPerlPackage { + pname = "Test-Valgrind"; + version = "1.19"; + src = fetchurl { + url = "mirror://cpan/authors/id/V/VP/VPIT/Test-Valgrind-1.19.tar.gz"; + sha256 = "06w1c0ddmmdkhhvv9pxq2nv5i40nbqf4cssfkq38yypfbyhsff0q"; + }; + propagatedBuildInputs = [ EnvSanctify FileHomeDir PerlDestructLevel XMLTwig ]; + meta = { + description = "Generate suppressions, analyse and test any command with valgrind."; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "http://search.cpan.org/dist/Test-Valgrind/"; + }; + }; + + MouseXTypesPathClass = buildPerlPackage { + pname = "MouseX-Types-Path-Class"; + version = "0.07"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MASAKI/MouseX-Types-Path-Class-0.07.tar.gz"; + sha256 = "228d4b4f3f0ed9547278691d0b7c5fe53d90874a69df709a49703c6af87c09de"; + }; + buildInputs = [ TestUseAllModules ]; + propagatedBuildInputs = [ MouseXTypes PathClass ]; + meta = { + description = "A Path::Class type library for Mouse"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MouseXTypes = buildPerlPackage { + pname = "MouseX-Types"; + version = "0.06"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GF/GFUJI/MouseX-Types-0.06.tar.gz"; + sha256 = "77288441fdadd15beeec9a0813ece8aec1542f1d8ceaaec14755b3f316fbcf8b"; + }; + buildInputs = [ TestException ]; + propagatedBuildInputs = [ AnyMoose ]; + meta = { + description = "Organize your Mouse types in libraries"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MouseXConfigFromFile = buildPerlPackage { + pname = "MouseX-ConfigFromFile"; + version = "0.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MASAKI/MouseX-ConfigFromFile-0.05.tar.gz"; + sha256 = "921b31cb13fc1f982a602f8e23815b7add23a224257e43790e287504ce879534"; + }; + buildInputs = [ TestUseAllModules ]; + propagatedBuildInputs = [ MouseXTypesPathClass ]; + meta = { + description = "An abstract Mouse role for setting attributes from a configfile"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MouseXGetopt = buildPerlModule { + pname = "MouseX-Getopt"; + version = "0.38"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GF/GFUJI/MouseX-Getopt-0.38.tar.gz"; + sha256 = "de3ea8ef452dd9501ea8c4eda8744b7224602602b04692607edd7d62b79f038f"; + }; + buildInputs = [ ModuleBuildTiny MouseXConfigFromFile MouseXSimpleConfig TestException TestWarn ]; + propagatedBuildInputs = [ GetoptLongDescriptive Mouse ]; + meta = { + homepage = "https://github.com/gfx/mousex-getopt"; + description = "A Mouse role for processing command line options"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MooseXAttributeChained = buildPerlModule { + pname = "MooseX-Attribute-Chained"; + version = "1.0.3"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TOMHUKINS/MooseX-Attribute-Chained-1.0.3.tar.gz"; + sha256 = "0kjydmkxh8hpkbbmsgd5wrkhgq7w69lgfg6lx4s5g2xpqfkqmqz7"; + }; + propagatedBuildInputs = [ Moose ]; + }; + + MooseXAttributeHelpers = buildPerlModule { + pname = "MooseX-AttributeHelpers"; + version = "0.25"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/MooseX-AttributeHelpers-0.25.tar.gz"; + sha256 = "b0c819ec83999b258b248f82059fa5975a0cee365423abbee0efaca5401c5ec6"; + }; + buildInputs = [ ModuleBuildTiny TestException ]; + propagatedBuildInputs = [ Moose ]; + meta = { + description = "Extend your attribute interfaces (deprecated)"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MooseXClone = buildPerlModule { + pname = "MooseX-Clone"; + version = "0.06"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/MooseX-Clone-0.06.tar.gz"; + sha256 = "19wd74dihybnz1lbbsqn0clwxzb6y0aa0i25a8zhajz7p5fq5myb"; + }; + propagatedBuildInputs = [ DataVisitor HashUtilFieldHashCompat namespaceautoclean ]; + buildInputs = [ ModuleBuildTiny ]; + }; + + MooseXConfigFromFile = buildPerlModule { + pname = "MooseX-ConfigFromFile"; + version = "0.14"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/MooseX-ConfigFromFile-0.14.tar.gz"; + sha256 = "9ad343cd9f86d714be9b54b9c68a443d8acc6501b6ad6b15e9ca0130b2e96f08"; + }; + buildInputs = [ ModuleBuildTiny TestDeep TestFatal TestRequires TestWithoutModule ]; + propagatedBuildInputs = [ MooseXTypesPathTiny ]; + meta = { + homepage = "https://github.com/moose/MooseX-ConfigFromFile"; + description = "An abstract Moose role for setting attributes from a configfile"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MooseXDaemonize = buildPerlModule { + pname = "MooseX-Daemonize"; + version = "0.22"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/MooseX-Daemonize-0.22.tar.gz"; + sha256 = "8a7fb999dca9b802a85136a10141b2d3378a3ecde0527c1df73d55edb28e59b3"; + }; + buildInputs = [ DevelCheckOS ModuleBuildTiny TestFatal ]; + propagatedBuildInputs = [ MooseXGetopt MooseXTypesPathClass ]; + meta = { + homepage = "https://github.com/moose/MooseX-Daemonize"; + description = "Role for daemonizing your Moose based application"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MooseXEmulateClassAccessorFast = buildPerlPackage { + pname = "MooseX-Emulate-Class-Accessor-Fast"; + version = "0.009032"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HA/HAARG/MooseX-Emulate-Class-Accessor-Fast-0.009032.tar.gz"; + sha256 = "153r30nggcyyx7ai15dbnba2h5145f8jdsh6wj54298d3zpvgvl2"; + }; + buildInputs = [ TestException ]; + propagatedBuildInputs = [ Moose namespaceclean ]; + meta = { + description = "Emulate Class::Accessor::Fast behavior using Moose attributes"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MooseXGetopt = buildPerlModule { + pname = "MooseX-Getopt"; + version = "0.74"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/MooseX-Getopt-0.74.tar.gz"; + sha256 = "1de0df3b431ebe9f3563bdf4569eacd7e07e865a8397f2a990d0cb57d4cb2c24"; + }; + buildInputs = [ ModuleBuildTiny MooseXStrictConstructor PathTiny TestDeep TestFatal TestNeeds TestTrap TestWarnings ]; + propagatedBuildInputs = [ GetoptLongDescriptive MooseXRoleParameterized ]; + meta = { + homepage = "https://github.com/moose/MooseX-Getopt"; + description = "A Moose role for processing command line options"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MooseXHasOptions = buildPerlPackage { + pname = "MooseX-Has-Options"; + version = "0.003"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PS/PSHANGOV/MooseX-Has-Options-0.003.tar.gz"; + sha256 = "07c21cf8ed500b272020ff8da19f194728bb414e0012a2f0cc54ef2ef6222a68"; + }; + buildInputs = [ Moose TestDeep TestDifferences TestException TestMost TestWarn namespaceautoclean ]; + propagatedBuildInputs = [ ClassLoad ListMoreUtils StringRewritePrefix ]; + meta = { + homepage = "https://github.com/pshangov/moosex-has-options"; + description = "Succinct options for Moose"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MooseXHasSugar = buildPerlPackage { + pname = "MooseX-Has-Sugar"; + version = "1.000006"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KE/KENTNL/MooseX-Has-Sugar-1.000006.tar.gz"; + sha256 = "efeed3ddb3a8ea18f416d485f3c2b0427145d267e63368c651d488eaa8c28d09"; + }; + buildInputs = [ TestFatal namespaceclean ]; + propagatedBuildInputs = [ SubExporterProgressive ]; + meta = { + homepage = "https://github.com/kentfredric/MooseX-Has-Sugar"; + description = "Sugar Syntax for moose 'has' fields"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MooseXLazyRequire = buildPerlModule { + pname = "MooseX-LazyRequire"; + version = "0.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/MooseX-LazyRequire-0.11.tar.gz"; + sha256 = "ef620c1e019daf9cf3f23a943d25a94c91e93ab312bcd63be2e9740ec0b94288"; + }; + buildInputs = [ ModuleBuildTiny TestFatal ]; + propagatedBuildInputs = [ Moose aliased namespaceautoclean ]; + meta = { + homepage = "https://github.com/moose/MooseX-LazyRequire"; + description = "Required attributes which fail only when trying to use them"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MooseXMarkAsMethods = buildPerlPackage { + pname = "MooseX-MarkAsMethods"; + version = "0.15"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RS/RSRCHBOY/MooseX-MarkAsMethods-0.15.tar.gz"; + sha256 = "1y3yxwcjjajm66pvca54cv9fax7a6dy36xqr92x7vzyhfqrw3v69"; + }; + propagatedBuildInputs = [ Moose namespaceautoclean ]; + meta = { + description = "Mark overload code symbols as methods"; + license = lib.licenses.lgpl21; + }; + }; + + MooseXMethodAttributes = buildPerlPackage { + pname = "MooseX-MethodAttributes"; + version = "0.32"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/MooseX-MethodAttributes-0.32.tar.gz"; + sha256 = "0yqrihv609j2q0hrmpmvgpn0mnxc0z3ws39cqhwxvlmpfijqhcyb"; + }; + buildInputs = [ MooseXRoleParameterized TestFatal TestNeeds ]; + propagatedBuildInputs = [ Moose namespaceautoclean ]; + meta = { + homepage = "https://github.com/karenetheridge/moosex-methodattributes"; + description = "Code attribute introspection"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MooseXNonMoose = buildPerlPackage { + pname = "MooseX-NonMoose"; + version = "0.26"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DO/DOY/MooseX-NonMoose-0.26.tar.gz"; + sha256 = "0zdaiphc45s5xj0ax5mkijf5d8v6w6yccb3zplgj6f30y7n55gnb"; + }; + buildInputs = [ TestFatal ]; + propagatedBuildInputs = [ ListMoreUtils Moose ]; + meta = { + description = "Easy subclassing of non-Moose classes"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MooseXOneArgNew = buildPerlPackage { + pname = "MooseX-OneArgNew"; + version = "0.005"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/MooseX-OneArgNew-0.005.tar.gz"; + sha256 = "0gqhqdkwsnxmni0xv43iplplgp6g55khdwc5117j9i569r3wykvy"; + }; + propagatedBuildInputs = [ MooseXRoleParameterized ]; + meta = { + homepage = "https://github.com/rjbs/moosex-oneargnew"; + description = "Teach ->new to accept single, non-hashref arguments"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MooseXRelatedClassRoles = buildPerlPackage { + pname = "MooseX-RelatedClassRoles"; + version = "0.004"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HD/HDP/MooseX-RelatedClassRoles-0.004.tar.gz"; + sha256 = "17vynkf6m5d039qkr4in1c9lflr8hnwp1fgzdwhj4q6jglipmnrh"; + }; + propagatedBuildInputs = [ MooseXRoleParameterized ]; + }; + + MooseXParamsValidate = buildPerlPackage { + pname = "MooseX-Params-Validate"; + version = "0.21"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DR/DROLSKY/MooseX-Params-Validate-0.21.tar.gz"; + sha256 = "1n9ry6gnskkp9ir6s7d5jirn3mh14ydgpmwqz6wcp6d9md358ac8"; + }; + buildInputs = [ TestFatal ]; + propagatedBuildInputs = [ DevelCaller Moose ParamsValidate ]; + meta = { + description = "An extension of Params::Validate using Moose's types"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MooseXRoleParameterized = buildPerlModule { + pname = "MooseX-Role-Parameterized"; + version = "1.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/MooseX-Role-Parameterized-1.11.tar.gz"; + sha256 = "17pc5dly7ba0p50p2xcmp7bar8m262jcqgbkgyswl3kzbmn7dzhw"; + }; + buildInputs = [ CPANMetaCheck ModuleBuildTiny TestFatal TestNeeds ]; + propagatedBuildInputs = [ Moose namespaceautoclean ]; + meta = { + homepage = "https://github.com/moose/MooseX-Role-Parameterized"; + description = "Roles with composition parameters"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MooseXRoleWithOverloading = buildPerlPackage { + pname = "MooseX-Role-WithOverloading"; + version = "0.17"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/MooseX-Role-WithOverloading-0.17.tar.gz"; + sha256 = "0rb8k0dp1a55bm2pr6r0vsi5msvjl1dslfidxp1gj80j7zbrbc4j"; + }; + propagatedBuildInputs = [ Moose aliased namespaceautoclean ]; + meta = { + description = "Roles which support overloading"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MooseXRunnable = buildPerlModule { + pname = "MooseX-Runnable"; + version = "0.10"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/MooseX-Runnable-0.10.tar.gz"; + sha256 = "40d8fd1b5524ae965965a1f144d7a0a0c850594c524402b2319b24d5c4af1199"; + }; + buildInputs = [ ModuleBuildTiny TestFatal TestSimple13 TestTableDriven ]; + propagatedBuildInputs = [ ListSomeUtils MooseXTypesPathTiny ]; + meta = { + homepage = "https://github.com/moose/MooseX-Runnable"; + description = "Tag a class as a runnable application"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MooseXSemiAffordanceAccessor = buildPerlPackage { + pname = "MooseX-SemiAffordanceAccessor"; + version = "0.10"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DR/DROLSKY/MooseX-SemiAffordanceAccessor-0.10.tar.gz"; + sha256 = "1mdil9ckgmgr78z59p8wfa35ixn5855ndzx14y01dvfxpiv5gf55"; + }; + propagatedBuildInputs = [ Moose ]; + }; + + MooseXSetOnce = buildPerlPackage { + pname = "MooseX-SetOnce"; + version = "0.200002"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/MooseX-SetOnce-0.200002.tar.gz"; + sha256 = "0ndnl8dj7nh8lvckl6r3jw31d0dmq30qf2pqkgcz0lykzjvhdvfb"; + }; + buildInputs = [ TestFatal ]; + propagatedBuildInputs = [ Moose ]; + }; + + MooseXSingleton = buildPerlModule { + pname = "MooseX-Singleton"; + version = "0.30"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/MooseX-Singleton-0.30.tar.gz"; + sha256 = "0hb5s1chsgbx2nlb0f112mdh2v1zwww8f4i3gvfvcghx3grv5135"; + }; + buildInputs = [ ModuleBuildTiny TestFatal TestRequires TestWarnings ]; + propagatedBuildInputs = [ Moose ]; + }; + + MooseXStorage = buildPerlPackage { + pname = "MooseX-Storage"; + version = "0.53"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/MooseX-Storage-0.53.tar.gz"; + sha256 = "8704bfe505f66b340f62e85c9ff319c19e9670b26d4b012c91f4e103b1daace0"; + }; + buildInputs = [ TestDeep TestDeepType TestFatal TestNeeds TestDeepJSON TestWithoutModule DigestHMAC MooseXTypes ]; + propagatedBuildInputs = [ ModuleRuntime Moose MooseXRoleParameterized PodCoverage StringRewritePrefix namespaceautoclean IOStringy JSON JSONXS JSONMaybeXS CpanelJSONXS YAML YAMLOld YAMLTiny YAMLLibYAML YAMLSyck ]; + meta = { + homepage = "https://github.com/moose/MooseX-Storage"; + description = "A serialization framework for Moose classes"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MooseXStrictConstructor = buildPerlPackage { + pname = "MooseX-StrictConstructor"; + version = "0.21"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DR/DROLSKY/MooseX-StrictConstructor-0.21.tar.gz"; + sha256 = "c72a5ae9583706ccdec71d401dcb3054013a7536b750df1436613d858ea2920d"; + }; + buildInputs = [ Moo TestFatal TestNeeds ]; + propagatedBuildInputs = [ Moose namespaceautoclean ]; + meta = { + description = "Make your object constructors blow up on unknown attributes"; + license = lib.licenses.artistic2; + }; + }; + + MooseXTraits = buildPerlModule { + pname = "MooseX-Traits"; + version = "0.13"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/MooseX-Traits-0.13.tar.gz"; + sha256 = "74afe0c4faf4e3b97c57f289437caa60becca34cd5821f489dd4cc9da4fbe29a"; + }; + buildInputs = [ ModuleBuildTiny MooseXRoleParameterized TestFatal TestRequires TestSimple13 ]; + propagatedBuildInputs = [ Moose namespaceautoclean ]; + meta = { + homepage = "https://github.com/moose/MooseX-Traits"; + description = "Automatically apply roles at object creation time"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MooseXTraitsPluggable = buildPerlPackage { + pname = "MooseX-Traits-Pluggable"; + version = "0.12"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RK/RKITOVER/MooseX-Traits-Pluggable-0.12.tar.gz"; + sha256 = "1jjqmcidy4kdgp5yffqqwxrsab62mbhbpvnzdy1rpwnb1savg5mb"; + }; + buildInputs = [ TestException ]; + propagatedBuildInputs = [ ListMoreUtils Moose namespaceautoclean ]; + }; + + MooseXTypes = buildPerlModule { + pname = "MooseX-Types"; + version = "0.50"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/MooseX-Types-0.50.tar.gz"; + sha256 = "9cd87b3492cbf0be9d2df9317b2adf9fc30663770e69906654bea3f41b17cb08"; + }; + buildInputs = [ ModuleBuildTiny TestFatal TestRequires ]; + propagatedBuildInputs = [ CarpClan Moose SubExporterForMethods namespaceautoclean ]; + meta = { + homepage = "https://github.com/moose/MooseX-Types"; + description = "Organise your Moose types in libraries"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MooseXTypesCommon = buildPerlModule { + pname = "MooseX-Types-Common"; + version = "0.001014"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/MooseX-Types-Common-0.001014.tar.gz"; + sha256 = "ef93718b6d2f240d50b5c3acb1a74b4c2a191869651470001a82be1f35d0ef0f"; + }; + buildInputs = [ ModuleBuildTiny TestDeep TestWarnings ]; + propagatedBuildInputs = [ MooseXTypes ]; + meta = { + homepage = "https://github.com/moose/MooseX-Types-Common"; + description = "A library of commonly used type constraints"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MooseXTypesDateTime = buildPerlModule { + pname = "MooseX-Types-DateTime"; + version = "0.13"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/MooseX-Types-DateTime-0.13.tar.gz"; + sha256 = "b89fa26636f6a17eaa3868b4514340472b68bbdc2161a1d79a22a1bf5b1d39c6"; + }; + buildInputs = [ ModuleBuildTiny TestFatal TestSimple13 ]; + propagatedBuildInputs = [ DateTime MooseXTypes ]; + meta = { + homepage = "https://github.com/moose/MooseX-Types-DateTime"; + description = "DateTime related constraints and coercions for Moose"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MooseXTypesDateTimeMoreCoercions = buildPerlModule { + pname = "MooseX-Types-DateTime-MoreCoercions"; + version = "0.15"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/MooseX-Types-DateTime-MoreCoercions-0.15.tar.gz"; + sha256 = "21bb3a597719888edb6ceaa132418d5cf92ecb92a50cce37b94259a55e0e3796"; + }; + buildInputs = [ ModuleBuildTiny TestFatal TestSimple13 ]; + propagatedBuildInputs = [ DateTimeXEasy MooseXTypesDateTime TimeDurationParse ]; + meta = { + homepage = "https://github.com/moose/MooseX-Types-DateTime-MoreCoercions"; + description = "Extensions to MooseX::Types::DateTime"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MooseXTypesLoadableClass = buildPerlModule { + pname = "MooseX-Types-LoadableClass"; + version = "0.015"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/MooseX-Types-LoadableClass-0.015.tar.gz"; + sha256 = "e037d3778253dcf92946435715bada0e6449c0a2808fa3ff32a965064d5a3bf4"; + }; + buildInputs = [ ModuleBuildTiny TestFatal ]; + propagatedBuildInputs = [ MooseXTypes ]; + meta = { + homepage = "https://github.com/moose/MooseX-Types-LoadableClass"; + description = "ClassName type constraint with coercion to load the class"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MooseXTypesPathClass = buildPerlModule { + pname = "MooseX-Types-Path-Class"; + version = "0.09"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/MooseX-Types-Path-Class-0.09.tar.gz"; + sha256 = "0zpgwzxj6d9k2lbg6v6zd1bcbzjz2h336rm816krbblq6ssvm177"; + }; + propagatedBuildInputs = [ MooseXTypes PathClass ]; + meta = { + description = "A Path::Class type library for Moose"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ ModuleBuildTiny TestNeeds ]; + }; + + MooseXTypesPathTiny = buildPerlModule { + pname = "MooseX-Types-Path-Tiny"; + version = "0.012"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/MooseX-Types-Path-Tiny-0.012.tar.gz"; + sha256 = "19eede02dd654e70f73e34cd7af0063765173bcaefeeff1bdbe21318ecfd9158"; + }; + buildInputs = [ Filepushd ModuleBuildTiny TestFatal ]; + propagatedBuildInputs = [ MooseXGetopt MooseXTypesStringlike PathTiny ]; + meta = { + homepage = "https://github.com/karenetheridge/moosex-types-path-tiny"; + description = "Path::Tiny types and coercions for Moose"; + license = lib.licenses.asl20; + }; + }; + + MooseXTypesPerl = buildPerlPackage { + pname = "MooseX-Types-Perl"; + version = "0.101343"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/MooseX-Types-Perl-0.101343.tar.gz"; + sha256 = "0nijy676q27bvjb8swxrb1j4lq2xq8jbqkaxs1l9q81k7jpvx17h"; + }; + propagatedBuildInputs = [ MooseXTypes ]; + meta = { + description = "Moose types that check against Perl syntax"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MooseXTypesStringlike = buildPerlPackage { + pname = "MooseX-Types-Stringlike"; + version = "0.003"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DAGOLDEN/MooseX-Types-Stringlike-0.003.tar.gz"; + sha256 = "06fgamdiz0n7cgghb8ycjd5mcidj8w769zs2gws6z6jjbkn4kqrf"; + }; + propagatedBuildInputs = [ MooseXTypes ]; + meta = { + homepage = "https://github.com/dagolden/moosex-types-stringlike"; + description = "Moose type constraints for strings or string-like objects"; + license = lib.licenses.asl20; + }; + }; + + MooseXTypesStructured = buildPerlModule { + pname = "MooseX-Types-Structured"; + version = "0.36"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/MooseX-Types-Structured-0.36.tar.gz"; + sha256 = "0mrxc00sid7526c6brrnjr6288468sszic3wazij71v3z59bdka3"; + }; + buildInputs = [ DateTime ModuleBuildTiny MooseXTypesDateTime TestFatal TestNeeds ]; + propagatedBuildInputs = [ DevelPartialDump MooseXTypes ]; + meta = { + description = "MooseX::Types::Structured - Structured Type Constraints for Moose"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MooseXTypesURI = buildPerlModule { + pname = "MooseX-Types-URI"; + version = "0.08"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/MooseX-Types-URI-0.08.tar.gz"; + sha256 = "d310d20fa361fe2dff758236df87949cc7bf98e5cf3a7c79115365eccde6ccc1"; + }; + buildInputs = [ ModuleBuildTiny TestSimple13 ]; + propagatedBuildInputs = [ MooseXTypesPathClass URIFromHash ]; + meta = { + homepage = "https://github.com/moose/MooseX-Types-URI"; + description = "URI related types and coercions for Moose"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MP3Info = buildPerlPackage { + pname = "MP3-Info"; + version = "1.26"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JM/JMERELO/MP3-Info-1.26.tar.gz"; + sha256 = "1rwbrsdw6y6jgcjvrlji6fbcvwl4wlka3mkhlw12a7s2683k8qjp"; + }; + meta = { + description = "Manipulate / fetch info from MP3 audio files"; + license = with lib.licenses; [ artistic1 ]; + }; + }; + + MP3Tag = buildPerlPackage { + pname = "MP3-Tag"; + version = "1.15"; + src = fetchurl { + url = "mirror://cpan/authors/id/I/IL/ILYAZ/modules/MP3-Tag-1.15.zip"; + sha256 = "1lanbwv97sfsb7h4vsg1v0dv3yghpz01nf3rzl4a9p3ycgs4ib5a"; + }; + buildInputs = [ pkgs.unzip ]; + + postPatch = '' + substituteInPlace Makefile.PL --replace "'PL_FILES'" "#'PL_FILES'" + ''; + postFixup = '' + perl data_pod.PL PERL5LIB:$PERL5LIB + ''; + outputs = [ "out" ]; + meta = { + description = "Module for reading tags of MP3 audio files"; + license = with lib.licenses; [ artistic1 ]; + }; + }; + + Mouse = buildPerlModule { + pname = "Mouse"; + version = "2.5.10"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SK/SKAJI/Mouse-v2.5.10.tar.gz"; + sha256 = "1vijm8wkyws1jhnqmx104585q3srw9z1crcpy1zlcfhm8qww53ff"; + }; + buildInputs = [ ModuleBuildXSUtil TestException TestFatal TestLeakTrace TestOutput TestRequires TryTiny ]; + perlPreHook = "export LD=$CC"; + NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isi686 "-fno-stack-protector"; + hardeningDisable = lib.optional stdenv.isi686 "stackprotector"; + }; + + MouseXNativeTraits = buildPerlPackage { + pname = "MouseX-NativeTraits"; + version = "1.09"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GF/GFUJI/MouseX-NativeTraits-1.09.tar.gz"; + sha256 = "0pnbchkxfz9fwa8sniyjqp0mz75b3k2fafq9r09znbbh51dbz9gq"; + }; + buildInputs = [ AnyMoose TestFatal ]; + propagatedBuildInputs = [ Mouse ]; + meta = { + description = "Extend attribute interfaces for Mouse"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MozillaCA = buildPerlPackage { + pname = "Mozilla-CA"; + version = "20200520"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AB/ABH/Mozilla-CA-20200520.tar.gz"; + sha256 = "b3ca0002310bf24a16c0d5920bdea97a2f46e77e7be3e7377e850d033387c726"; + }; + + postPatch = '' + ln -s --force ${pkgs.cacert}/etc/ssl/certs/ca-bundle.crt lib/Mozilla/CA/cacert.pem + ''; + + meta = { + description = "Mozilla's CA cert bundle in PEM format"; + license = lib.licenses.mpl20; + }; + }; + + MozillaLdap = callPackage ../development/perl-modules/Mozilla-LDAP { }; + + MROCompat = buildPerlPackage { + pname = "MRO-Compat"; + version = "0.13"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HA/HAARG/MRO-Compat-0.13.tar.gz"; + sha256 = "1y547lr6zccf7919vx01v22zsajy528psanhg5aqschrrin3nb4a"; + }; + meta = { + description = "Mro::* interface compatibility for Perls < 5.9.5"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MusicBrainzDiscID = buildPerlPackage { + pname = "MusicBrainz-DiscID"; + version = "0.06"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NJ/NJH/MusicBrainz-DiscID-0.06.tar.gz"; + sha256 = "1azc91jnwa3gdmy9pc8mflakgvsvf69ywwlqllxmdzwpk386w2xs"; + }; + perlPreHook = lib.optionalString stdenv.isi686 "export LD=$CC"; # fix undefined reference to `__stack_chk_fail_local' + # Makefile.PL in this package uses which to find pkg-config -- make it use path instead + patchPhase = ''sed -ie 's/`which pkg-config`/"pkg-config"/' Makefile.PL''; + doCheck = false; # The main test performs network access + nativeBuildInputs = [ pkgs.pkg-config ]; + propagatedBuildInputs = [ pkgs.libdiscid ]; + }; + + MusicBrainz = buildPerlModule { + pname = "WebService-MusicBrainz"; + version = "1.0.5"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BF/BFAIST/WebService-MusicBrainz-1.0.5.tar.gz"; + sha256 = "16chs1l58cf000d5kalkyph3p31ci73p1rlyx98mfv10d2cq6fsj"; + }; + propagatedBuildInputs = [ Mojolicious ]; + doCheck = false; # Test performs network access. + }; + + MustacheSimple = buildPerlPackage { + pname = "Mustache-Simple"; + version = "1.3.6"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CM/CMS/Mustache-Simple-v1.3.6.tar.gz"; + sha256 = "51db5d51ff4b25a670d8bfabe3902b6d45434ecf78b29bc1fff19af6e7383003"; + }; + propagatedBuildInputs = [ YAMLLibYAML ]; + meta = { + description = "A simple Mustache Renderer"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MySQLDiff = buildPerlPackage rec { + pname = "MySQL-Diff"; + version = "0.60"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ES/ESTRABD/MySQL-Diff-0.60.tar.gz"; + sha256 = "5d7080a4bd5714ff9ef536aa774a7adb3c6f0e760215ca6c39d8a3545344f956"; + }; + propagatedBuildInputs = [ pkgs.mariadb.client FileSlurp StringShellQuote ]; + meta = { + homepage = "https://github.com/estrabd/mysqldiff"; + description = "Generates a database upgrade instruction set"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + namespaceautoclean = buildPerlPackage { + pname = "namespace-autoclean"; + version = "0.29"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/namespace-autoclean-0.29.tar.gz"; + sha256 = "45ebd8e64a54a86f88d8e01ae55212967c8aa8fed57e814085def7608ac65804"; + }; + buildInputs = [ TestNeeds ]; + propagatedBuildInputs = [ SubIdentify namespaceclean ]; + meta = { + homepage = "https://github.com/moose/namespace-autoclean"; + description = "Keep imports out of your namespace"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + namespaceclean = buildPerlPackage { + pname = "namespace-clean"; + version = "0.27"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RI/RIBASUSHI/namespace-clean-0.27.tar.gz"; + sha256 = "8a10a83c3e183dc78f9e7b7aa4d09b47c11fb4e7d3a33b9a12912fd22e31af9d"; + }; + propagatedBuildInputs = [ BHooksEndOfScope PackageStash ]; + meta = { + description = "Keep imports and functions out of your namespace"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + NetIdent = buildPerlPackage { + pname = "Net-Ident"; + version = "1.25"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TODDR/Net-Ident-1.25.tar.gz"; + sha256 = "2e5bd58b01c2a66e8049a2f8d9c93e1b5f6dce53e0ee3a481ce6a6f411f2c8f8"; + }; + meta = { + homepage = "https://github.com/toddr/Net-Ident"; + description = "Lookup the username on the remote end of a TCP/IP connection"; + license = lib.licenses.mit; + }; + }; + + NetINET6Glue = buildPerlPackage { + pname = "Net-INET6Glue"; + version = "0.604"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SU/SULLR/Net-INET6Glue-0.604.tar.gz"; + sha256 = "05xvbdrqq88npzg14bjm9wmjykzplwirzcm8rp61852hz6c67hwh"; + }; + meta = { + homepage = "https://github.com/noxxi/p5-net-inet6glue"; + description = "Make common modules IPv6 ready by hotpatching"; + license = lib.licenses.artistic1; + }; + }; + + NetAddrIP = buildPerlPackage { + pname = "NetAddr-IP"; + version = "4.079"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIKER/NetAddr-IP-4.079.tar.gz"; + sha256 = "ec5a82dfb7028bcd28bb3d569f95d87dd4166cc19867f2184ed3a59f6d6ca0e7"; + }; + meta = { + description = "Manages IPv4 and IPv6 addresses and subnets"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + NetAmazonAWSSign = buildPerlPackage { + pname = "Net-Amazon-AWSSign"; + version = "0.12"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NA/NATON/Net-Amazon-AWSSign-0.12.tar.gz"; + sha256 = "0gpdjz5095hd3y1xhnbv45m6q2shw0c9r7spj1jvb8hy7dmhq10x"; + }; + propagatedBuildInputs = [ URI ]; + meta = { + description = "Perl extension to create signatures for AWS requests"; + }; + }; + + NetAmazonEC2 = buildPerlPackage { + pname = "Net-Amazon-EC2"; + version = "0.36"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MALLEN/Net-Amazon-EC2-0.36.tar.gz"; + sha256 = "1wbjgmxjzr8mjpwj3mglan9hyh327cz27sfsir0w4rphwy93ca2f"; + }; + propagatedBuildInputs = [ LWPProtocolHttps Moose ParamsValidate XMLSimple ]; + buildInputs = [ TestException ]; + meta = { + description = "Perl interface to the Amazon Elastic Compute Cloud (EC2) environment."; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + NetAmazonMechanicalTurk = buildPerlModule { + pname = "Net-Amazon-MechanicalTurk"; + version = "1.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MT/MTURK/Net-Amazon-MechanicalTurk-1.02.tar.gz"; + sha256 = "13hgggfchhp4m3l2rn3d1v6g6ccwmwf9xiyc9izv5570930mw2cd"; + }; + patches = + [ ../development/perl-modules/net-amazon-mechanicalturk.patch ]; + propagatedBuildInputs = [ DigestHMAC LWPProtocolHttps XMLParser ]; + doCheck = false; /* wants network */ + }; + + NetAmazonS3 = buildPerlPackage { + pname = "Net-Amazon-S3"; + version = "0.97"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BA/BARNEY/Net-Amazon-S3-0.97.tar.gz"; + sha256 = "0d6yg0l6r6ziqjvgsswr484l66nznmj0b9rx4jnsygj8s1vmdn03"; + }; + buildInputs = [ TestDeep TestException TestLWPUserAgent TestMockTime TestWarnings ]; + propagatedBuildInputs = [ DataStreamBulk DateTimeFormatHTTP DigestHMAC DigestMD5File FileFindRule LWPUserAgentDetermined MIMETypes MooseXRoleParameterized MooseXStrictConstructor MooseXTypesDateTimeMoreCoercions RefUtil RegexpCommon SafeIsa SubOverride TermEncoding TermProgressBarSimple XMLLibXML ]; + meta = { + description = "Use the Amazon S3 - Simple Storage Service"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + NetAmazonS3Policy = buildPerlModule { + pname = "Net-Amazon-S3-Policy"; + version = "0.1.6"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PO/POLETTIX/Net-Amazon-S3-Policy-0.1.6.tar.gz"; + sha256 = "056rhq6vsdpwi2grbmxj8341qjrz0258civpnhs78j37129nxcfj"; + }; + propagatedBuildInputs = [ JSON ]; + meta = { + description = "Manage Amazon S3 policies for HTTP POST forms"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + NetAsyncHTTP = buildPerlModule { + pname = "Net-Async-HTTP"; + version = "0.48"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PEVANS/Net-Async-HTTP-0.48.tar.gz"; + sha256 = "0gpp46lg7sr5xpsjhqkb022f9v88wy73carsrn5pvbmwjpwxcjwx"; + }; + buildInputs = [ HTTPCookies TestIdentity TestMetricsAny TestRefcount ]; + propagatedBuildInputs = [ Future HTTPMessage IOAsync MetricsAny StructDumb URI ]; + preCheck = lib.optionalString stdenv.isDarwin '' + # network tests fail on Darwin/sandbox, so disable these + rm -f t/20local-connect.t t/22local-connect-pipeline.t t/23local-connect-redir.t + rm -f t/90rt75615.t t/90rt75616.t t/90rt93232.t + ''; + meta = { + description = "Use HTTP with IO::Async"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.zakame ]; + }; + }; + + NetAsyncPing = buildPerlPackage { + pname = "Net-Async-Ping"; + version = "0.004001"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AB/ABRAXXA/Net-Async-Ping-0.004001.tar.gz"; + sha256 = "0nz9i9fp7wp620f4i9z8fip1zhcaz34ckhd00ymksw8cfr8fhmwh"; + }; + propagatedBuildInputs = [ IOAsync Moo NetFrameLayerIPv6 namespaceclean ]; + buildInputs = [ TestFatal ]; + preCheck = "rm t/icmp_ps.t t/icmpv6_ps.t"; # ping socket tests fail + meta = { + description = "asyncronously check remote host for reachability"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/frioux/Net-Async-Ping"; + }; + }; + + NetAsyncWebSocket = buildPerlModule { + pname = "Net-Async-WebSocket"; + version = "0.13"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PEVANS/Net-Async-WebSocket-0.13.tar.gz"; + sha256 = "000nw7gnj7ks55nib3fiikxx9bfmbla6fimxrbn2z2n7sd187b0d"; + }; + propagatedBuildInputs = [ IOAsync ProtocolWebSocket URI ]; + preCheck = lib.optionalString stdenv.isDarwin '' + # network tests fail on Darwin/sandbox, so disable these + rm -f t/02server.t t/03cross.t + ''; + meta = { + description = "Use WebSockets with IO::Async"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.zakame ]; + }; + }; + + NetAMQP = buildPerlModule { + pname = "Net-AMQP"; + version = "0.06"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CH/CHIPS/Net-AMQP-0.06.tar.gz"; + sha256 = "0b2ba7de2cd7ddd5fe102a2e2ae7aeba21eaab1078bf3bfd3c5a722937256380"; + }; + doCheck = false; # failures on 32bit + buildInputs = [ TestDeep ]; + propagatedBuildInputs = [ ClassAccessor ClassDataInheritable XMLLibXML ]; + meta = { + description = "Advanced Message Queue Protocol (de)serialization and representation"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + NetCIDR = buildPerlPackage { + pname = "Net-CIDR"; + version = "0.20"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MR/MRSAM/Net-CIDR-0.20.tar.gz"; + sha256 = "c75edc6818bb360d71c139169fd64ad65c35fff6d2b9fac7b9f9e6c467f187b5"; + }; + meta = { + description = "Manipulate IPv4/IPv6 netblocks in CIDR notation"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.bjornfor ]; + }; + }; + + NetCIDRLite = buildPerlPackage { + pname = "Net-CIDR-Lite"; + version = "0.22"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/ST/STIGTSP/Net-CIDR-Lite-0.22.tar.gz"; + sha256 = "05w57db2lx4djb4vixzdr6qgrzyzkk047nl812g7nq8s6k5xh5s3"; + }; + meta = { + description = "Perl extension for merging IPv4 or IPv6 CIDR addresses"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + NetCoverArtArchive = buildPerlPackage { + pname = "Net-CoverArtArchive"; + version = "1.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CY/CYCLES/Net-CoverArtArchive-1.02.tar.gz"; + sha256 = "1lfx8lrjgb3s11fcm243jp5sghngd9svkgmg7xmssmj34q4f49ap"; + }; + buildInputs = [ FileFindRule ]; + propagatedBuildInputs = [ JSONAny LWP Moose namespaceautoclean ]; + meta = { + homepage = "https://github.com/metabrainz/CoverArtArchive"; + description = "Query the coverartarchive.org"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + NetDBus = buildPerlPackage { + pname = "Net-DBus"; + version = "1.2.0"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DANBERR/Net-DBus-1.2.0.tar.gz"; + sha256 = "e7a1ac9ef4a1235b3fdbd5888f86c347182306467bd79abc9b0756a64b441cbc"; + }; + nativeBuildInputs = [ buildPackages.pkg-config ]; + buildInputs = [ pkgs.dbus TestPod TestPodCoverage ]; + propagatedBuildInputs = [ XMLTwig ]; + + # https://gitlab.com/berrange/perl-net-dbus/-/merge_requests/19 + patches = (fetchpatch { + url = "https://gitlab.com/berrange/perl-net-dbus/-/commit/6bac8f188fb06e5e5edd27aee672d66b7c28caa4.patch"; + sha256 = "19nf4xn9xhyd0sd2az9iliqldjj0k6ah2dmkyqyvq4rp2d9k5jgb"; + }); + + postPatch = '' + substituteInPlace Makefile.PL --replace pkg-config $PKG_CONFIG + ''; + + meta = { + homepage = "http://www.freedesktop.org/wiki/Software/dbus"; + description = "Extension for the DBus bindings"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + NetDNS = buildPerlPackage rec { + pname = "Net-DNS"; + version = "1.29"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NL/NLNETLABS/Net-DNS-1.29.tar.gz"; + sha256 = "1ia35l9bdnwic6fb5knkvn6bl939np5q2r824d1023cggvl6wbc5"; + }; + propagatedBuildInputs = [ DigestHMAC ]; + makeMakerFlags = "--noonline-tests"; + meta = { + description = "Perl Interface to the Domain Name System"; + license = lib.licenses.mit; + }; + }; + + NetDNSResolverMock = buildPerlPackage { + pname = "Net-DNS-Resolver-Mock"; + version = "1.20200215"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MB/MBRADSHAW/Net-DNS-Resolver-Mock-1.20200215.tar.gz"; + sha256 = "1rv745c16l3m3w6xx2hjmmgzkdklmzm9imdfiddmdr9hwm8g3xxy"; + }; + propagatedBuildInputs = [ NetDNS ]; + meta = { + description = "Mock a DNS Resolver object for testing"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ TestException ]; + }; + + NetDomainTLD = buildPerlPackage { + pname = "Net-Domain-TLD"; + version = "1.75"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AL/ALEXP/Net-Domain-TLD-1.75.tar.gz"; + sha256 = "4c37f811184d68ac4179d48c10ea31922dd5fca2c1bffcdcd95c5a2a3b4002ee"; + }; + meta = { + description = "Work with TLD names"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + NetFastCGI = buildPerlPackage { + pname = "Net-FastCGI"; + version = "0.14"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CH/CHANSEN/Net-FastCGI-0.14.tar.gz"; + sha256 = "0sjrnlzci21sci5m52zz0x9bf889j67i6vnhrjlypsfm9w5914qi"; + }; + buildInputs = [ TestException TestHexString ]; + meta = { + description = "FastCGI Toolkit"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + NetFrame = buildPerlModule { + pname = "Net-Frame"; + version = "1.21"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GO/GOMOR/Net-Frame-1.21.tar.gz"; + sha256 = "0ffphcw52dgn07k7q02di77zq2zzc0p3vlv2gnphr7v3ifi5gcxw"; + }; + propagatedBuildInputs = [ BitVector ClassGomor NetIPv6Addr ]; + preCheck = "rm t/13-gethostsubs.t"; # it performs DNS queries + meta = { + description = "the base framework for frame crafting"; + license = with lib.licenses; [ artistic1 ]; + }; + }; + + NetFrameLayerIPv6 = buildPerlModule { + pname = "Net-Frame-Layer-IPv6"; + version = "1.08"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GO/GOMOR/Net-Frame-Layer-IPv6-1.08.tar.gz"; + sha256 = "1mzp778jmjn23990gj0mibhr9mrwmaw85nh7wf25hzzkx0mqabds"; + }; + propagatedBuildInputs = [ NetFrame ]; + meta = { + description = "Internet Protocol v6 layer object"; + license = with lib.licenses; [ artistic1 ]; + }; + }; + + NetFreeDB = buildPerlPackage { + pname = "Net-FreeDB"; + version = "0.10"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DS/DSHULTZ/Net-FreeDB-0.10.tar.gz"; + sha256 = "11dfi14qnzsnmr71cygir85zfj15n08b7d5g0i4cj5pb70if2hzp"; + }; + buildInputs = [ TestDeep TestDifferences TestException TestMost TestWarn ]; + propagatedBuildInputs = [ CDDBFile Moo ]; + meta = { + description = "Perl interface to freedb server(s)"; + license = with lib.licenses; [ artistic1 ]; + broken = stdenv.isDarwin; # never built on Hydra https://hydra.nixos.org/job/nixpkgs/staging-next/perl534Packages.NetFreeDB.x86_64-darwin + }; + }; + + NetHTTP = buildPerlPackage { + pname = "Net-HTTP"; + version = "6.19"; + src = fetchurl { + url = "mirror://cpan/authors/id/O/OA/OALDERS/Net-HTTP-6.19.tar.gz"; + sha256 = "52b76ec13959522cae64d965f15da3d99dcb445eddd85d2ce4e4f4df385b2fc4"; + }; + propagatedBuildInputs = [ URI ]; + __darwinAllowLocalNetworking = true; + meta = { + homepage = "https://github.com/libwww-perl/Net-HTTP"; + description = "Low-level HTTP connection (client)"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + doCheck = false; /* wants network */ + }; + + NetHTTPSNB = buildPerlPackage { + pname = "Net-HTTPS-NB"; + version = "0.15"; + src = fetchurl { + url = "mirror://cpan/authors/id/O/OL/OLEG/Net-HTTPS-NB-0.15.tar.gz"; + sha256 = "0kwc4z8pqnbc396wjnlgdmri10zdh91f2bi6saxkpfjzlm7wysba"; + }; + propagatedBuildInputs = [ IOSocketSSL NetHTTP ]; + meta = { + homepage = "https://github.com/olegwtf/p5-Net-HTTPS-NB"; + description = "Non-blocking HTTPS client"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + NetIDNEncode = buildPerlModule { + pname = "Net-IDN-Encode"; + version = "2.500"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CF/CFAERBER/Net-IDN-Encode-2.500.tar.gz"; + sha256 = "1aiy7adirk3wpwlczd8sldi9k1dray0jrg1lbcrcw97zwcrkciam"; + }; + buildInputs = [ TestNoWarnings ]; + perlPreHook = "export LD=$CC"; + meta = { + description = "Internationalizing Domain Names in Applications (IDNA)"; + }; + }; + + NetIMAPClient = buildPerlPackage { + pname = "Net-IMAP-Client"; + version = "0.9505"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GA/GANGLION/Net-IMAP-Client-0.9505.tar.gz"; + sha256 = "d3f6a608b85e09a8080a67a9933837aae6f2cd0e8ee39df3380123dc5e3de912"; + }; + propagatedBuildInputs = [ IOSocketSSL ListMoreUtils ]; + meta = { + description = "Not so simple IMAP client library"; + }; + }; + + NetIP = buildPerlPackage { + pname = "Net-IP"; + version = "1.26"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MANU/Net-IP-1.26.tar.gz"; + sha256 = "0ffn2xqqbkfi7v303sp5dwgbv36jah3vg8r4nxhxfiv60vric3q4"; + }; + meta = { + description = "Perl extension for manipulating IPv4/IPv6 addresses"; + }; + }; + + NetIPLite = buildPerlPackage { + pname = "Net-IP-Lite"; + version = "0.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AL/ALEXKOM/Net-IP-Lite-0.03.tar.gz"; + sha256 = "c9916e6cfaa53be275379ce4b2a550ae176ddfab50dad43b43ed43e8267802a9"; + }; + buildInputs = [ TestException ]; + meta = { + homepage = "https://metacpan.org/pod/Net::IP::Lite"; + description = "Perl extension for manipulating IPv4/IPv6 addresses"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + NetIPv4Addr = buildPerlPackage { + pname = "Net-IPv4Addr"; + version = "0.10"; + src = fetchurl { + url = "mirror://cpan/authors/id/F/FR/FRAJULAC/Net-IPv4Addr-0.10.tar.gz"; + sha256 = "1zk3591822dg187sgkwjjvg18qmvkn3yib1c34mq8z5i617xwi9q"; + }; + meta = { + }; + }; + + NetIPv6Addr = buildPerlPackage { + pname = "Net-IPv6Addr"; + version = "1.01"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BK/BKB/Net-IPv6Addr-1.01.tar.gz"; + sha256 = "008blh52k8g3syfk4dlmg7wclhdmksqkb5vk2qaxjpxmzq1pzqi7"; + }; + propagatedBuildInputs = [ MathBase85 NetIPv4Addr ]; + meta = { + description = "Check and manipulate IPv6 addresses"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + NetLDAPServer = buildPerlPackage { + pname = "Net-LDAP-Server"; + version = "0.43"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AA/AAR/Net-LDAP-Server-0.43.tar.gz"; + sha256 = "0qmh3cri3fpccmwz6bhwp78yskrb3qmalzvqn0a23hqbsfs4qv6x"; + }; + propagatedBuildInputs = [ perlldap ConvertASN1 ]; + meta = { + description = "LDAP server side protocol handling"; + license = with lib.licenses; [ artistic1 ]; + }; + }; + + NetLDAPSID = buildPerlPackage { + pname = "Net-LDAP-SID"; + version = "0.001"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KA/KARMAN/Net-LDAP-SID-0.001.tar.gz"; + sha256 = "1mnnpkmj8kpb7qw50sm8h4sd8py37ssy2xi5hhxzr5whcx0cvhm8"; + }; + meta = { + description= "Active Directory Security Identifier manipulation"; + license = with lib.licenses; [ artistic2 ]; + }; + }; + + NetLDAPServerTest = buildPerlPackage { + pname = "Net-LDAP-Server-Test"; + version = "0.22"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KA/KARMAN/Net-LDAP-Server-Test-0.22.tar.gz"; + sha256 = "13idip7jky92v4adw60jn2gcc3zf339gsdqlnc9nnvqzbxxp285i"; + }; + propagatedBuildInputs = [ perlldap NetLDAPServer DataDump NetLDAPSID ]; + meta = { + description= "test Net::LDAP code"; + license = with lib.licenses; [ artistic1 ]; + }; + }; + + NetNetmask = buildPerlPackage { + pname = "Net-Netmask"; + version = "2.0001"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JM/JMASLAK/Net-Netmask-2.0001.tar.gz"; + sha256 = "0waiix46wv93a5zzjjv7ypdnfdf7lizwrhx12128rcvzcvw6wd8p"; + }; + buildInputs = [ Test2Suite TestUseAllModules ]; + meta = { + description = "Parse, manipulate and lookup IP network blocks"; + }; + }; + + NetOAuth = buildPerlModule { + pname = "Net-OAuth"; + version = "0.28"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KG/KGRENNAN/Net-OAuth-0.28.tar.gz"; + sha256 = "0k4h4a5048h7qgyx25ih64x0l4airx8a6d9gjq08wmxcl2fk3z3v"; + }; + buildInputs = [ TestWarn ]; + propagatedBuildInputs = [ ClassAccessor ClassDataInheritable DigestHMAC DigestSHA1 LWP ]; + meta = { + description = "An implementation of the OAuth protocol"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + NetPatricia = buildPerlPackage { + pname = "Net-Patricia"; + version = "1.22"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GR/GRUBER/Net-Patricia-1.22.tar.gz"; + sha256 = "70835a926e1c5a8d0324c72fffee82eeb7ec6c141dee04fd446820b64f71c552"; + }; + propagatedBuildInputs = [ NetCIDRLite Socket6 ]; + }; + + NetPing = buildPerlPackage { + pname = "Net-Ping"; + version = "2.74"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RU/RURBAN/Net-Ping-2.74.tar.gz"; + sha256 = "04bxfglhxvffbwcg32rm1bzv54h183jyazhih5apqppdpdcqjami"; + }; + meta = { + description = "Check a remote host for reachability"; + }; + }; + + NetDNSResolverProgrammable = buildPerlPackage { + pname = "Net-DNS-Resolver-Programmable"; + version = "0.009"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BI/BIGPRESH/Net-DNS-Resolver-Programmable-0.009.tar.gz"; + sha256 = "8080a2ab776629585911af1179bdb7c4dc2bebfd4b5efd77b11d1dac62454bf8"; + }; + propagatedBuildInputs = [ NetDNS ]; + meta = { + description = "Programmable DNS resolver class for offline emulation of DNS"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + NetPrometheus = buildPerlModule { + pname = "Net-Prometheus"; + version = "0.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PEVANS/Net-Prometheus-0.11.tar.gz"; + sha256 = "0skjkz6q68y8g9blm7i03k4wprac3djq15akmlv1kmgag3i0ky12"; + }; + propagatedBuildInputs = [ RefUtil StructDumb URI ]; + buildInputs = [ HTTPMessage TestFatal ]; + meta = { + description = "export monitoring metrics for F<prometheus>"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + NetSCP = buildPerlPackage { + pname = "Net-SCP"; + version = "0.08.reprise"; + src = fetchurl { + url = "mirror://cpan/authors/id/I/IV/IVAN/Net-SCP-0.08.reprise.tar.gz"; + sha256 = "88a9b2df69e769e5855a408b19f61915b82e8fe070ab5cf4d525dd3b8bbe31c1"; + }; + propagatedBuildInputs = [ pkgs.openssl ]; + patchPhase = '' + sed -i 's|$scp = "scp";|$scp = "${pkgs.openssh}/bin/scp";|' SCP.pm + ''; + meta = { + description = "Simple wrappers around ssh and scp commands."; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ NetSSH StringShellQuote ]; + }; + + NetServer = buildPerlPackage { + pname = "Net-Server"; + version = "2.009"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RH/RHANDOM/Net-Server-2.009.tar.gz"; + sha256 = "0gw1k9gcw7habbkxvsfa2gz34brlbwcidk6khgsf1qjm0dbccrw2"; + }; + doCheck = false; # seems to hang waiting for connections + meta = { + description = "Extensible, general Perl server engine"; + }; + }; + + NetSFTPForeign = buildPerlPackage { + pname = "Net-SFTP-Foreign"; + version = "1.91"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SA/SALVA/Net-SFTP-Foreign-1.91.tar.gz"; + sha256 = "b7395081314f26f3b93c857d65e9c80a04a63709df698583f22a360ffce7e178"; + }; + propagatedBuildInputs = [ pkgs.openssl ]; + patchPhase = '' + sed -i "s|$ssh_cmd = 'ssh'|$ssh_cmd = '${pkgs.openssh}/bin/ssh'|" lib/Net/SFTP/Foreign/Backend/Unix.pm + ''; + meta = { + description = "Secure File Transfer Protocol client"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + NetServerCoro = buildPerlPackage { + pname = "Net-Server-Coro"; + version = "1.3"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AL/ALEXMV/Net-Server-Coro-1.3.tar.gz"; + sha256 = "11pvfxsi0q37kd17z597wb8r9dv3r96fiagq57kc746k1lmp06hy"; + }; + propagatedBuildInputs = [ Coro NetServer ]; + meta = { + description = "A co-operative multithreaded server using Coro"; + license = with lib.licenses; [ mit ]; + }; + }; + + NetServerSSPrefork = buildPerlPackage { + pname = "Net-Server-SS-PreFork"; + version = "0.06pre"; + src = fetchFromGitHub { + owner = "kazuho"; + repo = "p5-Net-Server-SS-PreFork"; + rev = "5fccc0c270e25c65ef634304630af74b48807d21"; + sha256 = "0z02labw0dd76sdf301bhrmgnsjds0ddsg22138g8ys4az49bxx6"; + }; + checkInputs = [ HTTPMessage LWP TestSharedFork HTTPServerSimple TestTCP TestUNIXSock ]; + buildInputs = [ ModuleInstall ]; + propagatedBuildInputs = [ NetServer ServerStarter ]; + meta = { + description = "A hot-deployable variant of Net::Server::PreFork"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + NetSMTPSSL = buildPerlPackage { + pname = "Net-SMTP-SSL"; + version = "1.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Net-SMTP-SSL-1.04.tar.gz"; + sha256 = "001a6dcfahf7kkyirqkc8jd4fh4fkal7n7vm9c4dblqrvmdc8abv"; + }; + propagatedBuildInputs = [ IOSocketSSL ]; + }; + + NetSMTPTLS = buildPerlPackage { + pname = "Net-SMTP-TLS"; + version = "0.12"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AW/AWESTHOLM/Net-SMTP-TLS-0.12.tar.gz"; + sha256 = "19g48kabj22v66jbf69q78xplhi7r1y2kdbddfwh4xy3g9k75rzg"; + }; + propagatedBuildInputs = [ DigestHMAC IOSocketSSL ]; + }; + + NetSMTPTLSButMaintained = buildPerlPackage { + pname = "Net-SMTP-TLS-ButMaintained"; + version = "0.24"; + src = fetchurl { + url = "mirror://cpan/authors/id/F/FA/FAYLAND/Net-SMTP-TLS-ButMaintained-0.24.tar.gz"; + sha256 = "0vi5cv7f9i96hgp3q3jpxzn1ysn802kh5xc304f8b7apf67w15bb"; + }; + propagatedBuildInputs = [ DigestHMAC IOSocketSSL ]; + }; + + NetSNMP = buildPerlModule { + pname = "Net-SNMP"; + version = "6.0.1"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DT/DTOWN/Net-SNMP-v6.0.1.tar.gz"; + sha256 = "0hdpn1cw52x8cw24m9ayzpf4rwarm0khygn1sv3wvwxkrg0pphql"; + }; + doCheck = false; # The test suite fails, see https://rt.cpan.org/Public/Bug/Display.html?id=85799 + }; + + NetSNPP = buildPerlPackage rec { + pname = "Net-SNPP"; + version = "1.17"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TOBEYA/Net-SNPP-1.17.tar.gz"; + sha256 = "06b851d64596625e866359fb017dd0d08973e0ebc50c323f4a1d50ecdd868e76"; + }; + + doCheck = false; + meta = { + description = "Simple Network Pager Protocol Client"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + NetSSH = buildPerlPackage { + pname = "Net-SSH"; + version = "0.09"; + src = fetchurl { + url = "mirror://cpan/authors/id/I/IV/IVAN/Net-SSH-0.09.tar.gz"; + sha256 = "7c71c7c3cbe953234dfe25bcc1ad7edb0e1f5a0578601f5523bc6070262a3817"; + }; + propagatedBuildInputs = [ pkgs.openssl ]; + patchPhase = '' + sed -i 's|$ssh = "ssh";|$ssh = "${pkgs.openssh}/bin/ssh";|' SSH.pm + ''; + meta = { + description = "Simple wrappers around ssh commands."; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + NetSSHPerl = buildPerlPackage { + pname = "Net-SSH-Perl"; + version = "2.14"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SC/SCHWIGON/Net-SSH-Perl-2.14.tar.gz"; + sha256 = "2b5d1bb13590b5870116704e7f1dce9a9823c4f80ff5461b97bb26a317393017"; + }; + propagatedBuildInputs = [ CryptCurve25519 CryptIDEA CryptX FileHomeDir MathGMP StringCRC32 ]; + preCheck = "export HOME=$TMPDIR"; + meta = { + description = "Perl client Interface to SSH"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + NetSSLeay = buildPerlPackage { + pname = "Net-SSLeay"; + version = "1.92"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CH/CHRISN/Net-SSLeay-1.92.tar.gz"; + sha256 = "sha256-R8LyswDy5xYtcdaZ9jPdajWwYloAy9qMUKwBFEqTlqk="; + }; + buildInputs = [ pkgs.openssl pkgs.zlib ]; + doCheck = false; # Test performs network access. + preConfigure = '' + mkdir openssl + ln -s ${pkgs.openssl.out}/lib openssl + ln -s ${pkgs.openssl.bin}/bin openssl + ln -s ${pkgs.openssl.dev}/include openssl + export OPENSSL_PREFIX=$(realpath openssl) + ''; + meta = { + description = "Perl extension for using OpenSSL"; + license = lib.licenses.artistic2; + }; + }; + + NetStatsd = buildPerlPackage { + pname = "Net-Statsd"; + version = "0.12"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CO/COSIMO/Net-Statsd-0.12.tar.gz"; + sha256 = "63e453603da165bc6d1c4ca0b55eda3d2204f040c59304a47782c5aa7886565c"; + }; + meta = { + description = "Sends statistics to the stats daemon over UDP"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + NetTelnet = buildPerlPackage { + pname = "Net-Telnet"; + version = "3.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JR/JROGERS/Net-Telnet-3.04.tar.gz"; + sha256 = "e64d567a4e16295ecba949368e7a6b8b5ae2a16b3ad682121d9b007dc5d2a37a"; + }; + meta = { + description = "Interact with TELNET port or other TCP ports"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + NetTwitterLite = buildPerlModule { + pname = "Net-Twitter-Lite"; + version = "0.12008"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MM/MMIMS/Net-Twitter-Lite-0.12008.tar.gz"; + sha256 = "13j69a6nqq8mh5b4qk021db55rkfnk1ppwk0rpg68b1z58gvxsmj"; + }; + buildInputs = [ ModuleBuildTiny TestFatal ]; + propagatedBuildInputs = [ JSON LWPProtocolHttps ]; + doCheck = false; + meta = { + homepage = "https://github.com/semifor/Net-Twitter-Lite"; + description = "A perl interface to the Twitter API"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + NetWhoisIP = buildPerlPackage { + pname = "Net-Whois-IP"; + version = "1.19"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BS/BSCHMITZ/Net-Whois-IP-1.19.tar.gz"; + sha256 = "08kj2h9qiyfvv3jfz619xl796j93cslg7d96919mnrnjy6hdz6zh"; + }; + doCheck = false; + + # https://rt.cpan.org/Public/Bug/Display.html?id=99377 + postPatch = '' + substituteInPlace IP.pm --replace " AutoLoader" "" + ''; + buildInputs = [ RegexpIPv6 ]; + }; + + NetWorks = buildPerlPackage { + pname = "Net-Works"; + version = "0.22"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MAXMIND/Net-Works-0.22.tar.gz"; + sha256 = "1zz91vn1kdxljnlwllf4dzdsm4v6pja5694vf8l4w66azcyv5j8a"; + }; + propagatedBuildInputs = [ ListAllUtils MathInt128 Moo namespaceautoclean ]; + buildInputs = [ TestFatal ]; + meta = { + description = "Sane APIs for IP addresses and networks"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + NumberBytesHuman = buildPerlPackage { + pname = "Number-Bytes-Human"; + version = "0.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/F/FE/FERREIRA/Number-Bytes-Human-0.11.tar.gz"; + sha256 = "0b3gprpbcrdwc2gqalpys5m2ngilh5injhww8y0gf3dln14rrisz"; + }; + }; + + NumberCompare = buildPerlPackage { + pname = "Number-Compare"; + version = "0.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RC/RCLAMP/Number-Compare-0.03.tar.gz"; + sha256 = "09q8i0mxvr7q9vajwlgawsi0hlpc119gnhq4hc933d03x0vkfac3"; + }; + }; + + NumberFormat = buildPerlPackage { + pname = "Number-Format"; + version = "1.75"; + src = fetchurl { + url = "mirror://cpan/authors/id/W/WR/WRW/Number-Format-1.75.tar.gz"; + sha256 = "82d659cb16461764fd44d11a9ce9e6a4f5e8767dc1069eb03467c6e55de257f3"; + }; + meta = { + description = "Perl extension for formatting numbers"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + NumberFraction = buildPerlModule { + pname = "Number-Fraction"; + version = "3.0.3"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DAVECROSS/Number-Fraction-v3.0.3.tar.gz"; + sha256 = "1vqhd6ngrxhfykf4qz358divjhcnp9v688fp3zi6n5757x1sl01v"; + }; + propagatedBuildInputs = [ Moo MooXTypesMooseLike ]; + meta = { + description = "Perl extension to model fractions"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + NumberMisc = buildPerlModule { + pname = "Number-Misc"; + version = "1.2"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIKO/Number-Misc-1.2.tar.gz"; + sha256 = "1n4ivj4ydplanwbxn3jbsfyfcl91ngn2d0addzqrq1hac26bdfbp"; + }; + meta = { + description = "Number::Misc - handy utilities for numbers"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + NumberWithError = buildPerlPackage { + pname = "Number-WithError"; + version = "1.01"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SM/SMUELLER/Number-WithError-1.01.tar.gz"; + sha256 = "0m7my372rcj2d3j8xvhqdlhnnvxqabasvpvvhdkyli3qgrra1xnz"; + }; + propagatedBuildInputs = [ ParamsUtil prefork ]; + buildInputs = [ TestLectroTest ]; + meta = { + description = "Numbers with error propagation and scientific rounding"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + NTLM = buildPerlPackage { + pname = "NTLM"; + version = "1.09"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NB/NBEBOUT/NTLM-1.09.tar.gz"; + sha256 = "c823e30cda76bc15636e584302c960e2b5eeef9517c2448f7454498893151f85"; + }; + propagatedBuildInputs = [ DigestHMAC ]; + meta = { + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.pSub ]; + }; + }; + + ObjectAccessor = buildPerlPackage { + pname = "Object-Accessor"; + version = "0.48"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BI/BINGOS/Object-Accessor-0.48.tar.gz"; + sha256 = "76cb824a27b6b4e560409fcf6fd5b3bfbbd38b72f1f3d37ed0b54bd9c0baeade"; + }; + meta = { + description = "Per object accessors"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ObjectEvent = buildPerlPackage rec { + pname = "Object-Event"; + version = "1.23"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/EL/ELMEX/${pname}-${version}.tar.gz"; + sha256 = "ab6bb80508f4fddaf2d51b20ca876aab038582a86b5228e6435411348af53c82"; + }; + propagatedBuildInputs = [ AnyEvent commonsense ]; + meta = { + description = "A class that provides an event callback interface"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ObjectInsideOut = buildPerlModule { + pname = "Object-InsideOut"; + version = "4.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JD/JDHEDDEN/Object-InsideOut-4.05.tar.gz"; + sha256 = "1i6aif37ji91nsyncp5d0d3q29clf009sxdn1rz38917hai6rzcx"; + }; + propagatedBuildInputs = [ ExceptionClass ]; + meta = { + description = "Comprehensive inside-out object support module"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ObjectSignature = buildPerlPackage { + pname = "Object-Signature"; + version = "1.08"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Object-Signature-1.08.tar.gz"; + sha256 = "12k90c19ly93ib1p6sm3k7sbnr2h5dbywkdmnff2ngm99p4m68c4"; + }; + meta = { + description = "Generate cryptographic signatures for objects"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + OggVorbisHeaderPurePerl = buildPerlPackage { + pname = "Ogg-Vorbis-Header-PurePerl"; + version = "1.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DAVECROSS/Ogg-Vorbis-Header-PurePerl-1.05.tar.gz"; + sha256 = "0gm5zl1zdi7wra64qz5mm93rkhypwvmaccvcn2k24w9dyh43h7aj"; + }; + + # The testing mechanism is erorrneous upstream. See http://matrix.cpantesters.org/?dist=Ogg-Vorbis-Header-PurePerl+1.0 + doCheck = false; + meta = { + description = "An object-oriented interface to Ogg Vorbis information and comment fields"; + license = with lib.licenses; [ artistic1 ]; + }; + }; + + OLEStorage_Lite = buildPerlPackage { + pname = "OLE-Storage_Lite"; + version = "0.20"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JM/JMCNAMARA/OLE-Storage_Lite-0.20.tar.gz"; + sha256 = "1fpqhhgb8blj4hhs97fsbnbhk29s9yms057a9s9yl20f3hbsc65b"; + }; + meta = { + description = "Read and write OLE storage files"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Opcodes = buildPerlPackage { + pname = "Opcodes"; + version = "0.14"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RU/RURBAN/Opcodes-0.14.tar.gz"; + sha256 = "7f7365447e4d1c5b87b43091448f0488e67c9f036b26c022a5409cd73d343893"; + }; + meta = { + description = "More Opcodes information from opnames.h and opcode.h"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + OpenAPIClient = buildPerlPackage rec { + pname = "OpenAPI-Client"; + version = "1.00"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JH/JHTHORSEN/OpenAPI-Client-1.00.tar.gz"; + sha256 = "41bcf211c1123fbfb844413aa53f97061410b592591367b61273a206865991f7"; + }; + propagatedBuildInputs = [ MojoliciousPluginOpenAPI ]; + meta = { + homepage = "https://github.com/jhthorsen/openapi-client"; + description = "A client for talking to an Open API powered server"; + license = lib.licenses.artistic2; + maintainers = [ maintainers.sgo ]; + }; + }; + + OpenGL = buildPerlPackage rec { + pname = "OpenGL"; + version = "0.70"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CH/CHM/OpenGL-0.70.tar.gz"; + sha256 = "1q3lz168q081iwl9jg21fbzhp9la79gav9mv6nmh2jab83s2l3mj"; + }; + + # FIXME: try with libGL + libGLU instead of libGLU libGL + buildInputs = [ pkgs.libGLU pkgs.libGL pkgs.libGLU pkgs.freeglut pkgs.xorg.libX11 pkgs.xorg.libXi pkgs.xorg.libXmu pkgs.xorg.libXext pkgs.xdummy ]; + + patches = [ ../development/perl-modules/perl-opengl.patch ]; + + configurePhase = '' + substituteInPlace Makefile.PL \ + --replace "@@libpaths@@" '${lib.concatStringsSep "\n" (map (f: "-L${f}/lib") buildInputs)}' + + cp -v ${../development/perl-modules/perl-opengl-gl-extensions.txt} utils/glversion.txt + + perl Makefile.PL PREFIX=$out INSTALLDIRS=site $makeMakerFlags + ''; + + doCheck = false; + }; + + OpenOfficeOODoc = buildPerlPackage { + pname = "OpenOffice-OODoc"; + version = "2.125"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JM/JMGDOC/OpenOffice-OODoc-2.125.tar.gz"; + sha256 = "1dnsj63svxq0hi3aci4x7binql8kr754inlkks5jmi4k0sblh561"; + }; + propagatedBuildInputs = [ ArchiveZip XMLTwig ]; + meta = { + license = with lib.licenses; [ lgpl21 ]; + maintainers = [ maintainers.wentasah ]; + }; + }; + + NetOpenIDCommon = buildPerlPackage { + pname = "Net-OpenID-Common"; + version = "1.20"; + src = fetchurl { + url = "mirror://cpan/authors/id/W/WR/WROG/Net-OpenID-Common-1.20.tar.gz"; + sha256 = "1jdbkp18ka2m4akjp9b0dbw2lqnzgwpq435cnh6hwwa79bbrfkmb"; + }; + propagatedBuildInputs = [ CryptDHGMP XMLSimple ]; + }; + + NetOpenIDConsumer = buildPerlPackage { + pname = "Net-OpenID-Consumer"; + version = "1.18"; + src = fetchurl { + url = "mirror://cpan/authors/id/W/WR/WROG/Net-OpenID-Consumer-1.18.tar.gz"; + sha256 = "0f2g6sczvbpyjmy14pabmrj0d48hlsndqswrvmqk1161wxpkh70f"; + }; + propagatedBuildInputs = [ JSON NetOpenIDCommon ]; + buildInputs = [ CGI ]; + }; + + NetOpenSSH = buildPerlPackage { + pname = "Net-OpenSSH"; + version = "0.80"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SA/SALVA/Net-OpenSSH-0.80.tar.gz"; + sha256 = "1cxfipxfmgzfwpn1i0gf39gbrr56i2aqb0i9593n3czjgmjr7q7y"; + }; + meta = { + description = "Perl SSH client package implemented on top of OpenSSH"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + NetZooKeeper = buildPerlPackage { + pname = "Net-ZooKeeper"; + version = "0.42pre"; + src = fetchFromGitHub { + owner = "mark-5"; + repo = "p5-net-zookeeper"; + rev = "66e1a360aff9c39af728c36092b540a4b6045f70"; + sha256 = "0xl8lcv9gfv0nn8vrrxa4az359whqdhmzw4r51nn3add8pn3s9ip"; + }; + buildInputs = [ pkgs.zookeeper_mt ]; + nativeBuildInputs = [ pkgs.gnused ]; + # fix "error: format not a string literal and no format arguments [-Werror=format-security]" + hardeningDisable = [ "format" ]; + # Make the async API accessible + NIX_CFLAGS_COMPILE = "-DTHREADED"; + NIX_CFLAGS_LINK = "-L${pkgs.zookeeper_mt.out}/lib -lzookeeper_mt"; + # Most tests are skipped as no server is available in the sandbox. + # `t/35_log.t` seems to suffer from a race condition; remove it. See + # https://github.com/NixOS/nixpkgs/pull/104889#issuecomment-737144513 + preCheck = '' + rm t/35_log.t + '' + lib.optionalString stdenv.isDarwin '' + rm t/30_connect.t + rm t/45_class.t + ''; + meta = { + maintainers = teams.deshaw.members ++ [ maintainers.ztzg ]; + homepage = "https://github.com/mark-5/p5-net-zookeeper"; + license = lib.licenses.asl20; + }; + }; + + PackageConstants = buildPerlPackage { + pname = "Package-Constants"; + version = "0.06"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BI/BINGOS/Package-Constants-0.06.tar.gz"; + sha256 = "0b58be78706ccc4e4bd9bbad41767470427fd7b2cfad749489de101f85bc5df5"; + }; + meta = { + description = "List constants defined in a package"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PackageDeprecationManager = buildPerlPackage { + pname = "Package-DeprecationManager"; + version = "0.17"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DR/DROLSKY/Package-DeprecationManager-0.17.tar.gz"; + sha256 = "1d743ada482b5c9871d894966e87d4c20edc96931bb949fb2638b000ddd6684b"; + }; + buildInputs = [ TestFatal TestWarnings ]; + propagatedBuildInputs = [ PackageStash ParamsUtil SubInstall SubName ]; + meta = { + description = "Manage deprecation warnings for your distribution"; + license = lib.licenses.artistic2; + }; + }; + + PatchReader = buildPerlPackage { + pname = "PatchReader"; + version = "0.9.6"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TM/TMANNERM/PatchReader-0.9.6.tar.gz"; + sha256 = "b8de37460347bb5474dc01916ccb31dd2fe0cd92242c4a32d730e8eb087c323c"; + }; + meta = { + description = "Utilities to read and manipulate patches and CVS"; + license = with lib.licenses; [ artistic1 ]; + }; + }; + + PackageStash = buildPerlPackage { + pname = "Package-Stash"; + version = "0.39"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Package-Stash-0.39.tar.gz"; + sha256 = "1d914qnnpiyimfi57crzb6r31nl613g2k48frs9h821f25azarci"; + }; + buildInputs = [ CPANMetaCheck TestFatal TestNeeds TestRequires ]; + propagatedBuildInputs = [ DistCheckConflicts ModuleImplementation ]; + meta = { + description = "Routines for manipulating stashes"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PackageStashXS = buildPerlPackage { + pname = "Package-Stash-XS"; + version = "0.29"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Package-Stash-XS-0.29.tar.gz"; + sha256 = "1akqk10qxwk798qppajqbczwmhy4cs9g0lg961m3vq218slnnryk"; + }; + buildInputs = [ TestFatal TestRequires ]; + meta = { + description = "Faster and more correct implementation of the Package::Stash API"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Pango = buildPerlPackage { + pname = "Pango"; + version = "1.227"; + src = fetchurl { + url = "mirror://cpan/authors/id/X/XA/XAOC/Pango-1.227.tar.gz"; + sha256 = "0wdcidnfnb6nm79fzfs39ivawj3x8m98a147fmcxgv1zvwia9c1l"; + }; + buildInputs = [ pkgs.pango ]; + propagatedBuildInputs = [ Cairo Glib ]; + meta = { + homepage = "http://gtk2-perl.sourceforge.net/"; + description = "Layout and render international text"; + license = lib.licenses.lgpl21Plus; + }; + }; + + ParallelForkManager = buildPerlPackage { + pname = "Parallel-ForkManager"; + version = "2.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/Y/YA/YANICK/Parallel-ForkManager-2.02.tar.gz"; + sha256 = "c1b2970a8bb666c3de7caac4a8f4dbcc043ab819bbc337692ec7bf27adae4404"; + }; + buildInputs = [ TestWarn ]; + meta = { + homepage = "https://github.com/dluxhu/perl-parallel-forkmanager"; + description = "A simple parallel processing fork manager"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + propagatedBuildInputs = [ Moo ]; + }; + + ParallelPipes = buildPerlModule { + pname = "Parallel-Pipes"; + version = "0.005"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SK/SKAJI/Parallel-Pipes-0.005.tar.gz"; + sha256 = "44bd9e2be33d7b314f81c9b886a95d53514689090635f9fad53181f2d3051fd5"; + }; + buildInputs = [ ModuleBuildTiny ]; + meta = { + homepage = "https://github.com/skaji/Parallel-Pipes"; + description = "Parallel processing using pipe(2) for communication and synchronization"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.zakame ]; + }; + }; + + ParallelPrefork = buildPerlPackage { + pname = "Parallel-Prefork"; + version = "0.18"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KA/KAZUHO/Parallel-Prefork-0.18.tar.gz"; + sha256 = "f1c1f48f1ae147a58bc88f9cb2f570d6bb15ea4c0d589abd4c3084ddc961596e"; + }; + buildInputs = [ TestRequires TestSharedFork ]; + propagatedBuildInputs = [ ClassAccessorLite ListMoreUtils ProcWait3 ScopeGuard SignalMask ]; + meta = { + description = "A simple prefork server framework"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ParamsClassify = buildPerlModule { + pname = "Params-Classify"; + version = "0.015"; + src = fetchurl { + url = "mirror://cpan/authors/id/Z/ZE/ZEFRAM/Params-Classify-0.015.tar.gz"; + sha256 = "052r198xyrsv8wz21gijdigz2cgnidsa37nvyfzdiz4rv1fc33ir"; + }; + perlPreHook = lib.optionalString stdenv.isi686 "export LD=$CC"; # fix undefined reference to `__stack_chk_fail_local' + }; + + ParamsUtil = buildPerlPackage { + pname = "Params-Util"; + version = "1.102"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RE/REHSACK/Params-Util-1.102.tar.gz"; + sha256 = "00kl154zisf2zsl8yl6xa6yw54nhd9cja5d5fyigs96vhasb36s9"; + }; + meta = { + description = "Simple, compact and correct param-checking functions"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ParamsValidate = buildPerlModule { + pname = "Params-Validate"; + version = "1.30"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DR/DROLSKY/Params-Validate-1.30.tar.gz"; + sha256 = "04nqfgib2w529na6wjfxfrp54zdyyn91yb40iizd099i7mc3afls"; + }; + buildInputs = [ TestFatal TestRequires ]; + propagatedBuildInputs = [ ModuleImplementation ]; + perlPreHook = "export LD=$CC"; + meta = { + description = "Validate method/function parameters"; + license = lib.licenses.artistic2; + }; + }; + + ParamsValidationCompiler = buildPerlPackage { + pname = "Params-ValidationCompiler"; + version = "0.30"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DR/DROLSKY/Params-ValidationCompiler-0.30.tar.gz"; + sha256 = "1jqn1l4m4i341g14kmjsf3a1kn7vv6z89cix0xjjgr1v70iywnyw"; + }; + propagatedBuildInputs = [ EvalClosure ExceptionClass ]; + buildInputs = [ Specio Test2PluginNoWarnings Test2Suite TestWithoutModule ]; + meta = { + description = "Build an optimized subroutine parameter validator once, use it forever"; + license = with lib.licenses; [ artistic2 ]; + }; + }; + + Paranoid = buildPerlPackage { + pname = "Paranoid"; + version = "2.07"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CO/CORLISS/Paranoid/Paranoid-2.07.tar.gz"; + sha256 = "b55cfd8c6d5f181e218efd012f711a50cd14e4dbc8804650b95477178f43b7fc"; + }; + patches = [ ../development/perl-modules/Paranoid-blessed-path.patch ]; + preConfigure = '' + # Capture the path used when compiling this module as the "blessed" + # system path, analogous to the module's own use of '/bin:/sbin'. + sed -i "s#__BLESSED_PATH__#${pkgs.coreutils}/bin#" lib/Paranoid.pm t/01_init_core.t + ''; + meta = { + description = "General function library for safer, more secure programming"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = teams.deshaw.members; + }; + }; + + PARDist = buildPerlPackage { + pname = "PAR-Dist"; + version = "0.51"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RS/RSCHUPP/PAR-Dist-0.51.tar.gz"; + sha256 = "1y6z6fpp6wclmk4x3nzsxv869i56668y1i74828g72dnz4nhchnj"; + }; + meta = { + description = "Create and manipulate PAR distributions"; + }; + }; + + PAUSEPermissions = buildPerlPackage { + pname = "PAUSE-Permissions"; + version = "0.17"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NE/NEILB/PAUSE-Permissions-0.17.tar.gz"; + sha256 = "021ink414w4mdk6rd54cc1f23kfqg0zk4njx4ngr0bw3wc6r4kks"; + }; + propagatedBuildInputs = [ FileHomeDir HTTPDate MooXOptions TimeDurationParse ]; + buildInputs = [ PathTiny ]; + meta = { + description = "interface to PAUSE's module permissions file (06perms.txt)"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/neilb/PAUSE-Permissions"; + }; + }; + + Parent = buildPerlPackage { + pname = "parent"; + version = "0.238"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CO/CORION/parent-0.238.tar.gz"; + sha256 = "1lfjqjxsvgpsn6ycah4z0qygkykj4v8ca3cdki61k2p2ygg8zx9q"; + }; + }; + + ParseDebControl = buildPerlPackage { + pname = "Parse-DebControl"; + version = "2.005"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JA/JAYBONCI/Parse-DebControl-2.005.tar.gz"; + sha256 = "0ad78qri4sg9agghqdm83xsjgks94yvffs23kppy7mqjy8gwwjxn"; + }; + propagatedBuildInputs = [ IOStringy LWP ]; + meta = with lib; { + license = with licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ParseIRC = buildPerlPackage { + pname = "Parse-IRC"; + version = "1.22"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BI/BINGOS/Parse-IRC-1.22.tar.gz"; + sha256 = "457b09897f37d38a7054f9563247365427fe24101622ed4c7f054723a45b58d5"; + }; + meta = { + homepage = "https://github.com/bingos/parse-irc"; + description = "A parser for the IRC protocol"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = with maintainers; [ sgo ]; + }; + }; + + ParseLocalDistribution = buildPerlPackage { + pname = "Parse-LocalDistribution"; + version = "0.19"; + src = fetchurl { + url = "mirror://cpan/authors/id/I/IS/ISHIGAKI/Parse-LocalDistribution-0.19.tar.gz"; + sha256 = "17p92nj4k3acrqqjnln1j5x8hbra9jkx5hdcybrq37ld9qnc62vb"; + }; + propagatedBuildInputs = [ ParsePMFile ]; + buildInputs = [ ExtUtilsMakeMakerCPANfile TestUseAllModules ]; + meta = { + description = "parses local .pm files as PAUSE does"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ParsePlainConfig = buildPerlPackage { + pname = "Parse-PlainConfig"; + version = "3.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CO/CORLISS/Parse-PlainConfig/Parse-PlainConfig-3.05.tar.gz"; + sha256 = "6b78a8552398b0d2d7063505c93b3cfed0432c5b2cf6e00b8e51febf411c1efa"; + }; + propagatedBuildInputs = [ ClassEHierarchy Paranoid ]; + meta = { + description = "Parser/Generator of human-readable conf files"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = teams.deshaw.members; + }; + }; + + ParsePMFile = buildPerlPackage { + pname = "Parse-PMFile"; + version = "0.43"; + src = fetchurl { + url = "mirror://cpan/authors/id/I/IS/ISHIGAKI/Parse-PMFile-0.43.tar.gz"; + sha256 = "08q6j1lw5l49yhzx8gm4zal7zp1gk58iacpda86cyf27403yhqdy"; + }; + buildInputs = [ ExtUtilsMakeMakerCPANfile ]; + meta = { + description = "parses .pm file as PAUSE does"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ParseRecDescent = buildPerlModule { + pname = "Parse-RecDescent"; + version = "1.967015"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JT/JTBRAUN/Parse-RecDescent-1.967015.tar.gz"; + sha256 = "1943336a4cb54f1788a733f0827c0c55db4310d5eae15e542639c9dd85656e37"; + }; + meta = { + description = "Generate Recursive-Descent Parsers"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ParseSyslog = buildPerlPackage { + pname = "Parse-Syslog"; + version = "1.10"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DS/DSCHWEI/Parse-Syslog-1.10.tar.gz"; + sha256 = "659a2145441ef36d9835decaf83da308fcd03f49138cb3d90928e8bfc9f139d9"; + }; + }; + + ParserMGC = buildPerlModule { + pname = "Parser-MGC"; + version = "0.16"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PEVANS/Parser-MGC-0.16.tar.gz"; + sha256 = "14bv2fwg59q4s3kv0vf11hh222anlm181ig87cph2f68y32n2i3l"; + }; + propagatedBuildInputs = [ FileSlurpTiny ]; + meta = { + description = "build simple recursive-descent parsers"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ParseYapp = buildPerlPackage { + pname = "Parse-Yapp"; + version = "1.21"; + src = fetchurl { + url = "mirror://cpan/authors/id/W/WB/WBRASWELL/Parse-Yapp-1.21.tar.gz"; + sha256 = "1r8kbyk0qd4ficmabj753kjpq0ib0csk01169w7jxflg62cfj41q"; + }; + meta = { + description = "Perl extension for generating and using LALR parsers"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PathClass = buildPerlModule { + pname = "Path-Class"; + version = "0.37"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KW/KWILLIAMS/Path-Class-0.37.tar.gz"; + sha256 = "1kj8q8dmd8jci94w5arav59nkp0pkxrkliz4n8n6yf02hsa82iv5"; + }; + meta = { + description = "Cross-platform path specification manipulation"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PathDispatcher = buildPerlPackage { + pname = "Path-Dispatcher"; + version = "1.08"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Path-Dispatcher-1.08.tar.gz"; + sha256 = "79a9f61c27408b4fd1ed234dac246974ddeafa7fe635a18fe41ec7783130ae2a"; + }; + buildInputs = [ ModuleBuildTiny TestFatal ]; + propagatedBuildInputs = [ Moo MooXTypeTiny TryTiny TypeTiny ]; + meta = { + homepage = "https://github.com/karenetheridge/Path-Dispatcher"; + description = "Flexible and extensible dispatch"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PathIteratorRule = buildPerlPackage { + pname = "Path-Iterator-Rule"; + version = "1.014"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DAGOLDEN/Path-Iterator-Rule-1.014.tar.gz"; + sha256 = "19mik0r5v1cmxfxm0h4lwqyj0nmq6jgnvvq96hqcjgylpvc02x1z"; + }; + propagatedBuildInputs = [ NumberCompare TextGlob TryTiny ]; + buildInputs = [ Filepushd PathTiny TestDeep TestFilename ]; + meta = { + description = "Iterative, recursive file finder"; + license = with lib.licenses; [ asl20 ]; + homepage = "https://github.com/dagolden/Path-Iterator-Rule"; + }; + }; + + PathTiny = buildPerlPackage { + pname = "Path-Tiny"; + version = "0.114"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DAGOLDEN/Path-Tiny-0.114.tar.gz"; + sha256 = "cd0f88f37a58fc3667ec065767fe01e73ee6efa18a112bfd3508cf6579ca00e1"; + }; + meta = { + description = "File path utility"; + license = lib.licenses.asl20; + }; + preConfigure = + '' + substituteInPlace lib/Path/Tiny.pm --replace 'use File::Spec 3.40' \ + 'use File::Spec 3.39' + ''; + # This appears to be currently failing tests, though I don't know why. + # -- ocharles + doCheck = false; + }; + + PathTools = buildPerlPackage { + pname = "PathTools"; + version = "3.75"; + preConfigure = '' + substituteInPlace Cwd.pm --replace '/usr/bin/pwd' '${pkgs.coreutils}/bin/pwd' + ''; + src = fetchurl { + url = "mirror://cpan/authors/id/X/XS/XSAWYERX/PathTools-3.75.tar.gz"; + sha256 = "a558503aa6b1f8c727c0073339081a77888606aa701ada1ad62dd9d8c3f945a2"; + }; + }; + + PBKDF2Tiny = buildPerlPackage { + pname = "PBKDF2-Tiny"; + version = "0.005"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DAGOLDEN/PBKDF2-Tiny-0.005.tar.gz"; + sha256 = "b4e21dc59b30265eaaa41b705087ec03447d9c655a14ac40ff46e4de29eabf8e"; + }; + meta = { + homepage = "https://github.com/dagolden/PBKDF2-Tiny"; + description = "Minimalist PBKDF2 (RFC 2898) with HMAC-SHA1 or HMAC-SHA2"; + license = lib.licenses.asl20; + maintainers = [ maintainers.sgo ]; + }; + }; + + pcscperl = buildPerlPackage { + pname = "pcsc-perl"; + version = "1.4.14"; + src = fetchurl { + url = "mirror://cpan/authors/id/W/WH/WHOM/pcsc-perl-1.4.14.tar.bz2"; + sha256 = "17f6i16jv6ci6459vh6y3sz94vgcvykjjszcl4xsykryakjvf8i7"; + }; + buildInputs = [ pkgs.pcsclite ]; + nativeBuildInputs = [ pkgs.pkg-config ]; + NIX_CFLAGS_LINK = "-L${lib.getLib pkgs.pcsclite}/lib -lpcsclite"; + # tests fail; look unfinished + doCheck = false; + meta = { + homepage = "http://ludovic.rousseau.free.fr/softwares/pcsc-perl/"; + description = "Communicate with a smart card using PC/SC"; + license = lib.licenses.gpl2Plus; + maintainers = with maintainers; [ abbradar ]; + broken = stdenv.isDarwin; # never built on Hydra https://hydra.nixos.org/job/nixpkgs/staging-next/perl534Packages.pcscperl.x86_64-darwin + }; + }; + + PDFAPI2 = buildPerlPackage { + pname = "PDF-API2"; + version = "2.042"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SS/SSIMMS/PDF-API2-2.042.tar.gz"; + sha256 = "0p9wsnn60mcxr4032ahai0d56x8gw76ydym2l4qxq086a10jk6db"; + }; + buildInputs = [ TestException TestMemoryCycle ]; + propagatedBuildInputs = [ FontTTF ]; + meta = { + description = "Facilitates the creation and modification of PDF files"; + license = lib.licenses.lgpl21Plus; + }; + }; + + PDFBuilder = buildPerlPackage { + pname = "PDF-Builder"; + version = "3.023"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PM/PMPERRY/PDF-Builder-3.022.tar.gz"; + sha256 = "SCskaQxxhfLn+7r5pIKz0SieJduAC/SPKVn1Epl3yjE="; + }; + checkInputs = [ TestException TestMemoryCycle ]; + propagatedBuildInputs = [ FontTTF ]; + meta = { + description = "Facilitates the creation and modification of PDF files"; + license = lib.licenses.lgpl21Plus; + }; + }; + + PDL = buildPerlPackage rec { + pname = "PDL"; + version = "2.025"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETJ/PDL-2.025.tar.gz"; + sha256 = "1mlab95ij5a4q5pkrmgfas8x46cms2vqwzyjvaajsxr7mmz1cnhv"; + }; + patchPhase = '' + substituteInPlace perldl.conf \ + --replace 'POSIX_THREADS_LIBS => undef' 'POSIX_THREADS_LIBS => "-L${pkgs.glibc.dev}/lib"' \ + --replace 'POSIX_THREADS_INC => undef' 'POSIX_THREADS_INC => "-I${pkgs.glibc.dev}/include"' \ + --replace 'WITH_MINUIT => undef' 'WITH_MINUIT => 0' \ + --replace 'WITH_SLATEC => undef' 'WITH_SLATEC => 0' \ + --replace 'WITH_HDF => undef' 'WITH_HDF => 0' \ + --replace 'WITH_GD => undef' 'WITH_GD => 0' \ + --replace 'WITH_PROJ => undef' 'WITH_PROJ => 0' + ''; + + nativeBuildInputs = with pkgs; [ autoPatchelfHook libGL.dev glibc.dev mesa_glu.dev ]; + + buildInputs = [ DevelChecklib TestDeep TestException TestWarn ] ++ + (with pkgs; [ gsl freeglut xorg.libXmu xorg.libXi ]); + + propagatedBuildInputs = [ + AstroFITSHeader + ConvertUU + ExtUtilsF77 + FileMap + Inline + InlineC + ListMoreUtils + ModuleCompile + OpenGL + PodParser + TermReadKey + ]; + + meta = { + homepage = "http://pdl.perl.org/"; + description = "Perl Data Language"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + platforms = lib.platforms.linux; + }; + }; + + Pegex = buildPerlPackage { + pname = "Pegex"; + version = "0.75"; + src = fetchurl { + url = "mirror://cpan/authors/id/I/IN/INGY/Pegex-0.75.tar.gz"; + sha256 = "4dc8d335de80b25247cdb3f946f0d10d9ba0b3c34b0ed7d00316fd068fd05edc"; + }; + buildInputs = [ TestPod TieIxHash ]; + meta = { + homepage = "https://github.com/ingydotnet/pegex-pm"; + description = "Acmeist PEG Parser Framework"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + propagatedBuildInputs = [ FileShareDirInstall XXX ]; + }; + + PerconaToolkit = callPackage ../development/perl-modules/Percona-Toolkit { }; + + Perl5lib = buildPerlPackage { + pname = "perl5lib"; + version = "1.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NO/NOBULL/perl5lib-1.02.tar.gz"; + sha256 = "1b6fgs8wy2a7ff8rr1qdvdghhvlpr1pv760k4i2c8lq1hhjnkf94"; + }; + }; + + Perlosnames = buildPerlPackage { + pname = "Perl-osnames"; + version = "0.122"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PERLANCAR/Perl-osnames-0.122.tar.gz"; + sha256 = "7075939d747e375178d00348d00c52ff9db2cebb18bae7473dcb09df825118a0"; + }; + meta = { + description = "List possible $^O ($OSNAME) values, with description"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PerlCritic = buildPerlModule { + pname = "Perl-Critic"; + version = "1.140"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PETDANCE/Perl-Critic-1.140.tar.gz"; + sha256 = "1nzxpn71mrpp85yxrxlraj52q2skvf9ja887ls11d57h6smg1vmz"; + }; + buildInputs = [ TestDeep ]; + nativeBuildInputs = lib.optional stdenv.isDarwin shortenPerlShebang; + propagatedBuildInputs = [ BKeywords ConfigTiny FileWhich ListMoreUtils ModulePluggable PPIxQuoteLike PPIxRegexp PPIxUtilities PerlTidy PodSpell StringFormat ]; + meta = { + homepage = "http://perlcritic.com"; + description = "Critique Perl source code for best-practices"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + postInstall = lib.optionalString stdenv.isDarwin '' + shortenPerlShebang $out/bin/perlcritic + ''; + }; + + PerlCriticCommunity = buildPerlModule { + pname = "Perl-Critic-Community"; + version = "1.0.0"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DB/DBOOK/Perl-Critic-Community-v1.0.0.tar.gz"; + sha256 = "311b775da4193e9de94cf5225e993cc54dd096ae1e7ef60738cdae1d9b8854e7"; + }; + buildInputs = [ ModuleBuildTiny ]; + propagatedBuildInputs = [ PPI PathTiny PerlCritic PerlCriticPolicyVariablesProhibitLoopOnHash PerlCriticPulp ]; + meta = { + homepage = "https://github.com/Grinnz/Perl-Critic-Community"; + description = "Community-inspired Perl::Critic policies"; + license = lib.licenses.artistic2; + }; + }; + + PerlCriticMoose = buildPerlPackage rec { + pname = "Perl-Critic-Moose"; + version = "1.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DR/DROLSKY/Perl-Critic-Moose-${version}.tar.gz"; + sha256 = "0092z583c3q3gqry693ck3ibkzby04a1g8lpw9zz2hr6qhi8xssj"; + }; + propagatedBuildInputs = [ PerlCritic Readonly namespaceautoclean ]; + meta = { + description = "Policies for Perl::Critic concerned with using Moose"; + license = lib.licenses.artistic1; + }; + }; + + PerlCriticPolicyVariablesProhibitLoopOnHash = buildPerlPackage { + pname = "Perl-Critic-Policy-Variables-ProhibitLoopOnHash"; + version = "0.008"; + src = fetchurl { + url = "mirror://cpan/authors/id/X/XS/XSAWYERX/Perl-Critic-Policy-Variables-ProhibitLoopOnHash-0.008.tar.gz"; + sha256 = "12f5f0be96ea1bdc7828058577bd1c5c63ca23c17fac9c3709452b3dff5b84e0"; + }; + propagatedBuildInputs = [ PerlCritic ]; + meta = { + description = "Don't write loops on hashes, only on keys and values of hashes"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PerlCriticPulp = buildPerlPackage { + pname = "Perl-Critic-Pulp"; + version = "99"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KR/KRYDE/Perl-Critic-Pulp-99.tar.gz"; + sha256 = "b8fda842fcbed74d210257c0a284b6dc7b1d0554a47a3de5d97e7d542e23e7fe"; + }; + propagatedBuildInputs = [ IOString ListMoreUtils PPI PerlCritic PodMinimumVersion ]; + meta = { + homepage = "http://user42.tuxfamily.org/perl-critic-pulp/index.html"; + description = "Some add-on policies for Perl::Critic"; + license = lib.licenses.gpl3Plus; + }; + }; + + PerlDestructLevel = buildPerlPackage { + pname = "Perl-Destruct-Level"; + version = "0.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RG/RGARCIA/Perl-Destruct-Level-0.02.tar.gz"; + sha256 = "0fyiysrq874ncscgdjg522fs29gvqads6ynyhwxwwq1b545srd20"; + }; + meta = { + }; + }; + + PerlIOLayers = buildPerlModule { + pname = "PerlIO-Layers"; + version = "0.012"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LE/LEONT/PerlIO-Layers-0.012.tar.gz"; + sha256 = "1psaq3kwlk7g9rxvgsacfjk2mh6cscqf4xl7ggfkzfrnz91aabal"; + }; + perlPreHook = "export LD=$CC"; + meta = { + description = "Querying your filehandle's capabilities"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PerlIOeol = buildPerlPackage { + pname = "PerlIO-eol"; + version = "0.17"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/PerlIO-eol-0.17.tar.gz"; + sha256 = "1fayp27vcmypqyzcd4003036h3g5zy6jk1ia25frdca58pzcpk6f"; + }; + }; + + PerlIOgzip = buildPerlPackage { + pname = "PerlIO-gzip"; + version = "0.20"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NW/NWCLARK/PerlIO-gzip-0.20.tar.gz"; + sha256 = "4848679a3f201e3f3b0c5f6f9526e602af52923ffa471a2a3657db786bd3bdc5"; + }; + buildInputs = [ pkgs.zlib ]; + NIX_CFLAGS_LINK = "-L${pkgs.zlib.out}/lib -lz"; + meta = { + description = "Perl extension to provide a PerlIO layer to gzip/gunzip"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PerlIOutf8_strict = buildPerlPackage { + pname = "PerlIO-utf8_strict"; + version = "0.008"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LE/LEONT/PerlIO-utf8_strict-0.008.tar.gz"; + sha256 = "0ngl9p3kh7as1yx1az66yhbxhrh664vzhl3qnlhx9iywa3nqsyaz"; + }; + buildInputs = [ TestException ]; + meta = { + description = "Fast and correct UTF-8 IO"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PerlIOviadynamic = buildPerlPackage { + pname = "PerlIO-via-dynamic"; + version = "0.14"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AL/ALEXMV/PerlIO-via-dynamic-0.14.tar.gz"; + sha256 = "0jbb3xpbqzmr625blvnjszd69l3cwxzi7bhmkj5x48dgv3s7mkca"; + }; + }; + + PerlIOviasymlink = buildPerlPackage { + pname = "PerlIO-via-symlink"; + version = "0.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CL/CLKAO/PerlIO-via-symlink-0.05.tar.gz"; + sha256 = "0lidddcaz9anddqrpqk4zwm550igv6amdhj86i2jjdka9b1x81s1"; + }; + + buildInputs = [ ModuleInstall ]; + + postPatch = '' + # remove outdated inc::Module::Install included with module + # causes build failure for perl5.18+ + rm -r inc + ''; + }; + + PerlIOviaTimeout = buildPerlModule { + pname = "PerlIO-via-Timeout"; + version = "0.32"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DAMS/PerlIO-via-Timeout-0.32.tar.gz"; + sha256 = "9278f9ef668850d913d98fa4c0d7e7d667cff3503391f4a4eae73a246f2e7916"; + }; + buildInputs = [ ModuleBuildTiny TestSharedFork TestTCP ]; + meta = { + description = "A PerlIO layer that adds read & write timeout to a handle"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + perlldap = buildPerlPackage { + pname = "perl-ldap"; + version = "0.66"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MARSCHAP/perl-ldap-0.66.tar.gz"; + sha256 = "09263ce6166e80c98d689d41d09995b813389fd069b784601f6dc57f8e2b4102"; + }; + buildInputs = [ TextSoundex ]; + propagatedBuildInputs = [ ConvertASN1 ]; + meta = { + homepage = "http://ldap.perl.org/"; + description = "LDAP client library"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = teams.deshaw.members; + }; + }; + + PerlMagick = ImageMagick; # added 2021-08-02 + ImageMagick = buildPerlPackage rec { + pname = "Image-Magick"; + version = "7.0.11-1"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JC/JCRISTY/Image-Magick-${version}.tar.gz"; + sha256 = "sha256-c0vuFmVq9bypQABBnZElGIQrpkYKwtD/B+PloBAycuI="; + }; + buildInputs = [ pkgs.imagemagick ]; + preConfigure = + '' + sed -i -e 's|my \$INC_magick = .*|my $INC_magick = "-I${pkgs.imagemagick.dev}/include/ImageMagick";|' Makefile.PL + ''; + }; + + PerlTidy = buildPerlPackage rec { + pname = "Perl-Tidy"; + version = "20211029"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHANCOCK/Perl-Tidy-20211029.tar.gz"; + sha256 = "1nhfi3gb8gif9p34m4ycqw0k8992yy42c21hk9b99l2pdbiv20zc"; + }; + meta = { + description = "Indent and reformat perl scripts"; + license = lib.licenses.gpl2Plus; + }; + }; + + PHPSerialization = buildPerlPackage { + pname = "PHP-Serialization"; + version = "0.34"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BO/BOBTFISH/PHP-Serialization-0.34.tar.gz"; + sha256 = "0yphqsgg7zrar2ywk2j2fnjxmi9rq32yf0p5ln8m9fmfx4kd84mr"; + }; + meta = { + description = "Simple flexible means of converting the output of PHP's serialize() into the equivalent Perl memory structure, and vice versa"; + }; + }; + + PkgConfig = buildPerlPackage rec { + pname = "PkgConfig"; + version = "0.25026"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PL/PLICEASE/PkgConfig-0.25026.tar.gz"; + sha256 = "1862hzlkibqsgynrnwg43acycp4rlsv19gsybjwq39nnqb9mxfjd"; + }; + # support cross-compilation by simplifying the way we get version during build + postPatch = '' + substituteInPlace Makefile.PL --replace \ + 'do { require "./lib/PkgConfig.pm"; $PkgConfig::VERSION; }' \ + '"${version}"' + ''; + meta = { + description = "Pure-Perl Core-Only replacement for pkg-config"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = teams.deshaw.members; + }; + }; + + Plack = buildPerlPackage { + pname = "Plack"; + version = "1.0048"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIYAGAWA/Plack-1.0048.tar.gz"; + sha256 = "19j2wnzsl0wl31ww4c2p1pahidwsr9hnylm2as8qadxl35gg5x9h"; + }; + buildInputs = [ AuthenSimplePasswd CGIEmulatePSGI FileShareDirInstall HTTPRequestAsCGI HTTPServerSimplePSGI IOHandleUtil LWP LWPProtocolhttp10 LogDispatchArray MIMETypes TestMockTimeHiRes TestRequires TestSharedFork TestTCP ]; + propagatedBuildInputs = [ ApacheLogFormatCompiler CookieBaker DevelStackTraceAsHTML FileShareDir FilesysNotifySimple HTTPEntityParser HTTPHeadersFast HTTPMessage TryTiny ]; + meta = { + homepage = "https://github.com/plack/Plack"; + description = "Perl Superglue for Web frameworks and Web Servers (PSGI toolkit)"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PlackAppProxy = buildPerlPackage { + pname = "Plack-App-Proxy"; + version = "0.29"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LE/LEEDO/Plack-App-Proxy-0.29.tar.gz"; + sha256 = "03x6yb6ykz1ms90jp1s0pq19yplf7wswljvhzqkr16jannfrmah4"; + }; + propagatedBuildInputs = [ AnyEventHTTP LWP Plack ]; + buildInputs = [ TestRequires TestSharedFork TestTCP ]; + meta = { + description = "proxy requests"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PlackMiddlewareAuthDigest = buildPerlModule { + pname = "Plack-Middleware-Auth-Digest"; + version = "0.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIYAGAWA/Plack-Middleware-Auth-Digest-0.05.tar.gz"; + sha256 = "1sqm23kfsl3ac4060zcclc3r86x1vxzhsgvgzg6mxk9njj93zgcs"; + }; + propagatedBuildInputs = [ DigestHMAC Plack ]; + buildInputs = [ LWP ModuleBuildTiny TestSharedFork TestTCP ]; + meta = { + description = "Digest authentication"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/miyagawa/Plack-Middleware-Auth-Digest"; + }; + }; + + PlackMiddlewareConsoleLogger = buildPerlModule { + pname = "Plack-Middleware-ConsoleLogger"; + version = "0.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIYAGAWA/Plack-Middleware-ConsoleLogger-0.05.tar.gz"; + sha256 = "1ngvhwdw9ll4cwnvf0i89ppa9pbyiwng6iba04scrqjda353lrsm"; + }; + propagatedBuildInputs = [ JavaScriptValueEscape Plack ]; + buildInputs = [ ModuleBuildTiny TestRequires ]; + meta = { + description = "Write logs to Firebug or Webkit Inspector"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/miyagawa/Plack-Middleware-ConsoleLogger"; + }; + }; + + PlackMiddlewareDebug = buildPerlModule { + pname = "Plack-Middleware-Debug"; + version = "0.18"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIYAGAWA/Plack-Middleware-Debug-0.18.tar.gz"; + sha256 = "192ef79e521c90c6eff6f4149ad2e4bfc911d2c95df78935855e90d659e9ac9a"; + }; + buildInputs = [ ModuleBuildTiny TestRequires ]; + propagatedBuildInputs = [ ClassMethodModifiers DataDump DataDumperConcise Plack TextMicroTemplate ]; + meta = { + homepage = "https://github.com/miyagawa/Plack-Middleware-Debug"; + description = "Display information about the current request/response"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PlackMiddlewareDeflater = buildPerlPackage { + pname = "Plack-Middleware-Deflater"; + version = "0.12"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KA/KAZEBURO/Plack-Middleware-Deflater-0.12.tar.gz"; + sha256 = "0xf2visi16hgwgyp9q0cjr10ikbn474hjia5mj8mb2scvbkrbni8"; + }; + propagatedBuildInputs = [ Plack ]; + buildInputs = [ TestRequires TestSharedFork TestTCP ]; + meta = { + description = "Compress response body with Gzip or Deflate"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PlackMiddlewareFixMissingBodyInRedirect = buildPerlPackage { + pname = "Plack-Middleware-FixMissingBodyInRedirect"; + version = "0.12"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SW/SWEETKID/Plack-Middleware-FixMissingBodyInRedirect-0.12.tar.gz"; + sha256 = "6c22d069f5a57ac206d4659b28b8869bb9270640bb955efddd451dcc58cdb391"; + }; + propagatedBuildInputs = [ HTMLParser Plack ]; + meta = { + homepage = "https://github.com/Sweet-kid/Plack-Middleware-FixMissingBodyInRedirect"; + description = "Plack::Middleware which sets body for redirect response, if it's not already set"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PlackMiddlewareHeader = buildPerlPackage { + pname = "Plack-Middleware-Header"; + version = "0.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CH/CHIBA/Plack-Middleware-Header-0.04.tar.gz"; + sha256 = "0pjxxbnilphn38s3mmv0fmg9q2hm4z02ngp2a1lxblzjfbzvkdjy"; + }; + propagatedBuildInputs = [ Plack ]; + meta = { + description = "modify HTTP response headers"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PlackMiddlewareMethodOverride = buildPerlPackage { + pname = "Plack-Middleware-MethodOverride"; + version = "0.20"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIYAGAWA/Plack-Middleware-MethodOverride-0.20.tar.gz"; + sha256 = "dbfb5a2efb48bfeb01cb3ae1e1c677e155dc7bfe210c7e7f221bae3cb6aab5f1"; + }; + propagatedBuildInputs = [ Plack ]; + meta = { + description = "Override REST methods to Plack apps via POST"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PlackMiddlewareRemoveRedundantBody = buildPerlPackage { + pname = "Plack-Middleware-RemoveRedundantBody"; + version = "0.09"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SW/SWEETKID/Plack-Middleware-RemoveRedundantBody-0.09.tar.gz"; + sha256 = "80d45f93d6b7290b0bd8b3cedd84a37fc501456cc3dec02ec7aad81c0018087e"; + }; + propagatedBuildInputs = [ Plack ]; + meta = { + homepage = "https://github.com/Sweet-kid/Plack-Middleware-RemoveRedundantBody"; + description = "Plack::Middleware which sets removes body for HTTP response if it's not required"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PlackMiddlewareReverseProxy = buildPerlPackage { + pname = "Plack-Middleware-ReverseProxy"; + version = "0.16"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIYAGAWA/Plack-Middleware-ReverseProxy-0.16.tar.gz"; + sha256 = "0a512n62pnk5ayj3zdzyj50iy1qi8nwh6ygks2h7nrh7gp9k2jc7"; + }; + propagatedBuildInputs = [ Plack ]; + meta = { + description = "Supports app to run as a reverse proxy backend"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PlackMiddlewareSession = buildPerlModule { + pname = "Plack-Middleware-Session"; + version = "0.33"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIYAGAWA/Plack-Middleware-Session-0.33.tar.gz"; + sha256 = "1vm4a66civdzh7xvl5hy5wn1w8j1vndppwyz8ndh9n4as74s5yag"; + }; + propagatedBuildInputs = [ DigestHMAC Plack ]; + buildInputs = [ HTTPCookies LWP ModuleBuildTiny TestFatal TestRequires TestSharedFork TestTCP ]; + meta = { + description = "Middleware for session management"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/plack/Plack-Middleware-Session"; + }; + }; + + PlackTestExternalServer = buildPerlPackage { + pname = "Plack-Test-ExternalServer"; + version = "0.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Plack-Test-ExternalServer-0.02.tar.gz"; + sha256 = "5baf5c57fe0c06412deec9c5abe7952ab8a04f8c47b4bbd8e9e9982268903ed0"; + }; + buildInputs = [ Plack TestSharedFork TestTCP ]; + propagatedBuildInputs = [ LWP ]; + meta = { + homepage = "https://github.com/perl-catalyst/Plack-Test-ExternalServer"; + description = "Run HTTP tests on external live servers"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PLS = buildPerlPackage { + pname = "PLS"; + version = "0.897"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MR/MREISNER/PLS-0.897.tar.gz"; + sha256 = "0278anidj7bgassj32g20cbki2kkqakkr3axyq4k90nj4snw7p6x"; + }; + propagatedBuildInputs = [ Future IOAsync PPI PPR PathTiny PerlCritic PerlTidy PodMarkdown URI ]; + meta = { + homepage = "https://github.com/FractalBoy/perl-language-server"; + description = "Perl Language Server"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.artturin ]; + }; + }; + + Po4a = callPackage ../development/perl-modules/Po4a { }; + + PodMinimumVersion = buildPerlPackage { + pname = "Pod-MinimumVersion"; + version = "50"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KR/KRYDE/Pod-MinimumVersion-50.tar.gz"; + sha256 = "0bd2812d9aacbd99bb71fa103a4bb129e955c138ba7598734207dc9fb67b5a6f"; + }; + propagatedBuildInputs = [ IOString PodParser ]; + meta = { + homepage = "http://user42.tuxfamily.org/pod-minimumversion/index.html"; + description = "Determine minimum Perl version of POD directives"; + license = lib.licenses.free; + }; + }; + + POE = buildPerlPackage { + pname = "POE"; + version = "1.368"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BI/BINGOS/POE-1.368.tar.gz"; + sha256 = "08g1vzxamqg0gmkirdcx7fycq3pwv9vbajc30qwqpm1n3rvdrcdp"; + }; + # N.B. removing TestPodLinkCheck from buildInputs because tests requiring + # this module don't disable themselves when "run_network_tests" is + # not present (see below). + propagatedBuildInputs = [ pkgs.cacert IOPipely IOTty POETestLoops ]; + meta = { + maintainers = teams.deshaw.members; + description = "Portable multitasking and networking framework for any event loop"; + license = lib.licenses.artistic2; + }; + preCheck = '' + set -x + + : Makefile.PL touches the following file as a "marker" to indicate + : it should perform tests which use the network. Delete this file + : for sandbox builds. + rm -f run_network_tests + + : Certs are required if not running in a sandbox. + export SSL_CERT_FILE=${pkgs.cacert.out}/etc/ssl/certs/ca-bundle.crt + + : The following flag enables extra tests not normally performed. + export RELEASE_TESTING=1 + + set +x + ''; + }; + + POETestLoops = buildPerlPackage { + pname = "POE-Test-Loops"; + version = "1.360"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RC/RCAPUTO/POE-Test-Loops-1.360.tar.gz"; + sha256 = "0yx4wsljfmdzsiv0ni98x6lw975cm82ahngbwqvzv60wx5pwkl5y"; + }; + meta = { + maintainers = teams.deshaw.members; + description = "Reusable tests for POE::Loop authors"; + license = lib.licenses.artistic2; + }; + }; + + PPI = buildPerlPackage { + pname = "PPI"; + version = "1.270"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MITHALDU/PPI-1.270.tar.gz"; + sha256 = "622a698c781bb85d2bdf7bbfe040fe70d33b79774c9ae01fce2375dc73faf457"; + }; + buildInputs = [ ClassInspector TestDeep TestNoWarnings TestObject TestSubCalls ]; + propagatedBuildInputs = [ Clone IOString ParamsUtil TaskWeaken ]; + + # Remove test that fails due to unexpected shebang after + # patchShebang. + preCheck = "rm t/03_document.t"; + + meta = { + homepage = "https://github.com/adamkennedy/PPI"; + description = "Parse, Analyze and Manipulate Perl (without perl)"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PPIxQuoteLike = buildPerlModule { + pname = "PPIx-QuoteLike"; + version = "0.013"; + src = fetchurl { + url = "mirror://cpan/authors/id/W/WY/WYANT/PPIx-QuoteLike-0.013.tar.gz"; + sha256 = "05qq5lk7a91jzn2vld906nvrpqbhxvy40s2qdymm5lkqha1k67ld"; + }; + propagatedBuildInputs = [ PPI Readonly ]; + meta = { + description = "Parse Perl string literals and string-literal-like things."; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PPIxRegexp = buildPerlModule { + pname = "PPIx-Regexp"; + version = "0.076"; + src = fetchurl { + url = "mirror://cpan/authors/id/W/WY/WYANT/PPIx-Regexp-0.076.tar.gz"; + sha256 = "0jh1g83s4m7qlj6c99myvbqayfd9nkff37y0chvlp33j4a9psq0h"; + }; + propagatedBuildInputs = [ PPI ]; + meta = { + description = "Parse regular expressions"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PPIxUtilities = buildPerlModule { + pname = "PPIx-Utilities"; + version = "1.001000"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/EL/ELLIOTJS/PPIx-Utilities-1.001000.tar.gz"; + sha256 = "03a483386fd6a2c808f09778d44db06b02c3140fb24ba4bf12f851f46d3bcb9b"; + }; + buildInputs = [ TestDeep ]; + propagatedBuildInputs = [ ExceptionClass PPI Readonly ]; + meta = { + description = "Extensions to L<PPI|PPI>"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PPR = buildPerlPackage { + pname = "PPR"; + version = "0.000028"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DC/DCONWAY/PPR-0.000028.tar.gz"; + sha256 = "1adrd189rnfl1fgv14inchvrgjqjbpnviisqsz3y8ds3gisafzfk"; + }; + meta = { + description = "Pattern-based Perl Recognizer"; + license = lib.licenses.artistic2; + maintainers = [ maintainers.artturin ]; + }; + }; + + ProcBackground = buildPerlPackage { + pname = "Proc-Background"; + version = "1.21"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NE/NERDVANA/Proc-Background-1.21.tar.gz"; + sha256 = "91b6a5aeb841b1c313498c78fad08e37d17595702dc6205b5ad38ef69949b7ee"; + }; + meta = { + }; + }; + + ProcProcessTable = buildPerlPackage { + pname = "Proc-ProcessTable"; + version = "0.59"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JW/JWB/Proc-ProcessTable-0.59.tar.gz"; + sha256 = "f8cc5054d78c35a0ce39fb75430b4ef402e2a99013d2ec37e7997f316594606c"; + }; + meta = { + description = "Perl extension to access the unix process table"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ProcFind = buildPerlPackage { + pname = "Proc-Find"; + version = "0.051"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PERLANCAR/Proc-Find-0.051.tar.gz"; + sha256 = "64d39071ec94d7b66a7cab5a950246f0fff013b5a200a63d1176432987e5a135"; + }; + propagatedBuildInputs = [ ProcProcessTable ]; + meta = { + description = "Find processes by name, PID, or some other attributes"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ProcSafeExec = buildPerlPackage { + pname = "Proc-SafeExec"; + version = "1.5"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BI/BILBO/Proc-SafeExec-1.5.tar.gz"; + sha256 = "1b4d0908bcac563d34a7e5be61c5da3eee98e4a6c7fa68c2670cc5844b5a2d78"; + }; + }; + + ProcSimple = buildPerlPackage { + pname = "Proc-Simple"; + version = "1.32"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MS/MSCHILLI/Proc-Simple-1.32.tar.gz"; + sha256 = "4c8f0a924b19ad78a13da73fe0fb306d32a7b9d10a332c523087fc83a209a8c4"; + }; + meta = { + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ProcWait3 = buildPerlPackage { + pname = "Proc-Wait3"; + version = "0.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CT/CTILMES/Proc-Wait3-0.05.tar.gz"; + sha256 = "1a907f5db6933dc2939bbfeffe19eeae7ed39ef1b97a2bc9b723f2f25f81caf3"; + }; + meta = { + description = "Perl extension for wait3 system call"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ProcWaitStat = buildPerlPackage { + pname = "Proc-WaitStat"; + version = "1.00"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RO/ROSCH/Proc-WaitStat-1.00.tar.gz"; + sha256 = "1g3l8jzx06x4l4p0x7fyn4wvg6plfzl420irwwb9v447wzsn6xfh"; + }; + propagatedBuildInputs = [ IPCSignal ]; + }; + + PrometheusTiny = buildPerlPackage { + pname = "Prometheus-Tiny"; + version = "0.008"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RO/ROBN/Prometheus-Tiny-0.008.tar.gz"; + sha256 = "17d7b69chkcq8fprww6m15glndyb0lms2l0xjbnbw04q7f8ncskk"; + }; + buildInputs = [ HTTPMessage Plack TestException ]; + meta = { + homepage = "https://github.com/robn/Prometheus-Tiny"; + description = "A tiny Prometheus client"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PrometheusTinyShared = buildPerlPackage { + pname = "Prometheus-Tiny-Shared"; + version = "0.024"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RO/ROBN/Prometheus-Tiny-Shared-0.024.tar.gz"; + sha256 = "02w24r4amk8dqlavg6abxap48hzxrbda48f1pmrqypgx1cz59g4g"; + }; + buildInputs = [ DataRandom HTTPMessage Plack TestDifferences TestException ]; + propagatedBuildInputs = [ HashSharedMem JSONXS PrometheusTiny ]; + meta = { + homepage = "https://github.com/robn/Prometheus-Tiny-Shared"; + description = "A tiny Prometheus client with a shared database behind it"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ProtocolRedis = buildPerlPackage { + pname = "Protocol-Redis"; + version = "1.0011"; + src = fetchurl { + url = "mirror://cpan/authors/id/U/UN/UNDEF/Protocol-Redis-1.0011.tar.gz"; + sha256 = "7ceb6bd80067c904465d4fd1f1715724388c9bdc37c6c2c003a20ce569b7f4e8"; + }; + meta = { + homepage = "https://github.com/und3f/protocol-redis"; + description = "Redis protocol parser/encoder with asynchronous capabilities"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + ProtocolRedisFaster = buildPerlPackage { + pname = "Protocol-Redis-Faster"; + version = "0.003"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DB/DBOOK/Protocol-Redis-Faster-0.003.tar.gz"; + sha256 = "6b9afb3de94ec1ccd7db4f9e6a2eaba254a57790301c17bcb13bb3edfe1850b7"; + }; + propagatedBuildInputs = [ ProtocolRedis ]; + meta = { + homepage = "https://github.com/Grinnz/Protocol-Redis-Faster"; + description = "Optimized pure-perl Redis protocol parser/encoder"; + license = lib.licenses.artistic2; + maintainers = [ maintainers.sgo ]; + }; + }; + + ProtocolWebSocket = buildPerlModule { + pname = "Protocol-WebSocket"; + version = "0.26"; + src = fetchurl { + url = "mirror://cpan/authors/id/V/VT/VTI/Protocol-WebSocket-0.26.tar.gz"; + sha256 = "08jmazvrmvp8jn15p2n3c1h3f2cbkr07xjzy197jb8x724vx0dsq"; + }; + buildInputs = [ ModuleBuildTiny ]; + }; + + ProtocolHTTP2 = buildPerlModule { + pname = "Protocol-HTTP2"; + version = "1.10"; + + src = fetchurl { + url = "mirror://cpan/authors/id/C/CR/CRUX/Protocol-HTTP2-1.10.tar.gz"; + sha256 = "0jm6jq1wszjrrcypyi642m2i8wgni50wdnzh9dzfkyjazdc00sn2"; + }; + buildInputs = [ AnyEvent ModuleBuildTiny NetSSLeay TestLeakTrace TestSharedFork TestTCP ]; + }; + + PSGI = buildPerlPackage { + pname = "PSGI"; + version = "1.102"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIYAGAWA/PSGI-1.102.tar.gz"; + sha256 = "0iqzxs8fv63510knm3zr3jr3ky4x7diwd7y24mlshzci81kl8v55"; + }; + }; + + PadWalker = buildPerlPackage { + pname = "PadWalker"; + version = "2.5"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RO/ROBIN/PadWalker-2.5.tar.gz"; + sha256 = "1l0cga0ny43x5xpqw9nrdwbznvqpj35ni39a0wrayihihjxnmch7"; + }; + }; + + Perl6Junction = buildPerlPackage { + pname = "Perl6-Junction"; + version = "1.60000"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CF/CFRANKS/Perl6-Junction-1.60000.tar.gz"; + sha256 = "0r3in9pyrm6wfrhcvxbq5w1617x8x5537lxj9hdzks4pa7l7a8yh"; + }; + }; + + PerlMinimumVersion = buildPerlPackage { + pname = "Perl-MinimumVersion"; + version = "1.38"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NE/NEILB/Perl-MinimumVersion-1.38.tar.gz"; + sha256 = "478b5824791b87fc74c94a892180682bd06ad2cdf34034b1a4b859273927802a"; + }; + buildInputs = [ TestScript ]; + propagatedBuildInputs = [ FileFindRulePerl PerlCritic ]; + meta = { + homepage = "https://github.com/neilbowers/Perl-MinimumVersion"; + description = "Find a minimum required version of perl for Perl code"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PerlPrereqScanner = buildPerlPackage { + pname = "Perl-PrereqScanner"; + version = "1.023"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Perl-PrereqScanner-1.023.tar.gz"; + sha256 = "280a1c4710390865fb9f310a861a34720b28b4cbe50609c841af5cf2d3a2bced"; + }; + propagatedBuildInputs = [ GetoptLongDescriptive ListMoreUtils ModulePath Moose PPI StringRewritePrefix namespaceautoclean ]; + meta = { + homepage = "https://github.com/rjbs/Perl-PrereqScanner"; + description = "A tool to scan your Perl code for its prerequisites"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PerlPrereqScannerNotQuiteLite = buildPerlPackage { + pname = "Perl-PrereqScanner-NotQuiteLite"; + version = "0.9913"; + src = fetchurl { + url = "mirror://cpan/authors/id/I/IS/ISHIGAKI/Perl-PrereqScanner-NotQuiteLite-0.9913.tar.gz"; + sha256 = "13alrwwh36wsqn0gliwdpp2a9kymjk8gx30gfkqw0f29w72ry3cp"; + }; + propagatedBuildInputs = [ DataDump ModuleCPANfile ModuleFind RegexpTrie URIcpan ]; + buildInputs = [ ExtUtilsMakeMakerCPANfile TestFailWarnings TestUseAllModules ]; + meta = { + description = "a tool to scan your Perl code for its prerequisites"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PerlVersion = buildPerlPackage { + pname = "Perl-Version"; + version = "1.013"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BD/BDFOY/Perl-Version-1.013.tar.gz"; + sha256 = "1887414d1c8689d864c840114101e043e99d7dd5b9cca69369a60e821e3ad0f7"; + }; + propagatedBuildInputs = [ FileSlurpTiny ]; + meta = { + description = "Parse and manipulate Perl version strings"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PodAbstract = buildPerlPackage { + pname = "Pod-Abstract"; + version = "0.20"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BL/BLILBURNE/Pod-Abstract-0.20.tar.gz"; + sha256 = "956ef7bb884c55456e2fb6e7f229f9a87dd50a61d700500c738db8f2ba277f87"; + }; + propagatedBuildInputs = [ IOString TaskWeaken PodParser ]; + meta = { + description = "An abstract, tree-based interface to perl POD documents"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PodChecker = buildPerlPackage { + pname = "Pod-Checker"; + version = "1.74"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MAREKR/Pod-Checker-1.74.tar.gz"; + sha256 = "12559997r7wbhhs0p6cdxdzv7rzviv0nx1hq0dby8q481apn489f"; + }; + }; + + PodCoverage = buildPerlPackage { + pname = "Pod-Coverage"; + version = "0.23"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RC/RCLAMP/Pod-Coverage-0.23.tar.gz"; + sha256 = "01xifj83dv492lxixijmg6va02rf3ydlxly0a9slmx22r6qa1drh"; + }; + propagatedBuildInputs = [ DevelSymdump PodParser ]; + }; + + PodCoverageTrustPod = buildPerlPackage { + pname = "Pod-Coverage-TrustPod"; + version = "0.100005"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Pod-Coverage-TrustPod-0.100005.tar.gz"; + sha256 = "08bk6lfimr2pwi6c92xg5cw1cxmi5fqhls3yasqzpjnd4if86s3c"; + }; + propagatedBuildInputs = [ PodCoverage PodEventual ]; + meta = { + homepage = "https://github.com/rjbs/pod-coverage-trustpod"; + description = "Allow a module's pod to contain Pod::Coverage hints"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PodElemental = buildPerlPackage { + pname = "Pod-Elemental"; + version = "0.103005"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Pod-Elemental-0.103005.tar.gz"; + sha256 = "824336ec18326e3b970e7815922b3921b0a821d2ee0e50b0c5b2bc327f99615e"; + }; + buildInputs = [ TestDeep TestDifferences ]; + propagatedBuildInputs = [ MooseXTypes PodEventual StringRewritePrefix StringTruncate ]; + meta = { + homepage = "https://github.com/rjbs/Pod-Elemental"; + description = "Work with nestable Pod elements"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PodElementalPerlMunger = buildPerlPackage { + pname = "Pod-Elemental-PerlMunger"; + version = "0.200006"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Pod-Elemental-PerlMunger-0.200006.tar.gz"; + sha256 = "09fd3b5d53119437a01dced66b42eafdcd53895b3c32a2b0f781f36fda0f665b"; + }; + buildInputs = [ TestDifferences ]; + propagatedBuildInputs = [ PPI PodElemental ]; + meta = { + homepage = "https://github.com/rjbs/Pod-Elemental-PerlMunger"; + description = "A thing that takes a string of Perl and rewrites its documentation"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PodEventual = buildPerlPackage { + pname = "Pod-Eventual"; + version = "0.094001"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Pod-Eventual-0.094001.tar.gz"; + sha256 = "be9fb8910b108e5d1a66f002b659ad22576e88d779b703dff9d15122c3f80834"; + }; + propagatedBuildInputs = [ MixinLinewise ]; + meta = { + description = "Read a POD document as a series of trivial events"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ TestDeep ]; + }; + + PodParser = buildPerlPackage { + pname = "Pod-Parser"; + version = "1.63"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MAREKR/Pod-Parser-1.63.tar.gz"; + sha256 = "dbe0b56129975b2f83a02841e8e0ed47be80f060686c66ea37e529d97aa70ccd"; + }; + meta = { + description = "Modules for parsing/translating POD format documents"; + license = lib.licenses.artistic1; + }; + }; + + PodPOM = buildPerlPackage { + pname = "Pod-POM"; + version = "2.01"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NE/NEILB/Pod-POM-2.01.tar.gz"; + sha256 = "1b50fba9bbdde3ead192beeba0eaddd0c614e3afb1743fa6fff805f57c56f7f4"; + }; + buildInputs = [ FileSlurper TestDifferences TextDiff ]; + meta = { + homepage = "https://github.com/neilb/Pod-POM"; + description = "POD Object Model"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PodPOMViewTOC = buildPerlPackage { + pname = "Pod-POM-View-TOC"; + version = "0.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PERLER/Pod-POM-View-TOC-0.02.tar.gz"; + sha256 = "ccb42272c7503379cb1131394620ee50276d72844e0e80eb4b007a9d58f87623"; + }; + propagatedBuildInputs = [ PodPOM ]; + meta = { + description = "Generate the TOC of a POD with Pod::POM"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PodSection = buildPerlModule { + pname = "Pod-Section"; + version = "0.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KT/KTAT/Pod-Section-0.02.tar.gz"; + sha256 = "c9d1d75292f321881184ec56983c16f408fd2d312d5a720f8fb0d2cafa729238"; + }; + propagatedBuildInputs = [ PodAbstract ]; + meta = { + homepage = "https://github.com/ktat/Pod-Section"; + description = "Select specified section from Module's POD"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PodLaTeX = buildPerlModule { + pname = "Pod-LaTeX"; + version = "0.61"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TJ/TJENNESS/Pod-LaTeX-0.61.tar.gz"; + sha256 = "15a840ea1c8a76cd3c865fbbf2fec33b03615c0daa50f9c800c54e0cf0659d46"; + }; + propagatedBuildInputs = [ PodParser ]; + meta = { + homepage = "https://github.com/timj/perl-Pod-LaTeX/tree/master"; + description = "Convert Pod data to formatted Latex"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + podlators = buildPerlPackage { + pname = "podlators"; + version = "4.14"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RR/RRA/podlators-4.14.tar.gz"; + sha256 = "10hgvdyp0969a1222hk1y5n2p72lhxrrv8h0yyzlsbjbwcfw9wbs"; + }; + preCheck = '' + # remove failing spdx check + rm t/docs/spdx-license.t + ''; + meta = { + description = "Convert POD data to various other formats"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + podlinkcheck = buildPerlPackage { + pname = "podlinkcheck"; + version = "15"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KR/KRYDE/podlinkcheck-15.tar.gz"; + sha256 = "4e3bebec1bf82dbf850a94ae26a253644cf5806ec41afc74e43e1710a37321db"; + }; + propagatedBuildInputs = [ FileFindIterator FileHomeDir IPCRun PodParser constant-defer libintl-perl ]; + meta = { + homepage = "http://user42.tuxfamily.org/podlinkcheck/index.html"; + description = "Check POD L<> link references"; + license = lib.licenses.gpl3Plus; + }; + }; + + prefork = buildPerlPackage { + pname = "prefork"; + version = "1.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/prefork-1.05.tar.gz"; + sha256 = "01ckn45ij3nbrsc0yc4wl4z0wndn36jh6247zbycwa1vlvgvr1vd"; + }; + meta = { + description = "Optimized module loading for forking or non-forking processes"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PodPerldoc = buildPerlPackage { + pname = "Pod-Perldoc"; + version = "3.28"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MALLEN/Pod-Perldoc-3.28.tar.gz"; + sha256 = "0kf6xwdha8jl0nxv60r2v7xsfnvv6i3gy135xsl40g71p02ychfc"; + }; + meta = { + description = "Look up Perl documentation in Pod format"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PodPlainer = buildPerlPackage { + pname = "Pod-Plainer"; + version = "1.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RM/RMBARKER/Pod-Plainer-1.04.tar.gz"; + sha256 = "1bbfbf7d1d4871e5a83bab2137e22d089078206815190eb1d5c1260a3499456f"; + }; + propagatedBuildInputs = [ PodParser ]; + meta = { + description = "Perl extension for converting Pod to old-style Pod"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PodMarkdown = buildPerlPackage { + pname = "Pod-Markdown"; + version = "3.300"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RW/RWSTAUNER/Pod-Markdown-3.300.tar.gz"; + sha256 = "0y8vk7wprair2fjqbkjl7g9jv0dn7rv58l7b9yf7819nia8fjygc"; + }; + buildInputs = [ TestDifferences ]; + meta = { + homepage = "https://github.com/rwstauner/Pod-Markdown"; + description = "Convert POD to Markdown"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + propagatedBuildInputs = [ URI ]; + }; + + PodMarkdownGithub = buildPerlPackage { + pname = "Pod-Markdown-Github"; + version = "0.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MINIMAL/Pod-Markdown-Github-0.04.tar.gz"; + sha256 = "04y67c50hpf1vb9cwsza3fbj4rshdqa47vi3zcj4kkjckh02yzmk"; + }; + propagatedBuildInputs = [ PodMarkdown ]; + buildInputs = [ TestDifferences ]; + meta = { + description = "Convert POD to Github's specific markdown"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PodSimple = buildPerlPackage { + pname = "Pod-Simple"; + version = "3.42"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KH/KHW/Pod-Simple-3.42.tar.gz"; + sha256 = "1icagrjqw1azmff82h17cbrhqgql7rg21gz64mjpiqqq0cpfpz59"; + }; + }; + + PodSpell = buildPerlPackage { + pname = "Pod-Spell"; + version = "1.20"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DO/DOLMEN/Pod-Spell-1.20.tar.gz"; + sha256 = "6383f7bfe22bc0d839a08057a0ce780698b046184aea935be4833d94986dd03c"; + }; + propagatedBuildInputs = [ ClassTiny FileShareDir LinguaENInflect PathTiny PodParser ]; + buildInputs = [ FileShareDirInstall TestDeep ]; + }; + + PodStrip = buildPerlModule { + pname = "Pod-Strip"; + version = "1.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DO/DOMM/Pod-Strip-1.02.tar.gz"; + sha256 = "1zsjfw2cjq1bd3ppl67fdvrx46vj9lina0c3cv9qgk5clzvaq3fq"; + }; + meta = { + description = "Remove POD from Perl code"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PodTidy = buildPerlModule { + pname = "Pod-Tidy"; + version = "0.10"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JH/JHOBLITT/Pod-Tidy-0.10.tar.gz"; + sha256 = "1gcxjplgksnc5iggi8dzbkbkcryii5wjhypd7fs3kmbwx91y2vl8"; + }; + propagatedBuildInputs = [ EncodeNewlines IOString PodWrap TextGlob ]; + buildInputs = [ TestCmd ]; + meta = { + description = "a reformatting Pod Processor"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PodWeaver = buildPerlPackage { + pname = "Pod-Weaver"; + version = "4.015"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Pod-Weaver-4.015.tar.gz"; + sha256 = "5af25b29a55783e495a9df5ef6293240e2c9ab02764613d79f1ed50b12dec5ae"; + }; + buildInputs = [ PPI SoftwareLicense TestDifferences ]; + propagatedBuildInputs = [ ConfigMVPReaderINI DateTime ListMoreUtils LogDispatchouli PodElemental ]; + meta = { + homepage = "https://github.com/rjbs/Pod-Weaver"; + description = "Weave together a Pod document from an outline"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PodWrap = buildPerlModule { + pname = "Pod-Wrap"; + version = "0.01"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NU/NUFFIN/Pod-Wrap-0.01.tar.gz"; + sha256 = "0qwb5hp26f85xnb3zivf8ccfdplabiyl5sd53c6wgdgvzzicpjjh"; + }; + propagatedBuildInputs = [ PodParser ]; + meta = { + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ProbePerl = buildPerlPackage { + pname = "Probe-Perl"; + version = "0.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KW/KWILLIAMS/Probe-Perl-0.03.tar.gz"; + sha256 = "0c9wiaz0mqqknafr4jdr0g2gdzxnn539182z0icqaqvp5qgd5r6r"; + }; + }; + + POSIXstrftimeCompiler = buildPerlModule { + pname = "POSIX-strftime-Compiler"; + version = "0.44"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KA/KAZEBURO/POSIX-strftime-Compiler-0.44.tar.gz"; + sha256 = "dfd3c97398dcfe51c8236b85e3dc28035667b76531f7aa0a6535f3aa5405b35a"; + }; + # We cannot change timezones on the fly. + prePatch = "rm t/04_tzset.t"; + meta = { + homepage = "https://github.com/kazeburo/POSIX-strftime-Compiler"; + description = "GNU C library compatible strftime for loggers and servers"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ ModuleBuildTiny ]; + }; + + Apprainbarf = buildPerlModule { + pname = "App-rainbarf"; + version = "1.4"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SY/SYP/App-rainbarf-1.4.tar.gz"; + sha256 = "4f139ad35faaf2de0623dc0bb1dd89fa5a431e548bfec87dee194cf0e25cc97d"; + }; + nativeBuildInputs = lib.optional stdenv.isDarwin shortenPerlShebang; + postInstall = lib.optionalString stdenv.isDarwin '' + shortenPerlShebang $out/bin/rainbarf + ''; + meta = { + homepage = "https://github.com/creaktive/rainbarf"; + description = "CPU/RAM/battery stats chart bar for tmux (and GNU screen)"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Razor2ClientAgent = buildPerlPackage { + pname = "Razor2-Client-Agent"; + version = "2.86"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TODDR/Razor2-Client-Agent-2.86.tar.gz"; + sha256 = "5e062e02ebb65e24b708e7eefa5300c43d6f657bf20d08fec4ca8a0a3b94845f"; + }; + propagatedBuildInputs = [ DigestSHA1 URI ]; + meta = { + homepage = "http://razor.sourceforge.net/"; + description = "Collaborative, content-based spam filtering network agent"; + license = lib.licenses.mit; + }; + }; + + + Readonly = buildPerlModule { + pname = "Readonly"; + version = "2.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SA/SANKO/Readonly-2.05.tar.gz"; + sha256 = "4b23542491af010d44a5c7c861244738acc74ababae6b8838d354dfb19462b5e"; + }; + buildInputs = [ ModuleBuildTiny ]; + meta = { + homepage = "https://github.com/sanko/readonly"; + description = "Facility for creating read-only scalars, arrays, hashes"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ReadonlyXS = buildPerlPackage { + pname = "Readonly-XS"; + version = "1.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RO/ROODE/Readonly-XS-1.05.tar.gz"; + sha256 = "8ae5c4e85299e5c8bddd1b196f2eea38f00709e0dc0cb60454dc9114ae3fff0d"; + }; + propagatedBuildInputs = [ Readonly ]; + }; + + Redis = buildPerlModule { + pname = "Redis"; + version = "1.998"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DAMS/Redis-1.998.tar.gz"; + sha256 = "59f3bb176c3a7a54cb3779497b89a7bae1fb217565c68711d585fc1f09d79c87"; + }; + buildInputs = [ IOString ModuleBuildTiny TestDeep TestFatal TestSharedFork TestTCP ]; + propagatedBuildInputs = [ IOSocketTimeout TryTiny ]; + meta = { + homepage = "https://github.com/PerlRedis/perl-redis"; + description = "Perl binding for Redis database"; + license = lib.licenses.artistic2; + }; + }; + + RefUtil = buildPerlPackage { + pname = "Ref-Util"; + version = "0.204"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AR/ARC/Ref-Util-0.204.tar.gz"; + sha256 = "1q85y5lzgl8wz5qnz3j6mch2fmllr668h54wszaz6i6gp8ysfps1"; + }; + meta = { + description = "Utility functions for checking references"; + license = with lib.licenses; [ mit ]; + }; + }; + + RegexpAssemble = buildPerlPackage { + pname = "Regexp-Assemble"; + version = "0.38"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RS/RSAVAGE/Regexp-Assemble-0.38.tgz"; + sha256 = "0hp4v8mghmpflq9l9fqrkjg4cw0d3ha2nrmnsnzwjwqvmvwyfsx0"; + }; + }; + + RegexpCommon = buildPerlPackage { + pname = "Regexp-Common"; + version = "2017060201"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AB/ABIGAIL/Regexp-Common-2017060201.tar.gz"; + sha256 = "ee07853aee06f310e040b6bf1a0199a18d81896d3219b9b35c9630d0eb69089b"; + }; + meta = with lib; { + description = "Provide commonly requested regular expressions"; + license = licenses.mit; + }; + }; + + RegexpCommonnetCIDR = buildPerlPackage { + pname = "Regexp-Common-net-CIDR"; + version = "0.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BP/BPS/Regexp-Common-net-CIDR-0.03.tar.gz"; + sha256 = "39606a57aab20d4f4468300f2ec3fa2ab557fcc9cb7880ec7c6e07d80162da33"; + }; + propagatedBuildInputs = [ RegexpCommon ]; + meta = { + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + RegexpCommontime = buildPerlPackage { + pname = "Regexp-Common-time"; + version = "0.16"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MANWAR/Regexp-Common-time-0.16.tar.gz"; + sha256 = "1jjay5gybbls3xn5ihc6q5ig3kf4i28nq4gvg2zp4p5m1ajhg08w"; + }; + propagatedBuildInputs = [ RegexpCommon ]; + meta = { + homepage = "https://github.com/manwar/Regexp-Common-time"; + description = "Date and time regexps."; + maintainers = [ maintainers.artturin ]; + # This module is copyrighted only to ensure proper attribution of + # authorship and to ensure that it remains available to all. This + # module is free, open-source software. This module may be freely used + # for any purpose, commercial, public, or private, provided that proper + # credit is given, and that no more-restrictive license is applied to + # derivative (not dependent) works. + # https://metacpan.org/release/MANWAR/Regexp-Common-time-0.13/view/lib/Regexp/Common/time.pm#LICENSE-AND-COPYRIGHT + license = lib.licenses.free; + }; + }; + + RegexpGrammars = buildPerlModule { + pname = "Regexp-Grammars"; + version = "1.057"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DC/DCONWAY/Regexp-Grammars-1.057.tar.gz"; + sha256 = "af53c19818461cd701aeb57c49dffdb463edc4bf8f658d9ea4e6d534ac177041"; + }; + meta = { + description = "Add grammatical parsing features to Perl 5.10 regexes"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + RegexpIPv6 = buildPerlPackage { + pname = "Regexp-IPv6"; + version = "0.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SA/SALVA/Regexp-IPv6-0.03.tar.gz"; + sha256 = "d542d17d75ce93631de8ba2156da0e0b58a755c409cd4a0d27a3873a26712ce2"; + }; + }; + + RegexpParser = buildPerlPackage { + pname = "Regexp-Parser"; + version = "0.23"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TODDR/Regexp-Parser-0.23.tar.gz"; + sha256 = "f739dab8df2b06aae5c48f9971251b73704464a32d07d8d025f3c0f869544e89"; + }; + meta = { + homepage = "https://github.com/toddr/Regexp-Parser"; + description = "Base class for parsing regexes"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + RegexpTrie = buildPerlPackage { + pname = "Regexp-Trie"; + version = "0.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DANKOGAI/Regexp-Trie-0.02.tar.gz"; + sha256 = "1yn5l6x3xyic9jxw9jggqsbggcv7rc8ggj4zbnlz9hfvv17gjazv"; + }; + meta = { + }; + }; + + RESTClient = buildPerlPackage { + pname = "REST-Client"; + version = "273"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KK/KKANE/REST-Client-273.tar.gz"; + sha256 = "a8652a2214308faff2c68be5ce64c904dcccc5e86be7f32376c1590869d01844"; + }; + propagatedBuildInputs = [ LWPProtocolHttps ]; + meta = { + description = "A simple client for interacting with RESTful http/https resources"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + RESTUtils = buildPerlModule { + pname = "REST-Utils"; + version = "0.6"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JA/JALDHAR/REST-Utils-0.6.tar.gz"; + sha256 = "1zdrf3315rp2b8r9dwwj5h93xky7i33iawf4hzszwcddhzflmsfl"; + }; + buildInputs = [ TestLongString TestWWWMechanize TestWWWMechanizeCGI ]; + meta = { + homepage = "https://jaldhar.github.io/REST-Utils/"; + description = "Utility functions for REST applications"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + RpcXML = buildPerlPackage { + pname = "RPC-XML"; + version = "0.80"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJRAY/RPC-XML-0.80.tar.gz"; + sha256 = "1xvy9hs7bqsjnk0663kf7zk2qjg0pzv96n6z2wlc2w5bgal7q3ga"; + }; + propagatedBuildInputs = [ XMLParser ]; + doCheck = false; + }; + + ReturnValue = buildPerlPackage { + pname = "Return-Value"; + version = "1.666005"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Return-Value-1.666005.tar.gz"; + sha256 = "1b2hfmdl19zi1z3npzv9wf6dh1g0xd88i70b4233ds9icnln08lf"; + }; + }; + + RoleBasic = buildPerlModule { + pname = "Role-Basic"; + version = "0.13"; + src = fetchurl { + url = "mirror://cpan/authors/id/O/OV/OVID/Role-Basic-0.13.tar.gz"; + sha256 = "38a0959ef9f193ff76e72c325a9e9211bc4868689bd0e2b005778f53f8b6f36a"; + }; + meta = { + description = "Just roles. Nothing else"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + RoleHasMessage = buildPerlPackage { + pname = "Role-HasMessage"; + version = "0.006"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Role-HasMessage-0.006.tar.gz"; + sha256 = "1lylfvarjfy6wy34dfny3032pc6r33mjby5yzzhmxybg8zhdp9pn"; + }; + propagatedBuildInputs = [ MooseXRoleParameterized StringErrf ]; + meta = { + description = "A thing with a message method"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + RoleIdentifiable = buildPerlPackage { + pname = "Role-Identifiable"; + version = "0.007"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Role-Identifiable-0.007.tar.gz"; + sha256 = "1bbkj2wqpbfdw1cbm99vg9d94rvzba19m18xhnylaym0l78lc4sn"; + }; + propagatedBuildInputs = [ Moose ]; + meta = { + description = "A thing with a list of tags"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + RoleTiny = buildPerlPackage { + pname = "Role-Tiny"; + version = "2.001004"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HA/HAARG/Role-Tiny-2.001004.tar.gz"; + sha256 = "92ba5712850a74102c93c942eb6e7f62f7a4f8f483734ed289d08b324c281687"; + }; + meta = { + description = "Roles. Like a nouvelle cuisine portion size slice of Moose"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + RPCEPCService = buildPerlModule { + pname = "RPC-EPC-Service"; + version = "0.0.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KI/KIWANAMI/RPC-EPC-Service-v0.0.11.tar.gz"; + sha256 = "975f4134365258fb47fa921919053513adb9101f2bd420fcefe345f209128be3"; + }; + propagatedBuildInputs = [ AnyEvent DataSExpression ]; + meta = { + description = "An Asynchronous Remote Procedure Stack"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + RPM2 = buildPerlModule { + pname = "RPM2"; + version = "1.4"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LK/LKUNDRAK/RPM2-1.4.tar.gz"; + sha256 = "5ecb42aa69324e6f4088abfae07313906e5aabf2f46f1204f3f1de59155bb636"; + }; + buildInputs = [ pkgs.pkg-config pkgs.rpm ]; + doCheck = false; # Tries to open /var/lib/rpm + meta = { + description = "Perl bindings for the RPM Package Manager API"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + platforms = lib.platforms.linux; + }; + }; + + RSSParserLite = buildPerlPackage { + pname = "RSS-Parser-Lite"; + version = "0.12"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TF/TFPBL/RSS-Parser-Lite-0.12.tar.gz"; + sha256 = "1fcmp4qp7q3xr2mw7clqqwph45icbvgfs2n41gp9zamim2y39p49"; + }; + propagatedBuildInputs = [ locallib ]; + doCheck = false; /* creates files in HOME */ + }; + + RTClientREST = buildPerlModule { + pname = "RT-Client-REST"; + version = "0.60"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DJ/DJZORT/RT-Client-REST-0.60.tar.gz"; + sha256 = "0e6f2da3d96903491b43b19c61221cbeea88414264f907312f277daaf144248b"; + }; + buildInputs = [ CGI HTTPServerSimple TestException ]; + meta = { + description = "Talk to RT installation using REST protocol"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + propagatedBuildInputs = [ DateTimeFormatDateParse Error LWP ParamsValidate ]; + }; + + SafeIsa = buildPerlPackage { + pname = "Safe-Isa"; + version = "1.000010"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Safe-Isa-1.000010.tar.gz"; + sha256 = "0sm6p1kw98s7j6n92vvxjqf818xggnmjwci34xjmw7gzl2519x47"; + }; + meta = { + description = "Call isa, can, does and DOES safely on things that may not be objects"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ScalarListUtils = buildPerlPackage { + pname = "Scalar-List-Utils"; + version = "1.55"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PEVANS/Scalar-List-Utils-1.55.tar.gz"; + sha256 = "4d2bdc1c72a7bc4d69d6a5cc85bc7566497c3b183c6175b832784329d58feb4b"; + }; + meta = { + description = "Common Scalar and List utility subroutines"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ScalarString = buildPerlModule { + pname = "Scalar-String"; + version = "0.003"; + src = fetchurl { + url = "mirror://cpan/authors/id/Z/ZE/ZEFRAM/Scalar-String-0.003.tar.gz"; + sha256 = "f54a17c9b78713b02cc43adfadf60b49467e7634d31317e8b9e9e97c26d68b52"; + }; + }; + + SCGI = buildPerlModule { + pname = "SCGI"; + version = "0.6"; + src = fetchurl { + url = "mirror://cpan/authors/id/V/VI/VIPERCODE/SCGI-0.6.tar.gz"; + sha256 = "196rj47mh4fq2vlnw595q391zja5v6qg7s3sy0vy8igfyid8rdsq"; + }; + preConfigure = "export HOME=$(mktemp -d)"; + }; + + ScopeGuard = buildPerlPackage { + pname = "Scope-Guard"; + version = "0.21"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CH/CHOCOLATE/Scope-Guard-0.21.tar.gz"; + sha256 = "0y6jfzvxiz8h5yfz701shair0ilypq2mvimd7wn8wi2nbkm1p6wc"; + }; + meta = { + description = "Lexically-scoped resource management"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ScopeUpper = buildPerlPackage { + pname = "Scope-Upper"; + version = "0.32"; + src = fetchurl { + url = "mirror://cpan/authors/id/V/VP/VPIT/Scope-Upper-0.32.tar.gz"; + sha256 = "ccaff3251c092f2af8b5ad840b76655c4bc4ccf504ff7bde233811822a40abcf"; + }; + meta = { + description = "Act on upper scopes"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + SDL = buildPerlModule { + pname = "SDL"; + version = "2.548"; + src = fetchurl { + url = "mirror://cpan/authors/id/F/FR/FROGGS/SDL-2.548.tar.gz"; + sha256 = "252a192bfa9c2070a4883707d139c3a45d9c4518ccd66a1e699b5b7959bd4fb5"; + }; + perlPreHook = "export LD=$CC"; + preCheck = "rm t/core_audiospec.t"; + buildInputs = [ pkgs.SDL pkgs.SDL_gfx pkgs.SDL_mixer pkgs.SDL_image pkgs.SDL_ttf pkgs.SDL_Pango pkgs.SDL_net AlienSDL CaptureTiny TestDeep TestDifferences TestException TestMost TestWarn ]; + propagatedBuildInputs = [ FileShareDir TieSimple ]; + meta = { + description = "SDL bindings to Perl"; + license = lib.licenses.lgpl21Plus; + }; + }; + + SearchXapian = buildPerlPackage rec { + pname = "Search-Xapian"; + version = "1.2.25.4"; + src = fetchurl { + url = "mirror://cpan/authors/id/O/OL/OLLY/Search-Xapian-1.2.25.4.tar.gz"; + sha256 = "1pbl8pbgmbs3i8yik4p63g4pd9bhn0dp3d7l667dkvw0kccl66c7"; + }; + buildInputs = [ pkgs.xapian DevelLeak ]; + meta = { + description = "Perl XS frontend to the Xapian C++ search library"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + SerealDecoder = buildPerlPackage { + pname = "Sereal-Decoder"; + version = "4.018"; + src = fetchurl { + url = "mirror://cpan/authors/id/Y/YV/YVES/Sereal-Decoder-4.018.tar.gz"; + sha256 = "0wfdixpm3p94mnng474l0nh9mjiy8q8hbrbh2af4vwn2hmazr91f"; + }; + buildInputs = [ TestDeep TestDifferences TestLongString TestWarn ]; + preBuild = "ls"; + meta = { + homepage = "https://github.com/Sereal/Sereal"; + description = "Fast, compact, powerful binary deserialization"; + license = with lib.licenses; [ artistic2 ]; + maintainers = [ maintainers.thoughtpolice ]; + }; + }; + + SerealEncoder = buildPerlPackage { + pname = "Sereal-Encoder"; + version = "4.018"; + src = fetchurl { + url = "mirror://cpan/authors/id/Y/YV/YVES/Sereal-Encoder-4.018.tar.gz"; + sha256 = "0z9dbkr8ggjqb5g1sikxhy1a359bg08gs3vfg9icqm6xx4gjsv6p"; + }; + buildInputs = [ SerealDecoder TestDeep TestDifferences TestLongString TestWarn ]; + meta = { + homepage = "https://github.com/Sereal/Sereal"; + description = "Fast, compact, powerful binary deserialization"; + license = with lib.licenses; [ artistic2 ]; + maintainers = [ maintainers.thoughtpolice ]; + }; + }; + + Sereal = buildPerlPackage { + pname = "Sereal"; + version = "4.018"; + src = fetchurl { + url = "mirror://cpan/authors/id/Y/YV/YVES/Sereal-4.018.tar.gz"; + sha256 = "0pqygrl88jp2w73jd9cw4k22fhvh5vcwqbiwl9wpxm67ql95cwwa"; + }; + buildInputs = [ TestDeep TestLongString TestMemoryGrowth TestWarn ]; + propagatedBuildInputs = [ SerealDecoder SerealEncoder ]; + meta = { + homepage = "https://github.com/Sereal/Sereal"; + description = "Fast, compact, powerful binary deserialization"; + license = with lib.licenses; [ artistic2 ]; + maintainers = [ maintainers.thoughtpolice ]; + }; + }; + + DeviceSerialPort = buildPerlPackage rec { + pname = "Device-SerialPort"; + version = "1.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CO/COOK/Device-SerialPort-1.04.tar.gz"; + sha256 = "1mz9a2qzkz6fbz76wcwmp48h6ckjxpcazb70q03acklvndy5d4nk"; + }; + meta = with lib; { + description = "Linux/POSIX emulation of Win32::SerialPort functions."; + license = with licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ServerStarter = buildPerlModule { + pname = "Server-Starter"; + version = "0.35"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KA/KAZUHO/Server-Starter-0.35.tar.gz"; + sha256 = "676dc0d6cff4648538332c63c32fb88ad09ed868213ea9e62e3f19fad41b9c40"; + }; + buildInputs = [ TestRequires TestSharedFork TestTCP ]; + meta = { + homepage = "https://github.com/kazuho/p5-Server-Starter"; + description = "A superdaemon for hot-deploying server programs"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + SessionToken = buildPerlPackage rec { + pname = "Session-Token"; + version = "1.503"; + src = fetchurl { + url = "mirror://cpan/authors/id/F/FR/FRACTAL/Session-Token-1.503.tar.gz"; + sha256 = "32c3df96ef455c71870363acd950ddc4fbc848c594f4bc55b21b44cf979f79a1"; + }; + meta = { + homepage = "https://github.com/hoytech/Session-Token"; + description = "Secure, efficient, simple random session token generation"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + SetInfinite = buildPerlPackage { + pname = "Set-Infinite"; + version = "0.65"; + src = fetchurl { + url = "mirror://cpan/authors/id/F/FG/FGLOCK/Set-Infinite-0.65.tar.gz"; + sha256 = "07bc880734492de40b4a3a8b5a331762f64e69b4629029fd9a9d357b25b87e1f"; + }; + meta = { + description = "Infinite Sets math"; + }; + }; + + SetIntSpan = buildPerlPackage { + pname = "Set-IntSpan"; + version = "1.19"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SW/SWMCD/Set-IntSpan-1.19.tar.gz"; + sha256 = "1l6znd40ylzvfwl02rlqzvakv602rmvwgm2xd768fpgc2fdm9dqi"; + }; + + meta = { + description = "Manages sets of integers"; + }; + }; + + SetObject = buildPerlPackage { + pname = "Set-Object"; + version = "1.40"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RU/RURBAN/Set-Object-1.40.tar.gz"; + sha256 = "1c4d8464c13e6d94957cf021ce603c961b08f52db6a9eaf5a5b0d37868cd37b7"; + }; + meta = { + description = "Unordered collections (sets) of Perl Objects"; + license = lib.licenses.artistic2; + }; + }; + + SetScalar = buildPerlPackage { + pname = "Set-Scalar"; + version = "1.29"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DAVIDO/Set-Scalar-1.29.tar.gz"; + sha256 = "07aiqkyi1p22drpcyrrmv7f8qq6fhrxh007achy2vryxyck1bp53"; + }; + meta = { + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + SmartComments = buildPerlPackage rec { + pname = "Smart-Comments"; + version = "1.06"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NE/NEILB/Smart-Comments-1.06.tar.gz"; + sha256 = "dcf8a312134a7c6b82926a0115d93b692472a662d28cdc3a9bdf28984ada9ee3"; + }; + meta = { + homepage = "https://github.com/neilb/Smart-Comments"; + description = "Comments that do more than just sit there"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + SGMLSpm = buildPerlModule { + pname = "SGMLSpm"; + version = "1.1"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RA/RAAB/SGMLSpm-1.1.tar.gz"; + sha256 = "1gdjf3mcz2bxir0l9iljxiz6qqqg3a9gg23y5wjg538w552r432m"; + }; + }; + + SignalMask = buildPerlPackage { + pname = "Signal-Mask"; + version = "0.008"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LE/LEONT/Signal-Mask-0.008.tar.gz"; + sha256 = "043d995b6b249d9ebc04c467db31bb7ddc2e55faa08e885bdb050b1f2336b73f"; + }; + propagatedBuildInputs = [ IPCSignal ]; + meta = { + description = "Signal masks made easy"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + SnowballNorwegian = buildPerlModule { + pname = "Snowball-Norwegian"; + version = "1.2"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AS/ASKSH/Snowball-Norwegian-1.2.tar.gz"; + sha256 = "0675v45bbsh7vr7kpf36xs2q79g02iq1kmfw22h20xdk4rzqvkqx"; + }; + meta = { + description = "Porters stemming algorithm for norwegian."; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + SnowballSwedish = buildPerlModule { + pname = "Snowball-Swedish"; + version = "1.2"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AS/ASKSH/Snowball-Swedish-1.2.tar.gz"; + sha256 = "0agwc12jk5kmabnpsplw3wf4ii5w1zb159cpin44x3srb0sr5apg"; + }; + meta = { + description = "Porters stemming algorithm for swedish."; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + SOAPLite = buildPerlPackage { + pname = "SOAP-Lite"; + version = "1.27"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PH/PHRED/SOAP-Lite-1.27.tar.gz"; + sha256 = "00fkvmnxiy5mr45rj5qmxmflw0xdkw2gihm48iha2i8smdmi0ng3"; + }; + propagatedBuildInputs = [ ClassInspector IOSessionData LWPProtocolHttps TaskWeaken XMLParser ]; + meta = { + description = "Perl's Web Services Toolkit"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ TestWarn XMLParserLite ]; + }; + + Socket6 = buildPerlPackage { + pname = "Socket6"; + version = "0.29"; + src = fetchurl { + url = "mirror://cpan/authors/id/U/UM/UMEMOTO/Socket6-0.29.tar.gz"; + sha256 = "468915fa3a04dcf6574fc957eff495915e24569434970c91ee8e4e1459fc9114"; + }; + setOutputFlags = false; + buildInputs = [ pkgs.which ]; + patches = [ ../development/perl-modules/Socket6-sv_undef.patch ]; + meta = { + description = "IPv6 related part of the C socket.h defines and structure manipulators"; + license = lib.licenses.bsd3; + }; + }; + + SoftwareLicense = buildPerlPackage { + pname = "Software-License"; + version = "0.103014"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LE/LEONT/Software-License-0.103014.tar.gz"; + sha256 = "eb45ea602d75006683789fbba57a01c0a1f7037371de95ea54b91577535d1789"; + }; + buildInputs = [ TryTiny ]; + propagatedBuildInputs = [ DataSection TextTemplate ]; + meta = { + homepage = "https://github.com/rjbs/Software-License"; + description = "Packages that provide templated software licenses"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + SoftwareLicenseCCpack = buildPerlPackage { + pname = "Software-License-CCpack"; + version = "1.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BB/BBYRD/Software-License-CCpack-1.11.tar.gz"; + sha256 = "1cakbn7am8mhalwas5h33l7c6avdqpg42z478p6rav11pim5qksr"; + }; + propagatedBuildInputs = [ SoftwareLicense ]; + buildInputs = [ TestCheckDeps ]; + meta = { + description = "Software::License pack for Creative Commons' licenses"; + license = with lib.licenses; [ lgpl3Plus ]; + homepage = "https://github.com/SineSwiper/Software-License-CCpack"; + }; + }; + + SortKey = buildPerlPackage { + pname = "Sort-Key"; + version = "1.33"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SA/SALVA/Sort-Key-1.33.tar.gz"; + sha256 = "1kqs10s2plj6c96srk0j8d7xj8dxk1704r7mck8rqk09mg7lqspd"; + }; + meta = { + description = "Sort arrays by one or multiple calculated keys"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + SortVersions = buildPerlPackage { + pname = "Sort-Versions"; + version = "1.62"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NE/NEILB/Sort-Versions-1.62.tar.gz"; + sha256 = "1aifzm79ky03gi2lwxyx4mk6yky8x215j0kz4f0jbgkf803k6pxz"; + }; + }; + + Specio = buildPerlPackage { + pname = "Specio"; + version = "0.46"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DR/DROLSKY/Specio-0.46.tar.gz"; + sha256 = "15lmxffbzj1gq7n9m80a3ka8nqxmmk3p4azp33y6wv872shjmx0b"; + }; + propagatedBuildInputs = [ DevelStackTrace EvalClosure MROCompat ModuleRuntime RoleTiny SubQuote TryTiny ]; + buildInputs = [ TestFatal TestNeeds ]; + meta = { + description = "Type constraints and coercions for Perl"; + license = with lib.licenses; [ artistic2 ]; + }; + }; + + SpecioLibraryPathTiny = buildPerlPackage { + pname = "Specio-Library-Path-Tiny"; + version = "0.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DR/DROLSKY/Specio-Library-Path-Tiny-0.04.tar.gz"; + sha256 = "0cyfx8gigsgisdwynjamh8jkpad23sr8v6a98hq285zmibm16s7g"; + }; + propagatedBuildInputs = [ PathTiny Specio ]; + buildInputs = [ Filepushd TestFatal ]; + meta = { + description = "Path::Tiny types and coercions for Specio"; + license = with lib.licenses; [ asl20 ]; + }; + }; + + Spiffy = buildPerlPackage { + pname = "Spiffy"; + version = "0.46"; + src = fetchurl { + url = "mirror://cpan/authors/id/I/IN/INGY/Spiffy-0.46.tar.gz"; + sha256 = "18qxshrjh0ibpzjm2314157mxlibh3smyg64nr4mq990hh564n4g"; + }; + }; + + SpreadsheetCSV = buildPerlPackage { + pname = "Spreadsheet-CSV"; + version = "0.20"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DD/DDICK/Spreadsheet-CSV-0.20.tar.gz"; + sha256 = "070bb252a8fe8b938a1ce4fc90525f833d4e619b6d4673b0ae0a23408d514ab6"; + }; + nativeBuildInputs = [ CGI ]; + propagatedBuildInputs = [ ArchiveZip SpreadsheetParseExcel TextCSV_XS XMLParser ]; + meta = { + description = "Drop-in replacement for Text::CSV_XS with spreadsheet support"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + SpreadsheetParseExcel = buildPerlPackage { + pname = "Spreadsheet-ParseExcel"; + version = "0.65"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DO/DOUGW/Spreadsheet-ParseExcel-0.65.tar.gz"; + sha256 = "6ec4cb429bd58d81640fe12116f435c46f51ff1040c68f09cc8b7681c1675bec"; + }; + propagatedBuildInputs = [ CryptRC4 DigestPerlMD5 IOStringy OLEStorage_Lite ]; + meta = { + homepage = "https://github.com/runrig/spreadsheet-parseexcel/"; + description = "Read information from an Excel file"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + SpreadsheetWriteExcel = buildPerlPackage { + pname = "Spreadsheet-WriteExcel"; + version = "2.40"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JM/JMCNAMARA/Spreadsheet-WriteExcel-2.40.tar.gz"; + sha256 = "e356aad6866cf135731268ee0e979a197443c15a04878e9cf3e80d022ad6c07e"; + }; + propagatedBuildInputs = [ OLEStorage_Lite ParseRecDescent ]; + meta = { + description = "Write to a cross platform Excel binary file"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + SQLAbstract = buildPerlPackage { + pname = "SQL-Abstract"; + version = "1.87"; + src = fetchurl { + url = "mirror://cpan/authors/id/I/IL/ILMARI/SQL-Abstract-1.87.tar.gz"; + sha256 = "e926a0a83da7efa18e57e5b2952a2ab3b7563a51733fc6dd5c89f12156481c4a"; + }; + buildInputs = [ TestDeep TestException TestWarn ]; + propagatedBuildInputs = [ HashMerge MROCompat Moo ]; + meta = { + description = "Generate SQL from Perl data structures"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + SQLAbstractClassic = buildPerlPackage { + pname = "SQL-Abstract-Classic"; + version = "1.91"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RI/RIBASUSHI/SQL-Abstract-Classic-1.91.tar.gz"; + sha256 = "0a7g13hs3kdxrjn43sfli09mgsi9d6w0dfw6hlk268av17yisgaf"; + }; + buildInputs = [ TestDeep TestException TestWarn ]; + propagatedBuildInputs = [ SQLAbstract ]; + meta = { + description = "Generate SQL from Perl data structures"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + SQLAbstractLimit = buildPerlPackage { + pname = "SQL-Abstract-Limit"; + version = "0.142"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AS/ASB/SQL-Abstract-Limit-0.142.tar.gz"; + sha256 = "0y2q7mxngm9m2kvr6isvxra4frb1cjbiplp381p6hhifn7xfz8fl"; + }; + propagatedBuildInputs = [ DBI SQLAbstract ]; + buildInputs = [ TestDeep TestException ]; + }; + + SQLSplitStatement = buildPerlPackage { + pname = "SQL-SplitStatement"; + version = "1.00020"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/EM/EMAZEP/SQL-SplitStatement-1.00020.tar.gz"; + sha256 = "0bqg45k4c9qkb2ypynlwhpvzsl4ssfagmsalys18s5c79ps30z7p"; + }; + buildInputs = [ TestException ]; + propagatedBuildInputs = [ ClassAccessor ListMoreUtils RegexpCommon SQLTokenizer ]; + }; + + SQLStatement = buildPerlPackage { + pname = "SQL-Statement"; + version = "1.414"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RE/REHSACK/SQL-Statement-1.414.tar.gz"; + sha256 = "0j8sg36wc3nwfb2gj3fv75f0iv7s7q7vl6b5l3fywdm1lv7vvs6x"; + }; + buildInputs = [ MathBaseConvert TestDeep TextSoundex ]; + propagatedBuildInputs = [ Clone ModuleRuntime ParamsUtil ]; + }; + + SQLTokenizer = buildPerlPackage { + pname = "SQL-Tokenizer"; + version = "0.24"; + src = fetchurl { + url = "mirror://cpan/authors/id/I/IZ/IZUT/SQL-Tokenizer-0.24.tar.gz"; + sha256 = "1qa2dfbzdlr5qqdam9yn78z5w3al5r8577x06qan8wv58ay6ka7s"; + }; + }; + + SQLTranslator = buildPerlPackage { + pname = "SQL-Translator"; + version = "1.62"; + src = fetchurl { + url = "mirror://cpan/authors/id/I/IL/ILMARI/SQL-Translator-1.62.tar.gz"; + sha256 = "096fq62iphmxgcfcayg4i0wf09y1rl1ar6hrcxfqsbrsmkwlzk8a"; + }; + buildInputs = [ FileShareDirInstall JSONMaybeXS TestDifferences TestException XMLWriter YAML ]; + propagatedBuildInputs = [ CarpClan DBI FileShareDir Moo PackageVariant ParseRecDescent TryTiny GraphViz GD ]; + + postPatch = '' + patchShebangs script + ''; + + nativeBuildInputs = lib.optional stdenv.isDarwin shortenPerlShebang; + postInstall = lib.optionalString stdenv.isDarwin '' + for file in $out/bin/*; do + shortenPerlShebang $file + done + ''; + + meta = { + description = "SQL DDL transformations and more"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PackageVariant = buildPerlPackage { + pname = "Package-Variant"; + version = "1.003002"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MS/MSTROUT/Package-Variant-1.003002.tar.gz"; + sha256 = "b2ed849d2f4cdd66467512daa3f143266d6df810c5fae9175b252c57bc1536dc"; + }; + buildInputs = [ TestFatal ]; + propagatedBuildInputs = [ ImportInto strictures ]; + meta = { + description = "Parameterizable packages"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + SortNaturally = buildPerlPackage { + pname = "Sort-Naturally"; + version = "1.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BI/BINGOS/Sort-Naturally-1.03.tar.gz"; + sha256 = "eaab1c5c87575a7826089304ab1f8ffa7f18e6cd8b3937623e998e865ec1e746"; + }; + }; + + Starlet = buildPerlPackage { + pname = "Starlet"; + version = "0.31"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KA/KAZUHO/Starlet-0.31.tar.gz"; + sha256 = "b9603b8e62880cb4582f6a7939eafec65e6efd3d900f2c7dd342e5f4c68d62d8"; + }; + buildInputs = [ LWP TestSharedFork TestTCP ]; + propagatedBuildInputs = [ ParallelPrefork Plack ServerStarter ]; + doCheck = !stdenv.isDarwin; + meta = { + description = "A simple, high-performance PSGI/Plack HTTP server"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Starman = buildPerlModule { + pname = "Starman"; + version = "0.4015"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIYAGAWA/Starman-0.4015.tar.gz"; + sha256 = "1y1kn4929k299fbf6sw9lxcsdlq9fvq777p6yrzk591rr9xhkx8h"; + }; + buildInputs = [ LWP ModuleBuildTiny TestRequires TestTCP ]; + nativeBuildInputs = lib.optional stdenv.isDarwin shortenPerlShebang; + propagatedBuildInputs = [ DataDump HTTPParserXS NetServer Plack NetServerSSPrefork ]; + postInstall = lib.optionalString stdenv.isDarwin '' + shortenPerlShebang $out/bin/starman + ''; + + doCheck = false; # binds to various TCP ports + meta = { + homepage = "https://github.com/miyagawa/Starman"; + description = "High-performance preforking PSGI/Plack web server"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + StatisticsBasic = buildPerlPackage { + pname = "Statistics-Basic"; + version = "1.6611"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JE/JETTERO/Statistics-Basic-1.6611.tar.gz"; + sha256 = "1ywl398z42hz9w1k0waf1caa6agz8jzsjlf4rzs1lgpx2mbcwmb8"; + }; + propagatedBuildInputs = [ NumberFormat ]; + meta = { + license = "open_source"; + }; + }; + + StatisticsCaseResampling = buildPerlPackage { + pname = "Statistics-CaseResampling"; + version = "0.15"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SM/SMUELLER/Statistics-CaseResampling-0.15.tar.gz"; + sha256 = "11whlh2dl7l6wrrnfmpbsg7ldcn316iccl1aaa4j5lqhdyyl6745"; + }; + meta = { + description = "Efficient resampling and calculation of medians with confidence intervals"; + }; + }; + + StatisticsChiSquare = buildPerlPackage rec { + pname = "Statistics-ChiSquare"; + version = "1.0000"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DC/DCANTRELL/Statistics-ChiSquare-1.0000.tar.gz"; + sha256 = "255a5a38336d048ddb9077222691e000984e907aae09a4ea695a9cfd49a1ddd0"; + }; + meta = { + description = "Implements the Chi Squared test, using pre-computed tables"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + StatisticsDescriptive = buildPerlModule { + pname = "Statistics-Descriptive"; + version = "3.0800"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/Statistics-Descriptive-3.0800.tar.gz"; + sha256 = "0fgrjr79ai5dn92kypslsi97y7r8iiwmd682lrd47vdz4vmdwkmh"; + }; + meta = { + #homepage = "http://web-cpan.berlios.de/modules/Statistics-Descriptive/"; # berlios shut down; I found no replacement + description = "Module of basic descriptive statistical functions"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + propagatedBuildInputs = [ ListMoreUtils ]; + }; + + StatisticsDistributions = buildPerlPackage { + pname = "Statistics-Distributions"; + version = "1.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIKEK/Statistics-Distributions-1.02.tar.gz"; + sha256 = "1j1kswl98f4i9dn176f9aa3y9bissx2sscga5jm3gjl4pxm3k7zr"; + }; + }; + + StatisticsTTest = buildPerlPackage { + pname = "Statistics-TTest"; + version = "1.1.0"; + src = fetchurl { + url = "mirror://cpan/authors/id/Y/YU/YUNFANG/Statistics-TTest-1.1.0.tar.gz"; + sha256 = "0rkifgzm4rappiy669dyi6lyxn2sdqaf0bl6gndlfa67b395kndj"; + }; + propagatedBuildInputs = [ StatisticsDescriptive StatisticsDistributions ]; + }; + + StreamBuffered = buildPerlPackage { + pname = "Stream-Buffered"; + version = "0.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DO/DOY/Stream-Buffered-0.03.tar.gz"; + sha256 = "0fs2n9zw6isfkha2kbqrvl9mwg572x1x0jlfaps0qsyynn846bcv"; + }; + meta = { + homepage = "https://plackperl.org"; + description = "Temporary buffer to save bytes"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + strictures = buildPerlPackage { + pname = "strictures"; + version = "2.000006"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HA/HAARG/strictures-2.000006.tar.gz"; + sha256 = "0mwd9xqz4n8qfpi5h5581lbm33qhf7agww18h063icnilrs7km89"; + }; + meta = { + homepage = "http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=p5sagit/strictures.git"; + description = "Turn on strict and make all warnings fatal"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + StringApprox = buildPerlPackage { + pname = "String-Approx"; + version = "3.28"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JH/JHI/String-Approx-3.28.tar.gz"; + sha256 = "43201e762d8699cb0ac2c0764a5454bdc2306c0771014d6c8fba821480631342"; + }; + }; + + StringCamelCase = buildPerlPackage { + pname = "String-CamelCase"; + version = "0.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HI/HIO/String-CamelCase-0.04.tar.gz"; + sha256 = "1a8i4yzv586svd0pbxls7642vvmyiwzh4x2xyij8gbnfxsydxhw9"; + }; + }; + + StringCompareConstantTime = buildPerlPackage { + pname = "String-Compare-ConstantTime"; + version = "0.321"; + src = fetchurl { + url = "mirror://cpan/authors/id/F/FR/FRACTAL/String-Compare-ConstantTime-0.321.tar.gz"; + sha256 = "0b26ba2b121d8004425d4485d1d46f59001c83763aa26624dff6220d7735d7f7"; + }; + meta = { + description = "Timing side-channel protected string compare"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + StringCRC32 = buildPerlPackage { + pname = "String-CRC32"; + version = "2"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LE/LEEJO/String-CRC32-2.tar.gz"; + sha256 = "0bfrpnkgfakd4apv366p63z4vzypzvhj3yyqaw9dg7zca2pgxdzd"; + }; + }; + + StringDiff = buildPerlModule { + pname = "String-Diff"; + version = "0.07"; + src = fetchurl { + url = "mirror://cpan/authors/id/Y/YA/YAPPO/String-Diff-0.07.tar.gz"; + sha256 = "7215b67cbc3226e2d0e18b38ec58c93be0bf6090278698bef955348826cd0af3"; + }; + patches = [ + (fetchpatch { + url = "https://salsa.debian.org/perl-team/modules/packages/libstring-diff-perl/-/raw/d8120a93f73f4d4aa40d10819b2f0a312608ca9b/debian/patches/0001-Fix-the-test-suite-for-YAML-1.21-compatibility.patch"; + sha256 = "0rggwcp7rfnp3zhnxpn5pb878v2dhpk3x6682w9dnsym92gjrij5"; + }) + ]; + buildInputs = [ TestBase ModuleBuildTiny ModuleInstallGithubMeta ModuleInstallRepository ModuleInstallReadmeFromPod ModuleInstallReadmeMarkdownFromPod YAML ]; + propagatedBuildInputs = [ AlgorithmDiff ]; + meta = { + homepage = "https://github.com/yappo/p5-String-Diff"; + description = "Simple diff to String"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + StringErrf = buildPerlPackage { + pname = "String-Errf"; + version = "0.008"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/String-Errf-0.008.tar.gz"; + sha256 = "1nyn9s52jgbffrsv0m7rhcx1awjj43n68bfjlap8frdc7mw6y4xf"; + }; + buildInputs = [ JSONMaybeXS TimeDate ]; + propagatedBuildInputs = [ StringFormatter ]; + meta = { + description = "A simple sprintf-like dialect"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + StringEscape = buildPerlPackage { + pname = "String-Escape"; + version = "2010.002"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/EV/EVO/String-Escape-2010.002.tar.gz"; + sha256 = "12ls7f7847i4qcikkp3skwraqvjphjiv2zxfhl5d49326f5myr7x"; + }; + }; + + StringFlogger = buildPerlPackage { + pname = "String-Flogger"; + version = "1.101245"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/String-Flogger-1.101245.tar.gz"; + sha256 = "aa03c08e01f802a358c175c6093c02adf9688659a087a8ddefdc3e9cef72640b"; + }; + propagatedBuildInputs = [ JSONMaybeXS SubExporter ]; + meta = { + homepage = "https://github.com/rjbs/String-Flogger"; + description = "String munging for loggers"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + StringFormat = buildPerlPackage { + pname = "String-Format"; + version = "1.18"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SR/SREZIC/String-Format-1.18.tar.gz"; + sha256 = "0y77frxzjifd4sw0j19cc346ysas1mya84rdxaz279lyin7plhcy"; + }; + }; + + StringFormatter = buildPerlPackage { + pname = "String-Formatter"; + version = "0.102084"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/String-Formatter-0.102084.tar.gz"; + sha256 = "0mlwm0rirv46gj4h072q8gdync5zxxsxy8p028gdyrhczl942dc3"; + }; + propagatedBuildInputs = [ SubExporter ]; + meta = with lib; { + description = "Build sprintf-like functions of your own"; + license = licenses.gpl2; + }; + }; + + StringInterpolate = buildPerlPackage { + pname = "String-Interpolate"; + version = "0.32"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NE/NEILB/String-Interpolate-0.32.tar.gz"; + sha256 = "15fwbpz3jdpdgmz794iw9hz2caxrnrw9pdwprxxkanpm92cdhaf7"; + }; + meta = with lib; { + # https://metacpan.org/pod/String::Interpolate + description = "String::Interpolate - Wrapper for builtin the Perl interpolation engine."; + license = licenses.gpl1Plus; + }; + propagatedBuildInputs = [ PadWalker SafeHole ]; + }; + + StringInterpolateNamed = buildPerlPackage { + pname = "String-Interpolate-Named"; + version = "1.00"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JV/JV/String-Interpolate-Named-1.00.tar.gz"; + sha256 = "727299fa69258b604770e059ec4da906bfde71861fdd1e3e89e30677371c5a80"; + }; + meta = { + description = "Interpolated named arguments in string"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + StringMkPasswd = buildPerlPackage { + pname = "String-MkPasswd"; + version = "0.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CG/CGRAU/String-MkPasswd-0.05.tar.gz"; + sha256 = "15lvcc8c9hp6mg3jx02wd3b85aphn8yl5db62q3pam04c0sgh42k"; + }; + }; + + StringRandom = buildPerlModule { + pname = "String-Random"; + version = "0.31"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/String-Random-0.31.tar.gz"; + sha256 = "0p4pmf3k6c01j8clfx54167rva9mf82bkh9aj5qdrix2cgpd2jjb"; + }; + }; + + StringRewritePrefix = buildPerlPackage { + pname = "String-RewritePrefix"; + version = "0.008"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/String-RewritePrefix-0.008.tar.gz"; + sha256 = "1sq8way03gxb990n232y201grnh0jj0xhj7g4b3mz3sfj7b32np4"; + }; + propagatedBuildInputs = [ SubExporter ]; + meta = { + description = "Rewrite strings based on a set of known prefixes"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + StringShellQuote = buildPerlPackage { + pname = "String-ShellQuote"; + version = "1.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RO/ROSCH/String-ShellQuote-1.04.tar.gz"; + sha256 = "0dfxhr6hxc2majkkrm0qbx3qcbykzpphbj2ms93dc86f7183c1p6"; + }; + doCheck = !stdenv.isDarwin; + meta = { + # http://cpansearch.perl.org/src/ROSCH/String-ShellQuote-1.04/README + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + StringSimilarity = buildPerlPackage { + pname = "String-Similarity"; + version = "1.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/ML/MLEHMANN/String-Similarity-1.04.tar.gz"; + sha256 = "0i9j3hljxw7j6yiii9nsscfj009vw6zv1q8cxwd75jxvj0idm3hz"; + }; + doCheck = true; + meta = { + license = with lib.licenses; [ gpl2 ]; + description = "Calculate the similarity of two strings"; + }; + }; + + ShellCommand = buildPerlPackage { + pname = "Shell-Command"; + version = "0.06"; + src = fetchurl { + url = "mirror://cpan/authors/id/F/FL/FLORA/Shell-Command-0.06.tar.gz"; + sha256 = "1lgc2rb3b5a4lxvbq0cbg08qk0n2i88srxbsz93bwi3razpxxr7k"; + }; + }; + + ShellConfigGenerate = buildPerlPackage { + pname = "Shell-Config-Generate"; + version = "0.34"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PL/PLICEASE/Shell-Config-Generate-0.34.tar.gz"; + sha256 = "84f451f22215dd68e9c18aa3f7ddb03a82007d166cfada003d0f166f571e0562"; + }; + buildInputs = [ Test2Suite ]; + propagatedBuildInputs = [ ShellGuess ]; + meta = { + homepage = "https://metacpan.org/pod/Shell::Config::Generate"; + description = "Portably generate config for any shell"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ShellGuess = buildPerlPackage { + pname = "Shell-Guess"; + version = "0.09"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PL/PLICEASE/Shell-Guess-0.09.tar.gz"; + sha256 = "4069fa2637e443118ed956d710231d166823d23b2a64eb87b8a46872e865a12b"; + }; + meta = { + homepage = "https://metacpan.org/pod/Shell::Guess"; + description = "Make an educated guess about the shell in use"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + StringToIdentifierEN = buildPerlPackage { + pname = "String-ToIdentifier-EN"; + version = "0.12"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RK/RKITOVER/String-ToIdentifier-EN-0.12.tar.gz"; + sha256 = "12nw7h2yiybhdw0vnnpc7bif8ylhsn6kqf6s39dsrf9h54iq9yrs"; + }; + propagatedBuildInputs = [ LinguaENInflectPhrase TextUnidecode namespaceclean ]; + }; + + StringTruncate = buildPerlPackage { + pname = "String-Truncate"; + version = "1.100602"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/String-Truncate-1.100602.tar.gz"; + sha256 = "0vjz4fd4cvcy12gk5bdha7z73ifmfpmk748khha94dhiq3pd98xa"; + }; + propagatedBuildInputs = [ SubExporter ]; + meta = { + description = "A module for when strings are too long to be displayed in"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + StringTT = buildPerlPackage { + pname = "String-TT"; + version = "0.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BO/BOBTFISH/String-TT-0.03.tar.gz"; + sha256 = "1asjr79wqcl9wk96afxrm1yhpj8lk9bk8kyz78yi5ypr0h55yq7p"; + }; + buildInputs = [ TestException TestSimple13 TestTableDriven ]; + propagatedBuildInputs = [ PadWalker SubExporter TemplateToolkit ]; + meta = { + description = "Use TT to interpolate lexical variables"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + StringUtil = buildPerlModule { + pname = "String-Util"; + version = "1.31"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BA/BAKERSCOT/String-Util-1.31.tar.gz"; + sha256 = "0vfjvy04y71f8jsjg0yll28wqlpgn7gbkcrb0i72k0qcliz9mg7v"; + }; + meta = { + description = "String::Util -- String processing utilities"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + + buildInputs = [ ModuleBuildTiny ]; + }; + + strip-nondeterminism = callPackage ../development/perl-modules/strip-nondeterminism { }; + + StructDumb = buildPerlModule { + pname = "Struct-Dumb"; + version = "0.12"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PEVANS/Struct-Dumb-0.12.tar.gz"; + sha256 = "0wvzcpil9xc2wkibq3sj8i5bgq4iadx2k7hfqb8jm5p66g271kjj"; + }; + buildInputs = [ TestFatal ]; + meta = { + description = "make simple lightweight record-like structures"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + SubExporter = buildPerlPackage { + pname = "Sub-Exporter"; + version = "0.987"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Sub-Exporter-0.987.tar.gz"; + sha256 = "1ml3n1ck4ln9qjm2mcgkczj1jb5n1fkscz9c4x23v4db0glb4g2l"; + }; + propagatedBuildInputs = [ DataOptList ]; + meta = { + homepage = "https://github.com/rjbs/sub-exporter"; + description = "A sophisticated exporter for custom-built routines"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + SubExporterForMethods = buildPerlPackage { + pname = "Sub-Exporter-ForMethods"; + version = "0.100052"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Sub-Exporter-ForMethods-0.100052.tar.gz"; + sha256 = "421fbba4f6ffcf13c4335f2c20630d709e6fa659c07545d094dbc5a558ad3006"; + }; + buildInputs = [ namespaceautoclean ]; + propagatedBuildInputs = [ SubExporter SubName ]; + meta = { + homepage = "https://github.com/rjbs/Sub-Exporter-ForMethods"; + description = "Helper routines for using Sub::Exporter to build methods"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + SubExporterGlobExporter = buildPerlPackage { + pname = "Sub-Exporter-GlobExporter"; + version = "0.005"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Sub-Exporter-GlobExporter-0.005.tar.gz"; + sha256 = "0qvsvfvfyk69v2ygjnyd5sh3bgbzd6f7k7mgv0zws1yywvpmxi1g"; + }; + propagatedBuildInputs = [ SubExporter ]; + meta = { + homepage = "https://github.com/rjbs/sub-exporter-globexporter"; + description = "Export shared globs with Sub::Exporter collectors"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + SubExporterProgressive = buildPerlPackage { + pname = "Sub-Exporter-Progressive"; + version = "0.001013"; + src = fetchurl { + url = "mirror://cpan/authors/id/F/FR/FREW/Sub-Exporter-Progressive-0.001013.tar.gz"; + sha256 = "0mn0x8mkh36rrsr58s1pk4srwxh2hbwss7sv630imnk49navfdfm"; + }; + meta = { + description = "Only use Sub::Exporter if you need it"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + SubHandlesVia = buildPerlPackage { + pname = "Sub-HandlesVia"; + version = "0.016"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TOBYINK/Sub-HandlesVia-0.016.tar.gz"; + sha256 = "1mgr5igbr0zj8kzlfq7ayh5912i6mz47cx3605s04927wm5d9pk9"; + }; + propagatedBuildInputs = [ ClassMethodModifiers ClassTiny RoleTiny ScalarListUtils TypeTiny ]; + buildInputs = [ TestFatal TestRequires ]; + meta = { + description = "alternative handles_via implementation"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + SubIdentify = buildPerlPackage { + pname = "Sub-Identify"; + version = "0.14"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RG/RGARCIA/Sub-Identify-0.14.tar.gz"; + sha256 = "068d272086514dd1e842b6a40b1bedbafee63900e5b08890ef6700039defad6f"; + }; + meta = { + description = "Retrieve names of code references"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + SubInfo = buildPerlPackage { + pname = "Sub-Info"; + version = "0.002"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/EX/EXODIST/Sub-Info-0.002.tar.gz"; + sha256 = "ea3056d696bdeff21a99d340d5570887d39a8cc47bff23adfc82df6758cdd0ea"; + }; + propagatedBuildInputs = [ Importer ]; + meta = { + description = "Tool for inspecting subroutines"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + SubInstall = buildPerlPackage { + pname = "Sub-Install"; + version = "0.928"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Sub-Install-0.928.tar.gz"; + sha256 = "03zgk1yh128gciyx3q77zxzxg9kf8yy2gm46gdxqi24mcykngrb1"; + }; + meta = { + description = "Install subroutines into packages easily"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + SubName = buildPerlPackage { + pname = "Sub-Name"; + version = "0.26"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Sub-Name-0.26.tar.gz"; + sha256 = "2d2f2d697d516c89547e7c4307f1e79441641cae2c7395e7319b306d390df105"; + }; + buildInputs = [ BC DevelCheckBin ]; + meta = { + homepage = "https://github.com/p5sagit/Sub-Name"; + description = "(Re)name a sub"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + SubOverride = buildPerlPackage { + pname = "Sub-Override"; + version = "0.09"; + src = fetchurl { + url = "mirror://cpan/authors/id/O/OV/OVID/Sub-Override-0.09.tar.gz"; + sha256 = "1d955qn44brkcfif3gi0q2vvvqahny6rax0vr068x5i9yz0ng6lk"; + }; + buildInputs = [ TestFatal ]; + }; + + SubQuote = buildPerlPackage { + pname = "Sub-Quote"; + version = "2.006006"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HA/HAARG/Sub-Quote-2.006006.tar.gz"; + sha256 = "6e4e2af42388fa6d2609e0e82417de7cc6be47223f576592c656c73c7524d89d"; + }; + buildInputs = [ TestFatal ]; + meta = { + description = "Efficient generation of subroutines via string eval"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + SubUplevel = buildPerlPackage { + pname = "Sub-Uplevel"; + version = "0.2800"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DAGOLDEN/Sub-Uplevel-0.2800.tar.gz"; + sha256 = "14z2xjiw931wizcx3mblmby753jspvfm321d6chs907nh0xzdwxl"; + }; + meta = { + homepage = "https://github.com/dagolden/sub-uplevel"; + description = "Apparently run a function in a higher stack frame"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + SVNSimple = buildPerlPackage { + pname = "SVN-Simple"; + version = "0.28"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CL/CLKAO/SVN-Simple-0.28.tar.gz"; + sha256 = "1ysgi38zx236cxz539k6d6rw5z0vc70rrglsaf5fk6rnwilw2g6n"; + }; + propagatedBuildInputs = [ (pkgs.subversionClient.override { inherit perl; }) ]; + }; + + SafeHole = buildPerlModule { + pname = "Safe-Hole"; + version = "0.14"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TODDR/Safe-Hole-0.14.tar.gz"; + sha256 = "01gc2lfli282dj6a2pkpxb0vmpyavs323cbdw15gxi06pn5nxxgl"; + }; + meta = { + description = "lib/Safe/Hole.pm"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/toddr/Safe-Hole"; + broken = stdenv.isDarwin; + }; + }; + + Swim = buildPerlPackage { + pname = "Swim"; + version = "0.1.48"; + src = fetchurl { + url = "mirror://cpan/authors/id/I/IN/INGY/Swim-0.1.48.tar.gz"; + sha256 = "a5f72fd2f22917fa2b4acbb2ee2c3d32903d97ee5b0e449b0f387018c77f4f0c"; + }; + propagatedBuildInputs = [ HTMLEscape HashMerge IPCRun Pegex TextAutoformat YAMLLibYAML ]; + meta = { + homepage = "https://github.com/ingydotnet/swim-pm"; + description = "See What I Mean?!"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Switch = buildPerlPackage { + pname = "Switch"; + version = "2.17"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CH/CHORNY/Switch-2.17.tar.gz"; + sha256 = "0xbdjdgzfj9zwa4j3ipr8bfk7bcici4hk89hq5d27rhg2isljd9i"; + }; + doCheck = false; # FIXME: 2/293 test failures + }; + + SymbolGet = buildPerlPackage { + pname = "Symbol-Get"; + version = "0.10"; + src = fetchurl { + url = "mirror://cpan/authors/id/F/FE/FELIPE/Symbol-Get-0.10.tar.gz"; + sha256 = "0ee5568c5ae3573ca874e09e4d0524466cfc1ad9a2c24d0bc91d4c7b06f21d9c"; + }; + buildInputs = [ TestDeep TestException ]; + propagatedBuildInputs = [ CallContext ]; + meta = { + description = "Read Perl's symbol table programmatically"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + SymbolGlobalName = buildPerlPackage { + pname = "Symbol-Global-Name"; + version = "0.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AL/ALEXMV/Symbol-Global-Name-0.05.tar.gz"; + sha256 = "0f7623e9d724760aa64040222da1d82f1188586791329261cc60dad1d60d6a92"; + }; + meta = { + description = "Finds name and type of a global variable"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + SymbolUtil = buildPerlModule { + pname = "Symbol-Util"; + version = "0.0203"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DE/DEXTER/Symbol-Util-0.0203.tar.gz"; + sha256 = "0cnwwrd5d6i80f33s7n2ak90rh4s53ss7q57wndrpkpr4bfn3djm"; + }; + }; + + syntax = buildPerlPackage { + pname = "syntax"; + version = "0.004"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PH/PHAYLON/syntax-0.004.tar.gz"; + sha256 = "fe19b6da8a8f43a5aa2ee571441bc0e339fb156d0081c157a1a24e9812c7d365"; + }; + propagatedBuildInputs = [ DataOptList namespaceclean ]; + meta = { + homepage = "https://github.com/phaylon/syntax/wiki"; + description = "Activate syntax extensions"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + SyntaxKeywordJunction = buildPerlPackage { + pname = "Syntax-Keyword-Junction"; + version = "0.003008"; + src = fetchurl { + url = "mirror://cpan/authors/id/F/FR/FREW/Syntax-Keyword-Junction-0.003008.tar.gz"; + sha256 = "8b4975f21b1992a7e6c2df5dcc92b254c61925595eddcdfaf0b1498717aa95ef"; + }; + buildInputs = [ TestRequires ]; + propagatedBuildInputs = [ syntax ]; + meta = { + homepage = "https://github.com/frioux/Syntax-Keyword-Junction"; + description = "Perl6 style Junction operators in Perl5"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + SyntaxKeywordTry = buildPerlModule { + pname = "Syntax-Keyword-Try"; + version = "0.25"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PEVANS/Syntax-Keyword-Try-0.25.tar.gz"; + sha256 = "0xd82gcpcrnmwxsbk7x0ainmyybdc087g6j69hrpy80j0asnq2f5"; + }; + propagatedBuildInputs = [ XSParseKeyword ]; + perlPreHook = lib.optionalString stdenv.isDarwin "export LD=$CC"; + meta = { + description = "A try/catch/finally syntax for perl"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.zakame ]; + }; + }; + + SysMmap = buildPerlPackage { + pname = "Sys-Mmap"; + version = "0.20"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TODDR/Sys-Mmap-0.20.tar.gz"; + sha256 = "1kz22l7sh2mibliixyshc9958bqlkzsb13agcibp7azii4ncw80q"; + }; + meta = with lib; { + description = "Use mmap to map in a file as a Perl variable"; + maintainers = with maintainers; [ peterhoeg ]; + license = with licenses; [ gpl2Plus ]; + }; + }; + + SysMemInfo = buildPerlPackage { + pname = "Sys-MemInfo"; + version = "0.99"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SC/SCRESTO/Sys-MemInfo-0.99.tar.gz"; + sha256 = "0786319d3a3a8bae5d727939244bf17e140b714f52734d5e9f627203e4cf3e3b"; + }; + meta = { + description = "Memory informations"; + maintainers = [ maintainers.pSub ]; + license = with lib.licenses; [ gpl2Plus ]; + }; + }; + + SysCPU = buildPerlPackage { + pname = "Sys-CPU"; + version = "0.61"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MZ/MZSANFORD/Sys-CPU-0.61.tar.gz"; + sha256 = "1r6976bs86j7zp51m5vh42xlyah951jgdlkimv202413kjvqc2i5"; + }; + patches = [ + # Bug #95400 for Sys-CPU: Tests fail on ARM and AArch64 Linux + # https://rt.cpan.org/Public/Bug/Display.html?id=95400 + (fetchpatch { + url = "https://rt.cpan.org/Ticket/Attachment/1359669/721669/0001-Add-support-for-cpu_type-on-ARM-and-AArch64-Linux-pl.patch"; + sha256 = "0rmazzdy34znksdhh8drc83lk754slhjgvnk4kk27z3kw5gm10m0"; + }) + (fetchpatch { + url = "https://rt.cpan.org/Ticket/Attachment/1388036/737125/0002-cpu_clock-can-be-undefined-on-an-ARM.patch"; + sha256 = "0z3wqfahc9av7y34aqp6biq3sf8v8q4yynx7bv290vds50dsjb4w"; + }) + ]; + buildInputs = lib.optional stdenv.isDarwin pkgs.darwin.apple_sdk.frameworks.Carbon; + doCheck = !stdenv.isAarch64; + }; + + SysHostnameLong = buildPerlPackage { + pname = "Sys-Hostname-Long"; + version = "1.5"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SC/SCOTT/Sys-Hostname-Long-1.5.tar.gz"; + sha256 = "1jv5n8jv48c1p8svjsigyxndv1ygsq8wgwj9c7ypx1vaf3rns679"; + }; + doCheck = false; # no `hostname' in stdenv + }; + + SysSigAction = buildPerlPackage { + pname = "Sys-SigAction"; + version = "0.23"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LB/LBAXTER/Sys-SigAction-0.23.tar.gz"; + sha256 = "c4ef6c9345534031fcbbe2adc347fc7194d47afc945e7a44fac7e9563095d353"; + }; + doCheck = !stdenv.isAarch64; # it hangs on Aarch64 + meta = { + description = "Perl extension for Consistent Signal Handling"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + SysSyslog = buildPerlPackage { + pname = "Sys-Syslog"; + version = "0.36"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SA/SAPER/Sys-Syslog-0.36.tar.gz"; + sha256 = "ed42a9e5ba04ad4856cc0cb5d38d289c3c5d3764543ec04efafc4af7e3378df8"; + }; + meta = { + description = "Perl interface to the UNIX syslog(3) calls"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + SystemCommand = buildPerlPackage { + pname = "System-Command"; + version = "1.121"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BO/BOOK/System-Command-1.121.tar.gz"; + sha256 = "43de5ecd20c1da46e8a6f4fceab29e04697a2890a99bf6a91b3ca004a468a241"; + }; + propagatedBuildInputs = [ IPCRun ]; + meta = { + description = "Object for running system commands"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ PodCoverageTrustPod TestCPANMeta TestPod TestPodCoverage ]; + }; + + SysVirt = buildPerlModule rec { + pname = "Sys-Virt"; + version = "8.1.0"; + src = fetchFromGitLab { + owner = "libvirt"; + repo = "libvirt-perl"; + rev = "v${version}"; + sha256 = "sha256-9cjH4hIIxB+Pv9+ck6xg8KmfM8jtVFKVQNGLYr2AnAM="; + }; + nativeBuildInputs = [ pkgs.pkg-config ]; + buildInputs = [ pkgs.libvirt CPANChanges TestPod TestPodCoverage XMLXPath ]; + perlPreHook = lib.optionalString stdenv.isi686 "export LD=$CC"; # fix undefined reference to `__stack_chk_fail_local' + meta = { + broken = stdenv.isDarwin; # never built on Hydra https://hydra.nixos.org/job/nixpkgs/staging-next/perl534Packages.SysVirt.x86_64-darwin + }; + }; + + TAPParserSourceHandlerpgTAP = buildPerlModule { + pname = "TAP-Parser-SourceHandler-pgTAP"; + version = "3.35"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DW/DWHEELER/TAP-Parser-SourceHandler-pgTAP-3.35.tar.gz"; + sha256 = "1655337l1cyd7q62007wrk87q2gbbwfq9xjy1wgx3hyflxpkkvl4"; + }; + doCheck = !stdenv.isDarwin; + meta = { + description = "Stream TAP from pgTAP test scripts"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TaskCatalystTutorial = buildPerlPackage { + pname = "Task-Catalyst-Tutorial"; + version = "0.06"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MR/MRAMBERG/Task-Catalyst-Tutorial-0.06.tar.gz"; + sha256 = "75b1b2d96155647842587146cefd0de30943b85195e8e3eca51e0f0b8642d61e"; + }; + propagatedBuildInputs = [ CatalystAuthenticationStoreDBIxClass CatalystControllerHTMLFormFu CatalystDevel CatalystManual CatalystPluginAuthorizationACL CatalystPluginAuthorizationRoles CatalystPluginSessionStateCookie CatalystPluginSessionStoreFastMmap CatalystPluginStackTrace CatalystViewTT ]; + meta = { + description = "Everything you need to follow the Catalyst Tutorial"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + doCheck = false; /* fails with 'open3: exec of .. perl .. failed: Argument list too long at .../TAP/Parser/Iterator/Process.pm line 165.' */ + }; + + TaskFreecellSolverTesting = buildPerlModule { + pname = "Task-FreecellSolver-Testing"; + version = "0.0.12"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/Task-FreecellSolver-Testing-0.0.12.tar.gz"; + sha256 = "19wkz5ii8h90i9gmh692kvw9rz7k9bmpi53pw331fm0jmsvi069x"; + }; + buildInputs = [ CodeTidyAll TestDataSplit TestDifferences TestPerlTidy TestRunPluginTrimDisplayedFilenames TestRunValgrind TestTrailingSpace TestTrap ]; + propagatedBuildInputs = [ EnvPath FileWhich GamesSolitaireVerify InlineC ListMoreUtils MooX StringShellQuote TaskTestRunAllPlugins TemplateToolkit YAMLLibYAML ]; + meta = { + description = "Install the CPAN dependencies of the Freecell Solver test suite"; + license = lib.licenses.mit; + }; + }; + + TaskPlack = buildPerlModule { + pname = "Task-Plack"; + version = "0.28"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIYAGAWA/Task-Plack-0.28.tar.gz"; + sha256 = "0ajwkyr9nwn11afi6fz6kx4bi7a3p8awjsldmsakz3sl0s42pmbr"; + }; + propagatedBuildInputs = [ CGICompile CGIEmulatePSGI CGIPSGI Corona FCGI FCGIClient FCGIProcManager HTTPServerSimplePSGI IOHandleUtil NetFastCGI PSGI PlackAppProxy PlackMiddlewareAuthDigest PlackMiddlewareConsoleLogger PlackMiddlewareDebug PlackMiddlewareDeflater PlackMiddlewareHeader PlackMiddlewareReverseProxy PlackMiddlewareSession Starlet Starman Twiggy ]; + buildInputs = [ ModuleBuildTiny TestSharedFork ]; + }; + + TaskTestRunAllPlugins = buildPerlModule { + pname = "Task-Test-Run-AllPlugins"; + version = "0.0106"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/Task-Test-Run-AllPlugins-0.0106.tar.gz"; + sha256 = "0y6fgldb59mc96lkghmd8n0gdbqaal6hz0cqqadna1jqi3q0p38v"; + }; + buildInputs = [ TestRun TestRunCmdLine TestRunPluginAlternateInterpreters TestRunPluginBreakOnFailure TestRunPluginColorFileVerdicts TestRunPluginColorSummary TestRunPluginTrimDisplayedFilenames ]; + meta = { + homepage = "https://web-cpan.shlomifish.org/modules/Test-Run/"; + description = "Specifications for installing all the Test::Run"; + license = lib.licenses.mit; + }; + }; + + TaskWeaken = buildPerlPackage { + pname = "Task-Weaken"; + version = "1.06"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Task-Weaken-1.06.tar.gz"; + sha256 = "1gk6rmnp4x50lzr0vfng41khf0f8yzxlm0pad1j69vxskpdzx0r3"; + }; + meta = { + description = "Ensure that a platform has weaken support"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TemplatePluginAutoformat = buildPerlPackage { + pname = "Template-Plugin-Autoformat"; + version = "2.77"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KA/KARMAN/Template-Plugin-Autoformat-2.77.tar.gz"; + sha256 = "bddfb4919f0abb2a2be7a9665333e0d4e098032f0e383dbaf04c4d896c7486ed"; + }; + propagatedBuildInputs = [ TemplateToolkit TextAutoformat ]; + meta = { + homepage = "https://github.com/karpet/template-plugin-autoformat"; + description = "TT plugin for Text::Autoformat"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TemplatePluginClass = buildPerlPackage { + pname = "Template-Plugin-Class"; + version = "0.14"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RC/RCLAMP/Template-Plugin-Class-0.14.tar.gz"; + sha256 = "1hq7jy6zg1iaslsyi05afz0i944y9jnv3nb4krkxjfmzwy5gw106"; + }; + propagatedBuildInputs = [ TemplateToolkit ]; + }; + + TemplatePluginIOAll = buildPerlPackage { + pname = "Template-Plugin-IO-All"; + version = "0.01"; + src = fetchurl { + url = "mirror://cpan/authors/id/X/XE/XERN/Template-Plugin-IO-All-0.01.tar.gz"; + sha256 = "1f7445422a21932e09bbef935766e0af6b7cceb088e9d8e030cd7a84bcdc5ee4"; + }; + propagatedBuildInputs = [ IOAll TemplateToolkit ]; + meta = { + maintainers = with maintainers; [ eelco ]; + description = "Perl Template Toolkit Plugin for IO::All"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TemplatePluginJavaScript = buildPerlPackage { + pname = "Template-Plugin-JavaScript"; + version = "0.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIYAGAWA/Template-Plugin-JavaScript-0.02.tar.gz"; + sha256 = "1mqqqs0dhfr6bp1305j9ns05q4pq1n3f561l6p8848k5ml3dh87a"; + }; + propagatedBuildInputs = [ TemplateToolkit ]; + }; + + TemplatePluginJSONEscape = buildPerlPackage { + pname = "Template-Plugin-JSON-Escape"; + version = "0.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NA/NANTO/Template-Plugin-JSON-Escape-0.02.tar.gz"; + sha256 = "051a8b1d3bc601d58fc51e246067d36450cfe970278a0456e8ab61940f13cd86"; + }; + propagatedBuildInputs = [ JSON TemplateToolkit ]; + }; + + TemplateTimer = buildPerlPackage { + pname = "Template-Timer"; + version = "1.00"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PETDANCE/Template-Timer-1.00.tar.gz"; + sha256 = "1d3pbcx1kz73ncg8s8lx3ifwphz838qy0m40gdar7790cnrlqcdp"; + }; + propagatedBuildInputs = [ TemplateToolkit ]; + meta = { + description = "Rudimentary profiling for Template Toolkit"; + license = with lib.licenses; [ artistic2 gpl3 ]; + }; + }; + + TemplateTiny = buildPerlPackage { + pname = "Template-Tiny"; + version = "1.12"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AD/ADAMK/Template-Tiny-1.12.tar.gz"; + sha256 = "073e062c630b51dfb725cd6485a329155cb72d5c596e8cb698eb67c4566f0a4a"; + }; + meta = { + description = "Template Toolkit reimplemented in as little code as possible"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TemplateToolkit = buildPerlPackage { + pname = "Template-Toolkit"; + version = "3.009"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AT/ATOOMIC/Template-Toolkit-3.009.tar.gz"; + sha256 = "1dpmy62x1yshf7kwslj85sc8bcgw1m30dh0szmfrp99pysxj7bfn"; + }; + doCheck = !stdenv.isDarwin; + meta = { + description = "Comprehensive template processing system"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + propagatedBuildInputs = [ AppConfig ]; + buildInputs = [ CGI TestLeakTrace ]; + }; + + TemplateGD = buildPerlPackage { + pname = "Template-GD"; + version = "2.66"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AB/ABW/Template-GD-2.66.tar.gz"; + sha256 = "98523c8192f2e8184042e5a2e172bd767ac289dd2e480f35f680dce32160905b"; + }; + propagatedBuildInputs = [ GD TemplateToolkit ]; + meta = { + description = "GD plugin(s) for the Template Toolkit"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TermEncoding = buildPerlPackage { + pname = "Term-Encoding"; + version = "0.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIYAGAWA/Term-Encoding-0.03.tar.gz"; + sha256 = "95ba9687d735d25a3cbe64508d7894f009c7fa2a1726c3e786e9e21da2251d0b"; + }; + meta = { + description = "Detect encoding of the current terminal"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TermProgressBar = buildPerlPackage { + pname = "Term-ProgressBar"; + version = "2.22"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MANWAR/Term-ProgressBar-2.22.tar.gz"; + sha256 = "2642ecca5b0b038c14812bcad3a9611ff7911dc59c9104d220797f837a880c49"; + }; + buildInputs = [ CaptureTiny TestException TestWarnings ]; + propagatedBuildInputs = [ ClassMethodMaker TermReadKey ]; + meta = { + description = "Provide a progress meter on a standard terminal"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TermProgressBarQuiet = buildPerlPackage { + pname = "Term-ProgressBar-Quiet"; + version = "0.31"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LB/LBROCARD/Term-ProgressBar-Quiet-0.31.tar.gz"; + sha256 = "25675292f588bc29d32e710cf3667da9a2a1751e139801770a9fdb18cd2184a6"; + }; + propagatedBuildInputs = [ IOInteractive TermProgressBar ]; + meta = { + description = ""; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ TestMockObject ]; + }; + + TermProgressBarSimple = buildPerlPackage { + pname = "Term-ProgressBar-Simple"; + version = "0.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/EV/EVDB/Term-ProgressBar-Simple-0.03.tar.gz"; + sha256 = "a20db3c67d5bdfd0c1fab392c6d1c26880a7ee843af602af4f9b53a7043579a6"; + }; + propagatedBuildInputs = [ TermProgressBarQuiet ]; + buildInputs = [ TestMockObject ]; + }; + + TermReadKey = let + cross = stdenv.hostPlatform != stdenv.buildPlatform; + in buildPerlPackage { + pname = "TermReadKey"; + version = "2.38"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JS/JSTOWE/TermReadKey-2.38.tar.gz"; + sha256 = "143jlibah1g14bym7sj3gphvqkpj1w4vn7sqc4vc62jpviw5hr2s"; + }; + + # use native libraries from the host when running build commands + postConfigure = lib.optionalString cross (let + host_perl = buildPerl; + host_self = buildPerl.pkgs.TermReadKey; + perl_lib = "${host_perl}/lib/perl5/${host_perl.version}"; + self_lib = "${host_self}/lib/perl5/site_perl/${host_perl.version}"; + in '' + sed -ie 's|"-I$(INST_ARCHLIB)"|"-I${perl_lib}" "-I${self_lib}"|g' Makefile + ''); + + # TermReadKey uses itself in the build process + nativeBuildInputs = lib.optionals cross [ + buildPerl.pkgs.TermReadKey + ]; + }; + + TermReadLineGnu = buildPerlPackage { + pname = "Term-ReadLine-Gnu"; + version = "1.36"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HA/HAYASHI/Term-ReadLine-Gnu-1.36.tar.gz"; + sha256 = "9a08f7a4013c9b865541c10dbba1210779eb9128b961250b746d26702bab6925"; + }; + buildInputs = [ pkgs.readline pkgs.ncurses ]; + NIX_CFLAGS_LINK = "-lreadline -lncursesw"; + + # For some crazy reason Makefile.PL doesn't generate a Makefile if + # AUTOMATED_TESTING is set. + AUTOMATED_TESTING = false; + + # Makefile.PL looks for ncurses in Glibc's prefix. + preConfigure = + '' + substituteInPlace Makefile.PL --replace '$Config{libpth}' \ + "'${pkgs.ncurses.out}/lib'" + ''; + + # Tests don't work because they require /dev/tty. + doCheck = false; + + meta = { + homepage = "https://sourceforge.net/projects/perl-trg/"; + description = "Perl extension for the GNU Readline/History Library"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TermReadLineTTYtter = buildPerlPackage { + pname = "Term-ReadLine-TTYtter"; + version = "1.4"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CK/CKAISER/Term-ReadLine-TTYtter-1.4.tar.gz"; + sha256 = "14xcqhg1vrwgv65nd2z8xzn0wgb18i17pzkkh8m15cp1rqrk2dxc"; + }; + + outputs = [ "out" ]; + + meta = { + description = "a modified version of T::RL::Perl with several new nonstandard features specific to TTYtter"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TermReadPassword = buildPerlPackage rec { + pname = "Term-ReadPassword"; + version = "0.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PH/PHOENIX/${pname}-${version}.tar.gz"; + sha256 = "08s3zdqbr01qf4h8ryc900qq1cjcdlyy2dq0gppzzy9mbcs6da71"; + }; + + outputs = [ "out" ]; + + meta = { + description = "This module lets you ask the user for a password in the traditional way, from the keyboard, without echoing"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TermShell = buildPerlModule { + pname = "Term-Shell"; + version = "0.12"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/Term-Shell-0.12.tar.gz"; + sha256 = "1mrx7g74qvkdis7x7zq1zs0b7q2fsz59g4hxvg140r8bq1wzav3x"; + }; + propagatedBuildInputs = [ TermReadKey TextAutoformat ]; + meta = with lib; { + homepage = "https://metacpan.org/release/Term-Shell"; + description = "A simple command-line shell framework"; + license = with licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TermShellUI = buildPerlPackage { + pname = "Term-ShellUI"; + version = "0.92"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BR/BRONSON/Term-ShellUI-0.92.tar.gz"; + sha256 = "3279c01c76227335eeff09032a40f4b02b285151b3576c04cacd15be05942bdb"; + }; + }; + + TermSizeAny = buildPerlPackage { + pname = "Term-Size-Any"; + version = "0.002"; + src = fetchurl { + url = "mirror://cpan/authors/id/F/FE/FERREIRA/Term-Size-Any-0.002.tar.gz"; + sha256 = "64fa5fdb1ae3a823134aaa95aec75354bc17bdd9ca12ba0a7ae34a7e51b3ded2"; + }; + propagatedBuildInputs = [ DevelHide TermSizePerl ]; + meta = { + description = "Retrieve terminal size"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TermSizePerl = buildPerlPackage { + pname = "Term-Size-Perl"; + version = "0.031"; + src = fetchurl { + url = "mirror://cpan/authors/id/F/FE/FERREIRA/Term-Size-Perl-0.031.tar.gz"; + sha256 = "ae9a6746cb1b305ddc8f8d8ca46878552b9c1123628971e13a275183822f209e"; + }; + meta = { + description = "Perl extension for retrieving terminal size (Perl version)"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TermTable = buildPerlPackage { + pname = "Term-Table"; + version = "0.015"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/EX/EXODIST/Term-Table-0.015.tar.gz"; + sha256 = "d8a18b2801f91f0e5d747147ce786964a76f91d18568652908a3dc06a9b948d5"; + }; + propagatedBuildInputs = [ Importer ]; + meta = { + description = "Format a header and rows into a table"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TermSk = buildPerlPackage { + pname = "Term-Sk"; + version = "0.18"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KE/KEICHNER/Term-Sk-0.18.tar.gz"; + sha256 = "f2e491796061205b08688802b287792d7d803b08972339fb1070ba05612af885"; + }; + meta = { + description = "Perl extension for displaying a progress indicator on a terminal."; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TermUI = buildPerlPackage { + pname = "Term-UI"; + version = "0.46"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BI/BINGOS/Term-UI-0.46.tar.gz"; + sha256 = "19p92za5cx1v7g57pg993amprcvm1az3pp7y9g5b1aplsy06r54i"; + }; + propagatedBuildInputs = [ LogMessageSimple ]; + meta = { + description = "User interfaces via Term::ReadLine made easy"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TermVT102 = buildPerlPackage { + pname = "Term-VT102"; + version = "0.91"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AJ/AJWOOD/Term-VT102-0.91.tar.gz"; + sha256 = "f954e0310941d45c0fc3eb4a40f5d3a00d68119e277d303a1e6af11ded6fbd94"; + }; + meta = { + }; + }; + + TermVT102Boundless = buildPerlPackage { + pname = "Term-VT102-Boundless"; + version = "0.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/F/FB/FBARRIOS/Term-VT102-Boundless-0.05.tar.gz"; + sha256 = "e1ded85ae3d76b59c03b8697f4a6cb01ae31bd62a9354f5bb7d18f9e927b485f"; + }; + propagatedBuildInputs = [ TermVT102 ]; + }; + + TermAnimation = buildPerlPackage { + pname = "Term-Animation"; + version = "2.6"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KB/KBAUCOM/Term-Animation-2.6.tar.gz"; + sha256 = "7d5c3c2d4f9b657a8b1dce7f5e2cbbe02ada2e97c72f3a0304bf3c99d084b045"; + }; + propagatedBuildInputs = [ Curses ]; + meta = { + description = "ASCII sprite animation framework"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Test2Harness = buildPerlPackage { + pname = "Test2-Harness"; + version = "1.000042"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/EX/EXODIST/Test2-Harness-1.000042.tar.gz"; + sha256 = "aaf231a68af1a6ffd6a11188875fcf572e373e43c8285945227b9d687b43db2d"; + }; + + checkPhase = '' + patchShebangs ./t ./scripts/yath + ./scripts/yath test -j $NIX_BUILD_CORES + ''; + + propagatedBuildInputs = [ DataUUID Importer LongJump ScopeGuard TermTable Test2PluginMemUsage Test2PluginUUID Test2Suite gotofile ]; + meta = { + description = "A new and improved test harness with better Test2 integration"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + broken = stdenv.isDarwin; # never built on Hydra https://hydra.nixos.org/job/nixpkgs/staging-next/perl534Packages.Test2Harness.x86_64-darwin + }; + }; + + Test2PluginMemUsage = buildPerlPackage { + pname = "Test2-Plugin-MemUsage"; + version = "0.002003"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/EX/EXODIST/Test2-Plugin-MemUsage-0.002003.tar.gz"; + sha256 = "5e0662d5a823ae081641f5ce82843111eec1831cd31f883a6c6de54afdf87c25"; + }; + buildInputs = [ Test2Suite ]; + meta = { + description = "Collect and display memory usage information"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Test2PluginUUID = buildPerlPackage { + pname = "Test2-Plugin-UUID"; + version = "0.002001"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/EX/EXODIST/Test2-Plugin-UUID-0.002001.tar.gz"; + sha256 = "4c6c8d484d7153d8779dc155a992b203095b5c5aa1cfb1ee8bcedcd0601878c9"; + }; + buildInputs = [ Test2Suite ]; + propagatedBuildInputs = [ DataUUID ]; + meta = { + description = "Use REAL UUIDs in Test2"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Test2PluginNoWarnings = buildPerlPackage { + pname = "Test2-Plugin-NoWarnings"; + version = "0.09"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DR/DROLSKY/Test2-Plugin-NoWarnings-0.09.tar.gz"; + sha256 = "0x7vy9r5gyxqg3qy966frj8ywkckkv7mc83xy4mkdvrf0h0dhgdy"; + }; + buildInputs = [ IPCRun3 Test2Suite ]; + meta = { + description = "Fail if tests warn"; + license = with lib.licenses; [ artistic2 ]; + }; + propagatedBuildInputs = [ TestSimple13 ]; + }; + + Test2Suite = buildPerlPackage { + pname = "Test2-Suite"; + version = "0.000138"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/EX/EXODIST/Test2-Suite-0.000138.tar.gz"; + sha256 = "0x887d8y657k7072k5f5ly36f067ldafm27xbd9lh5nirvr2vxqc"; + }; + propagatedBuildInputs = [ ModulePluggable ScopeGuard SubInfo TermTable TestSimple13 ]; + meta = { + description = "Distribution with a rich set of tools built upon the Test2 framework"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestAbortable = buildPerlPackage { + pname = "Test-Abortable"; + version = "0.002"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Test-Abortable-0.002.tar.gz"; + sha256 = "0v97y31j56f4mxw0vxyjbdprq4951h4wcdh4acnfm63np7wvg44p"; + }; + propagatedBuildInputs = [ SubExporter ]; + buildInputs = [ TestNeeds ]; + meta = { + description = "subtests that you can die your way out of ... but survive"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/rjbs/Test-Abortable"; + }; + }; + + TestAssert = buildPerlModule { + pname = "Test-Assert"; + version = "0.0504"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DE/DEXTER/Test-Assert-0.0504.tar.gz"; + sha256 = "194bzflmzc0cw5727kznbj1zwzj7gnj7nx1643zk2hshdjlnv8yg"; + }; + buildInputs = [ ClassInspector TestUnitLite ]; + propagatedBuildInputs = [ ExceptionBase constantboolean ]; + }; + + TestAssertions = buildPerlPackage { + pname = "Test-Assertions"; + version = "1.054"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BB/BBC/Test-Assertions-1.054.tar.gz"; + sha256 = "10026w4r3yv6k3vc6cby7d61mxddlqh0ls6z39c82f17awfy9p7w"; + }; + propagatedBuildInputs = [ LogTrace ]; + }; + + TestAggregate = buildPerlModule { + pname = "Test-Aggregate"; + version = "0.375"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RW/RWSTAUNER/Test-Aggregate-0.375.tar.gz"; + sha256 = "c6cc0abfd0d4fce85371acca93ec245381841d32b4caa2d6475e4bc8130427d1"; + }; + buildInputs = [ TestMost TestNoWarnings TestTrap ]; + meta = { + description = "Aggregate C<*.t> tests to make them run faster"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + broken = true; # This module only works with Test::More version < 1.3, but you have 1.302133 + }; + }; + + + TestBase = buildPerlPackage { + pname = "Test-Base"; + version = "0.89"; + src = fetchurl { + url = "mirror://cpan/authors/id/I/IN/INGY/Test-Base-0.89.tar.gz"; + sha256 = "056hibgg3i2b89mwr76vyxi6ayb3hqjqcwicvn3s5lximsma3517"; + }; + propagatedBuildInputs = [ Spiffy ]; + buildInputs = [ AlgorithmDiff TextDiff ]; + }; + + TestBits = buildPerlPackage { + pname = "Test-Bits"; + version = "0.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DR/DROLSKY/Test-Bits-0.02.tar.gz"; + sha256 = "1hqbvqlkj3k9ys4zq3f1fl1y6crni8r0ynan673f49rs91b6z0m9"; + }; + propagatedBuildInputs = [ ListAllUtils ]; + buildInputs = [ TestFatal ]; + meta = { + description = "Provides a bits_is() subroutine for testing binary data"; + license = with lib.licenses; [ artistic2 ]; + }; + }; + + TestCheckDeps = buildPerlPackage { + pname = "Test-CheckDeps"; + version = "0.010"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LE/LEONT/Test-CheckDeps-0.010.tar.gz"; + sha256 = "1vjinlixxdx6gfcw8y1dw2rla8bfhi8nmgcqr3nffc7kqskcrz36"; + }; + propagatedBuildInputs = [ CPANMetaCheck ]; + meta = { + description = "Check for presence of dependencies"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestClass = buildPerlPackage { + pname = "Test-Class"; + version = "0.50"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Test-Class-0.50.tar.gz"; + sha256 = "099154ed8caf3ff97c71237fab952264ac1c03d9270737a56071cabe65991350"; + }; + buildInputs = [ TestException ]; + propagatedBuildInputs = [ MROCompat ModuleRuntime TryTiny ]; + meta = { + description = "Easily create test classes in an xUnit/JUnit style"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestClassMost = buildPerlModule { + pname = "Test-Class-Most"; + version = "0.08"; + src = fetchurl { + url = "mirror://cpan/authors/id/O/OV/OVID/Test-Class-Most-0.08.tar.gz"; + sha256 = "1zvx9hil0mg0pnb8xfa4m0xgjpvh8s5gnbyprq3xwpdsdgcdwk33"; + }; + buildInputs = [ TestClass TestDeep TestDifferences TestException TestMost TestWarn ]; + meta = { + description = "Test Classes the easy way"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestCleanNamespaces = buildPerlPackage { + pname = "Test-CleanNamespaces"; + version = "0.24"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Test-CleanNamespaces-0.24.tar.gz"; + sha256 = "338d5569e8e89a654935f843ec0bc84aaa486fe8dd1898fb9cab3eccecd5327a"; + }; + buildInputs = [ Filepushd Moo Mouse RoleTiny SubExporter TestDeep TestNeeds TestWarnings namespaceclean ]; + propagatedBuildInputs = [ PackageStash SubIdentify ]; + meta = { + homepage = "https://github.com/karenetheridge/Test-CleanNamespaces"; + description = "Check for uncleaned imports"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestCmd = buildPerlPackage { + pname = "Test-Cmd"; + version = "1.09"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NE/NEILB/Test-Cmd-1.09.tar.gz"; + sha256 = "114nfafwfxxn7kig265b7lg0znb5ybvc282sjjwf14g7vpn20cyg"; + }; + doCheck = false; /* test fails */ + meta = { + description = "Perl module for portable testing of commands and scripts"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/neilb/Test-Cmd"; + }; + }; + + TestCommand = buildPerlModule { + pname = "Test-Command"; + version = "0.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DANBOO/Test-Command-0.11.tar.gz"; + sha256 = "0cwm3c4d49mdrbm6vgh78b3x8mk730l0zg8i7xb9z8bkx9pzr8r8"; + }; + meta = { + homepage = "https://github.com/danboo/perl-test-command"; + description = "Test routines for external commands "; + license = with lib.licenses; [ artistic1 gpl1 ]; + }; + }; + + TestCompile = buildPerlModule { + pname = "Test-Compile"; + version = "2.4.1"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/EG/EGILES/Test-Compile-v2.4.1.tar.gz"; + sha256 = "56a7a3459db5de0f92419029cf1b4d51c44dd02d4690cff3c4eedf666f6d8d46"; + }; + propagatedBuildInputs = [ UNIVERSALrequire ]; + meta = { + description = "Check whether Perl files compile correctly"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestCPANMeta = buildPerlPackage { + pname = "Test-CPAN-Meta"; + version = "0.25"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BA/BARBIE/Test-CPAN-Meta-0.25.tar.gz"; + sha256 = "f55b4f9cf6bc396d0fe8027267685cb2ac4affce897d0967a317fac6db5a8db5"; + }; + meta = { + description = "Validate your CPAN META.yml files"; + license = lib.licenses.artistic2; + }; + }; + + TestCPANMetaJSON = buildPerlPackage { + pname = "Test-CPAN-Meta-JSON"; + version = "0.16"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BA/BARBIE/Test-CPAN-Meta-JSON-0.16.tar.gz"; + sha256 = "1jg9ka50ixwq083wd4k12rhdjq87w0ihb34gd8jjn7gvvyd51b37"; + }; + propagatedBuildInputs = [ JSON ]; + meta = { + description = "Validate your CPAN META.json files"; + license = with lib.licenses; [ artistic2 ]; + }; + }; + + TestDataSplit = buildPerlModule { + pname = "Test-Data-Split"; + version = "0.2.2"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/Test-Data-Split-0.2.2.tar.gz"; + sha256 = "08l0h9xkikj6ggm24dark2hp9wffypanjdbha3gdfc5dmn83h275"; + }; + buildInputs = [ TestDifferences ]; + propagatedBuildInputs = [ IOAll ListMoreUtils MooX MooXlate ]; + meta = { + description = "Split data-driven tests into several test scripts"; + license = lib.licenses.mit; + }; + }; + + TestDeep = buildPerlPackage { + pname = "Test-Deep"; + version = "1.130"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Test-Deep-1.130.tar.gz"; + sha256 = "0mkw18q5agr30djxr1y68rcfw8aq20ws872hmv88f9gnynag8r20"; + }; + meta = { + }; + }; + + TestDeepJSON = buildPerlModule { + pname = "Test-Deep-JSON"; + version = "0.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MO/MOTEMEN/Test-Deep-JSON-0.05.tar.gz"; + sha256 = "aec8571b9e31b7301e26132c132c6800952dc089c645d76954a3ad1a6b350858"; + }; + buildInputs = [ ModuleBuildTiny ]; + propagatedBuildInputs = [ ExporterLite JSONMaybeXS TestDeep ]; + meta = { + homepage = "https://github.com/motemen/perl5-Test-Deep-JSON"; + description = "Compare JSON with Test::Deep"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestDeepType = buildPerlPackage { + pname = "Test-Deep-Type"; + version = "0.008"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Test-Deep-Type-0.008.tar.gz"; + sha256 = "6e7bea1a2f1e75319a22d1c51996ebac50ca5e3663d1bc223130887e62e959f1"; + }; + buildInputs = [ TestFatal TestNeeds ]; + propagatedBuildInputs = [ TestDeep TryTiny ]; + meta = { + homepage = "https://github.com/karenetheridge/Test-Deep-Type"; + description = "A Test::Deep plugin for validating type constraints"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestDir = buildPerlPackage { + pname = "Test-Dir"; + version = "1.16"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MT/MTHURN/Test-Dir-1.16.tar.gz"; + sha256 = "7332b323913eb6a2684d094755196304b2f8606f70eaab913654ca91f273eac2"; + }; + meta = { + description = "Test directory attributes"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestDifferences = buildPerlPackage { + pname = "Test-Differences"; + version = "0.67"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DC/DCANTRELL/Test-Differences-0.67.tar.gz"; + sha256 = "c88dbbb48b934b069284874f33abbaaa438aa31204aa3fa73bfc2f4aeac878da"; + }; + propagatedBuildInputs = [ CaptureTiny TextDiff ]; + meta = { + description = "Test strings and data structures and show differences if not ok"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestDistManifest = buildPerlModule { + pname = "Test-DistManifest"; + version = "1.014"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Test-DistManifest-1.014.tar.gz"; + sha256 = "3d26c20df42628981cbfcfa5b1ca028c6ceadb344c1dcf97a25ad6a88b73d7c5"; + }; + buildInputs = [ ModuleBuildTiny ]; + propagatedBuildInputs = [ ModuleManifest ]; + meta = { + description = "Author test that validates a package MANIFEST"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestEOL = buildPerlPackage { + pname = "Test-EOL"; + version = "2.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Test-EOL-2.02.tar.gz"; + sha256 = "1i5g40bx72fh0nszxh75v042bp66f4jv3xva4bi7z017zgbrjc98"; + }; + meta = { + description = "Check the correct line endings in your project"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestException = buildPerlPackage { + pname = "Test-Exception"; + version = "0.43"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/EX/EXODIST/Test-Exception-0.43.tar.gz"; + sha256 = "0cxm7s4bg0xpxa6l6996a6iq3brr4j7p4hssnkc6dxv4fzq16sqm"; + }; + propagatedBuildInputs = [ SubUplevel ]; + }; + + TestExpect = buildPerlPackage { + pname = "Test-Expect"; + version = "0.34"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BP/BPS/Test-Expect-0.34.tar.gz"; + sha256 = "2628fcecdda5f649bd25323f646b96a1a07e4557cadcb327c9bad4dc41bbb999"; + }; + propagatedBuildInputs = [ ClassAccessorChained ExpectSimple ]; + meta = { + description = "Automated driving and testing of terminal-based programs"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestFailWarnings = buildPerlPackage { + pname = "Test-FailWarnings"; + version = "0.008"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DAGOLDEN/Test-FailWarnings-0.008.tar.gz"; + sha256 = "0vx9chcp5x8m0chq574p9fnfckh5gl94j7904rh9v17n568fyd6s"; + }; + buildInputs = [ CaptureTiny ]; + meta = { + description = "Add test failures if warnings are caught"; + license = lib.licenses.asl20; + }; + }; + + TestFakeHTTPD = buildPerlModule { + pname = "Test-Fake-HTTPD"; + version = "0.09"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MASAKI/Test-Fake-HTTPD-0.09.tar.gz"; + sha256 = "07iddzxkgxk0ym2gz3scmrw9gmnk755qwksmpvlj42d9cyq9rxql"; + }; + propagatedBuildInputs = [ HTTPDaemon Plack ]; + buildInputs = [ LWP ModuleBuildTiny TestException TestSharedFork TestTCP TestUseAllModules ]; + meta = { + description = "a fake HTTP server"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/masaki/Test-Fake-HTTPD"; + }; + }; + + TestFatal = buildPerlPackage { + pname = "Test-Fatal"; + version = "0.016"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Test-Fatal-0.016.tar.gz"; + sha256 = "7283d430f2ba2030b8cd979ae3039d3f1b2ec3dde1a11ca6ae09f992a66f788f"; + }; + propagatedBuildInputs = [ TryTiny ]; + meta = { + homepage = "https://github.com/rjbs/Test-Fatal"; + description = "Incredibly simple helpers for testing code with exceptions"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestFile = buildPerlPackage { + pname = "Test-File"; + version = "1.443"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BD/BDFOY/Test-File-1.443.tar.gz"; + sha256 = "61b4a6ab8f617c8c7b5975164cf619468dc304b6baaaea3527829286fa58bcd5"; + }; + buildInputs = [ Testutf8 ]; + meta = { + description = "Check file attributes"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestFileContents = buildPerlModule { + pname = "Test-File-Contents"; + version = "0.23"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DW/DWHEELER/Test-File-Contents-0.23.tar.gz"; + sha256 = "cd6fadfb910b34b4b53991ff231dad99929ca8850abec3ad0e2810c4bd7b1f3d"; + }; + propagatedBuildInputs = [ TextDiff ]; + meta = { + description = "Test routines for examining the contents of files"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestFileShareDir = buildPerlPackage { + pname = "Test-File-ShareDir"; + version = "1.001002"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KE/KENTNL/Test-File-ShareDir-1.001002.tar.gz"; + sha256 = "b33647cbb4b2f2fcfbde4f8bb4383d0ac95c2f89c4c5770eb691f1643a337aad"; + }; + buildInputs = [ TestFatal ]; + propagatedBuildInputs = [ ClassTiny FileCopyRecursive FileShareDir PathTiny ScopeGuard ]; + meta = { + homepage = "https://github.com/kentfredric/Test-File-ShareDir"; + description = "Create a Fake ShareDir for your modules for testing"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestFilename = buildPerlPackage { + pname = "Test-Filename"; + version = "0.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DAGOLDEN/Test-Filename-0.03.tar.gz"; + sha256 = "1gpw4mjw68gnby8s4cifvbz6g2923xsc189jkw9d27i8qv20qiba"; + }; + propagatedBuildInputs = [ PathTiny ]; + meta = { + description = "Portable filename comparison"; + license = with lib.licenses; [ asl20 ]; + }; + }; + + TestFork = buildPerlModule { + pname = "Test-Fork"; + version = "0.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MS/MSCHWERN/Test-Fork-0.02.tar.gz"; + sha256 = "0gnh8m81fdrwmzy1fix12grfq7sf7nn0gbf24zlap1gq4kxzpzpw"; + }; + meta = { + description = "test code which forks"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestHarnessStraps = buildPerlModule { + pname = "Test-Harness-Straps"; + version = "0.30"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MS/MSCHWERN/Test-Harness-Straps-0.30.tar.gz"; + sha256 = "8b00efaa35723c1a35c8c8f5fa46a99e4bc528dfa520352b54ac418ef6d1cfa8"; + }; + meta = { + description = "Detailed analysis of test results"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestHexDifferences = buildPerlPackage { + pname = "Test-HexDifferences"; + version = "1.001"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/ST/STEFFENW/Test-HexDifferences-1.001.tar.gz"; + sha256 = "18lh6shpfx567gjikrid4hixydgv1hi3mycl20qzq2j2vpn4afd6"; + }; + propagatedBuildInputs = [ SubExporter TextDiff ]; + buildInputs = [ TestDifferences TestNoWarnings ]; + meta = { + }; + }; + + TestHexString = buildPerlModule { + pname = "Test-HexString"; + version = "0.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PEVANS/Test-HexString-0.03.tar.gz"; + sha256 = "0h1zl2l1ljlcxsn0xvin9dwiymnhyhnfnxgzg3f9899g37f4qk3x"; + }; + meta = { + description = "test binary strings with hex dump diagnostics"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestIdentity = buildPerlModule { + pname = "Test-Identity"; + version = "0.01"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PEVANS/Test-Identity-0.01.tar.gz"; + sha256 = "08szivpqfwxnf6cfh0f0rfs4f7xbaxis3bra31l2c5gdk800a0ig"; + }; + meta = { + description = "assert the referential identity of a reference"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestHTTPServerSimple = buildPerlPackage { + pname = "Test-HTTP-Server-Simple"; + version = "0.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AL/ALEXMV/Test-HTTP-Server-Simple-0.11.tar.gz"; + sha256 = "85c97ebd4deb805291b17277032da48807228f24f89b1ce2fb3c09f7a896bb78"; + }; + propagatedBuildInputs = [ HTTPServerSimple ]; + meta = { + description = "Test::More functions for HTTP::Server::Simple"; + }; + }; + + TestJSON = buildPerlModule { + pname = "Test-JSON"; + version = "0.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/O/OV/OVID/Test-JSON-0.11.tar.gz"; + sha256 = "1cyp46w3q7dg89qkw31ik2h2a6mdx6pzdz2lmp8m0a61zjr8mh07"; + }; + propagatedBuildInputs = [ JSONAny ]; + buildInputs = [ TestDifferences ]; + }; + + TestKwalitee = buildPerlPackage { + pname = "Test-Kwalitee"; + version = "1.28"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Test-Kwalitee-1.28.tar.gz"; + sha256 = "18s3c8qfr3kmmyxmsn5la2zgbdsgpnkmscnl68i7fnavfpfnqlxl"; + }; + propagatedBuildInputs = [ ModuleCPANTSAnalyse ]; + buildInputs = [ CPANMetaCheck TestDeep TestWarnings ]; + meta = { + description = "Test the Kwalitee of a distribution before you release it"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/karenetheridge/Test-Kwalitee"; + }; + }; + + TestLWPUserAgent = buildPerlPackage { + pname = "Test-LWP-UserAgent"; + version = "0.034"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Test-LWP-UserAgent-0.034.tar.gz"; + sha256 = "1ybhl9zpxkz77d25h96kbgh16zy9f27n95p6j9jg52kvdg0r2lbp"; + }; + propagatedBuildInputs = [ LWP SafeIsa namespaceclean ]; + buildInputs = [ PathTiny Plack TestDeep TestFatal TestNeeds TestRequiresInternet TestWarnings ]; + meta = { + description = "A LWP::UserAgent suitable for simulating and testing network calls"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/karenetheridge/Test-LWP-UserAgent"; + broken = stdenv.isDarwin; # never built on Hydra https://hydra.nixos.org/job/nixpkgs/staging-next/perl534Packages.TestLWPUserAgent.x86_64-darwin + }; + }; + + TestLeakTrace = buildPerlPackage { + pname = "Test-LeakTrace"; + version = "0.16"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LE/LEEJO/Test-LeakTrace-0.16.tar.gz"; + sha256 = "00z4hcjra5nk700f3fgpy8fs036d7ry7glpn8g3wh7jzj7nrw22z"; + }; + meta = { + description = "Traces memory leaks"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestLectroTest = buildPerlPackage { + pname = "Test-LectroTest"; + version = "0.5001"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TM/TMOERTEL/Test-LectroTest-0.5001.tar.gz"; + sha256 = "0dfpkvn06499gczch4gfmdb05fdj82vlqy7cl6hz36l9jl6lyaxc"; + }; + meta = { + description = "Easy, automatic, specification-based tests"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestLoadAllModules = buildPerlPackage { + pname = "Test-LoadAllModules"; + version = "0.022"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KI/KITANO/Test-LoadAllModules-0.022.tar.gz"; + sha256 = "1zjwbqk1ns9m8srrhyj3i5zih976i4d2ibflh5s8lr10a1aiz1hv"; + }; + propagatedBuildInputs = [ ListMoreUtils ModulePluggable ]; + meta = { + description = "do use_ok for modules in search path"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestLongString = buildPerlPackage { + pname = "Test-LongString"; + version = "0.17"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RG/RGARCIA/Test-LongString-0.17.tar.gz"; + sha256 = "0kwp7rfr1i2amz4ckigkv13ah7jr30q6l5k4wk0vxl84myg39i5b"; + }; + }; + + TestMemoryCycle = buildPerlPackage { + pname = "Test-Memory-Cycle"; + version = "1.06"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PETDANCE/Test-Memory-Cycle-1.06.tar.gz"; + sha256 = "9d53ddfdc964cd8454cb0da4c695b6a3ae47b45839291c34cb9d8d1cfaab3202"; + }; + propagatedBuildInputs = [ DevelCycle PadWalker ]; + meta = { + description = "Verifies code hasn't left circular references"; + }; + }; + + TestMemoryGrowth = buildPerlModule { + pname = "Test-MemoryGrowth"; + version = "0.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PEVANS/Test-MemoryGrowth-0.04.tar.gz"; + sha256 = "1l1f7mwjyfgfbhad13p4wgavnb3mdjs6v3xr2m0rxm5ba8kqard0"; + }; + meta = { + description = "assert that code does not cause growth in memory usage"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + broken = stdenv.isDarwin; # never built on Hydra https://hydra.nixos.org/job/nixpkgs/staging-next/perl534Packages.TestMemoryGrowth.x86_64-darwin + }; + }; + + TestMetricsAny = buildPerlModule { + pname = "Test-Metrics-Any"; + version = "0.01"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PEVANS/Test-Metrics-Any-0.01.tar.gz"; + sha256 = "0s744lv997g1wr4i4vg1d7zpzjfw334hdy45215jf6xj9s6wh1i5"; + }; + propagatedBuildInputs = [ MetricsAny ]; + meta = { + description = "assert that code produces metrics via L<Metrics::Any>"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestMockClass = buildPerlModule { + pname = "Test-Mock-Class"; + version = "0.0303"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DE/DEXTER/Test-Mock-Class-0.0303.tar.gz"; + sha256 = "00pkfqcz7b34q1mvx15k46sbxs22zcrvrbv15rnbn2na57z54bnd"; + }; + buildInputs = [ ClassInspector TestAssert TestUnitLite ]; + propagatedBuildInputs = [ FatalException Moose namespaceclean ]; + meta = with lib; { + description = "Simulating other classes"; + license = licenses.lgpl2Plus; + }; + }; + + TestMockGuard = buildPerlModule { + pname = "Test-Mock-Guard"; + version = "0.10"; + src = fetchurl { + url = "mirror://cpan/authors/id/X/XA/XAICRON/Test-Mock-Guard-0.10.tar.gz"; + sha256 = "7f228a63f8d6ceb92aa784080a13e85073121b2835eca06d794f9709950dbd3d"; + }; + propagatedBuildInputs = [ ClassLoad ]; + meta = { + homepage = "https://github.com/zigorou/p5-test-mock-guard"; + description = "Simple mock test library using RAII"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestMockModule = buildPerlModule { + pname = "Test-MockModule"; + version = "0.175.0"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GF/GFRANKS/Test-MockModule-v0.175.0.tar.gz"; + sha256 = "1zpf8p04and7jj33pc919g2pfg0scaqwqq1cnk8wx0nx2gbq9ch7"; + }; + propagatedBuildInputs = [ SUPER ]; + buildInputs = [ TestWarnings ]; + }; + + SUPER = buildPerlModule { + pname = "SUPER"; + version = "1.20190531"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CH/CHROMATIC/SUPER-1.20190531.tar.gz"; + sha256 = "685d1ee76e7f0e9006942923bf7df8b11c107132992917593dcf7397d417d39a"; + }; + propagatedBuildInputs = [ SubIdentify ]; + meta = { + description = "Control superclass method dispatch"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + + TestMockObject = buildPerlPackage { + pname = "Test-MockObject"; + version = "1.20200122"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CH/CHROMATIC/Test-MockObject-1.20200122.tar.gz"; + sha256 = "2b7f80da87f5a6fe0360d9ee521051053017442c3a26e85db68dfac9f8307623"; + }; + buildInputs = [ TestException TestWarn ]; + propagatedBuildInputs = [ UNIVERSALcan UNIVERSALisa ]; + meta = { + description = "Perl extension for emulating troublesome interfaces"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestMockTime = buildPerlPackage { + pname = "Test-MockTime"; + version = "0.17"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DD/DDICK/Test-MockTime-0.17.tar.gz"; + sha256 = "1y820qsq7yf7r6smy5c6f0mpf2cis2q24vwmpim1svv0n8cf2qrk"; + }; + }; + + TestMockTimeHiRes = buildPerlModule { + pname = "Test-MockTime-HiRes"; + version = "0.08"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TA/TARAO/Test-MockTime-HiRes-0.08.tar.gz"; + sha256 = "1hfykcjrls6ywgbd49w29c7apj3nq4wlyx7jzpd2glwmz2pgfjaz"; + }; + buildInputs = [ AnyEvent ModuleBuildTiny TestClass TestMockTime TestRequires ]; + meta = { + description = "Replaces actual time with simulated high resolution time"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/tarao/perl5-Test-MockTime-HiRes"; + }; + }; + + TestMojibake = buildPerlPackage { + pname = "Test-Mojibake"; + version = "1.3"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SY/SYP/Test-Mojibake-1.3.tar.gz"; + sha256 = "0cqvbwddgh0pfzmh989gkysi9apqj7dp7jkxfa428db9kgzpbzlg"; + }; + meta = { + homepage = "https://github.com/creaktive/Test-Mojibake"; + description = "Check your source for encoding misbehavior"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestMoreUTF8 = buildPerlPackage { + pname = "Test-More-UTF8"; + version = "0.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MO/MONS/Test-More-UTF8-0.05.tar.gz"; + sha256 = "016fs77lmw8xxrcnapvp6wq4hjwgsdfi3l9ylpxgxkcpdarw9wdr"; + }; + meta = { + description = "Enhancing Test::More for UTF8-based projects"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestMost = buildPerlPackage { + pname = "Test-Most"; + version = "0.37"; + src = fetchurl { + url = "mirror://cpan/authors/id/O/OV/OVID/Test-Most-0.37.tar.gz"; + sha256 = "1isg8z6by113zn08l044w6k04y5m5bnns3rqmks8rwdr3qa70csk"; + }; + propagatedBuildInputs = [ ExceptionClass ]; + meta = { + description = "Most commonly needed test functions and features"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ TestDeep TestDifferences TestException TestWarn ]; + }; + + Testmysqld = buildPerlModule { + pname = "Test-mysqld"; + version = "1.0013"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SO/SONGMU/Test-mysqld-1.0013.tar.gz"; + sha256 = "1vrybrh3is3xfwqdhxr1mvmmdyjhz9p0f6n8hasn7japj2h43bap"; + }; + buildInputs = [ pkgs.which ModuleBuildTiny TestSharedFork ]; + propagatedBuildInputs = [ ClassAccessorLite DBDmysql FileCopyRecursive ]; + meta = { + homepage = "https://github.com/kazuho/p5-test-mysqld"; + description = "Mysqld runner for tests"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + TestNeeds = buildPerlPackage { + pname = "Test-Needs"; + version = "0.002006"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HA/HAARG/Test-Needs-0.002006.tar.gz"; + sha256 = "77f9fff0c96c5e09f34d0416b3533c3319f7cd0bb1f7fe8f8072ad59f433f0e5"; + }; + meta = { + description = "Skip tests when modules not available"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestNoTabs = buildPerlPackage { + pname = "Test-NoTabs"; + version = "2.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Test-NoTabs-2.02.tar.gz"; + sha256 = "0c306p9qdpa2ycii3c50hml23mwy6bjxpry126g1dw11hyiwcxgv"; + }; + meta = { + description = "Check the presence of tabs in your project"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestNoWarnings = buildPerlPackage { + pname = "Test-NoWarnings"; + version = "1.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AD/ADAMK/Test-NoWarnings-1.04.tar.gz"; + sha256 = "0v385ch0hzz9naqwdw2az3zdqi15gka76pmiwlgsy6diiijmg2k3"; + }; + meta = { + description = "Make sure you didn't emit any warnings while testing"; + license = lib.licenses.lgpl21; + }; + }; + + TestObject = buildPerlPackage { + pname = "Test-Object"; + version = "0.08"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Test-Object-0.08.tar.gz"; + sha256 = "65278964147837313f4108e55b59676e8a364d6edf01b3dc198aee894ab1d0bb"; + }; + }; + + TestOutput = buildPerlPackage { + pname = "Test-Output"; + version = "1.031"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BD/BDFOY/Test-Output-1.031.tar.gz"; + sha256 = "193y1xjvgc1p9pdgdwps2127knvpz9wc1xh6gmr74y3ihmqz7f7q"; + }; + propagatedBuildInputs = [ CaptureTiny ]; + }; + + TestPAUSEPermissions = buildPerlPackage { + pname = "Test-PAUSE-Permissions"; + version = "0.07"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SK/SKAJI/Test-PAUSE-Permissions-0.07.tar.gz"; + sha256 = "0gh7f67g1y30yggmwj1pq6xgrx3cfjibj2378nl3gilvyaxw2w2m"; + }; + propagatedBuildInputs = [ ConfigIdentity PAUSEPermissions ParseLocalDistribution ]; + buildInputs = [ ExtUtilsMakeMakerCPANfile TestUseAllModules ]; + meta = { + description = "tests module permissions in your distribution"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestPerlCritic = buildPerlModule { + pname = "Test-Perl-Critic"; + version = "1.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PETDANCE/Test-Perl-Critic-1.04.tar.gz"; + sha256 = "28f806b5412c7908b56cf1673084b8b44ce1cb54c9417d784d91428e1a04096e"; + }; + propagatedBuildInputs = [ MCE PerlCritic ]; + }; + + TestPerlTidy = buildPerlModule rec { + pname = "Test-PerlTidy"; + version = "20200930"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/Test-PerlTidy-${version}.tar.gz"; + sha256 = "1djpfi57s1j6mqb0ii2ca1sj3ym7jjab018inp6vdmsyfjcnhvwz"; + }; + propagatedBuildInputs = [ PathTiny PerlTidy TextDiff ]; + meta = { + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ TestPerlCritic ]; + }; + + TestPod = buildPerlPackage { + pname = "Test-Pod"; + version = "1.52"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Test-Pod-1.52.tar.gz"; + sha256 = "1z75x1pxwp8ajwq9iazlg2c3wd7rdlim08yclpdg32qnc36dpa30"; + }; + meta = { + description = "Check for POD errors in files"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestPodCoverage = buildPerlPackage { + pname = "Test-Pod-Coverage"; + version = "1.10"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NE/NEILB/Test-Pod-Coverage-1.10.tar.gz"; + sha256 = "1m203mhgfilz7iqc8mxaw4lw02fz391mni3n25sfx7nryylwrja8"; + }; + propagatedBuildInputs = [ PodCoverage ]; + }; + + TestPodLinkCheck = buildPerlModule { + pname = "Test-Pod-LinkCheck"; + version = "0.008"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AP/APOCAL/Test-Pod-LinkCheck-0.008.tar.gz"; + sha256 = "2bfe771173c38b69eeb089504e3f76511b8e45e6a9e6dac3e616e400ea67bcf0"; + }; + buildInputs = [ ModuleBuildTiny TestPod ]; + propagatedBuildInputs = [ CaptureTiny Moose podlinkcheck ]; + meta = { + description = "Tests POD for invalid links"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestPodNo404s = buildPerlModule { + pname = "Test-Pod-No404s"; + version = "0.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AP/APOCAL/Test-Pod-No404s-0.02.tar.gz"; + sha256 = "0ycfghsyl9f31kxdppjwx2g5iajrqh3fyywz0x7d8ayndw2hdihi"; + }; + propagatedBuildInputs = [ LWP URIFind ]; + meta = { + description = "Checks POD for any http 404 links"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ ModuleBuildTiny TestPod ]; + }; + + TestPortabilityFiles = buildPerlPackage { + pname = "Test-Portability-Files"; + version = "0.10"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AB/ABRAXXA/Test-Portability-Files-0.10.tar.gz"; + sha256 = "08e4b432492dc1b44b55d5db57952eb76379c7f434ee8f16aca64d491f401a16"; + }; + meta = { + description = "Check file names portability"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestRefcount = buildPerlModule { + pname = "Test-Refcount"; + version = "0.10"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PEVANS/Test-Refcount-0.10.tar.gz"; + sha256 = "1chf6zizi7x128l3qm1bdqzwjjqm2j4gzajgghaksisn945c4mq4"; + }; + meta = { + description = "assert reference counts on objects"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestRequires = buildPerlPackage { + pname = "Test-Requires"; + version = "0.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TOKUHIROM/Test-Requires-0.11.tar.gz"; + sha256 = "03q49vi09b4n31kpnmq4v2dga5ja438a8f1wgkgwvvlpjmadx22b"; + }; + meta = { + description = "Checks to see if the module can be loaded"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestRequiresGit = buildPerlPackage { + pname = "Test-Requires-Git"; + version = "1.008"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BO/BOOK/Test-Requires-Git-1.008.tar.gz"; + sha256 = "70916210970d84d7491451159ab8b67e15251c8c0dae7c3df6c8d88542ea42a6"; + }; + propagatedBuildInputs = [ GitVersionCompare ]; + meta = { + description = "Check your test requirements against the available version of Git"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestRequiresInternet = buildPerlPackage { + pname = "Test-RequiresInternet"; + version = "0.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MALLEN/Test-RequiresInternet-0.05.tar.gz"; + sha256 = "0gl33vpj9bb78pzyijp884b66sbw6jkh1ci0xki8rmf03hmb79xv"; + }; + meta = { + description = "Easily test network connectivity"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestRoo = buildPerlPackage { + pname = "Test-Roo"; + version = "1.004"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DAGOLDEN/Test-Roo-1.004.tar.gz"; + sha256 = "1mnym49j1lj7gzylma5b6nr4vp75rmgz2v71904v01xmxhy9l4i1"; + }; + + propagatedBuildInputs = [ Moo MooXTypesMooseLike SubInstall strictures ]; + buildInputs = [ CaptureTiny ]; + }; + + TestRoutine = buildPerlPackage { + pname = "Test-Routine"; + version = "0.027"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Test-Routine-0.027.tar.gz"; + sha256 = "0n6k310v2py787lkvhzrn8vndws9icdf8mighgl472k0x890xm5s"; + }; + buildInputs = [ TestAbortable TestFatal ]; + propagatedBuildInputs = [ Moose namespaceautoclean ]; + meta = { + homepage = "https://github.com/rjbs/Test-Routine"; + description = "Composable units of assertion"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestRun = buildPerlModule { + pname = "Test-Run"; + version = "0.0305"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/Test-Run-0.0305.tar.gz"; + sha256 = "0j62hzh7k4lvk390pm8581nhjnayxp4pf0g6x1vagqpqc3fp36pq"; + }; + buildInputs = [ TestTrap ]; + propagatedBuildInputs = [ IPCSystemSimple ListMoreUtils MooseXStrictConstructor TextSprintfNamed UNIVERSALrequire ]; + meta = { + homepage = "https://web-cpan.shlomifish.org/modules/Test-Run/"; + description = "Base class to run standard TAP scripts"; + license = lib.licenses.mit; + }; + }; + + TestRunCmdLine = buildPerlModule { + pname = "Test-Run-CmdLine"; + version = "0.0132"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/Test-Run-CmdLine-0.0132.tar.gz"; + sha256 = "01x7rzscj3f06kpv0bd9dwx4wg9bmn7b5gyqfvy7wmv3ak6r3hxj"; + }; + buildInputs = [ TestRun TestTrap ]; + propagatedBuildInputs = [ MooseXGetopt UNIVERSALrequire YAMLLibYAML ]; + doCheck = !stdenv.isDarwin; + meta = { + homepage = "http://web-cpan.berlios.de/modules/Test-Run/"; + description = "Analyze tests from the command line using Test::Run"; + license = lib.licenses.mit; + }; + }; + + TestRunPluginAlternateInterpreters = buildPerlModule { + pname = "Test-Run-Plugin-AlternateInterpreters"; + version = "0.0125"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/Test-Run-Plugin-AlternateInterpreters-0.0125.tar.gz"; + sha256 = "1fwr687h05fg6xn6vsfx9ll2ha8c7brmqbiz18biz0jx2jdnihsj"; + }; + buildInputs = [ TestRun TestRunCmdLine TestTrap YAMLLibYAML ]; + propagatedBuildInputs = [ Moose ]; + meta = { + homepage = "https://web-cpan.shlomifish.org/modules/Test-Run/"; + description = "Define different interpreters for different test scripts with Test::Run"; + license = lib.licenses.mit; + }; + }; + + TestRunPluginBreakOnFailure = buildPerlModule { + pname = "Test-Run-Plugin-BreakOnFailure"; + version = "0.0.6"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/Test-Run-Plugin-BreakOnFailure-v0.0.6.tar.gz"; + sha256 = "1a8k9p89s31wrax0yk8p0zsvj40mjgi0bnjmj0949hghwbihw650"; + }; + buildInputs = [ TestRun TestRunCmdLine TestTrap YAMLLibYAML ]; + propagatedBuildInputs = [ Moose ]; + meta = { + homepage = "https://web-cpan.shlomifish.org/modules/Test-Run/"; + description = "Stop processing the entire test suite"; + license = lib.licenses.mit; + }; + }; + + TestRunPluginColorFileVerdicts = buildPerlModule { + pname = "Test-Run-Plugin-ColorFileVerdicts"; + version = "0.0125"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/Test-Run-Plugin-ColorFileVerdicts-0.0125.tar.gz"; + sha256 = "0ihy5rzhc7472kh8931i7fbqf36nixl6yjrf8x5ndzd62hn1l90w"; + }; + buildInputs = [ TestRun TestRunCmdLine TestTrap ]; + propagatedBuildInputs = [ Moose ]; + moreInputs = [ TestTrap ]; # Added because tests were failing without it + doCheck=true; + meta = { + homepage = "https://web-cpan.shlomifish.org/modules/Test-Run/"; + description = "Make the file verdict ('ok', 'NOT OK')"; + license = lib.licenses.mit; + }; + }; + + TestRunPluginColorSummary = buildPerlModule { + pname = "Test-Run-Plugin-ColorSummary"; + version = "0.0203"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/Test-Run-Plugin-ColorSummary-0.0203.tar.gz"; + sha256 = "1zca7w360m0vf3srf8af1s2k9k8hi85w1cavql7m2sr9kcvpknbv"; + }; + buildInputs = [ TestRun TestRunCmdLine TestTrap ]; + moreInputs = [ TestTrap ]; # Added because tests were failing without it + doCheck=true; + meta = { + homepage = "https://web-cpan.shlomifish.org/modules/Test-Run/"; + description = "A Test::Run plugin that"; + license = lib.licenses.mit; + }; + }; + + TestRunPluginTrimDisplayedFilenames = buildPerlModule { + pname = "Test-Run-Plugin-TrimDisplayedFilenames"; + version = "0.0126"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/Test-Run-Plugin-TrimDisplayedFilenames-0.0126.tar.gz"; + sha256 = "0a4hxbsbhsnkx99h3d01fchv7ip0c1np2jmf6xvqm657qv1lk1la"; + }; + buildInputs = [ TestRun TestRunCmdLine TestTrap YAMLLibYAML ]; + propagatedBuildInputs = [ Moose ]; + meta = { + homepage = "https://web-cpan.shlomifish.org/modules/Test-Run/"; + description = "Trim the first components"; + license = lib.licenses.mit; + }; + }; + + TestRunValgrind = buildPerlModule { + pname = "Test-RunValgrind"; + version = "0.2.2"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/Test-RunValgrind-0.2.2.tar.gz"; + sha256 = "1vm5iw5sy0mhjjypaaviil9qgqixmkaghdbjbcyb4lf2mm6d24v9"; + }; + buildInputs = [ TestTrap ]; + propagatedBuildInputs = [ PathTiny ]; + meta = { + description = "Tests that an external program is valgrind-clean"; + license = lib.licenses.mit; + }; + }; + + TestScript = buildPerlPackage { + pname = "Test-Script"; + version = "1.26"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PL/PLICEASE/Test-Script-1.26.tar.gz"; + sha256 = "1dvkb8dvidnycd6ws2h2iy262h37fjakflv6z90xrw72xix26hkd"; + }; + + buildInputs = [ Test2Suite ]; + + propagatedBuildInputs = [ CaptureTiny ProbePerl ]; + }; + + TestScriptRun = buildPerlPackage { + pname = "Test-Script-Run"; + version = "0.08"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SU/SUNNAVY/Test-Script-Run-0.08.tar.gz"; + sha256 = "1fef216e70bc425ace3e2c4370dfcdddb5e798b099efba2679244a4d5bc1ab0a"; + }; + propagatedBuildInputs = [ IPCRun3 TestException ]; + meta = { + description = "Test scripts with run"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestSharedFork = buildPerlPackage { + pname = "Test-SharedFork"; + version = "0.35"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/EX/EXODIST/Test-SharedFork-0.35.tar.gz"; + sha256 = "17y52j20k1bs9dgf4n6rhh9dn4cfxxbnfn2cfs7pb00fc5jyhci9"; + }; + buildInputs = [ TestRequires ]; + meta = { + homepage = "https://github.com/tokuhirom/Test-SharedFork"; + description = "Fork test"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestSimple13 = buildPerlPackage { + pname = "Test-Simple"; + version = "1.302183"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/EX/EXODIST/Test-Simple-1.302183.tar.gz"; + sha256 = "1zq6841yrwxmrmhgzmzx0njlymsv9mzl6l5njabfl2j2xjjvs0ws"; + }; + meta = { + description = "Basic utilities for writing tests"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestSnapshot = buildPerlPackage { + pname = "Test-Snapshot"; + version = "0.06"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETJ/Test-Snapshot-0.06.tar.gz"; + sha256 = "f4dd7a9a55baa2247540ae34210cd05a04f9d1061befec97a1c90eda95bfae45"; + }; + buildInputs = [ CaptureTiny ]; + propagatedBuildInputs = [ TextDiff ]; + meta = { + description = "Test against data stored in automatically-named file"; + license = lib.licenses.artistic2; + }; + }; + + TestSpec = buildPerlPackage { + pname = "Test-Spec"; + version = "0.54"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AK/AKZHAN/Test-Spec-0.54.tar.gz"; + sha256 = "1lk5l69bm6yl1zxzz5v6mizzqfinpdhasmi4qjxr1vnwcl9cyc8a"; + }; + propagatedBuildInputs = [ DevelGlobalPhase PackageStash TieIxHash ]; + meta = { + description = "Write tests in a declarative specification style"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ TestDeep TestTrap ]; + }; + + TestSubCalls = buildPerlPackage { + pname = "Test-SubCalls"; + version = "1.10"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Test-SubCalls-1.10.tar.gz"; + sha256 = "cbc1e9b35a05e71febc13e5ef547a31c8249899bb6011dbdc9d9ff366ddab6c2"; + }; + propagatedBuildInputs = [ HookLexWrap ]; + }; + + TestSynopsis = buildPerlPackage { + pname = "Test-Synopsis"; + version = "0.16"; + src = fetchurl { + url = "mirror://cpan/authors/id/Z/ZO/ZOFFIX/Test-Synopsis-0.16.tar.gz"; + sha256 = "09891vnkw9i8v074rswaxbrp6x2d8j8r90gqc306497ppiryq4qv"; + }; + meta = { + description = "Test your SYNOPSIS code"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestTableDriven = buildPerlPackage { + pname = "Test-TableDriven"; + version = "0.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JR/JROCKWAY/Test-TableDriven-0.02.tar.gz"; + sha256 = "16l5n6sx3yqdir1rqq21d41znpwzbs8v34gqr93y051arypphn22"; + }; + meta = { + description = "Write tests, not scripts that run them"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestTempDirTiny = buildPerlPackage { + pname = "Test-TempDir-Tiny"; + version = "0.018"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DAGOLDEN/Test-TempDir-Tiny-0.018.tar.gz"; + sha256 = "10ay3zbihyxn4nbb1f0fmr4szag8iy8pd27v8j6idq6cgzys3dyp"; + }; + meta = { + description = "Temporary directories that stick around when tests fail"; + license = with lib.licenses; [ asl20 ]; + homepage = "https://github.com/dagolden/Test-TempDir-Tiny"; + }; + + }; + + TestTCP = buildPerlPackage { + pname = "Test-TCP"; + version = "2.22"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIYAGAWA/Test-TCP-2.22.tar.gz"; + sha256 = "0mvv9rqwrwlcfh8qrs0s47p85rhlnw15d4gbpyi802bddp0c6lry"; + }; + meta = { + description = "Testing TCP program"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ TestSharedFork ]; + }; + + TestUNIXSock = buildPerlModule rec { + pname = "Test-UNIXSock"; + version = "0.4"; + src = fetchurl { + url = "mirror://cpan/authors/id/F/FU/FUJIWARA/${pname}-${version}.tar.gz"; + sha256 = "0gwgd2w16dsppmf1r6yc17ipvs8b62ybsiz2dyzwy4il236b8c1p"; + }; + meta = { + description = "Testing UNIX domain socket program"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ ModuleBuildTiny ]; + propagatedBuildInputs = [ TestSharedFork TestTCP ]; + }; + + TestTime = buildPerlPackage { + pname = "Test-Time"; + version = "0.08"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SA/SATOH/Test-Time-0.08.tar.gz"; + sha256 = "b8bc3b074bb2247e8588399c1e55d071f049cf6ce1c8b4192c38cf3c24559548"; + }; + meta = { + description = "Overrides the time() and sleep() core functions for testing"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestToolbox = buildPerlModule { + pname = "Test-Toolbox"; + version = "0.4"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIKO/Test-Toolbox-0.4.tar.gz"; + sha256 = "1hxx9rhvncvn7wvzhzx4sk00w0xq2scgspfhhyqwjnm1yg3va820"; + }; + meta = { + description = "Test::Toolbox - tools for testing"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestTrailingSpace = buildPerlModule { + pname = "Test-TrailingSpace"; + version = "0.0600"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/Test-TrailingSpace-0.0600.tar.gz"; + sha256 = "f09d263adec06700a43a24e29f5484cf6d2939914c607dec51590f4bb8fa5a11"; + }; + propagatedBuildInputs = [ FileFindObjectRule ]; + meta = { + description = "Test for trailing space in source files"; + license = lib.licenses.mit; + }; + }; + + TestUnitLite = buildPerlModule { + pname = "Test-Unit-Lite"; + version = "0.1202"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DE/DEXTER/Test-Unit-Lite-0.1202.tar.gz"; + sha256 = "1a5jym9hjcpdf0rwyn7gwrzsx4xqzwgzx59rgspqlqiif7p2a79m"; + }; + meta = { + description = "Unit testing without external dependencies"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestWarn = buildPerlPackage { + pname = "Test-Warn"; + version = "0.36"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BI/BIGJ/Test-Warn-0.36.tar.gz"; + sha256 = "1nkc7jzxff0w4x9axbpsgxrksqdjnf70rb74q39zikkrsd3a7g7c"; + }; + propagatedBuildInputs = [ SubUplevel ]; + meta = { + description = "Perl extension to test methods for warnings"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestWarnings = buildPerlPackage { + pname = "Test-Warnings"; + version = "0.030"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Test-Warnings-0.030.tar.gz"; + sha256 = "89a4947ddf1564ae01122275584433d7f6c4370370bcf3768922d796956ae24f"; + }; + buildInputs = [ CPANMetaCheck PadWalker ]; + meta = { + homepage = "https://github.com/karenetheridge/Test-Warnings"; + description = "Test for warnings and the lack of them"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestWithoutModule = buildPerlPackage { + pname = "Test-Without-Module"; + version = "0.20"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CO/CORION/Test-Without-Module-0.20.tar.gz"; + sha256 = "8e9aeb7c32a6c6d0b8a93114db2a8c072721273a9d9a2dd4f9ca86cfd28aa524"; + }; + meta = { + description = "Test fallback behaviour in absence of modules"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestWWWMechanize = buildPerlPackage { + pname = "Test-WWW-Mechanize"; + version = "1.54"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PETDANCE/Test-WWW-Mechanize-1.54.tar.gz"; + sha256 = "1z4s8fijwx8p74fw29435d2c2l6c1sgzz0n7lrdby5212xdqpa6w"; + }; + buildInputs = [ TestLongString ]; + propagatedBuildInputs = [ CarpAssertMore HTTPServerSimple WWWMechanize ]; + meta = { + homepage = "https://github.com/petdance/test-www-mechanize"; + description = "Testing-specific WWW::Mechanize subclass"; + license = lib.licenses.artistic2; + }; + }; + + TestWWWMechanizeCatalyst = buildPerlPackage { + pname = "Test-WWW-Mechanize-Catalyst"; + version = "0.62"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MS/MSTROUT/Test-WWW-Mechanize-Catalyst-0.62.tar.gz"; + sha256 = "1cdc2q16vs6fb335pzaislz2rx1ph9acaxyp7v5hv9xbwwddwfqq"; + }; + doCheck = false; # listens on an external port + propagatedBuildInputs = [ CatalystRuntime WWWMechanize ]; + meta = { + description = "Test::WWW::Mechanize for Catalyst"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ CatalystPluginSession CatalystPluginSessionStateCookie TestException TestWWWMechanize Testutf8 ]; + }; + + TestWWWMechanizeCGI = buildPerlPackage { + pname = "Test-WWW-Mechanize-CGI"; + version = "0.1"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MR/MRAMBERG/Test-WWW-Mechanize-CGI-0.1.tar.gz"; + sha256 = "0bwwdk0iai5dlvvfpja971qpgvmf6yq67iag4z4szl9v5sra0xm5"; + }; + propagatedBuildInputs = [ WWWMechanizeCGI ]; + buildInputs = [ TestLongString TestWWWMechanize ]; + }; + + TestWWWMechanizePSGI = buildPerlPackage { + pname = "Test-WWW-Mechanize-PSGI"; + version = "0.39"; + src = fetchurl { + url = "mirror://cpan/authors/id/O/OA/OALDERS/Test-WWW-Mechanize-PSGI-0.39.tar.gz"; + sha256 = "0n4rhyyags3cwqb0gb1pr6gccd2x3l190j8gd96lwlvxnjrklss7"; + }; + buildInputs = [ CGI TestLongString TestWWWMechanize ]; + propagatedBuildInputs = [ Plack ]; + meta = { + description = "Test PSGI programs using WWW::Mechanize"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestXPath = buildPerlModule { + pname = "Test-XPath"; + version = "0.19"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MANWAR/Test-XPath-0.19.tar.gz"; + sha256 = "1wy0488yg15kahfafnlmlhppxik7d0z00wxwj9fszrsq2h6crz6y"; + }; + propagatedBuildInputs = [ XMLLibXML ]; + }; + + TestYAML = buildPerlPackage { + pname = "Test-YAML"; + version = "1.07"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TI/TINITA/Test-YAML-1.07.tar.gz"; + sha256 = "0pwrrnwi1qaiy3c5522vy0kzncxc9g02r4b056wqqaa69w1hsc0z"; + }; + buildInputs = [ TestBase ]; + }; + + TextAligner = buildPerlModule { + pname = "Text-Aligner"; + version = "0.16"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/Text-Aligner-0.16.tar.gz"; + sha256 = "09ap457vrlqvw2544j907fbb5crs08hd7sy4syipzxc6wny7v1aw"; + }; + meta = { + description = "Align text in columns"; + }; + }; + + TextAspell = buildPerlPackage { + pname = "Text-Aspell"; + version = "0.09"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HA/HANK/Text-Aspell-0.09.tar.gz"; + sha256 = "0r9g31rd55934mp6n45b96g934ck4qns8x9i7qckn9wfy44k5sib"; + }; + propagatedBuildInputs = [ pkgs.aspell ]; + ASPELL_CONF = "dict-dir ${pkgs.aspellDicts.en}/lib/aspell"; + NIX_CFLAGS_COMPILE = "-I${pkgs.aspell}/include"; + NIX_CFLAGS_LINK = "-L${pkgs.aspell}/lib -laspell"; + }; + + TextAutoformat = buildPerlPackage { + pname = "Text-Autoformat"; + version = "1.75"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NE/NEILB/Text-Autoformat-1.75.tar.gz"; + sha256 = "9dd4f4ce3daec4b4dbf5b59dac4568a8946aed12c28b4e5988c8e8c602c6b771"; + }; + propagatedBuildInputs = [ TextReform ]; + meta = { + homepage = "https://github.com/neilbowers/Text-Autoformat"; + description = "Automatic text wrapping and reformatting"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TextBalanced = buildPerlPackage { + pname = "Text-Balanced"; + version = "2.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHAY/Text-Balanced-2.04.tar.gz"; + sha256 = "1qp7whrampvdzb4nbdvbzp02vlmyk5ssha2lg1iaf2y8hn5l177l"; + }; + meta = { + description = "Extract delimited text sequences from strings"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TextBibTeX = buildPerlModule { + pname = "Text-BibTeX"; + version = "0.88"; + buildInputs = [ CaptureTiny ConfigAutoConf ExtUtilsLibBuilder ]; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AM/AMBS/Text-BibTeX-0.88.tar.gz"; + sha256 = "0b7lmjvfmypps1nw6nsdikgaakm0n0g4186glaqazg5xd1p5h55h"; + }; + # libbtparse.so: cannot open shared object file (aarch64 only) + patches = [ ../development/perl-modules/TextBibTeX-use-lib-on-aarch64.patch ]; + perlPreHook = "export LD=$CC"; + perlPostHook = lib.optionalString stdenv.isDarwin '' + oldPath="$(pwd)/btparse/src/libbtparse.dylib" + newPath="$out/lib/libbtparse.dylib" + + install_name_tool -id "$newPath" "$newPath" + install_name_tool -change "$oldPath" "$newPath" "$out/bin/biblex" + install_name_tool -change "$oldPath" "$newPath" "$out/bin/bibparse" + install_name_tool -change "$oldPath" "$newPath" "$out/bin/dumpnames" + install_name_tool -change "$oldPath" "$newPath" "$out/${perl.libPrefix}/${perl.version}/darwin"*"-2level/auto/Text/BibTeX/BibTeX.bundle" + ''; + meta = { + description = "Interface to read and parse BibTeX files"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TextBrew = buildPerlPackage { + pname = "Text-Brew"; + version = "0.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KC/KCIVEY/Text-Brew-0.02.tar.gz"; + sha256 = "0k7nxglbx5pxl693zrj1fsi094sf1a3vqsrn73inzz7r3j28a6xa"; + }; + }; + + TextCharWidth = buildPerlPackage { + pname = "Text-CharWidth"; + version = "0.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KU/KUBOTA/Text-CharWidth-0.04.tar.gz"; + sha256 = "abded5f4fdd9338e89fd2f1d8271c44989dae5bf50aece41b6179d8e230704f8"; + }; + }; + + TextCSV = buildPerlPackage { + pname = "Text-CSV"; + version = "2.00"; + src = fetchurl { + url = "mirror://cpan/authors/id/I/IS/ISHIGAKI/Text-CSV-2.00.tar.gz"; + sha256 = "8ccbd9195805222d995844114d0e595bb24ce188f85284dbf256080311cbb2c2"; + }; + meta = { + description = "Comma-separated values manipulator (using XS or PurePerl)"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TextCSVEncoded = buildPerlPackage { + pname = "Text-CSV-Encoded"; + version = "0.25"; + src = fetchurl { + url = "mirror://cpan/authors/id/Z/ZA/ZARQUON/Text-CSV-Encoded-0.25.tar.gz"; + sha256 = "1l5rwlmnpnhjszb200a94lwvkwslsvyxm24ycf37gm8dla1mk2i4"; + }; + propagatedBuildInputs = [ TextCSV ]; + meta = { + description = "Encoding aware Text::CSV"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TextCSV_XS = buildPerlPackage { + pname = "Text-CSV_XS"; + version = "1.44"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HM/HMBRAND/Text-CSV_XS-1.44.tgz"; + sha256 = "c4812ddca8e2654736c44bc2ce60b27a428a1bc4d5364b0ed1fad3609c8f9bc4"; + }; + meta = { + description = "Comma-Separated Values manipulation routines"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TextDiff = buildPerlPackage { + pname = "Text-Diff"; + version = "1.45"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NE/NEILB/Text-Diff-1.45.tar.gz"; + sha256 = "013g13prdghxvrp5754gyc7rmv1syyxrhs33yc5f0lrz3dxs1fp8"; + }; + propagatedBuildInputs = [ AlgorithmDiff ]; + meta = { + description = "Perform diffs on files and record sets"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TextFormat = buildPerlModule { + pname = "Text-Format"; + version = "0.62"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/Text-Format-0.62.tar.gz"; + sha256 = "0104z7jjv46kqh77rnx8kvmsbr5dy0s56xm01dckq4ly65br0hkx"; + }; + meta = { + homepage = "https://metacpan.org/release/Text-Format"; + description = "Format text"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = with maintainers; [ bcdarwin ]; + }; + }; + + TextDiffFormattedHTML = buildPerlPackage { + pname = "Text-Diff-FormattedHTML"; + version = "0.08"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AM/AMBS/Text-Diff-FormattedHTML-0.08.tar.gz"; + sha256 = "39ab775a5c056745f2abd8cc7c1cbc5496dfef7e52a9f4bd8ada6aa6c9c7b70d"; + }; + propagatedBuildInputs = [ FileSlurp StringDiff ]; + meta = { + description = "Generate a colorful HTML diff of strings/files"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + TextFuzzy = buildPerlPackage { + pname = "Text-Fuzzy"; + version = "0.29"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BK/BKB/Text-Fuzzy-0.29.tar.gz"; + sha256 = "3df5cfd2ca1a4c5ca7ff7bab3cc8d53ad2064e134cbf11004f3cf8c4b9055bff"; + }; + meta = { + description = "Partial string matching using edit distances"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TextGerman = buildPerlPackage { + pname = "Text-German"; + version = "0.06"; + src = fetchurl { + url = "mirror://cpan/authors/id/U/UL/ULPFR/Text-German-0.06.tar.gz"; + sha256 = "1p87pgap99lw0nv62i3ghvsi7yg90lhn8vsa3yqp75rd04clybcj"; + }; + meta = { + }; + }; + + TextGlob = buildPerlPackage { + pname = "Text-Glob"; + version = "0.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RC/RCLAMP/Text-Glob-0.11.tar.gz"; + sha256 = "11sj62fynfgwrlgkv5a051cq6yn0pagxqjsz27dxx8phsd4wv706"; + }; + }; + + TextHogan = buildPerlPackage { + pname = "Text-Hogan"; + version = "2.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KA/KAORU/Text-Hogan-2.03.tar.gz"; + sha256 = "0yk1qn457jqknds4g2khlhi5vk2li1njbfwvxy44i665wknj7naq"; + }; + propagatedBuildInputs = [ Clone RefUtil TextTrim ]; + buildInputs = [ DataVisitor PathTiny TryTiny YAML ]; + meta = { + description = "Text::Hogan - A mustache templating engine statement-for-statement cloned from hogan.js"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TextIconv = buildPerlPackage { + pname = "Text-Iconv"; + version = "1.7"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MP/MPIOTR/Text-Iconv-1.7.tar.gz"; + sha256 = "5b80b7d5e709d34393bcba88971864a17b44a5bf0f9e4bcee383d029e7d2d5c3"; + }; + meta = { + broken = stdenv.isDarwin; # never built on Hydra https://hydra.nixos.org/job/nixpkgs/staging-next/perl534Packages.TextIconv.x86_64-darwin + }; + }; + + TestInDistDir = buildPerlPackage { + pname = "Test-InDistDir"; + version = "1.112071"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MITHALDU/Test-InDistDir-1.112071.tar.gz"; + sha256 = "922c5c63314f406f4cbb35ec423ac2154d2c2b71a65addb7732c9d240a83fefb"; + }; + meta = { + homepage = "https://github.com/wchristian/Test-InDistDir"; + description = "Test environment setup for development with IDE"; + license = lib.licenses.wtfpl; + maintainers = [ maintainers.sgo ]; + }; + }; + + TestInter = buildPerlPackage { + pname = "Test-Inter"; + version = "1.09"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SB/SBECK/Test-Inter-1.09.tar.gz"; + sha256 = "1e9f129cc1a001fb95449d385253b38afabf5b466e3b3bd33e4e430f216e177a"; + }; + meta = { + description = "Framework for more readable interactive test scripts"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ FileFindRule TestPod TestPodCoverage ]; + }; + + TextLayout = buildPerlPackage { + pname = "Text-Layout"; + version = "0.019"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JV/JV/Text-Layout-0.019.tar.gz"; + sha256 = "a043f2a89e113b29c523a9efa71fa8398ed75edd482193901b38d08dd4a4108e"; + }; + buildInputs = [ PDFAPI2 ]; + meta = { + description = "Pango style markup formatting"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TextLorem = buildPerlModule { + pname = "Text-Lorem"; + version = "0.3"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AD/ADEOLA/Text-Lorem-0.3.tar.gz"; + sha256 = "64bb636fb21213101a646b414ecbdc1b55edf905cbcdc7f5d24774ec5061fe2d"; + }; + meta = { + description = "Generate random Latin looking text"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + TestManifest = buildPerlPackage { + pname = "Test-Manifest"; + version = "2.021"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BD/BDFOY/Test-Manifest-2.021.tar.gz"; + sha256 = "a47aaad71c580e16e6e63d8c037cdddcd919876754beb2c95d9a88682dd332d9"; + }; + meta = { + description = "Interact with a t/test_manifest file"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TextMarkdown = buildPerlPackage { + pname = "Text-Markdown"; + version = "1.000031"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BO/BOBTFISH/Text-Markdown-1.000031.tar.gz"; + sha256 = "06y79lla8adkqhrs41xdddqjs81dcrh266b50mfbg37bxkawd4f1"; + }; + buildInputs = [ ListMoreUtils TestDifferences TestException ]; + }; + + TextMarkdownHoedown = buildPerlModule { + pname = "Text-Markdown-Hoedown"; + version = "1.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TOKUHIROM/Text-Markdown-Hoedown-1.03.tar.gz"; + sha256 = "sha256-U6cw/29IgrmavYVW8mqRH1gvZ1tZ8OFnJe0ey8CE7lA="; + }; + buildInputs = [ Filepushd ]; + perlPreHook = lib.optionalString stdenv.isDarwin "export LD=$CC"; + meta = { + homepage = "https://github.com/tokuhirom/Text-Markdown-Hoedown"; + description = "hoedown for Perl5"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestMinimumVersion = buildPerlPackage { + pname = "Test-MinimumVersion"; + version = "0.101082"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Test-MinimumVersion-0.101082.tar.gz"; + sha256 = "3fba4e8fcf74806259aa639be7d90e70346ad0e0e4b8b619593490e378241970"; + }; + propagatedBuildInputs = [ PerlMinimumVersion ]; + meta = { + homepage = "https://github.com/rjbs/Test-MinimumVersion"; + description = "Does your code require newer perl than you think?"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TextMicroTemplate = buildPerlPackage { + pname = "Text-MicroTemplate"; + version = "0.24"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KA/KAZUHO/Text-MicroTemplate-0.24.tar.gz"; + sha256 = "1j5ljx7hs4k29732nr5f2m4kssz4rqjw3kknsnhams2yydqix01j"; + }; + meta = { + description = "Micro template engine with Perl5 language"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TextMultiMarkdown = buildPerlPackage { + pname = "Text-MultiMarkdown"; + version = "1.000035"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BO/BOBTFISH/Text-MultiMarkdown-1.000035.tar.gz"; + sha256 = "2467dd13751dc2979d7c880b24e762952130fdf42a1ed3ee04fdf72d4b52646a"; + }; + buildInputs = [ ListMoreUtils TestException ]; + propagatedBuildInputs = [ HTMLParser TextMarkdown ]; + meta = { + description = "Convert MultiMarkdown syntax to (X)HTML"; + license = lib.licenses.bsd3; + }; + }; + + TestNumberDelta = buildPerlPackage { + pname = "Test-Number-Delta"; + version = "1.06"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DAGOLDEN/Test-Number-Delta-1.06.tar.gz"; + sha256 = "535430919e6fdf6ce55ff76e9892afccba3b7d4160db45f3ac43b0f92ffcd049"; + }; + meta = { + homepage = "https://github.com/dagolden/Test-Number-Delta"; + description = "Compare the difference between numbers against a given tolerance"; + license = "apache"; + }; + }; + + TextParsewords = buildPerlPackage { + pname = "Text-Parsewords"; + version = "3.30"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CH/CHORNY/Text-ParseWords-3.30.tar.gz"; + hash = "sha256-heAjgXndQ5l+WMZr1RYRGCvH1TNQUCmi2w0yMu2v9eg="; + }; + meta = { + description = "Parse text into an array of tokens or array of arrays"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TextPasswordPronounceable = buildPerlPackage { + pname = "Text-Password-Pronounceable"; + version = "0.30"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TS/TSIBLEY/Text-Password-Pronounceable-0.30.tar.gz"; + sha256 = "c186a50256e0bedfafb17e7ce157e7c52f19503bb79e18ebf06255911f6ead1a"; + }; + meta = { + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TextPatch = buildPerlPackage { + pname = "Text-Patch"; + version = "1.8"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CA/CADE/Text-Patch-1.8.tar.gz"; + sha256 = "eaf18e61ba6a3e143846a7cc66f08ce58a0c4fbda92acb31aede25cb3b5c3dcc"; + }; + propagatedBuildInputs = [ TextDiff ]; + meta = { + description = "Patches text with given patch"; + license = lib.licenses.gpl2; + }; + }; + + TextPDF = buildPerlPackage { + pname = "Text-PDF"; + version = "0.31"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BH/BHALLISSY/Text-PDF-0.31.tar.gz"; + sha256 = "0s5cimfr4wwzgv15k30x83ncg1257jwsvmbmb86lp02rw5g537yz"; + }; + }; + + TextQuoted = buildPerlPackage { + pname = "Text-Quoted"; + version = "2.10"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BP/BPS/Text-Quoted-2.10.tar.gz"; + sha256 = "081bf95ec9220af26cec89161e61bf73f9fbcbfeee1d9af15139e5d7b708f445"; + }; + propagatedBuildInputs = [ TextAutoformat ]; + meta = { + description = "Extract the structure of a quoted mail message"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TextRecordParser = buildPerlPackage { + pname = "Text-RecordParser"; + version = "1.6.5"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KC/KCLARK/Text-RecordParser-1.6.5.tar.gz"; + sha256 = "0nn33c058bl957v38xhqig4ld34lifl4arqiilhxky339i0q2fys"; + }; + + # In a NixOS chroot build, the tests fail because the font configuration + # at /etc/fonts/font.conf is not available. + doCheck = false; + + propagatedBuildInputs = [ ClassAccessor IOStringy ListMoreUtils Readonly TextAutoformat ]; + buildInputs = [ TestException ]; + }; + + TextReform = buildPerlModule { + pname = "Text-Reform"; + version = "1.20"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CH/CHORNY/Text-Reform-1.20.tar.gz"; + sha256 = "a8792dd8c1aac97001032337b36a356be96e2d74c4f039ef9a363b641db4ae61"; + }; + meta = { + description = "Manual text wrapping and reformatting"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TextRoman = buildPerlPackage { + pname = "Text-Roman"; + version = "3.5"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SY/SYP/Text-Roman-3.5.tar.gz"; + sha256 = "0sh47svzz0wm993ywfgpn0fvhajl2sj5hcnf5zxjz02in6ihhjnb"; + }; + meta = { + description = "Allows conversion between Roman and Arabic algarisms"; + license = lib.licenses.bsd3; + }; + }; + + TextSimpleTable = buildPerlPackage { + pname = "Text-SimpleTable"; + version = "2.07"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MR/MRAMBERG/Text-SimpleTable-2.07.tar.gz"; + sha256 = "1v8r8qpzg283p2pqqr8dqrak2bxray1b2jmib0qk75jffqw3yv95"; + }; + meta = { + description = "Simple eyecandy ASCII tables"; + license = lib.licenses.artistic2; + }; + propagatedBuildInputs = [ UnicodeLineBreak ]; + }; + + TextSoundex = buildPerlPackage { + pname = "Text-Soundex"; + version = "3.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Text-Soundex-3.05.tar.gz"; + sha256 = "f6dd55b4280b25dea978221839864382560074e1d6933395faee2510c2db60ed"; + }; + }; + + TextSprintfNamed = buildPerlModule { + pname = "Text-Sprintf-Named"; + version = "0.0405"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/Text-Sprintf-Named-0.0405.tar.gz"; + sha256 = "1z0glxrmbc6pgjs5bkmp1wiifd4xdcrin8wqz6rhmi6gzxw0siwv"; + }; + buildInputs = [ TestWarn ]; + meta = { + description = "Sprintf-like function with named conversions"; + license = lib.licenses.mit; + }; + }; + + TextTable = buildPerlModule { + pname = "Text-Table"; + version = "1.134"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/Text-Table-1.134.tar.gz"; + sha256 = "02yigisvgshpgfyqwj0xad4jg473cd80a6c210nb5h5p32dl5kxs"; + }; + propagatedBuildInputs = [ TextAligner ]; + meta = { + homepage = "https://www.shlomifish.org/open-source/projects/docmake/"; + description = "Organize Data in Tables"; + license = lib.licenses.isc; + }; + }; + + TextTabularDisplay = buildPerlPackage { + pname = "Text-TabularDisplay"; + version = "1.38"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DARREN/Text-TabularDisplay-1.38.tar.gz"; + sha256 = "1s46s4pg5mpfllx3icf4vnqz9iadbbdbsr5p7pr6gdjnzbx902gb"; + }; + }; + + TextTemplate = buildPerlPackage { + pname = "Text-Template"; + version = "1.59"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MS/MSCHOUT/Text-Template-1.59.tar.gz"; + sha256 = "1dd2c788c05303ed9a970e1881109642151fa93e02c7a80d4c70608276bab1ee"; + }; + buildInputs = [ TestMoreUTF8 TestWarnings ]; + }; + + TestTrap = buildPerlModule { + pname = "Test-Trap"; + version = "0.3.4"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/EB/EBHANSSEN/Test-Trap-v0.3.4.tar.gz"; + sha256 = "1qjs2080kcc66s4d7499br5lw2qmhr9gxky4xsl6vjdn6dpna10b"; + }; + propagatedBuildInputs = [ DataDump ]; + meta = { + description = "Trap exit codes, exceptions, output, etc"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestVars = buildPerlModule { + pname = "Test-Vars"; + version = "0.014"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DR/DROLSKY/Test-Vars-0.014.tar.gz"; + sha256 = "0qr8q0ksr925ycwbsyxjwgz4p9r7a8vkxpn33vy23zbijwpa3xx7"; + }; + + buildInputs = [ ModuleBuildTiny ]; + + meta = { + homepage = "https://github.com/gfx/p5-Test-Vars"; + description = "Detects unused variables"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestVersion = buildPerlPackage { + pname = "Test-Version"; + version = "2.09"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PL/PLICEASE/Test-Version-2.09.tar.gz"; + sha256 = "9ce1dd2897a5f30e1b7f8966ec66f57d8d8f280f605f28c7ca221fa79aca38e0"; + }; + buildInputs = [ TestException ]; + propagatedBuildInputs = [ FileFindRulePerl ]; + meta = { + description = "Check to see that version's in modules are sane"; + license = lib.licenses.artistic2; + }; + }; + + TextTrim = buildPerlPackage { + pname = "Text-Trim"; + version = "1.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJT/Text-Trim-1.03.tar.gz"; + sha256 = "0ks9afvx9c1b6px98wwzhbyhd2y6hdg7884814fc9pnx8qfzrz50"; + }; + meta = { + description = "Remove leading and/or trailing whitespace from strings"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TextUnaccent = buildPerlPackage { + pname = "Text-Unaccent"; + version = "1.08"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LD/LDACHARY/Text-Unaccent-1.08.tar.gz"; + sha256 = "0avk50kia78kxryh2whmaj5l18q2wvmkdyqyjsf6kwr4kgy6x3i7"; + }; + # https://rt.cpan.org/Public/Bug/Display.html?id=124815 + NIX_CFLAGS_COMPILE = "-DHAS_VPRINTF"; + meta = { + broken = stdenv.isDarwin; # never built on Hydra https://hydra.nixos.org/job/nixpkgs/staging-next/perl534Packages.TextUnaccent.x86_64-darwin + }; + }; + + TextUnidecode = buildPerlPackage { + pname = "Text-Unidecode"; + version = "1.30"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SB/SBURKE/Text-Unidecode-1.30.tar.gz"; + sha256 = "1imii0p6wvhrxsr5z2zhazpx5vl4l4ybf1y2c5hy480xvi6z293c"; + }; + }; + + Testutf8 = buildPerlPackage { + pname = "Test-utf8"; + version = "1.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MARKF/Test-utf8-1.02.tar.gz"; + sha256 = "df82f09c5940830b25a49f1c8162fa24d371e602880edef8d9a4d4bfd66b8bd7"; + }; + meta = { + homepage = "https://github.com/2shortplanks/Test-utf8"; + description = "Handy utf8 tests"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TextNSP = buildPerlPackage { + pname = "Text-NSP"; + version = "1.31"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TP/TPEDERSE/Text-NSP-1.31.tar.gz"; + sha256 = "a01201beb29636b3e41ecda2a6cf6522fd265416bd6d994fad02f59fb49cf595"; + }; + meta = { + description = "Extract collocations and Ngrams from text"; + license = lib.licenses.free; + maintainers = [ maintainers.bzizou ]; + }; + }; + + TextvFileasData = buildPerlPackage { + pname = "Text-vFile-asData"; + version = "0.08"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RC/RCLAMP/Text-vFile-asData-0.08.tar.gz"; + sha256 = "b291ab5e0f987c5172560a692234711a75e4596d83475f72d01278369532f82a"; + }; + propagatedBuildInputs = [ ClassAccessorChained ]; + meta = { + description = "Parse vFile formatted files into data structures"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TextWikiFormat = buildPerlModule { + pname = "Text-WikiFormat"; + version = "0.81"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CY/CYCLES/Text-WikiFormat-0.81.tar.gz"; + sha256 = "0cxbgx879bsskmnhjzamgsa5862ddixyx4yr77lafmwimnaxjg74"; + }; + propagatedBuildInputs = [ URI ]; + }; + + TextWordDiff = buildPerlPackage { + pname = "Text-WordDiff"; + version = "0.09"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TI/TIMK/Text-WordDiff-0.09.tar.gz"; + sha256 = "fee699ca763adca2f4e18f4a8a836fd2102bc2820af708f8eb43356d5ae0d50e"; + }; + propagatedBuildInputs = [ AlgorithmDiff HTMLParser ]; + meta = { + homepage = "https://metacpan.org/release/Text-WordDiff"; + description = "Track changes between documents"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TextWrapI18N = buildPerlPackage { + pname = "Text-WrapI18N"; + version = "0.06"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KU/KUBOTA/Text-WrapI18N-0.06.tar.gz"; + sha256 = "4bd29a17f0c2c792d12c1005b3c276f2ab0fae39c00859ae1741d7941846a488"; + }; + buildInputs = [ pkgs.glibcLocales ]; + propagatedBuildInputs = [ TextCharWidth ]; + preConfigure = '' + substituteInPlace WrapI18N.pm --replace '/usr/bin/locale' '${pkgs.glibc.bin}/bin/locale' + ''; + meta = { + description = "Line wrapping module with support for multibyte, fullwidth, and combining characters and languages without whitespaces between words"; + license = with lib.licenses; [ artistic1 gpl2 ]; + }; + }; + + TextWrapper = buildPerlPackage { + pname = "Text-Wrapper"; + version = "1.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CJ/CJM/Text-Wrapper-1.05.tar.gz"; + sha256 = "64268e15983a9df47e1d9199a491f394e89f542e54afb33f4b78f3f318e09ab9"; + }; + meta = { + description = "Word wrap text by breaking long lines"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ TestDifferences ]; + }; + + Throwable = buildPerlPackage { + pname = "Throwable"; + version = "0.200013"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Throwable-0.200013.tar.gz"; + sha256 = "184gdcwxqwnkrx5md968v1ny70pq6blzpkihccm3bpdxnpgd11wr"; + }; + propagatedBuildInputs = [ DevelStackTrace Moo ]; + meta = { + homepage = "https://github.com/rjbs/Throwable"; + description = "A role for classes that can be thrown"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TieCacheLRU = buildPerlPackage { + pname = "Tie-Cache-LRU"; + version = "20150301"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MS/MSCHWERN/Tie-Cache-LRU-20150301.tar.gz"; + sha256 = "1bf740450d3a6d7c12b48c25f7da5964e44e7cc38b28572cfb76ff22464f4469"; + }; + propagatedBuildInputs = [ ClassVirtual enum ]; + meta = { + description = "A Least-Recently Used cache"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TieCacheLRUExpires = buildPerlPackage { + pname = "Tie-Cache-LRU-Expires"; + version = "0.55"; + src = fetchurl { + url = "mirror://cpan/authors/id/O/OE/OESTERHOL/Tie-Cache-LRU-Expires-0.55.tar.gz"; + sha256 = "b316d849acd25f24346d55a9950d281fee0746398767c601234122159573eb9a"; + }; + propagatedBuildInputs = [ TieCacheLRU ]; + meta = { + license = lib.licenses.artistic1; + }; + }; + + TieCycle = buildPerlPackage { + pname = "Tie-Cycle"; + version = "1.225"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BD/BDFOY/Tie-Cycle-1.225.tar.gz"; + sha256 = "0i9xq2qm50p2ih24265jndp2x8hfq7ap0d88nrlv5yaad4hxhc7k"; + }; + meta = { + description = "Cycle through a list of values via a scalar"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TieEncryptedHash = buildPerlPackage { + pname = "Tie-EncryptedHash"; + version = "1.24"; + src = fetchurl { + url = "mirror://cpan/authors/id/V/VI/VIPUL/Tie-EncryptedHash-1.24.tar.gz"; + sha256 = "aa9a083a231e4046170a5894644e3c59679c7dbd0aa2d1217dc85150df2c1e21"; + }; + propagatedBuildInputs = [ CryptBlowfish CryptCBC CryptDES ]; + meta = { + description = "Hashes (and objects based on hashes) with encrypting fields"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + TieFile = buildPerlPackage { + pname = "Tie-File"; + version = "1.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TODDR/Tie-File-1.05.tar.gz"; + sha256 = "8a980b577ff4b10fe11062ed8c774857fa8c9833c5305f2e8bfb3347af63f139"; + }; + meta = { + description = "Access the lines of a disk file via a Perl array"; + }; + }; + + TieIxHash = buildPerlModule { + pname = "Tie-IxHash"; + version = "1.23"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CH/CHORNY/Tie-IxHash-1.23.tar.gz"; + sha256 = "0mmg9iyh42syal3z1p2pn9airq65yrkfs66cnqs9nz76jy60pfzs"; + }; + meta = { + description = "Ordered associative arrays for Perl"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TieHandleOffset = buildPerlPackage { + pname = "Tie-Handle-Offset"; + version = "0.004"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DAGOLDEN/Tie-Handle-Offset-0.004.tar.gz"; + sha256 = "ee9f39055dc695aa244a252f56ffd37f8be07209b337ad387824721206d2a89e"; + }; + meta = { + homepage = "https://github.com/dagolden/tie-handle-offset"; + description = "Tied handle that hides the beginning of a file"; + license = lib.licenses.asl20; + }; + }; + + TieHashIndexed = buildPerlPackage { + pname = "Tie-Hash-Indexed"; + version = "0.08"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MH/MHX/Tie-Hash-Indexed-0.08.tar.gz"; + sha256 = "043v98xaid6sjch2x9c39s475wm9i13vzf8jg73qm12sby0n5g1p"; + }; + meta = { + description = "Ordered hashes for Perl"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + doCheck = false; /* test fails on some machines */ + }; + + TieHashMethod = buildPerlPackage { + pname = "Tie-Hash-Method"; + version = "0.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/Y/YV/YVES/Tie-Hash-Method-0.02.tar.gz"; + sha256 = "d513fbb51413f7ca1e64a1bdce6194df7ec6076dea55066d67b950191eec32a9"; + }; + meta = { + description = "Tied hash with specific methods overriden by callbacks"; + license = with lib.licenses; [ artistic1 ]; + }; + }; + + TieRefHash = buildPerlPackage { + pname = "Tie-RefHash"; + version = "1.40"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Tie-RefHash-1.40.tar.gz"; + sha256 = "1mvyjab8pv1yfimvlh4gxxpm3xzny4pinymdr8hgdd9gim8izkss"; + }; + }; + + TieRegexpHash = buildPerlPackage { + pname = "Tie-RegexpHash"; + version = "0.17"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AL/ALTREUS/Tie-RegexpHash-0.17.tar.gz"; + sha256 = "0c207850e77efb16618e0aa015507926a3425b34aad5aa6e3e40d83989a085a3"; + }; + meta = { + license = lib.licenses.artistic1; + }; + }; + + TieSimple = buildPerlPackage { + pname = "Tie-Simple"; + version = "1.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HA/HANENKAMP/Tie-Simple-1.04.tar.gz"; + sha256 = "29e9e2133951046c78f205f1b3e8df62c90e114f0e08fa06b817766a0f808b12"; + }; + meta = { + description = "Variable ties made much easier: much, much, much easier.."; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TieSub = buildPerlPackage { + pname = "Tie-Sub"; + version = "1.001"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/ST/STEFFENW/Tie-Sub-1.001.tar.gz"; + sha256 = "1cgiyj85hhw2m4x2iv4zgaj3hzf3fghircpcfqmjndni4r4a0wgg"; + }; + propagatedBuildInputs = [ ParamsValidate ]; + buildInputs = [ ModuleBuild TestDifferences TestException TestNoWarnings ]; + meta = { + description = "Tie::Sub - Tying a subroutine, function or method to a hash"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TieToObject = buildPerlPackage { + pname = "Tie-ToObject"; + version = "0.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NU/NUFFIN/Tie-ToObject-0.03.tar.gz"; + sha256 = "1x1smn1kw383xc5h9wajxk9dlx92bgrbf7gk4abga57y6120s6m3"; + }; + }; + + TimeDate = buildPerlPackage { + pname = "TimeDate"; + version = "2.33"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AT/ATOOMIC/TimeDate-2.33.tar.gz"; + sha256 = "1cjyc0yi873597r7xcp9yz0l1c46ik2kxwfrn00zbrlx0d5rrdn0"; + }; + }; + + TimeDuration = buildPerlPackage { + pname = "Time-Duration"; + version = "1.21"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NE/NEILB/Time-Duration-1.21.tar.gz"; + sha256 = "1f59z2svfydxgd1gzrb5k3hl6d432kzmskk7jhv2dyb5hyx0wd7y"; + }; + meta = { + description = "Rounded or exact English expression of durations"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TimeDurationParse = buildPerlPackage { + pname = "Time-Duration-Parse"; + version = "0.15"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NE/NEILB/Time-Duration-Parse-0.15.tar.gz"; + sha256 = "10g39bbrxkabbsfq4rv7f5b5x7h3jba08j4pg8gwr0b9iqx19n31"; + }; + buildInputs = [ TimeDuration ]; + propagatedBuildInputs = [ ExporterLite ]; + meta = { + description = "Parse string that represents time duration"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TimeLocal = buildPerlPackage { + pname = "Time-Local"; + version = "1.30"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DR/DROLSKY/Time-Local-1.30.tar.gz"; + sha256 = "c7744f6b2986b946d3e2cf034df371bee16cdbafe53e945abb1a542c4f8920cb"; + }; + meta = { + description = "Efficiently compute time from local and GMT time"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TimeMoment = buildPerlPackage { + pname = "Time-Moment"; + version = "0.44"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CH/CHANSEN/Time-Moment-0.44.tar.gz"; + sha256 = "64acfa042f634fcef8dadf55e7f42ba4eaab8aaeb7d5212eb89815a31f78f6fd"; + }; + buildInputs = [ TestFatal TestNumberDelta TestRequires ]; + meta = { + description = "Represents a date and time of day with an offset from UTC"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TimeOut = buildPerlPackage { + pname = "Time-Out"; + version = "0.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PA/PATL/Time-Out-0.11.tar.gz"; + sha256 = "1lhmx1x8j6z1k9vn32bcsw7g44cg22icshnnc37djlnlixlxm5lk"; + }; + meta = { + }; + }; + + TimeParseDate = buildPerlPackage { + pname = "Time-ParseDate"; + version = "2015.103"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MU/MUIR/modules/Time-ParseDate-2015.103.tar.gz"; + sha256 = "2c1a06235bf811813caac9eaa9daa71af758667cdf7b082cb59863220fcaeed1"; + }; + doCheck = false; + meta = { + description = "Parse and format time values"; + }; + }; + + TimePeriod = buildPerlPackage { + pname = "Time-Period"; + version = "1.25"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PB/PBOYD/Time-Period-1.25.tar.gz"; + sha256 = "d07fa580529beac6a9c8274c6bf220b4c3aade685df65c1669d53339bf6ef1e8"; + }; + meta = { + description = "A Perl module to deal with time periods"; + license = lib.licenses.gpl1; + maintainers = [ maintainers.winpat ]; + }; + }; + + TimePiece = buildPerlPackage { + pname = "Time-Piece"; + version = "1.3401"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ES/ESAYM/Time-Piece-1.3401.tar.gz"; + sha256 = "4b55b7bb0eab45cf239a54dfead277dfa06121a43e63b3fce0853aecfdb04c27"; + }; + meta = { + description = "Object Oriented time objects"; + homepage = "https://metacpan.org/release/Time-Piece"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = with maintainers; [ sgo ]; + }; + }; + + Tirex = buildPerlPackage rec { + pname = "Tirex"; + version = "0.6.1"; + + src = fetchFromGitHub { + owner = "openstreetmap"; + repo = "tirex"; + rev = "v${version}"; + sha256 = "0dskf50qm6yh3rx6j2nqydr1if71x6ik85hxsa2r9qgldcby2rgh"; + }; + + buildInputs = [ + GD + IPCShareLite + JSON + LWP + pkgs.cairo + pkgs.mapnik + pkgs.zlib + ]; + + installPhase = '' + make install DESTDIR=$out INSTALLOPTS="" + mv $out/$out/lib $out/$out/share $out + rmdir $out/$out $out/nix/store $out/nix + ''; + + meta = { + description = "Tools for running a map tile server"; + homepage = "https://github.com/openstreetmap/tirex"; + maintainers = with maintainers; [ jglukasik ]; + license = with lib.licenses; [ gpl2 ]; + }; + }; + + Tk = buildPerlPackage { + pname = "Tk"; + version = "804.035"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SR/SREZIC/Tk-804.035.tar.gz"; + sha256 = "4d2b80291ba6de34d8ec886a085a6dbd2b790b926035a087e99025614c5ffdd4"; + }; + makeMakerFlags = "X11INC=${pkgs.xorg.libX11.dev}/include X11LIB=${pkgs.xorg.libX11.out}/lib"; + buildInputs = [ pkgs.xorg.libX11 pkgs.libpng ]; + doCheck = false; # Expects working X11. + meta = { + license = lib.licenses.tcltk; + }; + }; + + TreeDAGNode = buildPerlPackage { + pname = "Tree-DAG_Node"; + version = "1.31"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RS/RSAVAGE/Tree-DAG_Node-1.31.tgz"; + sha256 = "016kr76azxzfcpxjkhqp2piyyl6529shjis20mc3g2snfabsd2qw"; + }; + meta = { + description = "An N-ary tree"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + propagatedBuildInputs = [ FileSlurpTiny ]; + }; + + TreeSimple = buildPerlPackage { + pname = "Tree-Simple"; + version = "1.33"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RS/RSAVAGE/Tree-Simple-1.33.tgz"; + sha256 = "1alnwb6c7n4al91m9cyknvcyvdz521lh22dz1hyk4v7c50adffnv"; + }; + buildInputs = [ TestException ]; + meta = { + description = "A simple tree object"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TreeSimpleVisitorFactory = buildPerlPackage { + pname = "Tree-Simple-VisitorFactory"; + version = "0.15"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RS/RSAVAGE/Tree-Simple-VisitorFactory-0.15.tgz"; + sha256 = "06y2vazkl307k59hnkp9h5bp3p7711kgmp1qdhb2lgnfwzn84zin"; + }; + propagatedBuildInputs = [ TreeSimple ]; + buildInputs = [ TestException ]; + }; + + TryTiny = buildPerlPackage { + pname = "Try-Tiny"; + version = "0.30"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Try-Tiny-0.30.tar.gz"; + sha256 = "da5bd0d5c903519bbf10bb9ba0cb7bcac0563882bcfe4503aee3fb143eddef6b"; + }; + buildInputs = [ CPANMetaCheck CaptureTiny ]; + meta = { + description = "Minimal try/catch with proper preservation of $@"; + license = lib.licenses.mit; + }; + }; + + TryTinyByClass = buildPerlPackage { + pname = "Try-Tiny-ByClass"; + version = "0.01"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MAUKE/Try-Tiny-ByClass-0.01.tar.gz"; + sha256 = "0ipif12ix6vnmlyar4gh89libfadbsd9kvqg52f2cpr957slx3h3"; + }; + propagatedBuildInputs = [ DispatchClass TryTiny ]; + meta = { + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Twiggy = buildPerlPackage { + pname = "Twiggy"; + version = "0.1025"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIYAGAWA/Twiggy-0.1025.tar.gz"; + sha256 = "1a57knbwync7rlzhsz1kdc0sd380xnaccwgiy1qwj5d87abdynnp"; + }; + propagatedBuildInputs = [ AnyEvent Plack ]; + buildInputs = [ TestRequires TestSharedFork TestTCP ]; + meta = { + description = "AnyEvent HTTP server for PSGI (like Thin)"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/miyagawa/Twiggy"; + }; + }; + + TypeTiny = buildPerlPackage { + pname = "Type-Tiny"; + version = "1.012000"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TOBYINK/Type-Tiny-1.012000.tar.gz"; + sha256 = "147axzi07g5akpzbzd2npvdyh9pmzv22a8la1dmylahw2qh15nyk"; + }; + propagatedBuildInputs = [ ExporterTiny ]; + meta = { + description = "Tiny, yet Moo(se)-compatible type constraint"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ TestMemoryCycle ]; + }; + + TypeTinyXS = buildPerlPackage { + pname = "Type-Tiny-XS"; + version = "0.022"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TOBYINK/Type-Tiny-XS-0.022.tar.gz"; + sha256 = "bcc34a31f7dc1d30cc803889b5c8f90e4773b73b5becbdb3860f5abe7e22ff00"; + }; + meta = { + homepage = "https://metacpan.org/release/Type-Tiny-XS"; + description = "Provides an XS boost for some of Type::Tiny's built-in type constraints"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TypesSerialiser = buildPerlPackage { + pname = "Types-Serialiser"; + version = "1.01"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/ML/MLEHMANN/Types-Serialiser-1.01.tar.gz"; + sha256 = "104a7292pwwg57rswpkiaq1cgj7hcsrpf818azcy7l0l14xigizq"; + }; + propagatedBuildInputs = [ commonsense ]; + meta = { + }; + }; + + UNIVERSALcan = buildPerlPackage { + pname = "UNIVERSAL-can"; + version = "1.20140328"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CH/CHROMATIC/UNIVERSAL-can-1.20140328.tar.gz"; + sha256 = "522da9f274786fe2cba99bc77cc1c81d2161947903d7fad10bd62dfb7f11990f"; + }; + meta = { + homepage = "https://github.com/chromatic/UNIVERSAL-can"; + description = "Work around buggy code calling UNIVERSAL::can() as a function"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + UNIVERSALisa = buildPerlPackage { + pname = "UNIVERSAL-isa"; + version = "1.20171012"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/UNIVERSAL-isa-1.20171012.tar.gz"; + sha256 = "0avzv9j32aab6l0rd63n92v0pgliz1p4yabxxjfq275hdh1mcsfi"; + }; + meta = { + homepage = "https://github.com/chromatic/UNIVERSAL-isa"; + description = "Attempt to recover from people calling UNIVERSAL::isa as a function"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + UNIVERSALrequire = buildPerlPackage { + pname = "UNIVERSAL-require"; + version = "0.18"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NE/NEILB/UNIVERSAL-require-0.18.tar.gz"; + sha256 = "b2a736a87967a143dab58c8a110501d5235bcdd2c8b2a3bfffcd3c0bd06b38ed"; + }; + meta = { + description = "Require() modules from a variable"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + UnicodeCaseFold = buildPerlModule { + pname = "Unicode-CaseFold"; + version = "1.01"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AR/ARODLAND/Unicode-CaseFold-1.01.tar.gz"; + sha256 = "418a212808f9d0b8bb330ac905096d2dd364976753d4c71534dab9836a63194d"; + }; + perlPreHook = lib.optionalString stdenv.isi686 "export LD=$CC"; # fix undefined reference to `__stack_chk_fail_local' + meta = { + description = "Unicode case-folding for case-insensitive lookups"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + UnicodeCheckUTF8 = buildPerlPackage { + pname = "Unicode-CheckUTF8"; + version = "1.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BR/BRADFITZ/Unicode-CheckUTF8-1.03.tar.gz"; + sha256 = "97f84daf033eb9b49cd8fe31db221fef035a5c2ee1d757f3122c88cf9762414c"; + }; + }; + + UnicodeLineBreak = buildPerlPackage { + pname = "Unicode-LineBreak"; + version = "2019.001"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NE/NEZUMI/Unicode-LineBreak-2019.001.tar.gz"; + sha256 = "12iinva5gqc9g7qzxrvmh45n714z0ad9g7wq2dxwgp6drbj64rs8"; + }; + propagatedBuildInputs = [ MIMECharset ]; + meta = { + description = "UAX #14 Unicode Line Breaking Algorithm"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + UnicodeString = buildPerlPackage { + pname = "Unicode-String"; + version = "2.10"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GA/GAAS/GAAS/Unicode-String-2.10.tar.gz"; + sha256 = "0s4vp8k7ag7z9lsnnkpa9mnch83kxhp9gh7yiapld5a7rq712jl9"; + }; + }; + + UnicodeStringprep = buildPerlModule { + pname = "Unicode-Stringprep"; + version = "1.105"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CF/CFAERBER/Unicode-Stringprep-1.105.tar.gz"; + sha256 = "e6bebbc58408231fd1317db9102449b3e7da4fa437e79f637382d36313efd011"; + }; + buildInputs = [ TestNoWarnings ]; + meta = { + description = "Preparation of Internationalized Strings (RFC 3454)"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + UnicodeUTF8 = buildPerlPackage { + pname = "Unicode-UTF8"; + version = "0.62"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CH/CHANSEN/Unicode-UTF8-0.62.tar.gz"; + sha256 = "fa8722d0b74696e332fddd442994436ea93d3bfc7982d4babdcedfddd657d0f6"; + }; + buildInputs = [ TestFatal ]; + meta = { + homepage = "https://github.com/chansen/p5-unicode-utf8"; + description = "Encoding and decoding of UTF-8 encoding form"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = with maintainers; [ sgo ]; + }; + }; + + UnixGetrusage = buildPerlPackage { + pname = "Unix-Getrusage"; + version = "0.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TA/TAFFY/Unix-Getrusage-0.03.tar.gz"; + sha256 = "76cde1cee2453260b85abbddc27cdc9875f01d2457e176e03dcabf05fb444d12"; + }; + }; + + URI = buildPerlPackage { + pname = "URI"; + version = "5.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/O/OA/OALDERS/URI-5.05.tar.gz"; + sha256 = "1v3r3ck67w272kzfgm1nd3wb41av1hlnza56vkxxj1i7s3917hd5"; + }; + buildInputs = [ TestNeeds ]; + meta = { + homepage = "https://github.com/libwww-perl/URI"; + description = "Uniform Resource Identifiers (absolute and relative)"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + URIdb = buildPerlModule { + pname = "URI-db"; + version = "0.19"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DW/DWHEELER/URI-db-0.19.tar.gz"; + sha256 = "c4999deaf451652216032c8e327ff6e6d655539eac379095bb69b0c369efa658"; + }; + propagatedBuildInputs = [ URINested ]; + meta = { + description = "Database URIs"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + URIFind = buildPerlModule { + pname = "URI-Find"; + version = "20160806"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MS/MSCHWERN/URI-Find-20160806.tar.gz"; + sha256 = "1mk3jv8x0mcq3ajrn9garnxd0jc7sw4pkwqi88r5apqvlljs84z2"; + }; + propagatedBuildInputs = [ URI ]; + meta = { + description = "Find URIs in arbitrary text"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + URIFromHash = buildPerlPackage { + pname = "URI-FromHash"; + version = "0.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DR/DROLSKY/URI-FromHash-0.05.tar.gz"; + sha256 = "1l3g5ygv83vn9y1zpwjdqq5cs4ip2q058q0gmpcf5wp9rsycbjm7"; + }; + propagatedBuildInputs = [ ParamsValidate URI ]; + meta = { + description = "Build a URI from a set of named parameters"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ TestFatal ]; + }; + + UriGoogleChart = buildPerlPackage { + pname = "URI-GoogleChart"; + version = "1.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GA/GAAS/URI-GoogleChart-1.02.tar.gz"; + sha256 = "00hq5cpsk7sa04n0wg52qhpqf9i2849yyvw2zk83ayh1qqpc50js"; + }; + propagatedBuildInputs = [ URI ]; + }; + + UserIdentity = buildPerlPackage { + pname = "User-Identity"; + version = "1.00"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MARKOV/User-Identity-1.00.tar.gz"; + sha256 = "0jlzishg33848qvl5x7nsrnlpnx7lfg5hr4m1qrjddzy3hkv86cj"; + }; + meta = { + description = "Collect information about a user"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + URIIMAP = buildPerlPackage { + pname = "URI-imap"; + version = "1.01"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CW/CWEST/URI-imap-1.01.tar.gz"; + sha256 = "0bdv6mrdijcq46r3lmz801rscs63f8p9qqliy2safd6fds4rj55v"; + }; + propagatedBuildInputs = [ URI ]; + }; + + URINested = buildPerlModule { + pname = "URI-Nested"; + version = "0.10"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DW/DWHEELER/URI-Nested-0.10.tar.gz"; + sha256 = "e1971339a65fbac63ab87142d4b59d3d259d51417753c77cb58ea31a8233efaf"; + }; + propagatedBuildInputs = [ URI ]; + meta = { + description = "Nested URIs"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + URISmartURI = buildPerlPackage { + pname = "URI-SmartURI"; + version = "0.032"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RK/RKITOVER/URI-SmartURI-0.032.tar.gz"; + sha256 = "0b2grkmkbnp37q85wj7jpj5zr93vdbisgxlls2vl5q928rwln5zb"; + }; + propagatedBuildInputs = [ ClassC3Componentised FileFindRule ListMoreUtils Moose URI namespaceclean ]; + buildInputs = [ TestFatal TestNoWarnings ]; + meta = { + description = "Subclassable and hostless URIs"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + URITemplate = buildPerlPackage { + pname = "URI-Template"; + version = "0.24"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BR/BRICAS/URI-Template-0.24.tar.gz"; + sha256 = "1phibcmam2hklrddzj79l43va1gcqpyszbw21ynxq53ynmhjvbk8"; + }; + propagatedBuildInputs = [ URI ]; + meta = { + description = "Object for handling URI templates (RFC 6570)"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + URIcpan = buildPerlPackage { + pname = "URI-cpan"; + version = "1.007"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/URI-cpan-1.007.tar.gz"; + sha256 = "1lsjw7m9c3vyq1h9pqzngww18yq23mn4jxv9d7i4a2ifcsa16nhj"; + }; + propagatedBuildInputs = [ CPANDistnameInfo URI ]; + meta = { + description = "URLs that refer to things on the CPAN"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/rjbs/URI-cpan"; + }; + }; + + URIws = buildPerlPackage { + pname = "URI-ws"; + version = "0.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PL/PLICEASE/URI-ws-0.03.tar.gz"; + sha256 = "6e6b0e4172acb6a53c222639c000608c2dd61d50848647482ac8600d50e541ef"; + }; + propagatedBuildInputs = [ URI ]; + meta = { + homepage = "https://metacpan.org/release/URI-ws"; + description = "WebSocket support for URI package"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + UUIDTiny = buildPerlPackage { + pname = "UUID-Tiny"; + version = "1.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CA/CAUGUSTIN/UUID-Tiny-1.04.tar.gz"; + sha256 = "6dcd92604d64e96cc6c188194ae16a9d3a46556224f77b6f3d1d1312b68f9a3d"; + }; + meta = { + description = "Pure Perl UUID Support With Functional Interface"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + UUIDURandom = buildPerlPackage { + pname = "UUID-URandom"; + version = "0.001"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DAGOLDEN/UUID-URandom-0.001.tar.gz"; + sha256 = "3f13631b13b9604fb489e2989490c99f103743a837239bdafae9d6baf55f8f46"; + }; + propagatedBuildInputs = [ CryptURandom ]; + meta = { + homepage = "https://github.com/dagolden/UUID-URandom"; + description = "UUIDs based on /dev/urandom or the Windows Crypto API"; + license = lib.licenses.asl20; + }; + }; + + VariableMagic = buildPerlPackage { + pname = "Variable-Magic"; + version = "0.62"; + src = fetchurl { + url = "mirror://cpan/authors/id/V/VP/VPIT/Variable-Magic-0.62.tar.gz"; + sha256 = "3f9a18517e33f006a9c2fc4f43f01b54abfe6ff2eae7322424f31069296b615c"; + }; + meta = { + description = "Associate user-defined magic to variables from Perl"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Version = buildPerlPackage { + pname = "version"; + version = "0.9928"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LE/LEONT/version-0.9928.tar.gz"; + sha256 = "13mabl07rhwwlshj72hvp1j43q3ygxf7wp7qxx3nbqbnrf6i83i4"; + }; + meta = { + description = "Structured version objects"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + vidir = buildPerlPackage { + pname = "App-vidir"; + version = "0.050"; + src = fetchurl { + url = "mirror://cpan/authors/id/W/WO/WOLDRICH/App-vidir-0.050.tar.gz"; + sha256 = "1xa3vabbkxaqa8pnyl0dblr1m4g2229m1fzl8c9q74f06i00hikh"; + }; + outputs = [ "out" ]; + meta = { + maintainers = [ maintainers.chreekat ]; + description = "Edit a directory in $EDITOR"; + license = with lib.licenses; [ gpl1 ]; + }; + }; + + VMEC2 = buildPerlModule { + pname = "VM-EC2"; + version = "1.28"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LD/LDS/VM-EC2-1.28.tar.gz"; + sha256 = "b2b6b31745c57431fca0efb9b9d0b8f168d6081755e048fd9d6c4469bd108acd"; + }; + propagatedBuildInputs = [ AnyEventCacheDNS AnyEventHTTP JSON StringApprox XMLSimple ]; + meta = { + description = "Perl interface to Amazon EC2, Virtual Private Cloud, Elastic Load Balancing, Autoscaling, and Relational Database services"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + VMEC2SecurityCredentialCache = buildPerlPackage { + pname = "VM-EC2-Security-CredentialCache"; + version = "0.25"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RC/RCONOVER/VM-EC2-Security-CredentialCache-0.25.tar.gz"; + sha256 = "fc7e9c152ff2b721ccb221ac40089934775cf58366aedb5cc1693609f840937b"; + }; + propagatedBuildInputs = [ DateTimeFormatISO8601 VMEC2 ]; + meta = { + description = "Cache credentials respecting expiration time for IAM roles"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + W3CLinkChecker = buildPerlPackage { + pname = "W3C-LinkChecker"; + version = "4.81"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SC/SCOP/W3C-LinkChecker-4.81.tar.gz"; + sha256 = "6239f61b20d91dce7b21e4d4f626ab93a8f1e2f207da5015590d508cf6c66a65"; + }; + outputs = [ "out" ]; + propagatedBuildInputs = [ CGI CSSDOM ConfigGeneral LWP LocaleCodes NetIP TermReadKey ]; + meta = { + homepage = "https://validator.w3.org/checklink"; + description = "A tool to check links and anchors in Web pages or full Web sites"; + license = lib.licenses.w3c; + }; + }; + + WWWCurl = buildPerlPackage { + pname = "WWW-Curl"; + version = "4.17"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SZ/SZBALINT/WWW-Curl-4.17.tar.gz"; + sha256 = "1fmp9aib1kaps9vhs4dwxn7b15kgnlz9f714bxvqsd1j1q8spzsj"; + }; + patches = [ + (fetchpatch { + url = "https://aur.archlinux.org/cgit/aur.git/plain/curl-7.71.0.patch?h=perl-www-curl&id=261d84887d736cc097abef61164339216fb79180"; + sha256 = "1hiw5lkflfa93z5d6k8fnnml0r08c653bbvvb8zx6gcrlbrdalfs"; + name = "WWWCurl-curl-7.71.0.patch"; + }) + ]; + NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isClang "-Wno-return-type"; + buildInputs = [ pkgs.curl ]; + doCheck = false; # performs network access + }; + + WWWFormUrlEncoded = buildPerlModule { + pname = "WWW-Form-UrlEncoded"; + version = "0.26"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KA/KAZEBURO/WWW-Form-UrlEncoded-0.26.tar.gz"; + sha256 = "1x4h5m5fkwaa0gbn6zp9mjrhr3r989w8wyrjxiii3dqm3xghnj60"; + }; + meta = { + description = "parser and builder for application/x-www-form-urlencoded"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/kazeburo/WWW-Form-UrlEncoded"; + }; + }; + + WWWMechanize = buildPerlPackage { + pname = "WWW-Mechanize"; + version = "2.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/O/OA/OALDERS/WWW-Mechanize-2.03.tar.gz"; + sha256 = "0pl4jc6hmkhzkswka62dij7l0378qvn9dwbh08n54q8xyr6xf79z"; + }; + propagatedBuildInputs = [ HTMLForm HTMLTree LWP ]; + doCheck = false; + meta = { + homepage = "https://github.com/libwww-perl/WWW-Mechanize"; + description = "Handy web browsing in a Perl object"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ CGI HTTPServerSimple PathTiny TestDeep TestFatal TestOutput TestWarnings ]; + }; + + WWWMechanizeCGI = buildPerlPackage { + pname = "WWW-Mechanize-CGI"; + version = "0.3"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MR/MRAMBERG/WWW-Mechanize-CGI-0.3.tar.gz"; + sha256 = "046jm18liq7rwkdawdh9520cnalkfrk26yqryp7xgw71y65lvq61"; + }; + propagatedBuildInputs = [ HTTPRequestAsCGI WWWMechanize ]; + preConfigure = '' + substituteInPlace t/cgi-bin/script.cgi \ + --replace '#!/usr/bin/perl' '#!${perl}/bin/perl' + ''; + meta = { + broken = stdenv.isDarwin; # never built on Hydra https://hydra.nixos.org/job/nixpkgs/staging-next/perl534Packages.WWWMechanizeCGI.x86_64-darwin + }; + }; + + WWWRobotRules = buildPerlPackage { + pname = "WWW-RobotRules"; + version = "6.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GA/GAAS/WWW-RobotRules-6.02.tar.gz"; + sha256 = "07m50dp5n5jxv3m93i55qvnd67a6g7cvbvlik115kmc8lbkh5da6"; + }; + propagatedBuildInputs = [ URI ]; + meta = { + description = "Database of robots.txt-derived permissions"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + WWWTwilioAPI = buildPerlPackage { + pname = "WWW-Twilio-API"; + version = "0.21"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SC/SCOTTW/WWW-Twilio-API-0.21.tar.gz"; + sha256 = "582db53a091f8da3670c037733314f2510af5e8ee0ba42a0e391e2f2e3ca7734"; + }; + prePatch = "rm examples.pl"; + propagatedBuildInputs = [ LWPProtocolHttps ]; + meta = { + description = "Accessing Twilio's REST API with Perl"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + WWWYoutubeViewer = callPackage ../development/perl-modules/WWW-YoutubeViewer { }; + + Want = buildPerlPackage { + pname = "Want"; + version = "0.29"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RO/ROBIN/Want-0.29.tar.gz"; + sha256 = "1xsjylbxxcbkjazqms49ipi94j1hd2ykdikk29cq7dscil5p9r5l"; + }; + }; + + Win32ShellQuote = buildPerlPackage { + pname = "Win32-ShellQuote"; + version = "0.003001"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HA/HAARG/Win32-ShellQuote-0.003001.tar.gz"; + sha256 = "aa74b0e3dc2d41cd63f62f853e521ffd76b8d823479a2619e22edb4049b4c0dc"; + }; + meta = { + description = "Quote argument lists for Win32"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Workflow = buildPerlModule { + pname = "Workflow"; + version = "1.48"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JO/JONASBN/Workflow-1.48.tar.gz"; + sha256 = "0bz6gil9mygh5ikh8mf86ids9xb1dbgx9hqc1g68qn9ffsyb012f"; + }; + buildInputs = [ DBDMock ListMoreUtils PodCoverageTrustPod TestException TestKwalitee TestPod TestPodCoverage ]; + propagatedBuildInputs = [ ClassAccessor ClassFactory ClassObservable DBI DataUUID DateTimeFormatStrptime FileSlurp LogDispatch LogLog4perl XMLSimple ]; + meta = { + homepage = "https://github.com/jonasbn/perl-workflow"; + description = "Simple, flexible system to implement workflows"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Wx = buildPerlPackage { + pname = "Wx"; + version = "0.9932"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MD/MDOOTSON/Wx-0.9932.tar.gz"; + sha256 = "0w0vcpk8bmklh16c0z1vxgipnmvdw7cckcmay7k7cihgb99vdz8w"; + }; + propagatedBuildInputs = [ AlienWxWidgets ]; + # Testing requires an X server: + # Error: Unable to initialize GTK, is DISPLAY set properly?" + doCheck = false; + buildInputs = [ ExtUtilsXSpp ]; + }; + + WxGLCanvas = buildPerlPackage { + pname = "Wx-GLCanvas"; + version = "0.09"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MB/MBARBON/Wx-GLCanvas-0.09.tar.gz"; + sha256 = "1q4gvj4gdx4l8k4mkgiix24p9mdfy1miv7abidf0my3gy2gw5lka"; + }; + propagatedBuildInputs = [ pkgs.libGLU Wx ]; + doCheck = false; + }; + + X11IdleTime = buildPerlPackage { + pname = "X11-IdleTime"; + version = "0.09"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AW/AWENDT/X11-IdleTime-0.09.tar.gz"; + sha256 = "0j27cb9yy9ymni8cbiyxplbg086b8lv6b330nwqyx0briq3xrzfq"; + }; + buildInputs = [ pkgs.xorg.libXext pkgs.xorg.libXScrnSaver pkgs.xorg.libX11 ]; + propagatedBuildInputs = [ InlineC ]; + patchPhase = "sed -ie 's,-L/usr/X11R6/lib/,-L${pkgs.xorg.libX11.out}/lib/ -L${pkgs.xorg.libXext.out}/lib/ -L${pkgs.xorg.libXScrnSaver}/lib/,' IdleTime.pm"; + meta = { + description = "Get the idle time of X11"; + }; + }; + + X11Protocol = buildPerlPackage { + pname = "X11-Protocol"; + version = "0.56"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SM/SMCCAM/X11-Protocol-0.56.tar.gz"; + sha256 = "1dq89bh6fqv7l5mbffqcismcljpq5f869bx7g8lg698zgindv5ny"; + }; + buildInputs = [ pkgs.xlibsWrapper ]; + NIX_CFLAGS_LINK = "-lX11"; + doCheck = false; # requires an X server + }; + + X11ProtocolOther = buildPerlPackage { + pname = "X11-Protocol-Other"; + version = "31"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KR/KRYDE/X11-Protocol-Other-31.tar.gz"; + sha256 = "1x3kvic52jgp2mvd5wzrqrprqi82cdk8l4075v8b33ksvj9mjqiw"; + }; + propagatedBuildInputs = [ X11Protocol ]; + buildInputs = [ EncodeHanExtra ModuleUtil ]; + meta = { + description = "Miscellaneous helpers for X11::Protocol connections."; + license = with lib.licenses; [ gpl1Plus gpl3Plus ]; + homepage = "http://user42.tuxfamily.org/x11-protocol-other/index.html"; + }; + }; + + X11GUITest = buildPerlPackage { + pname = "X11-GUITest"; + version = "0.28"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CT/CTRONDLP/X11-GUITest-0.28.tar.gz"; + sha256 = "0jznws68skdzkhgkgcgjlj40qdyh9i75r7fw8bqzy406f19xxvnw"; + }; + buildInputs = [ pkgs.xlibsWrapper pkgs.xorg.libXtst pkgs.xorg.libXi ]; + NIX_CFLAGS_LINK = "-lX11 -lXext -lXtst"; + doCheck = false; # requires an X server + }; + + X11XCB = buildPerlPackage { + pname = "X11-XCB"; + version = "0.18"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MS/MSTPLBG/X11-XCB-0.18.tar.gz"; + sha256 = "1cjpghw7cnackw20lbd7yzm222kz5bnrwz52f8ay24d1f4pwrnxf"; + }; + patches = [ + # Pull upstream fix for parallel build failure + (fetchpatch { + url = "https://github.com/stapelberg/X11-XCB/commit/813608dacdae1ae35c9eb0f171a958617e014520.patch"; + sha256 = "017f5r4fyryhzgp99lw3csrl21r27hmqv483vp9fdz9xkvrmh743"; + }) + ]; + AUTOMATED_TESTING = false; + nativeBuildInputs = [ pkgs.pkg-config ]; + buildInputs = [ pkgs.xorg.libxcb pkgs.xorg.xcbproto pkgs.xorg.xcbutil pkgs.xorg.xcbutilwm ExtUtilsDepends ExtUtilsPkgConfig TestDeep TestException XSObjectMagic ]; + propagatedBuildInputs = [ DataDump MouseXNativeTraits XMLDescent XMLSimple ]; + NIX_CFLAGS_LINK = "-lxcb -lxcb-util -lxcb-xinerama -lxcb-icccm"; + doCheck = false; # requires an X server + meta = { + description = "XCB bindings for X"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + XMLCanonicalizeXML = buildPerlPackage { + pname = "XML-CanonicalizeXML"; + version = "0.10"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SJ/SJZASADA/XML-CanonicalizeXML-0.10.tar.gz"; + sha256 = "1vl6wbqmq91mc0hkgfwlndbxcv2jm01hj7kpzprw3d6bh144ca77"; + }; + buildInputs = [ pkgs.libxml2 ]; + meta = { + description = "Perl extension for inclusive (1.0 and 1.1) and exclusive canonicalization of XML using libxml2"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + XMLDescent = buildPerlModule { + pname = "XML-Descent"; + version = "1.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AN/ANDYA/XML-Descent-1.04.tar.gz"; + sha256 = "0l5xmw2hd95ypppz3lyvp4sn02ccsikzjwacli3ydxfdz1bbh4d7"; + }; + buildInputs = [ TestDifferences ]; + propagatedBuildInputs = [ XMLTokeParser ]; + meta = { + description = "Recursive descent XML parsing"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + XMLEncoding = buildPerlPackage { + pname = "XML-Encoding"; + version = "2.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHAY/XML-Encoding-2.11.tar.gz"; + sha256 = "a50e41af0a79b882d48816b95681f38a55af1e6a88828dcd96374a8bde2305a1"; + }; + propagatedBuildInputs = [ XMLParser ]; + meta = { + description = "A perl module for parsing XML encoding maps"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + XMLDOM = buildPerlPackage { + pname = "XML-DOM"; + version = "1.46"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TJ/TJMATHER/XML-DOM-1.46.tar.gz"; + sha256 = "0phpkc4li43m2g44hdcvyxzy9pymqwlqhh5hwp2xc0cv8l5lp8lb"; + }; + propagatedBuildInputs = [ XMLRegExp libxml_perl ]; + }; + + XMLFeedPP = buildPerlPackage { + pname = "XML-FeedPP"; + version = "0.95"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MARKOV/XML-FeedPP-0.95.tar.gz"; + sha256 = "1x5806xwmbqxr1dkdhalb6d7n31s3ya776klkai7c2x6y6drbhwh"; + }; + propagatedBuildInputs = [ XMLTreePP ]; + meta = { + description = "Parse/write/merge/edit RSS/RDF/Atom syndication feeds"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + XMLFilterBufferText = buildPerlPackage { + pname = "XML-Filter-BufferText"; + version = "1.01"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RB/RBERJON/XML-Filter-BufferText-1.01.tar.gz"; + sha256 = "8fd2126d3beec554df852919f4739e689202cbba6a17506e9b66ea165841a75c"; + }; + doCheck = false; + }; + + XMLFilterXInclude = buildPerlPackage { + pname = "XML-Filter-XInclude"; + version = "1.0"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MS/MSERGEANT/XML-Filter-XInclude-1.0.tar.gz"; + sha256 = "98746f3c1f6f049491fec203d455bb8f8c9c6e250f041904dda5d78e21187f93"; + }; + doCheck = false; + }; + + XMLFilterSort = buildPerlPackage { + pname = "XML-Filter-Sort"; + version = "1.01"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GR/GRANTM/XML-Filter-Sort-1.01.tar.gz"; + sha256 = "sha256-UQWF85pJFszV+o1UXpYXnJHq9vx8l6QBp1aOhBFi+l8="; + }; + nativeBuildInputs = lib.optional stdenv.isDarwin shortenPerlShebang; + propagatedBuildInputs = [ + XMLSAX + XMLSAXWriter + ]; + postInstall = lib.optionalString stdenv.isDarwin '' + shortenPerlShebang $out/bin/xmlsort + ''; + }; + + XMLGrove = buildPerlPackage { + pname = "XML-Grove"; + version = "0.46alpha"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KM/KMACLEOD/XML-Grove-0.46alpha.tar.gz"; + sha256 = "05yis1ms7cgwjh57k57whrmalb3ha0bjr9hyvh7cnadcyiynvdpw"; + }; + buildInputs = [ pkgs.libxml2 ]; + propagatedBuildInputs = [ libxml_perl ]; + + #patch from https://bugzilla.redhat.com/show_bug.cgi?id=226285 + patches = [ ../development/perl-modules/xml-grove-utf8.patch ]; + meta = { + description = "Perl-style XML objects"; + }; + }; + + XMLHandlerYAWriter = buildPerlPackage { + pname = "XML-Handler-YAWriter"; + version = "0.23"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KR/KRAEHE/XML-Handler-YAWriter-0.23.tar.gz"; + sha256 = "11d45a1sz862va9rry3p2m77pwvq3kpsvgwhc5ramh9mbszbnk77"; + }; + propagatedBuildInputs = [ libxml_perl ]; + meta = { + description = "Yet another Perl SAX XML Writer"; + }; + }; + + XMLLibXML = buildPerlPackage { + pname = "XML-LibXML"; + version = "2.0207"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/XML-LibXML-2.0207.tar.gz"; + sha256 = "sha256-kDQ2yYWYdb71WTJDquhc7TKa0PtLV7v0WXXjJUfFDBU="; + }; + SKIP_SAX_INSTALL = 1; + buildInputs = [ AlienBuild AlienLibxml2 ] + ++ lib.optionals stdenv.isDarwin (with pkgs; [ libiconv zlib ]); + propagatedBuildInputs = [ XMLSAX ]; + }; + + XMLLibXMLSimple = buildPerlPackage { + pname = "XML-LibXML-Simple"; + version = "1.01"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MARKOV/XML-LibXML-Simple-1.01.tar.gz"; + sha256 = "cd98c8104b70d7672bfa26b4513b78adf2b4b9220e586aa8beb1a508500365a6"; + }; + propagatedBuildInputs = [ XMLLibXML ]; + meta = { + description = "XML::LibXML based XML::Simple clone"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + XMLLibXSLT = buildPerlPackage { + pname = "XML-LibXSLT"; + version = "1.99"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/XML-LibXSLT-1.99.tar.gz"; + sha256 = "1w7pn0wb88nma6biy4h05ak3j4ykma6vz1wbkrxy8qgvfyl1fzhj"; + }; + buildInputs = [ pkgs.pkg-config pkgs.zlib pkgs.libxml2 pkgs.libxslt ]; + propagatedBuildInputs = [ XMLLibXML ]; + }; + + XMLMini = buildPerlPackage { + pname = "XML-Mini"; + version = "1.38"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PD/PDEEGAN/XML-Mini-1.38.tar.gz"; + sha256 = "af803d38036a3184e124a682e5466f1bc107f48a89ef35b0c7647e11a073fe2d"; + }; + meta = { + license = "unknown"; + }; + }; + + XMLNamespaceSupport = buildPerlPackage { + pname = "XML-NamespaceSupport"; + version = "1.12"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PERIGRIN/XML-NamespaceSupport-1.12.tar.gz"; + sha256 = "1vz5pbi4lm5fhq2slrs2hlp6bnk29863abgjlcx43l4dky2rbsa7"; + }; + }; + + XMLParser = buildPerlPackage { + pname = "XML-Parser"; + version = "2.46"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TODDR/XML-Parser-2.46.tar.gz"; + sha256 = "0pai3ik47q7rgnix9644c673fwydz52gqkxr9kxwq765j4j36cfk"; + }; + patches = [ ../development/perl-modules/xml-parser-0001-HACK-Assumes-Expat-paths-are-good.patch ]; + postPatch = lib.optionalString (stdenv.buildPlatform != stdenv.hostPlatform) '' + substituteInPlace Expat/Makefile.PL --replace 'use English;' '#' + '' + lib.optionalString stdenv.isCygwin '' + sed -i"" -e "s@my \$compiler = File::Spec->catfile(\$path, \$cc\[0\]) \. \$Config{_exe};@my \$compiler = File::Spec->catfile(\$path, \$cc\[0\]) \. (\$^O eq 'cygwin' ? \"\" : \$Config{_exe});@" inc/Devel/CheckLib.pm + ''; + makeMakerFlags = "EXPATLIBPATH=${pkgs.expat.out}/lib EXPATINCPATH=${pkgs.expat.dev}/include"; + propagatedBuildInputs = [ LWP ]; + }; + + XMLParserLite = buildPerlPackage { + pname = "XML-Parser-Lite"; + version = "0.722"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PH/PHRED/XML-Parser-Lite-0.722.tar.gz"; + sha256 = "1vk3jwh1kfcsmc5kvxzqdnb1cllvf0yf27fg0ra0w6jkw4ks143g"; + }; + buildInputs = [ TestRequires ]; + meta = { + description = "Lightweight pure-perl XML Parser (based on regexps)"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + XMLXPath = buildPerlPackage { + pname = "XML-XPath"; + version = "1.44"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MANWAR/XML-XPath-1.44.tar.gz"; + sha256 = "1cc9110705165dc09dd09974dd7c0b6709c9351d6b6b1cef5a711055f891dd0f"; + }; + buildInputs = [ PathTiny ]; + propagatedBuildInputs = [ XMLParser ]; + meta = { + description = "Modules for parsing and evaluating XPath statements"; + license = lib.licenses.artistic2; + }; + }; + + XMLXPathEngine = buildPerlPackage { + pname = "XML-XPathEngine"; + version = "0.14"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIROD/XML-XPathEngine-0.14.tar.gz"; + sha256 = "0r72na14bmsxfd16s9nlza155amqww0k8wsa9x2a3sqbpp5ppznj"; + }; + meta = { + description = "A re-usable XPath engine for DOM-like trees"; + }; + }; + + XMLRegExp = buildPerlPackage { + pname = "XML-RegExp"; + version = "0.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TJ/TJMATHER/XML-RegExp-0.04.tar.gz"; + sha256 = "0m7wj00a2kik7wj0azhs1zagwazqh3hlz4255n75q21nc04r06fz"; + }; + }; + + XMLRPCLite = buildPerlPackage { + pname = "XMLRPC-Lite"; + version = "0.717"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PH/PHRED/XMLRPC-Lite-0.717.tar.gz"; + sha256 = "0925md6jhzgpsibwgny4my461b2wngm8dhxlcry8pbqzrgrab7rs"; + }; + propagatedBuildInputs = [ SOAPLite ]; + # disable tests that require network + preCheck = "rm t/{26-xmlrpc.t,37-mod_xmlrpc.t}"; + meta = { + license = with lib.licenses; [ artistic1 gpl1Plus ]; + description = "Client and server implementation of XML-RPC protocol"; + }; + }; + + XMLRSS = buildPerlModule { + pname = "XML-RSS"; + version = "1.62"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/XML-RSS-1.62.tar.gz"; + sha256 = "0klb8ghd405pdkmn25lp3i4j2lfydz8w581sk51p3zy788s0c9yk"; + }; + propagatedBuildInputs = [ DateTimeFormatMail DateTimeFormatW3CDTF XMLParser ]; + meta = { + homepage = "http://perl-rss.sourceforge.net/"; + description = "Creates and updates RSS files"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + XMLRules = buildPerlModule { + pname = "XML-Rules"; + version = "1.16"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JE/JENDA/XML-Rules-1.16.tar.gz"; + sha256 = "3788255c07afe4195a0de72ce050652320d817528ff2d10c611f6e392043868b"; + }; + propagatedBuildInputs = [ XMLParser ]; + meta = { + description = + "Parse XML and specify what and how to keep/process for individual tags"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + XMLSAX = buildPerlPackage { + pname = "XML-SAX"; + version = "1.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GR/GRANTM/XML-SAX-1.02.tar.gz"; + sha256 = "0am13vnv8qsjafr5ljakwnkhlwpk15sga02z8mxsg9is0j3w61j5"; + }; + propagatedBuildInputs = [ XMLNamespaceSupport XMLSAXBase ]; + postInstall = '' + perl -MXML::SAX -e "XML::SAX->add_parser(q(XML::SAX::PurePerl))->save_parsers()" + ''; + }; + + XMLSAXBase = buildPerlPackage { + pname = "XML-SAX-Base"; + version = "1.09"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GR/GRANTM/XML-SAX-Base-1.09.tar.gz"; + sha256 = "66cb355ba4ef47c10ca738bd35999723644386ac853abbeb5132841f5e8a2ad0"; + }; + meta = { + description = "Base class for SAX Drivers and Filters"; + homepage = "https://github.com/grantm/XML-SAX-Base"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + XMLSAXExpat = buildPerlPackage { + pname = "XML-SAX-Expat"; + version = "0.51"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BJ/BJOERN/XML-SAX-Expat-0.51.tar.gz"; + sha256 = "0gy8h2bvvvlxychwsb99ikdh5cqpk6sqc073jk2b4zffs09n40ac"; + }; + propagatedBuildInputs = [ XMLParser XMLSAX ]; + # Avoid creating perllocal.pod, which contains a timestamp + installTargets = [ "pure_install" ]; + meta = { + description = "SAX Driver for Expat"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + XMLSAXWriter = buildPerlPackage { + pname = "XML-SAX-Writer"; + version = "0.57"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PERIGRIN/XML-SAX-Writer-0.57.tar.gz"; + sha256 = "3d61d07ef43b0126f5b4de4f415a256fa859fa88dc4fdabaad70b7be7c682cf0"; + }; + propagatedBuildInputs = [ XMLFilterBufferText XMLNamespaceSupport XMLSAXBase ]; + meta = { + homepage = "https://github.com/perigrin/xml-sax-writer"; + description = "SAX2 XML Writer"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + XMLSemanticDiff = buildPerlModule { + pname = "XML-SemanticDiff"; + version = "1.0007"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PERIGRIN/XML-SemanticDiff-1.0007.tar.gz"; + sha256 = "1xd00821y795fy2rag8aizb5wsbbzfxgmdf9qwpvdxn3pgpyzz85"; + }; + propagatedBuildInputs = [ XMLParser ]; + }; + + XMLSimple = buildPerlPackage { + pname = "XML-Simple"; + version = "2.25"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GR/GRANTM/XML-Simple-2.25.tar.gz"; + sha256 = "1y6vh328zrh085d40852v4ij2l4g0amxykswxd1nfhd2pspds7sk"; + }; + propagatedBuildInputs = [ XMLSAXExpat ]; + }; + + XMLTokeParser = buildPerlPackage { + pname = "XML-TokeParser"; + version = "0.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PO/PODMASTER/XML-TokeParser-0.05.tar.gz"; + sha256 = "1hnpwb3lh6cbgwvjjgqzcp6jm4mp612qn6ili38adc9nhkwv8fc5"; + }; + propagatedBuildInputs = [ XMLParser ]; + meta = { + description = "Simplified interface to XML::Parser"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + XMLTreePP = buildPerlPackage { + pname = "XML-TreePP"; + version = "0.43"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KA/KAWASAKI/XML-TreePP-0.43.tar.gz"; + sha256 = "7fbe2d6430860059894aeeebf75d4cacf1bf8d7b75294eb87d8e1502f81bd760"; + }; + propagatedBuildInputs = [ LWP ]; + meta = { + description = "Pure Perl implementation for parsing/writing XML documents"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + XMLTwig = buildPerlPackage { + pname = "XML-Twig"; + version = "3.52"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIROD/XML-Twig-3.52.tar.gz"; + sha256 = "1bc0hrz4jp6199hi29sdxmb9gyy45whla9hd19yqfasgq8k5ixzy"; + }; + postInstall = '' + mkdir -p $out/bin + cp tools/xml_grep/xml_grep $out/bin + ''; + propagatedBuildInputs = [ XMLParser ]; + doCheck = false; # requires lots of extra packages + }; + + XMLValidatorSchema = buildPerlPackage { + pname = "XML-Validator-Schema"; + version = "1.10"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SA/SAMTREGAR/XML-Validator-Schema-1.10.tar.gz"; + sha256 = "6142679580150a891f7d32232b5e31e2b4e5e53e8a6fa9cbeecb5c23814f1422"; + }; + propagatedBuildInputs = [ TreeDAGNode XMLFilterBufferText XMLSAX ]; + meta = { + description = "Validate XML against a subset of W3C XML Schema"; + }; + }; + + XMLWriter = buildPerlPackage { + pname = "XML-Writer"; + version = "0.900"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JO/JOSEPHW/XML-Writer-0.900.tar.gz"; + sha256 = "07qd806kcs7si7qakx3x5p68xq2jdmkxdrns987kaayg7syzbj3k"; + }; + }; + + XSObjectMagic = buildPerlPackage { + pname = "XS-Object-Magic"; + version = "0.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/XS-Object-Magic-0.05.tar.gz"; + sha256 = "0njyy4y0zax4zz55y82dlm9cly1pld1lcxb281s12bp9rrhf9j9x"; + }; + buildInputs = [ ExtUtilsDepends TestFatal TestSimple13 ]; + meta = { + description = "XS pointer backed objects using sv_magic"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + XSParseKeyword = buildPerlModule { + pname = "XS-Parse-Keyword"; + version = "0.12"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PEVANS/XS-Parse-Keyword-0.12.tar.gz"; + sha256 = "0crwhcw9ciqndvwvhycd93m6jgyhi77yyj4vi9xfyglpv84p3y68"; + }; + buildInputs = [ ExtUtilsCChecker ]; + perlPreHook = lib.optionalString stdenv.isDarwin "export LD=$CC"; + meta = { + description = "XS functions to assist in parsing keyword syntax"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.zakame ]; + }; + }; + + XSParseSublike = buildPerlModule { + pname = "XS-Parse-Sublike"; + version = "0.12"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PEVANS/XS-Parse-Sublike-0.12.tar.gz"; + sha256 = "08kpia48f1rqc44rvbns97h3jyy2y5c8qlkh4a95v1m0yr5cb22s"; + }; + buildInputs = [ TestFatal ]; + perlPreHook = lib.optionalString stdenv.isDarwin "export LD=$CC"; + meta = { + description = "XS functions to assist in parsing sub-like syntax"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.zakame ]; + }; + }; + + XXX = buildPerlPackage { + pname = "XXX"; + version = "0.35"; + src = fetchurl { + url = "mirror://cpan/authors/id/I/IN/INGY/XXX-0.35.tar.gz"; + sha256 = "1azk2h3d2vxc84zpa34gr0dvhvf5qkwbaidy3ks0gkkx9463crm6"; + }; + propagatedBuildInputs = [ YAMLPP ]; + meta = { + description = "See Your Data in the Nude"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/ingydotnet/xxx-pm"; + }; + }; + + YAML = buildPerlPackage { + pname = "YAML"; + version = "1.30"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TI/TINITA/YAML-1.30.tar.gz"; + sha256 = "1kbrfksjg4k4vmx1i337m5n69m00m0m5bgsh61c15bzzrgbacc2h"; + }; + + buildInputs = [ TestBase TestDeep TestYAML ]; + + meta = { + homepage = "https://github.com/ingydotnet/yaml-pm"; + description = "YAML Ain't Markup Language (tm)"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + YAMLOld = buildPerlPackage { + pname = "YAML-Old"; + version = "1.23"; + src = fetchurl { + url = "mirror://cpan/authors/id/I/IN/INGY/YAML-Old-1.23.tar.gz"; + sha256 = "fa546fcd9acc5a39bc8871902f7fc1eba50e7dc781c5cd5c0abf1aece6d17ecd"; + }; + buildInputs = [ TestYAML TestBase ]; + meta = { + homepage = "https://github.com/ingydotnet/yaml-old-pm"; + description = "Old YAML.pm Legacy Code"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + YAMLSyck = buildPerlPackage { + pname = "YAML-Syck"; + version = "1.34"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TODDR/YAML-Syck-1.34.tar.gz"; + sha256 = "0na1wg3d7ykzy5i44w6i1s37ymq6x0cvcc9gzvmri9xxmv65d4fc"; + }; + perlPreHook = lib.optionalString stdenv.isDarwin "export LD=$CC"; + meta = { + description = "Fast, lightweight YAML loader and dumper"; + license = lib.licenses.mit; + }; + }; + + YAMLTiny = buildPerlPackage { + pname = "YAML-Tiny"; + version = "1.73"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/YAML-Tiny-1.73.tar.gz"; + sha256 = "0i3p4nz8ysrsrs6vlzc6gkjcfpcaf05xjc7lwbjkw7lg5shmycdw"; + }; + }; + + YAMLLibYAML = buildPerlPackage { + pname = "YAML-LibYAML"; + version = "0.82"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TI/TINITA/YAML-LibYAML-0.82.tar.gz"; + sha256 = "0j7yhxkaasccynl5iq1cqpf4x253p4bi5wsq6qbwwv2wjsiwgd02"; + }; + }; + + YAMLPP = buildPerlPackage { + pname = "YAML-PP"; + version = "0.026"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TI/TINITA/YAML-PP-0.026.tar.gz"; + sha256 = "1ss5b8ny00pvg6bfx562hy7z5hj02w1yh224qpn6dsgk3ikqx1ab"; + }; + buildInputs = [ TestDeep TestWarn ]; + meta = { + description = "YAML Framework"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + WebMachine = buildPerlPackage { + pname = "Web-Machine"; + version = "0.17"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DR/DROLSKY/Web-Machine-0.17.tar.gz"; + sha256 = "f139d2b3114c549e91847daaab8b75cb699e57daf5bbf0dbd13293f33fe5e22a"; + }; + buildInputs = [ NetHTTP TestFailWarnings TestFatal ]; + propagatedBuildInputs = [ HTTPHeadersActionPack HTTPMessage HashMultiValue IOHandleUtil ModuleRuntime Plack SubExporter TryTiny ]; + meta = { + homepage = "http://metacpan.org/release/Web-Machine"; + description = "A Perl port of Webmachine"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + WebServiceLinode = buildPerlModule { + pname = "WebService-Linode"; + version = "0.29"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIKEGRB/WebService-Linode-0.29.tar.gz"; + sha256 = "103aab245304f08e9e87ac7bc884ddb44a630de6bac077dc921f716d71154922"; + }; + buildInputs = [ ModuleBuildTiny ]; + propagatedBuildInputs = [ JSON LWPProtocolHttps ]; + meta = { + homepage = "https://github.com/mikegrb/WebService-Linode"; + description = "Perl Interface to the Linode.com API"; + license = with lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + +} // lib.optionalAttrs (config.allowAliases or true) { + autodie = null; # part of Perl + AutoLoader = null; # part of Perl 5.22 + constant = null; # part of Perl 5.22 + DevelSelfStubber = null; # part of Perl 5.22 + Digest = null; # part of Perl 5.22 + Exporter = null; # part of Perl 5.22 + I18NCollate = null; # part of Perl 5.22 + lib_ = null; # part of Perl 5.22 + LocaleMaketextSimple = null; # part of Perl 5.22 + MathComplex = null; # part of Perl 5.22 + MIMEBase64 = null; # part of Perl 5.22 + PerlIOviaQuotedPrint = null; # part of Perl 5.22 + PodEscapes = null; # part of Perl 5.22 + Safe = null; # part of Perl 5.22 + SearchDict = null; # part of Perl 5.22 + Test = null; # part of Perl 5.22 + TextAbbrev = null; # part of Perl 5.22 + TextTabsWrap = null; # part of Perl 5.22 + DigestSHA = null; + "if" = null; + TestSimple = null; + AttributeHandlers = null; # part of Perl 5.26 + base = null; # part of Perl 5.26 + CPANMeta = null; # part of Perl 5.26 + CPANMetaRequirements = null; # part of Perl 5.26 + CPANMetaYAML = null; # part of Perl 5.26 + DigestMD5 = null; # part of Perl 5.26 + LocaleMaketext = null; # part of Perl 5.26 + ModuleLoadConditional = null; # part of Perl 5.26 + ModuleMetadata = null; # part of Perl 5.26 + PerlOSType = null; # part of Perl 5.26 + PodUsage = null; # part of Perl 5.26 + TermANSIColor = null; # part of Perl 5.26 + TermCap = null; # part of Perl 5.26 + ThreadSemaphore = null; # part of Perl 5.26 + UnicodeNormalize = null; # part of Perl 5.26 + XSLoader = null; # part of Perl 5.26 + + Carp = null; # part of Perl 5.28 + ExtUtilsCBuilder = null; # part of Perl 5.28 + ExtUtilsParseXS = null; # part of Perl 5.28 + FilterSimple = null; # part of Perl 5.28 + IOSocketIP = null; # part of Perl 5.28 + SelfLoader = null; # part of Perl 5.28 + Socket = null; # part of Perl 5.28 + TestHarness = null; # part of Perl 5.28 + threads = null; # part of Perl 5.28 + TimeHiRes = null; # part of Perl 5.28 + UnicodeCollate = null; # part of Perl 5.28 + ModuleCoreList = null; # part of Perl 5.28.2 + + bignum = null; # part of Perl 5.30.3 + DataDumper = null; # part of Perl 5.30.3 + ExtUtilsManifest = null; # part of Perl 5.30.3 + FileTemp = null; # part of Perl 5.30.3 + MathBigRat = null; # part of Perl 5.30.3 + Storable = null; # part of Perl 5.30.3 + threadsshared = null; # part of Perl 5.30.3 + ThreadQueue = null; # part of Perl 5.30.3 + + ArchiveZip_1_53 = self.ArchiveZip; + Autobox = self.autobox; + CommonSense = self.commonsense; # For backwards compatibility. + if_ = self."if"; # For backwards compatibility. + Log4Perl = self.LogLog4perl; # For backwards compatibility. + MouseXGetOpt = self.MouseXGetopt; + NamespaceAutoclean = self.namespaceautoclean; # Deprecated. + NamespaceClean = self.namespaceclean; # Deprecated. + CatalystPluginUnicodeEncoding = self.CatalystRuntime; + ClassAccessorFast = self.ClassAccessor; + ClassMOP = self.Moose; + CompressZlib = self.IOCompress; + constantdefer = self.constant-defer; + DigestHMAC_SHA1 = self.DigestHMAC; + DistZillaPluginNoTabsTests = self.DistZillaPluginTestNoTabs; + EmailMIMEModifier = self.EmailMIME; + ExtUtilsCommand = self.ExtUtilsMakeMaker; + IOstringy = self.IOStringy; + libintl_perl = self.libintl-perl; + libintlperl = self.libintl-perl; + LWPProtocolconnect = self.LWPProtocolConnect; + LWPProtocolhttps = self.LWPProtocolHttps; + LWPUserAgent = self.LWP; + MIMEtools = self.MIMETools; + NetLDAP = self.perlldap; + NetSMTP = self.libnet; + OLEStorageLight = self.OLEStorage_Lite; # For backwards compatibility. Please use OLEStorage_Lite instead. + ParseCPANMeta = self.CPANMeta; + TestMoose = self.Moose; + TestMore = self.TestSimple; + TestTester = self.TestSimple; + Testuseok = self.TestSimple; + SubExporterUtil = self.SubExporter; + version = self.Version; + + Gtk2GladeXML = throw "Gtk2GladeXML has been removed"; # 2022-01-15 +}; in self diff --git a/nixpkgs/pkgs/top-level/php-packages.nix b/nixpkgs/pkgs/top-level/php-packages.nix new file mode 100644 index 000000000000..1da6e934c24b --- /dev/null +++ b/nixpkgs/pkgs/top-level/php-packages.nix @@ -0,0 +1,654 @@ +{ stdenv +, lib +, pkgs +, fetchgit +, phpPackage +, autoconf +, pkg-config +, aspell +, bzip2 +, curl +, cyrus_sasl +, enchant1 +, fetchpatch +, freetds +, freetype +, gd +, gettext +, gmp +, html-tidy +, icu64 +, libXpm +, libedit +, libffi +, libiconv +, libjpeg +, libpng +, libsodium +, libwebp +, libxml2 +, libxslt +, libzip +, net-snmp +, oniguruma +, openldap +, openssl +, pam +, pcre2 +, postgresql +, re2c +, readline +, rsync +, sqlite +, unixODBC +, uwimap +, valgrind +, zlib +}: + +lib.makeScope pkgs.newScope (self: with self; { + buildPecl = import ../build-support/build-pecl.nix { + php = php.unwrapped; + inherit lib; + inherit (pkgs) stdenv autoreconfHook fetchurl re2c; + }; + + # Wrap mkDerivation to prepend pname with "php-" to make names consistent + # with how buildPecl does it and make the file easier to overview. + mkDerivation = { pname, ... }@args: pkgs.stdenv.mkDerivation (args // { + pname = "php-${pname}"; + }); + + # Function to build an extension which is shipped as part of the php + # source, based on the php version. + # + # Name passed is the name of the extension and is automatically used + # to add the configureFlag "--enable-${name}", which can be overriden. + # + # Build inputs is used for extra deps that may be needed. And zendExtension + # will mark the extension as a zend extension or not. + mkExtension = + { name + , configureFlags ? [ "--enable-${name}" ] + , internalDeps ? [ ] + , postPhpize ? "" + , buildInputs ? [ ] + , zendExtension ? false + , doCheck ? true + , ... + }@args: stdenv.mkDerivation ((builtins.removeAttrs args [ "name" ]) // { + pname = "php-${name}"; + extensionName = name; + + inherit (php.unwrapped) version src; + sourceRoot = "php-${php.version}/ext/${name}"; + + enableParallelBuilding = true; + nativeBuildInputs = [ php.unwrapped autoconf pkg-config re2c ]; + inherit configureFlags internalDeps buildInputs + zendExtension doCheck; + + prePatch = "pushd ../.."; + postPatch = "popd"; + + preConfigure = '' + nullglobRestore=$(shopt -p nullglob) + shopt -u nullglob # To make ?-globbing work + + # Some extensions have a config0.m4 or config9.m4 + if [ -f config?.m4 ]; then + mv config?.m4 config.m4 + fi + + $nullglobRestore + phpize + ${postPhpize} + ${lib.concatMapStringsSep "\n" + (dep: "mkdir -p ext; ln -s ${dep.dev}/include ext/${dep.extensionName}") + internalDeps} + ''; + checkPhase = '' + runHook preCheck + NO_INTERACTON=yes SKIP_PERF_SENSITIVE=yes make test + runHook postCheck + ''; + outputs = [ "out" "dev" ]; + installPhase = '' + mkdir -p $out/lib/php/extensions + cp modules/${name}.so $out/lib/php/extensions/${name}.so + mkdir -p $dev/include + ${rsync}/bin/rsync -r --filter="+ */" \ + --filter="+ *.h" \ + --filter="- *" \ + --prune-empty-dirs \ + . $dev/include/ + ''; + + meta = { + description = "PHP upstream extension: ${name}"; + inherit (php.meta) maintainers homepage license; + }; + }); + + php = phpPackage; + + # This is a set of interactive tools based on PHP. + tools = { + box = callPackage ../development/php-packages/box { }; + + composer = callPackage ../development/php-packages/composer { }; + + deployer = callPackage ../development/php-packages/deployer { }; + + grumphp = callPackage ../development/php-packages/grumphp { }; + + phing = callPackage ../development/php-packages/phing { }; + + phive = callPackage ../development/php-packages/phive { }; + + php-cs-fixer = callPackage ../development/php-packages/php-cs-fixer { }; + + php-parallel-lint = callPackage ../development/php-packages/php-parallel-lint { }; + + phpcbf = callPackage ../development/php-packages/phpcbf { }; + + phpcs = callPackage ../development/php-packages/phpcs { }; + + phpmd = callPackage ../development/php-packages/phpmd { }; + + phpstan = callPackage ../development/php-packages/phpstan { }; + + psalm = callPackage ../development/php-packages/psalm { }; + + psysh = callPackage ../development/php-packages/psysh { }; + }; + + + + # This is a set of PHP extensions meant to be used in php.buildEnv + # or php.withExtensions to extend the functionality of the PHP + # interpreter. + extensions = { + amqp = callPackage ../development/php-packages/amqp { }; + + apcu = callPackage ../development/php-packages/apcu { }; + + apcu_bc = callPackage ../development/php-packages/apcu_bc { }; + + ast = callPackage ../development/php-packages/ast { }; + + blackfire = pkgs.callPackage ../development/tools/misc/blackfire/php-probe.nix { inherit php; }; + + couchbase = callPackage ../development/php-packages/couchbase { }; + + ds = callPackage ../development/php-packages/ds { }; + + event = callPackage ../development/php-packages/event { }; + + gnupg = callPackage ../development/php-packages/gnupg { }; + + igbinary = callPackage ../development/php-packages/igbinary { }; + + imagick = callPackage ../development/php-packages/imagick { }; + + mailparse = callPackage ../development/php-packages/mailparse { }; + + maxminddb = callPackage ../development/php-packages/maxminddb { }; + + memcached = callPackage ../development/php-packages/memcached { }; + + mongodb = callPackage ../development/php-packages/mongodb { }; + + oci8 = callPackage ../development/php-packages/oci8 ({ + version = "2.2.0"; + sha256 = "0jhivxj1nkkza4h23z33y7xhffii60d7dr51h1czjk10qywl7pyd"; + } // lib.optionalAttrs (lib.versionAtLeast php.version "8.0") { + version = "3.0.1"; + sha256 = "108ds92620dih5768z19hi0jxfa7wfg5hdvyyvpapir87c0ap914"; + }); + + pdlib = callPackage ../development/php-packages/pdlib { }; + + pcov = callPackage ../development/php-packages/pcov { }; + + pdo_oci = buildPecl rec { + inherit (php.unwrapped) src version; + + pname = "pdo_oci"; + sourceRoot = "php-${version}/ext/pdo_oci"; + + buildInputs = [ pkgs.oracle-instantclient ]; + configureFlags = [ "--with-pdo-oci=instantclient,${pkgs.oracle-instantclient.lib}/lib" ]; + + internalDeps = [ php.extensions.pdo ]; + + postPatch = '' + sed -i -e 's|OCISDKMANINC=`.*$|OCISDKMANINC="${pkgs.oracle-instantclient.dev}/include"|' config.m4 + ''; + + meta.maintainers = lib.teams.php.members; + }; + + pdo_sqlsrv = callPackage ../development/php-packages/pdo_sqlsrv { }; + + php_excel = callPackage ../development/php-packages/php_excel { }; + + pinba = callPackage ../development/php-packages/pinba { }; + + protobuf = callPackage ../development/php-packages/protobuf { }; + + rdkafka = callPackage ../development/php-packages/rdkafka { }; + + redis = callPackage ../development/php-packages/redis { }; + + smbclient = callPackage ../development/php-packages/smbclient { }; + + snuffleupagus = callPackage ../development/php-packages/snuffleupagus { }; + + sqlsrv = callPackage ../development/php-packages/sqlsrv { }; + + swoole = callPackage ../development/php-packages/swoole { }; + + xdebug = callPackage ../development/php-packages/xdebug { }; + + yaml = callPackage ../development/php-packages/yaml { }; + } // ( + let + # This list contains build instructions for different modules that one may + # want to build. + # + # These will be passed as arguments to mkExtension above. + extensionData = [ + { name = "bcmath"; } + { name = "bz2"; buildInputs = [ bzip2 ]; configureFlags = [ "--with-bz2=${bzip2.dev}" ]; } + { name = "calendar"; } + { name = "ctype"; } + { + name = "curl"; + buildInputs = [ curl ]; + configureFlags = [ "--with-curl=${curl.dev}" ]; + doCheck = false; + } + { name = "dba"; } + { + name = "dom"; + buildInputs = [ libxml2 ]; + configureFlags = [ "--enable-dom" ] + # Required to build on darwin. + ++ lib.optionals (lib.versionOlder php.version "7.4") [ "--with-libxml-dir=${libxml2.dev}" ]; + } + { + name = "enchant"; + buildInputs = [ enchant1 ]; + configureFlags = [ "--with-enchant=${enchant1}" ]; + # enchant1 doesn't build on darwin. + enable = (!stdenv.isDarwin); + doCheck = false; + } + { name = "exif"; doCheck = false; } + { name = "ffi"; buildInputs = [ libffi ]; enable = lib.versionAtLeast php.version "7.4"; } + { name = "fileinfo"; buildInputs = [ pcre2 ]; } + { name = "filter"; buildInputs = [ pcre2 ]; } + { name = "ftp"; buildInputs = [ openssl ]; } + { + name = "gd"; + buildInputs = [ zlib gd ]; + configureFlags = [ + "--enable-gd" + "--with-external-gd=${gd.dev}" + "--enable-gd-jis-conv" + ]; + doCheck = false; + enable = lib.versionAtLeast php.version "7.4"; + } + { + name = "gd"; + buildInputs = [ zlib gd libXpm ]; + configureFlags = [ + "--with-gd=${gd.dev}" + "--with-freetype-dir=${freetype.dev}" + "--with-jpeg-dir=${libjpeg.dev}" + "--with-png-dir=${libpng.dev}" + "--with-webp-dir=${libwebp}" + "--with-xpm-dir=${libXpm.dev}" + "--with-zlib-dir=${zlib.dev}" + "--enable-gd-jis-conv" + ]; + doCheck = false; + enable = lib.versionOlder php.version "7.4"; + } + { + name = "gettext"; + buildInputs = [ gettext ]; + patches = lib.optionals (lib.versionOlder php.version "7.4") [ + (fetchpatch { + url = "https://github.com/php/php-src/commit/632b6e7aac207194adc3d0b41615bfb610757f41.patch"; + sha256 = "0xn3ivhc4p070vbk5yx0mzj2n7p04drz3f98i77amr51w0vzv046"; + }) + ]; + postPhpize = ''substituteInPlace configure --replace 'as_fn_error $? "Cannot locate header file libintl.h" "$LINENO" 5' ':' ''; + configureFlags = [ "--with-gettext=${gettext}" ]; + } + { + name = "gmp"; + buildInputs = [ gmp ]; + configureFlags = [ "--with-gmp=${gmp.dev}" ]; + } + { name = "hash"; enable = lib.versionOlder php.version "7.4"; } + { + name = "iconv"; + configureFlags = [ + "--with-iconv${lib.optionalString stdenv.isDarwin "=${libiconv}"}" + ]; + patches = lib.optionals (lib.versionOlder php.version "8.0") [ + # Header path defaults to FHS location, preventing the configure script from detecting errno support. + (fetchpatch { + url = "https://github.com/fossar/nix-phps/raw/263861a8c9bdafd7abe44db6db4ef0179643680c/pkgs/iconv-header-path.patch"; + sha256 = "7GHnEUu+hcsQ4h3itDwk6p46ZKfib9JZ2XpWlXrdn6E="; + }) + ]; + doCheck = false; + } + { + name = "imap"; + buildInputs = [ uwimap openssl pam pcre2 ]; + configureFlags = [ "--with-imap=${uwimap}" "--with-imap-ssl" ]; + # uwimap doesn't build on darwin. + enable = (!stdenv.isDarwin); + } + { + name = "intl"; + buildInputs = [ icu64 ]; + patches = lib.optionals (lib.versionOlder php.version "7.4") [ + (fetchpatch { + url = "https://github.com/php/php-src/commit/93a9b56c90c334896e977721bfb3f38b1721cec6.patch"; + sha256 = "055l40lpyhb0rbjn6y23qkzdhvpp7inbnn6x13cpn4inmhjqfpg4"; + }) + ]; + } + { name = "json"; enable = lib.versionOlder php.version "8.0"; } + { + name = "ldap"; + buildInputs = [ openldap cyrus_sasl ]; + configureFlags = [ + "--with-ldap" + "LDAP_DIR=${openldap.dev}" + "LDAP_INCDIR=${openldap.dev}/include" + "LDAP_LIBDIR=${openldap.out}/lib" + ] ++ lib.optionals stdenv.isLinux [ + "--with-ldap-sasl=${cyrus_sasl.dev}" + ]; + doCheck = false; + } + { + name = "mbstring"; + buildInputs = [ oniguruma ] ++ lib.optionals (lib.versionAtLeast php.version "8.0") [ + pcre2 + ]; + doCheck = false; + } + { + name = "mysqli"; + internalDeps = [ php.extensions.mysqlnd ]; + configureFlags = [ "--with-mysqli=mysqlnd" "--with-mysql-sock=/run/mysqld/mysqld.sock" ]; + doCheck = false; + } + { + name = "mysqlnd"; + buildInputs = [ zlib openssl ]; + # The configure script doesn't correctly add library link + # flags, so we add them to the variable used by the Makefile + # when linking. + MYSQLND_SHARED_LIBADD = "-lssl -lcrypto"; + # The configure script builds a config.h which is never + # included. Let's include it in the main header file + # included by all .c-files. + patches = [ + (pkgs.writeText "mysqlnd_config.patch" '' + --- a/ext/mysqlnd/mysqlnd.h + +++ b/ext/mysqlnd/mysqlnd.h + @@ -1,3 +1,6 @@ + +#ifdef HAVE_CONFIG_H + +#include "config.h" + +#endif + /* + +----------------------------------------------------------------------+ + | Copyright (c) The PHP Group | + '') + ] ++ lib.optionals (lib.versionOlder php.version "7.4.8") [ + (pkgs.writeText "mysqlnd_fix_compression.patch" '' + --- a/ext/mysqlnd/mysqlnd.h + +++ b/ext/mysqlnd/mysqlnd.h + @@ -48,7 +48,7 @@ + #define MYSQLND_DBG_ENABLED 0 + #endif + + -#if defined(MYSQLND_COMPRESSION_WANTED) && defined(HAVE_ZLIB) + +#if defined(MYSQLND_COMPRESSION_WANTED) + #define MYSQLND_COMPRESSION_ENABLED 1 + #endif + '') + ]; + postPhpize = lib.optionalString (lib.versionOlder php.version "7.4") '' + substituteInPlace configure --replace '$OPENSSL_LIBDIR' '${openssl}/lib' \ + --replace '$OPENSSL_INCDIR' '${openssl.dev}/include' + ''; + } + # oci8 (7.4, 7.3, 7.2) + # odbc (7.4, 7.3, 7.2) + { + name = "opcache"; + buildInputs = [ pcre2 ] ++ lib.optionals (!stdenv.isDarwin && lib.versionAtLeast php.version "8.0") [ + valgrind.dev + ]; + patches = lib.optionals (lib.versionOlder php.version "7.4") [ + (pkgs.writeText "zend_file_cache_config.patch" '' + --- a/ext/opcache/zend_file_cache.c + +++ b/ext/opcache/zend_file_cache.c + @@ -27,9 +27,9 @@ + #include "ext/standard/md5.h" + #endif + + +#include "ZendAccelerator.h" + #ifdef HAVE_OPCACHE_FILE_CACHE + + -#include "ZendAccelerator.h" + #include "zend_file_cache.h" + #include "zend_shared_alloc.h" + #include "zend_accelerator_util_funcs.h" + '') + ]; + zendExtension = true; + doCheck = !(lib.versionOlder php.version "7.4"); + # Tests launch the builtin webserver. + __darwinAllowLocalNetworking = true; + } + { + name = "openssl"; + buildInputs = [ openssl ]; + configureFlags = [ "--with-openssl" ]; + doCheck = false; + } + { name = "pcntl"; } + { name = "pdo"; doCheck = false; } + { + name = "pdo_dblib"; + internalDeps = [ php.extensions.pdo ]; + configureFlags = [ "--with-pdo-dblib=${freetds}" ]; + # Doesn't seem to work on darwin. + enable = (!stdenv.isDarwin); + doCheck = false; + } + # pdo_firebird (7.4, 7.3, 7.2) + { + name = "pdo_mysql"; + internalDeps = with php.extensions; [ pdo mysqlnd ]; + configureFlags = [ "--with-pdo-mysql=mysqlnd" "PHP_MYSQL_SOCK=/run/mysqld/mysqld.sock" ]; + doCheck = false; + } + # pdo_oci (7.4, 7.3, 7.2) + { + name = "pdo_odbc"; + internalDeps = [ php.extensions.pdo ]; + configureFlags = [ "--with-pdo-odbc=unixODBC,${unixODBC}" ]; + doCheck = false; + } + { + name = "pdo_pgsql"; + internalDeps = [ php.extensions.pdo ]; + configureFlags = [ "--with-pdo-pgsql=${postgresql}" ]; + doCheck = false; + } + { + name = "pdo_sqlite"; + internalDeps = [ php.extensions.pdo ]; + buildInputs = [ sqlite ]; + configureFlags = [ "--with-pdo-sqlite=${sqlite.dev}" ]; + doCheck = false; + } + { + name = "pgsql"; + buildInputs = [ pcre2 ]; + configureFlags = [ "--with-pgsql=${postgresql}" ]; + doCheck = false; + } + { name = "posix"; doCheck = false; } + { name = "pspell"; configureFlags = [ "--with-pspell=${aspell}" ]; } + { + name = "readline"; + buildInputs = [ libedit readline ]; + configureFlags = [ "--with-readline=${readline.dev}" ]; + postPhpize = lib.optionalString (lib.versionOlder php.version "7.4") '' + substituteInPlace configure --replace 'as_fn_error $? "Please reinstall libedit - I cannot find readline.h" "$LINENO" 5' ':' + ''; + doCheck = false; + } + { name = "session"; doCheck = !(lib.versionAtLeast php.version "8.0"); } + { name = "shmop"; } + { + name = "simplexml"; + buildInputs = [ libxml2 pcre2 ]; + configureFlags = [ "--enable-simplexml" ] + # Required to build on darwin. + ++ lib.optionals (lib.versionOlder php.version "7.4") [ "--with-libxml-dir=${libxml2.dev}" ]; + } + { + name = "snmp"; + buildInputs = [ net-snmp openssl ]; + configureFlags = [ "--with-snmp" ]; + # net-snmp doesn't build on darwin. + enable = (!stdenv.isDarwin); + doCheck = false; + } + { + name = "soap"; + buildInputs = [ libxml2 ]; + configureFlags = [ "--enable-soap" ] + # Required to build on darwin. + ++ lib.optionals (lib.versionOlder php.version "7.4") [ "--with-libxml-dir=${libxml2.dev}" ]; + doCheck = false; + } + { + name = "sockets"; + doCheck = false; + } + { name = "sodium"; buildInputs = [ libsodium ]; } + { name = "sqlite3"; buildInputs = [ sqlite ]; } + { name = "sysvmsg"; } + { name = "sysvsem"; } + { name = "sysvshm"; } + { name = "tidy"; configureFlags = [ "--with-tidy=${html-tidy}" ]; doCheck = false; } + { + name = "tokenizer"; + patches = lib.optional (lib.versionAtLeast php.version "8.1") + ../development/interpreters/php/fix-tokenizer-php81.patch; + } + { + name = "wddx"; + buildInputs = [ libxml2 ]; + internalDeps = [ php.extensions.session ]; + configureFlags = [ "--enable-wddx" "--with-libxml-dir=${libxml2.dev}" ]; + # Removed in php 7.4. + enable = lib.versionOlder php.version "7.4"; + } + { + name = "xml"; + buildInputs = [ libxml2 ]; + configureFlags = [ "--enable-xml" ] + # Required to build on darwin. + ++ lib.optionals (lib.versionOlder php.version "7.4") [ "--with-libxml-dir=${libxml2.dev}" ]; + doCheck = false; + } + { + name = "xmlreader"; + buildInputs = [ libxml2 ]; + internalDeps = [ php.extensions.dom ]; + NIX_CFLAGS_COMPILE = [ "-I../.." "-DHAVE_DOM" ]; + doCheck = false; + configureFlags = [ "--enable-xmlreader" ] + # Required to build on darwin. + ++ lib.optionals (lib.versionOlder php.version "7.4") [ "--with-libxml-dir=${libxml2.dev}" ]; + } + { + name = "xmlrpc"; + buildInputs = [ libxml2 libiconv ]; + # xmlrpc was unbundled in 8.0 https://php.watch/versions/8.0/xmlrpc + enable = lib.versionOlder php.version "8.0"; + configureFlags = [ "--with-xmlrpc" ] + # Required to build on darwin. + ++ lib.optionals (lib.versionOlder php.version "7.4") [ "--with-libxml-dir=${libxml2.dev}" ]; + } + { + name = "xmlwriter"; + buildInputs = [ libxml2 ]; + configureFlags = [ "--enable-xmlwriter" ] + # Required to build on darwin. + ++ lib.optionals (lib.versionOlder php.version "7.4") [ "--with-libxml-dir=${libxml2.dev}" ]; + } + { + name = "xsl"; + buildInputs = [ libxslt libxml2 ]; + doCheck = lib.versionOlder php.version "8.0"; + configureFlags = [ "--with-xsl=${libxslt.dev}" ]; + } + { name = "zend_test"; } + { + name = "zip"; + buildInputs = [ libzip pcre2 ]; + configureFlags = [ "--with-zip" ] + ++ lib.optionals (lib.versionOlder php.version "7.4") [ "--with-zlib-dir=${zlib.dev}" ] + ++ lib.optionals (lib.versionOlder php.version "7.3") [ "--with-libzip" ]; + doCheck = false; + } + { + name = "zlib"; + buildInputs = [ zlib ]; + patches = lib.optionals (lib.versionOlder php.version "7.4") [ + # Derived from https://github.com/php/php-src/commit/f16b012116d6c015632741a3caada5b30ef8a699 + ../development/interpreters/php/zlib-darwin-tests.patch + ]; + configureFlags = [ "--with-zlib" ] + ++ lib.optionals (lib.versionOlder php.version "7.4") [ "--with-zlib-dir=${zlib.dev}" ]; + } + ]; + + # Convert the list of attrs: + # [ { name = <name>; ... } ... ] + # to a list of + # [ { name = <name>; value = <extension drv>; } ... ] + # + # which we later use listToAttrs to make all attrs available by name. + # + # Also filter out extensions based on the enable property. + namedExtensions = builtins.map + (drv: { + name = drv.name; + value = mkExtension drv; + }) + (builtins.filter (i: i.enable or true) extensionData); + + # Produce the final attribute set of all extensions defined. + in + builtins.listToAttrs namedExtensions + ); +}) diff --git a/nixpkgs/pkgs/top-level/pure-packages.nix b/nixpkgs/pkgs/top-level/pure-packages.nix new file mode 100644 index 000000000000..005e09cc003e --- /dev/null +++ b/nixpkgs/pkgs/top-level/pure-packages.nix @@ -0,0 +1,33 @@ +{ callPackage }: + +rec { + audio = callPackage ../development/pure-modules/audio { }; + avahi = callPackage ../development/pure-modules/avahi { }; + csv = callPackage ../development/pure-modules/csv { }; + doc = callPackage ../development/pure-modules/doc { }; + fastcgi = callPackage ../development/pure-modules/fastcgi { }; + faust = callPackage ../development/pure-modules/faust { }; + ffi = callPackage ../development/pure-modules/ffi { }; + gen = callPackage ../development/pure-modules/gen { }; + gl = callPackage ../development/pure-modules/gl { }; + glpk = callPackage ../development/pure-modules/glpk { }; + gplot = callPackage ../development/pure-modules/gplot { }; + gsl = callPackage ../development/pure-modules/gsl { }; + gtk = callPackage ../development/pure-modules/gtk { pure-ffi = ffi; }; + liblo = callPackage ../development/pure-modules/liblo { }; + lilv = callPackage ../development/pure-modules/lilv { }; + lv2 = callPackage ../development/pure-modules/lv2 { }; + midi = callPackage ../development/pure-modules/midi { }; + mpfr = callPackage ../development/pure-modules/mpfr { }; + octave = callPackage ../development/pure-modules/octave { }; + odbc = callPackage ../development/pure-modules/odbc { }; + pandoc = callPackage ../development/pure-modules/pandoc { }; + rational = callPackage ../development/pure-modules/rational { }; + readline = callPackage ../development/pure-modules/readline { }; + sockets = callPackage ../development/pure-modules/sockets { }; + sql3 = callPackage ../development/pure-modules/sql3 { }; + stldict = callPackage ../development/pure-modules/stldict { }; + stllib = callPackage ../development/pure-modules/stllib { }; + tk = callPackage ../development/pure-modules/tk { }; + xml = callPackage ../development/pure-modules/xml { }; +} diff --git a/nixpkgs/pkgs/top-level/python-aliases.nix b/nixpkgs/pkgs/top-level/python-aliases.nix new file mode 100644 index 000000000000..2ac1f83917a0 --- /dev/null +++ b/nixpkgs/pkgs/top-level/python-aliases.nix @@ -0,0 +1,129 @@ +lib: self: super: + +with self; + +let + # Removing recurseForDerivation prevents derivations of aliased attribute + # set to appear while listing all the packages available. + removeRecurseForDerivations = alias: with lib; + if alias.recurseForDerivations or false then + removeAttrs alias ["recurseForDerivations"] + else alias; + + # Disabling distribution prevents top-level aliases for non-recursed package + # sets from building on Hydra. + removeDistribute = alias: with lib; + if isDerivation alias then + dontDistribute alias + else alias; + + # Make sure that we are not shadowing something from + # python-packages.nix. + checkInPkgs = n: alias: if builtins.hasAttr n super + then throw "Alias ${n} is still in python-packages.nix" + else alias; + + mapAliases = aliases: + lib.mapAttrs (n: alias: removeDistribute + (removeRecurseForDerivations + (checkInPkgs n alias))) + aliases; +in + + ### Deprecated aliases - for backward compatibility + +mapAliases ({ + anyjson = throw "anyjson has been removed, it was using setuptools 2to3 translation feature, which has been removed in setuptools 58"; # added 2022-01-18 + asyncio-nats-client = nats-py; # added 2022-02-08 + blockdiagcontrib-cisco = throw "blockdiagcontrib-cisco is not compatible with blockdiag 2.0.0 and has been removed."; # added 2020-11-29 + bt_proximity = bt-proximity; # added 2021-07-02 + bugseverywhere = throw "bugseverywhere has been removed: Abandoned by upstream."; # added 2019-11-27 + carrot = throw "carrot has been removed, as its development was discontinued in 2012"; # added 2022-01-18 + class-registry = phx-class-registry; # added 2021-10-05 + ConfigArgParse = configargparse; # added 2021-03-18 + cozy = throw "cozy was removed because it was not actually https://pypi.org/project/Cozy/."; # added 2022-01-14 + dateutil = python-dateutil; # added 2021-07-03 + demjson = throw "demjson has been removed, it was using setuptools 2to3 translation feature, which has been removed in setuptools 58"; # added 2022-01-18 + detox = throw "detox is no longer maintained, and was broken since may 2019"; # added 2020-07-04 + dftfit = throw "dftfit dependency lammps-cython no longer builds"; # added 2021-07-04 + diff_cover = diff-cover; # added 2021-07-02 + discogs_client = discogs-client; # added 2021-07-02 + djangorestframework-jwt = drf-jwt; # added 2021-07-20 + django_environ = django-environ; # added 2021-12-25 + django_extensions = django-extensions; # added 2022-01-09 + django_redis = django-redis; # added 2021-10-11 + django_taggit = django-taggit; # added 2021-10-11 + dns = dnspython; # added 2017-12-10 + dogpile_cache = dogpile-cache; # added 2021-10-28 + dogpile-core = throw "dogpile-core is no longer maintained, use dogpile-cache instead"; # added 2021-11-20 + eebrightbox = throw "eebrightbox is unmaintained upstream and has therefore been removed"; # added 2022-02-03 + faulthandler = throw "faulthandler is built into ${python.executable}"; # added 2021-07-12 + garminconnect-ha = garminconnect; # added 2022-02-05 + gitdb2 = throw "gitdb2 has been deprecated, use gitdb instead."; # added 2020-03-14 + glances = throw "glances has moved to pkgs.glances"; # added 2020-20-28 + google_api_python_client = google-api-python-client; # added 2021-03-19 + googleapis_common_protos = googleapis-common-protos; # added 2021-03-19 + grpc_google_iam_v1 = grpc-google-iam-v1; # added 2021-08-21 + HAP-python = hap-python; # added 2021-06-01 + hbmqtt = throw "hbmqtt was removed because it is no longer maintained"; # added 2021-11-07 + hdlparse = throw "hdlparse has been removed, it was using setuptools 2to3 translation feature, which has been removed in setuptools 58"; # added 2022-01-18 + IMAPClient = imapclient; # added 2021-10-28 + jupyter_client = jupyter-client; # added 2021-10-15 + Keras = keras; # added 2021-11-25 + lammps-cython = throw "lammps-cython no longer builds and is unmaintained"; # added 2021-07-04 + Markups = markups; # added 2022-02-14 + MechanicalSoup = mechanicalsoup; # added 2021-06-01 + pam = python-pam; # added 2020-09-07. + PasteDeploy = pastedeploy; # added 2021-10-07 + powerlineMemSegment = powerline-mem-segment; # added 2021-10-08 + privacyidea = throw "privacyidea has been renamed to pkgs.privacyidea"; # added 2021-06-20 + prometheus_client = prometheus-client; # added 2021-06-10 + prompt_toolkit = prompt-toolkit; # added 2021-07-22 + pur = throw "pur has been renamed to pkgs.pur"; # added 2021-11-08 + pyGtkGlade = throw "Glade support for pygtk has been removed"; # added 2022-01-15 + pycallgraph = throw "pycallgraph has been removed, it was using setuptools 2to3 translation feature, which has been removed in setuptools 58"; # added 2022-01-18 + pylibgen = throw "pylibgen is unmaintained upstreamed, and removed from nixpkgs"; # added 2020-06-20 + pymssql = throw "pymssql has been abandoned upstream."; # added 2020-05-04 + pysmart-smartx = pysmart; # added 2021-10-22 + pytestcov = pytest-cov; # added 2021-01-04 + pytest-pep8 = pytestpep8; # added 2021-01-04 + pytestpep8 = throw "pytestpep8 was removed because it is abandoned and no longer compatible with pytest v6.0"; # added 2020-12-10 + pytestquickcheck = pytest-quickcheck; # added 2021-07-20 + pytestrunner = pytest-runner; # added 2021-01-04 + python-igraph = igraph; # added 2021-11-11 + python-lz4 = lz4; # added 2018-06-01 + python_mimeparse = python-mimeparse; # added 2021-10-31 + python-subunit = subunit; # added 2021-09-10 + pytest_xdist = pytest-xdist; # added 2021-01-04 + python_simple_hipchat = python-simple-hipchat; # added 2021-07-21 + pytwitchapi = twitchapi; # added 2022-03-07 + qasm2image = throw "qasm2image is no longer maintained (since November 2018), and is not compatible with the latest pythonPackages.qiskit versions."; # added 2020-12-09 + qiskit-aqua = throw "qiskit-aqua has been removed due to deprecation, with its functionality moved to different qiskit packages"; + rdflib-jsonld = throw "rdflib-jsonld is not compatible with rdflib 6"; # added 2021-11-05 + repeated_test = throw "repeated_test is no longer maintained"; # added 2022-01-11 + requests_toolbelt = requests-toolbelt; # added 2017-09-26 + roboschool = throw "roboschool is deprecated in favor of PyBullet and has been removed"; # added 2022-01-15 + rotate-backups = throw "rotate-backups was removed in favor of the top-level rotate-backups"; # added 2021-07-01 + ruamel_base = ruamel-base; # added 2021-11-01 + ruamel_yaml = ruamel-yaml; # added 2021-11-01 + ruamel_yaml_clib = ruamel-yaml-clib; # added 2021-11-01 + scikitlearn = scikit-learn; # added 2021-07-21 + selectors34 = throw "selectors34 has been removed: functionality provided by Python itself; archived by upstream."; # added 2021-06-10 + setuptools_scm = setuptools-scm; # added 2021-06-03 + ROPGadget = ropgadget; # added 2021-07-06 + smart_open = smart-open; # added 2021-03-14 + smmap2 = throw "smmap2 has been deprecated, use smmap instead."; # added 2020-03-14 + sphinxcontrib_plantuml = sphinxcontrib-plantuml; # added 2021-08-02 + sqlalchemy_migrate = sqlalchemy-migrate; # added 2021-10-28 + tensorflow-bin_2 = tensorflow-bin; # added 2021-11-25 + tensorflow-build_2 = tensorflow-build; # added 2021-11-25 + tensorflow-estimator_2 = tensorflow-estimator; # added 2021-11-25 + tensorflow-tensorboard_2 = tensorflow-tensorboard; # added 2021-11-25 + topydo = throw "topydo was moved to pkgs.topydo"; # added 2017-09-22 + tvnamer = throw "tvnamer was moved to pkgs.tvnamer"; # added 2021-07-05 + WazeRouteCalculator = wazeroutecalculator; # added 2021-09-29 + websocket_client = websocket-client; # added 2021-06-15 + xenomapper = throw "xenomapper was moved to pkgs.xenomapper"; # added 2021-12-31 + zc-buildout221 = zc-buildout; # added 2021-07-21 + zc_buildout_nix = throw "zc_buildout_nix was pinned to a version no longer compatible with other modules"; +}) diff --git a/nixpkgs/pkgs/top-level/python-packages.nix b/nixpkgs/pkgs/top-level/python-packages.nix new file mode 100644 index 000000000000..19465727dc47 --- /dev/null +++ b/nixpkgs/pkgs/top-level/python-packages.nix @@ -0,0 +1,11061 @@ +# This file contains the Python packages set. +# Each attribute is a Python library or a helper function. +# Expressions for Python libraries are supposed to be in `pkgs/development/python-modules/<name>/default.nix`. +# Python packages that do not need to be available for each interpreter version do not belong in this packages set. +# Examples are Python-based cli tools. +# +# For more details, please see the Python section in the Nixpkgs manual. + +{ pkgs +, stdenv +, lib +, python +}: + +with lib; + +self: + +let unoverriddenPython = python; in + +let + inherit (self) callPackage; + inherit (python.passthru) isPy27 isPy35 isPy36 isPy37 isPy38 isPy39 isPy310 isPy311 isPy3k isPyPy pythonAtLeast pythonOlder; + + namePrefix = python.libPrefix + "-"; + + bootstrapped-pip = callPackage ../development/python-modules/bootstrapped-pip { }; + + # Derivations built with `buildPythonPackage` can already be overriden with `override`, `overrideAttrs`, and `overrideDerivation`. + # This function introduces `overridePythonAttrs` and it overrides the call to `buildPythonPackage`. + makeOverridablePythonPackage = f: origArgs: + let + ff = f origArgs; + overrideWith = newArgs: origArgs // (if pkgs.lib.isFunction newArgs then newArgs origArgs else newArgs); + in + if builtins.isAttrs ff then (ff // { + overridePythonAttrs = newArgs: makeOverridablePythonPackage f (overrideWith newArgs); + }) + else if builtins.isFunction ff then { + overridePythonAttrs = newArgs: makeOverridablePythonPackage f (overrideWith newArgs); + __functor = self: ff; + } + else ff; + + buildPythonPackage = makeOverridablePythonPackage ( makeOverridable (callPackage ../development/interpreters/python/mk-python-derivation.nix { + inherit namePrefix; # We want Python libraries to be named like e.g. "python3.6-${name}" + inherit toPythonModule; # Libraries provide modules + })); + + buildPythonApplication = makeOverridablePythonPackage ( makeOverridable (callPackage ../development/interpreters/python/mk-python-derivation.nix { + namePrefix = ""; # Python applications should not have any prefix + toPythonModule = x: x; # Application does not provide modules. + })); + + # See build-setupcfg/default.nix for documentation. + buildSetupcfg = import ../build-support/build-setupcfg self; + + fetchPypi = callPackage ../development/interpreters/python/fetchpypi.nix { }; + + # Check whether a derivation provides a Python module. + hasPythonModule = drv: drv?pythonModule && drv.pythonModule == python; + + # Get list of required Python modules given a list of derivations. + requiredPythonModules = drvs: let + modules = filter hasPythonModule drvs; + in unique ([python] ++ modules ++ concatLists (catAttrs "requiredPythonModules" modules)); + + # Create a PYTHONPATH from a list of derivations. This function recurses into the items to find derivations + # providing Python modules. + makePythonPath = drvs: lib.makeSearchPath python.sitePackages (requiredPythonModules drvs); + + removePythonPrefix = name: + removePrefix namePrefix name; + + # Convert derivation to a Python module. + toPythonModule = drv: + drv.overrideAttrs( oldAttrs: { + # Use passthru in order to prevent rebuilds when possible. + passthru = (oldAttrs.passthru or {})// { + pythonModule = python; + pythonPath = [ ]; # Deprecated, for compatibility. + requiredPythonModules = requiredPythonModules drv.propagatedBuildInputs; + }; + }); + + # Convert a Python library to an application. + toPythonApplication = drv: + drv.overrideAttrs( oldAttrs: { + passthru = (oldAttrs.passthru or {}) // { + # Remove Python prefix from name so we have a "normal" name. + # While the prefix shows up in the store path, it won't be + # used by `nix-env`. + name = removePythonPrefix oldAttrs.name; + pythonModule = false; + }; + }); + + disabled = drv: throw "${removePythonPrefix (drv.pname or drv.name)} not supported for interpreter ${python.executable}"; + + disabledIf = x: drv: if x then disabled drv else drv; + + # CUDA-related packages that are compatible with the currently packaged version + # of TensorFlow, used to keep these versions in sync in related packages like `jaxlib`. + tensorflow_compat_cudatoolkit = pkgs.cudatoolkit_11_2; + tensorflow_compat_cudnn = pkgs.cudnn_8_1_cudatoolkit_11_2; + tensorflow_compat_nccl = pkgs.nccl_cudatoolkit_11; + +in { + + inherit pkgs stdenv; + + inherit (python.passthru) isPy27 isPy35 isPy36 isPy37 isPy38 isPy39 isPy310 isPy311 isPy3k isPyPy pythonAtLeast pythonOlder; + inherit python bootstrapped-pip buildPythonPackage buildPythonApplication; + inherit fetchPypi; + inherit hasPythonModule requiredPythonModules makePythonPath disabled disabledIf; + inherit toPythonModule toPythonApplication; + inherit buildSetupcfg; + + inherit (callPackage ../development/interpreters/python/hooks { }) + condaInstallHook + condaUnpackHook + eggUnpackHook + eggBuildHook + eggInstallHook + flitBuildHook + pipBuildHook + pipInstallHook + pytestCheckHook + pythonCatchConflictsHook + pythonImportsCheckHook + pythonNamespacesHook + pythonRecompileBytecodeHook + pythonRemoveBinBytecodeHook + pythonRemoveTestsDirHook + setuptoolsBuildHook + setuptoolsCheckHook + venvShellHook + wheelUnpackHook; + + # Not all packages are compatible with the latest pytest yet. + # We need to override the hook to select an older pytest, however, + # it should not override the version of pytest that is used for say + # Python 2. This is an ugly hack that is needed now because the hook + # propagates the package. + pytestCheckHook_6_1 = if isPy3k then + self.pytestCheckHook.override { pytest = self.pytest_6_1; } + else + self.pytestCheckHook; + + # helpers + + # We use build packages because we are making a setup hook to be used as a + # native build input. The script itself references both the build-time + # (build) and run-time (host) python from the explicitly passed in `python` + # attribute, so the `buildPackages` doesn't effect that. + wrapPython = pkgs.buildPackages.callPackage ../development/interpreters/python/wrap-python.nix { + inherit python; + }; + + # Dont take pythonPackages from "global" pkgs scope to avoid mixing python versions + pythonPackages = self; + + # specials + + recursivePthLoader = callPackage ../development/python-modules/recursive-pth-loader { }; + + setuptools = callPackage ../development/python-modules/setuptools { }; + + aadict = callPackage ../development/python-modules/aadict { }; + + aafigure = callPackage ../development/python-modules/aafigure { }; + + abodepy = callPackage ../development/python-modules/abodepy { }; + + absl-py = callPackage ../development/python-modules/absl-py { }; + + accuweather = callPackage ../development/python-modules/accuweather { }; + + accupy = callPackage ../development/python-modules/accupy { }; + + acebinf = callPackage ../development/python-modules/acebinf { }; + + acme = callPackage ../development/python-modules/acme { }; + + acme-tiny = callPackage ../development/python-modules/acme-tiny { }; + + acoustics = callPackage ../development/python-modules/acoustics { }; + + actdiag = callPackage ../development/python-modules/actdiag { }; + + adafruit-io = callPackage ../development/python-modules/adafruit-io { }; + + adafruit-platformdetect = callPackage ../development/python-modules/adafruit-platformdetect { }; + + adafruit-pureio = callPackage ../development/python-modules/adafruit-pureio { }; + + adal = callPackage ../development/python-modules/adal { }; + + adax = callPackage ../development/python-modules/adax { }; + + adax-local = callPackage ../development/python-modules/adax-local { }; + + adb-enhanced = callPackage ../development/python-modules/adb-enhanced { }; + + adb-homeassistant = callPackage ../development/python-modules/adb-homeassistant { }; + + adb-shell = callPackage ../development/python-modules/adb-shell { }; + + adblock = callPackage ../development/python-modules/adblock { + inherit (pkgs.darwin.apple_sdk.frameworks) CoreFoundation Security; + }; + + addict = callPackage ../development/python-modules/addict { }; + + addic7ed-cli = callPackage ../development/python-modules/addic7ed-cli { }; + + adext = callPackage ../development/python-modules/adext { }; + + adguardhome = callPackage ../development/python-modules/adguardhome { }; + + adjusttext = callPackage ../development/python-modules/adjusttext { }; + + advantage-air = callPackage ../development/python-modules/advantage-air { }; + + aemet-opendata = callPackage ../development/python-modules/aemet-opendata { }; + + aenum = callPackage ../development/python-modules/aenum { }; + + aesara = callPackage ../development/python-modules/aesara { }; + + afdko = callPackage ../development/python-modules/afdko { }; + + affine = callPackage ../development/python-modules/affine { }; + + afsapi = callPackage ../development/python-modules/afsapi { }; + + agate = callPackage ../development/python-modules/agate { }; + + agate-dbf = callPackage ../development/python-modules/agate-dbf { }; + + agate-excel = callPackage ../development/python-modules/agate-excel { }; + + agate-sql = callPackage ../development/python-modules/agate-sql { }; + + agent-py = callPackage ../development/python-modules/agent-py { }; + + aio-geojson-client = callPackage ../development/python-modules/aio-geojson-client { }; + + aio-geojson-geonetnz-quakes = callPackage ../development/python-modules/aio-geojson-geonetnz-quakes { }; + + aio-geojson-geonetnz-volcano = callPackage ../development/python-modules/aio-geojson-geonetnz-volcano { }; + + aio-geojson-nsw-rfs-incidents = callPackage ../development/python-modules/aio-geojson-nsw-rfs-incidents { }; + + aio-georss-client = callPackage ../development/python-modules/aio-georss-client { }; + + aio-georss-gdacs = callPackage ../development/python-modules/aio-georss-gdacs { }; + + aioambient = callPackage ../development/python-modules/aioambient { }; + + aioapns = callPackage ../development/python-modules/aioapns { }; + + aiocron = callPackage ../development/python-modules/aiocron { }; + + ailment = callPackage ../development/python-modules/ailment { }; + + aioamqp = callPackage ../development/python-modules/aioamqp { }; + + aioaseko = callPackage ../development/python-modules/aioaseko { }; + + aioasuswrt = callPackage ../development/python-modules/aioasuswrt { }; + + aioazuredevops = callPackage ../development/python-modules/aioazuredevops { }; + + aiocache = callPackage ../development/python-modules/aiocache { }; + + aiocoap = callPackage ../development/python-modules/aiocoap { }; + + aioconsole = callPackage ../development/python-modules/aioconsole { }; + + aiocontextvars = callPackage ../development/python-modules/aiocontextvars { }; + + aiocurrencylayer = callPackage ../development/python-modules/aiocurrencylayer { }; + + aiodiscover = callPackage ../development/python-modules/aiodiscover { }; + + aiodns = callPackage ../development/python-modules/aiodns { }; + + aioeafm = callPackage ../development/python-modules/aioeafm { }; + + aioeagle = callPackage ../development/python-modules/aioeagle { }; + + aioemonitor = callPackage ../development/python-modules/aioemonitor { }; + + aioesphomeapi = callPackage ../development/python-modules/aioesphomeapi { }; + + aioextensions = callPackage ../development/python-modules/aioextensions { }; + + aiofiles = callPackage ../development/python-modules/aiofiles { }; + + aioflo = callPackage ../development/python-modules/aioflo { }; + + aioftp = callPackage ../development/python-modules/aioftp { }; + + aioguardian = callPackage ../development/python-modules/aioguardian { }; + + aiogithubapi = callPackage ../development/python-modules/aiogithubapi { }; + + aioh2 = callPackage ../development/python-modules/aioh2 { }; + + aioharmony = callPackage ../development/python-modules/aioharmony { }; + + aiohomekit = callPackage ../development/python-modules/aiohomekit { }; + + aiohttp = callPackage ../development/python-modules/aiohttp { }; + + aiohttp-apispec = callPackage ../development/python-modules/aiohttp-apispec { }; + + aiohttp-cors = callPackage ../development/python-modules/aiohttp-cors { }; + + aiohttp-jinja2 = callPackage ../development/python-modules/aiohttp-jinja2 { }; + + aiohttp-remotes = callPackage ../development/python-modules/aiohttp-remotes { }; + + aiohttp-retry = callPackage ../development/python-modules/aiohttp-retry { }; + + aiohttp-socks = callPackage ../development/python-modules/aiohttp-socks { }; + + aiohttp-swagger = callPackage ../development/python-modules/aiohttp-swagger { }; + + aiohttp-wsgi = callPackage ../development/python-modules/aiohttp-wsgi { }; + + aioitertools = callPackage ../development/python-modules/aioitertools { }; + + aiobotocore = callPackage ../development/python-modules/aiobotocore { }; + + aiobroadlink = callPackage ../development/python-modules/aiobroadlink { }; + + aiohue = callPackage ../development/python-modules/aiohue { }; + + aiohwenergy = callPackage ../development/python-modules/aiohwenergy { }; + + aioimaplib = callPackage ../development/python-modules/aioimaplib { }; + + aioinflux = callPackage ../development/python-modules/aioinflux { }; + + aiojobs = callPackage ../development/python-modules/aiojobs { }; + + aiokafka = callPackage ../development/python-modules/aiokafka { }; + + aiokef = callPackage ../development/python-modules/aiokef { }; + + aiolookin = callPackage ../development/python-modules/aiolookin { }; + + aiolifx = callPackage ../development/python-modules/aiolifx { }; + + aiolifx-effects = callPackage ../development/python-modules/aiolifx-effects { }; + + aiolip = callPackage ../development/python-modules/aiolip { }; + + aiolyric = callPackage ../development/python-modules/aiolyric { }; + + aiomodernforms = callPackage ../development/python-modules/aiomodernforms { }; + + aiomultiprocess = callPackage ../development/python-modules/aiomultiprocess { }; + + aiomusiccast = callPackage ../development/python-modules/aiomusiccast { }; + + aiomysql = callPackage ../development/python-modules/aiomysql { }; + + aionanoleaf = callPackage ../development/python-modules/aionanoleaf { }; + + aionotify = callPackage ../development/python-modules/aionotify { }; + + aionotion = callPackage ../development/python-modules/aionotion { }; + + aiooncue = callPackage ../development/python-modules/aiooncue { }; + + aiopg = callPackage ../development/python-modules/aiopg { }; + + aioprocessing = callPackage ../development/python-modules/aioprocessing { }; + + aiopulse = callPackage ../development/python-modules/aiopulse { }; + + aiopvapi = callPackage ../development/python-modules/aiopvapi { }; + + aiopvpc = callPackage ../development/python-modules/aiopvpc { }; + + aiopyarr = callPackage ../development/python-modules/aiopyarr { }; + + aiopylgtv = callPackage ../development/python-modules/aiopylgtv { }; + + aiorecollect = callPackage ../development/python-modules/aiorecollect { }; + + aioredis = callPackage ../development/python-modules/aioredis { }; + + aioresponses = callPackage ../development/python-modules/aioresponses { }; + + aioridwell = callPackage ../development/python-modules/aioridwell { }; + + aiorpcx = callPackage ../development/python-modules/aiorpcx { }; + + aiorun = callPackage ../development/python-modules/aiorun { }; + + aiosenseme = callPackage ../development/python-modules/aiosenseme { }; + + aiosenz = callPackage ../development/python-modules/aiosenz { }; + + aioserial = callPackage ../development/python-modules/aioserial { }; + + aioshelly = callPackage ../development/python-modules/aioshelly { }; + + aiosignal = callPackage ../development/python-modules/aiosignal { }; + + aiosmb = callPackage ../development/python-modules/aiosmb { }; + + aiosmtpd = callPackage ../development/python-modules/aiosmtpd { }; + + aiosqlite = callPackage ../development/python-modules/aiosqlite { }; + + aiosteamist = callPackage ../development/python-modules/aiosteamist { }; + + aiostream = callPackage ../development/python-modules/aiostream { }; + + aioswitcher = callPackage ../development/python-modules/aioswitcher { }; + + aiosyncthing = callPackage ../development/python-modules/aiosyncthing { }; + + aiotractive = callPackage ../development/python-modules/aiotractive { }; + + aiounifi = callPackage ../development/python-modules/aiounifi { }; + + aiounittest = callPackage ../development/python-modules/aiounittest { }; + + aiovlc = callPackage ../development/python-modules/aiovlc { }; + + aiowatttime = callPackage ../development/python-modules/aiowatttime { }; + + aiowebostv = callPackage ../development/python-modules/aiowebostv { }; + + aiowinreg = callPackage ../development/python-modules/aiowinreg { }; + + aioymaps = callPackage ../development/python-modules/aioymaps { }; + + aiozeroconf = callPackage ../development/python-modules/aiozeroconf { }; + + airly = callPackage ../development/python-modules/airly { }; + + airthings-cloud = callPackage ../development/python-modules/airthings-cloud { }; + + airtouch4pyapi = callPackage ../development/python-modules/airtouch4pyapi { }; + + ajpy = callPackage ../development/python-modules/ajpy { }; + + ajsonrpc = callPackage ../development/python-modules/ajsonrpc { }; + + alabaster = callPackage ../development/python-modules/alabaster { }; + + aladdin-connect = callPackage ../development/python-modules/aladdin-connect { }; + + alarmdecoder = callPackage ../development/python-modules/alarmdecoder { }; + + alectryon = callPackage ../development/python-modules/alectryon { }; + + alembic = callPackage ../development/python-modules/alembic { }; + + algebraic-data-types = callPackage ../development/python-modules/algebraic-data-types { }; + + allpairspy = callPackage ../development/python-modules/allpairspy { }; + + allure-behave = callPackage ../development/python-modules/allure-behave { }; + + allure-python-commons = callPackage ../development/python-modules/allure-python-commons { }; + + allure-python-commons-test = callPackage ../development/python-modules/allure-python-commons-test { }; + + allure-pytest = callPackage ../development/python-modules/allure-pytest { }; + + alpha-vantage = callPackage ../development/python-modules/alpha-vantage { }; + + altair = callPackage ../development/python-modules/altair { }; + + amazon_kclpy = callPackage ../development/python-modules/amazon_kclpy { }; + + ambee = callPackage ../development/python-modules/ambee { }; + + amberelectric = callPackage ../development/python-modules/amberelectric { }; + + ambiclimate = callPackage ../development/python-modules/ambiclimate { }; + + amcrest = callPackage ../development/python-modules/amcrest { }; + + amiibo-py = callPackage ../development/python-modules/amiibo-py { }; + + amply = callPackage ../development/python-modules/amply { }; + + amqp = callPackage ../development/python-modules/amqp { }; + + amqplib = callPackage ../development/python-modules/amqplib { }; + + amqtt = callPackage ../development/python-modules/amqtt { }; + + android-backup = callPackage ../development/python-modules/android-backup { }; + + androidtv = callPackage ../development/python-modules/androidtv { }; + + androguard = callPackage ../development/python-modules/androguard { }; + + angr = callPackage ../development/python-modules/angr { }; + + angrcli = callPackage ../development/python-modules/angrcli { + inherit (pkgs) coreutils; + }; + + angrop = callPackage ../development/python-modules/angrop { }; + + aniso8601 = callPackage ../development/python-modules/aniso8601 { }; + + annexremote = callPackage ../development/python-modules/annexremote { }; + + annoy = callPackage ../development/python-modules/annoy { }; + + anonip = callPackage ../development/python-modules/anonip { }; + + ansi2html = callPackage ../development/python-modules/ansi2html { }; + + ansible = callPackage ../development/python-modules/ansible/legacy.nix { }; + + ansible-base = callPackage ../development/python-modules/ansible/base.nix { }; + + ansible-core = callPackage ../development/python-modules/ansible/core.nix { }; + + ansible-kernel = callPackage ../development/python-modules/ansible-kernel { }; + + ansible-lint = callPackage ../development/python-modules/ansible-lint { }; + + ansible-runner = callPackage ../development/python-modules/ansible-runner { }; + + ansi = callPackage ../development/python-modules/ansi { }; + + ansicolor = callPackage ../development/python-modules/ansicolor { }; + + ansicolors = callPackage ../development/python-modules/ansicolors { }; + + ansiconv = callPackage ../development/python-modules/ansiconv { }; + + ansimarkup = callPackage ../development/python-modules/ansimarkup { }; + + ansiwrap = callPackage ../development/python-modules/ansiwrap { }; + + antlr4-python3-runtime = callPackage ../development/python-modules/antlr4-python3-runtime { + inherit (pkgs) antlr4; + }; + + anyascii = callPackage ../development/python-modules/anyascii { }; + + anybadge = callPackage ../development/python-modules/anybadge { }; + + anyio = callPackage ../development/python-modules/anyio { }; + + anytree = callPackage ../development/python-modules/anytree { + inherit (pkgs) graphviz; + }; + + aocd = callPackage ../development/python-modules/aocd { }; + + apache-airflow = callPackage ../development/python-modules/apache-airflow { }; + + apache-beam = callPackage ../development/python-modules/apache-beam { }; + + apcaccess = callPackage ../development/python-modules/apcaccess { }; + + apipkg = callPackage ../development/python-modules/apipkg { }; + + apispec = callPackage ../development/python-modules/apispec { }; + + aplpy = callPackage ../development/python-modules/aplpy { }; + + appdirs = callPackage ../development/python-modules/appdirs { }; + + appleseed = toPythonModule (pkgs.appleseed.override { python3 = self.python; }); + + applicationinsights = callPackage ../development/python-modules/applicationinsights { }; + + appnope = callPackage ../development/python-modules/appnope { }; + + apprise = callPackage ../development/python-modules/apprise { }; + + approvaltests = callPackage ../development/python-modules/approvaltests { }; + + apptools = callPackage ../development/python-modules/apptools { }; + + appthreat-vulnerability-db = callPackage ../development/python-modules/appthreat-vulnerability-db { }; + + aprslib = callPackage ../development/python-modules/aprslib { }; + + APScheduler = callPackage ../development/python-modules/APScheduler { }; + + apsw = callPackage ../development/python-modules/apsw { }; + + apycula = callPackage ../development/python-modules/apycula { }; + + aqualogic = callPackage ../development/python-modules/aqualogic { }; + + arabic-reshaper = callPackage ../development/python-modules/arabic-reshaper { }; + + arcam-fmj = callPackage ../development/python-modules/arcam-fmj { }; + + archinfo = callPackage ../development/python-modules/archinfo { }; + + area = callPackage ../development/python-modules/area { }; + + arelle = callPackage ../development/python-modules/arelle { + gui = true; + }; + + arelle-headless = callPackage ../development/python-modules/arelle { + gui = false; + }; + + aresponses = callPackage ../development/python-modules/aresponses { }; + + argcomplete = callPackage ../development/python-modules/argcomplete { }; + + argh = callPackage ../development/python-modules/argh { }; + + argon2_cffi = callPackage ../development/python-modules/argon2_cffi { }; + + argon2-cffi-bindings = callPackage ../development/python-modules/argon2-cffi-bindings { }; + + args = callPackage ../development/python-modules/args { }; + + aria2p = callPackage ../development/python-modules/aria2p { }; + + arrayqueues = callPackage ../development/python-modules/arrayqueues { }; + + arrow = callPackage ../development/python-modules/arrow { }; + + arviz = callPackage ../development/python-modules/arviz { }; + + arxiv2bib = callPackage ../development/python-modules/arxiv2bib { }; + + asana = callPackage ../development/python-modules/asana { }; + + ascii-magic = callPackage ../development/python-modules/ascii-magic { }; + + asciimatics = callPackage ../development/python-modules/asciimatics { }; + + asciitree = callPackage ../development/python-modules/asciitree { }; + + asdf = callPackage ../development/python-modules/asdf { }; + + ase = callPackage ../development/python-modules/ase { }; + + asgi-csrf = callPackage ../development/python-modules/asgi-csrf { }; + + asgineer = callPackage ../development/python-modules/asgineer { }; + + asgiref = callPackage ../development/python-modules/asgiref { }; + + asmog = callPackage ../development/python-modules/asmog { }; + + asn1 = callPackage ../development/python-modules/asn1 { }; + + asn1ate = callPackage ../development/python-modules/asn1ate { }; + + asn1crypto = callPackage ../development/python-modules/asn1crypto { }; + + aspell-python = callPackage ../development/python-modules/aspell-python { }; + + aspy-yaml = callPackage ../development/python-modules/aspy.yaml { }; + + assertpy = callPackage ../development/python-modules/assertpy { }; + + asterisk-mbox = callPackage ../development/python-modules/asterisk-mbox { }; + + asteval = callPackage ../development/python-modules/asteval { }; + + astor = callPackage ../development/python-modules/astor { }; + + astral = callPackage ../development/python-modules/astral { }; + + astroid = callPackage ../development/python-modules/astroid { }; + + astropy = callPackage ../development/python-modules/astropy { }; + + astropy-healpix = callPackage ../development/python-modules/astropy-healpix { }; + + astropy-helpers = callPackage ../development/python-modules/astropy-helpers { }; + + astropy-extension-helpers = callPackage ../development/python-modules/astropy-extension-helpers { }; + + astroquery = callPackage ../development/python-modules/astroquery { }; + + asttokens = callPackage ../development/python-modules/asttokens { }; + + astunparse = callPackage ../development/python-modules/astunparse { }; + + async_generator = callPackage ../development/python-modules/async_generator { }; + + async-dns = callPackage ../development/python-modules/async-dns { }; + + async-lru = callPackage ../development/python-modules/async-lru { }; + + asyncclick = callPackage ../development/python-modules/asyncclick { }; + + asynccmd = callPackage ../development/python-modules/asynccmd { }; + + asyncio-dgram = callPackage ../development/python-modules/asyncio-dgram { }; + + asyncio-mqtt = callPackage ../development/python-modules/asyncio_mqtt { }; + + asyncio-rlock = callPackage ../development/python-modules/asyncio-rlock { }; + + asyncmy = callPackage ../development/python-modules/asyncmy { }; + + asyncio-throttle = callPackage ../development/python-modules/asyncio-throttle { }; + + asyncpg = callPackage ../development/python-modules/asyncpg { }; + + asyncsleepiq = callPackage ../development/python-modules/asyncsleepiq { }; + + asyncssh = callPackage ../development/python-modules/asyncssh { }; + + asyncstdlib = callPackage ../development/python-modules/asyncstdlib { }; + + async_stagger = callPackage ../development/python-modules/async_stagger { }; + + asynctest = callPackage ../development/python-modules/asynctest { }; + + async-timeout = callPackage ../development/python-modules/async_timeout { }; + + async-upnp-client = callPackage ../development/python-modules/async-upnp-client { }; + + asyncwhois = callPackage ../development/python-modules/asyncwhois { }; + + asysocks = callPackage ../development/python-modules/asysocks { }; + + atenpdu = callPackage ../development/python-modules/atenpdu { }; + + atlassian-python-api = callPackage ../development/python-modules/atlassian-python-api { }; + + atom = callPackage ../development/python-modules/atom { }; + + atomiclong = callPackage ../development/python-modules/atomiclong { }; + + atomicwrites = callPackage ../development/python-modules/atomicwrites { }; + + atomman = callPackage ../development/python-modules/atomman { }; + + atpublic = callPackage ../development/python-modules/atpublic { }; + + atsim_potentials = callPackage ../development/python-modules/atsim_potentials { }; + + attrdict = callPackage ../development/python-modules/attrdict { }; + + attrs = callPackage ../development/python-modules/attrs { }; + + aubio = callPackage ../development/python-modules/aubio { }; + + audio-metadata = callPackage ../development/python-modules/audio-metadata { }; + + audioread = callPackage ../development/python-modules/audioread { }; + + audiotools = callPackage ../development/python-modules/audiotools { + inherit (pkgs.darwin.apple_sdk.frameworks) AudioToolbox AudioUnit CoreServices; + }; + + augeas = callPackage ../development/python-modules/augeas { + inherit (pkgs) augeas; + }; + + augmax = callPackage ../development/python-modules/augmax { }; + + auroranoaa = callPackage ../development/python-modules/auroranoaa { }; + + aurorapy = callPackage ../development/python-modules/aurorapy { }; + + autarco = callPackage ../development/python-modules/autarco { }; + + auth0-python = callPackage ../development/python-modules/auth0-python { }; + + authcaptureproxy = callPackage ../development/python-modules/authcaptureproxy { }; + + authheaders = callPackage ../development/python-modules/authheaders { }; + + authlib = callPackage ../development/python-modules/authlib { }; + + authres = callPackage ../development/python-modules/authres { }; + + autobahn = callPackage ../development/python-modules/autobahn { }; + + autograd = callPackage ../development/python-modules/autograd { }; + + autoit-ripper = callPackage ../development/python-modules/autoit-ripper { }; + + autologging = callPackage ../development/python-modules/autologging { }; + + automat = callPackage ../development/python-modules/automat { }; + + automate-home = callPackage ../development/python-modules/automate-home { }; + + autopage = callPackage ../development/python-modules/autopage { }; + + autopep8 = callPackage ../development/python-modules/autopep8 { }; + + avahi = toPythonModule (pkgs.avahi.override { + inherit python; + withPython = true; + }); + + av = callPackage ../development/python-modules/av { }; + + avea = callPackage ../development/python-modules/avea { }; + + avion = callPackage ../development/python-modules/avion { }; + + avro3k = callPackage ../development/python-modules/avro3k { }; + + avro = callPackage ../development/python-modules/avro { }; + + avro-python3 = callPackage ../development/python-modules/avro-python3 { }; + + awesome-slugify = callPackage ../development/python-modules/awesome-slugify { }; + + awesomeversion = callPackage ../development/python-modules/awesomeversion { }; + + awkward0 = callPackage ../development/python-modules/awkward0 { }; + awkward = callPackage ../development/python-modules/awkward { }; + + aws-adfs = callPackage ../development/python-modules/aws-adfs { }; + + aws-lambda-builders = callPackage ../development/python-modules/aws-lambda-builders { }; + + aws-sam-translator = callPackage ../development/python-modules/aws-sam-translator { }; + + aws-xray-sdk = callPackage ../development/python-modules/aws-xray-sdk { }; + + awscrt = callPackage ../development/python-modules/awscrt { + inherit (pkgs.darwin.apple_sdk.frameworks) CoreFoundation Security; + }; + + awsiotpythonsdk = callPackage ../development/python-modules/awsiotpythonsdk { }; + + awslambdaric = callPackage ../development/python-modules/awslambdaric { }; + + axis = callPackage ../development/python-modules/axis { }; + + azure-appconfiguration = callPackage ../development/python-modules/azure-appconfiguration { }; + + azure-applicationinsights = callPackage ../development/python-modules/azure-applicationinsights { }; + + azure-batch = callPackage ../development/python-modules/azure-batch { }; + + azure-common = callPackage ../development/python-modules/azure-common { }; + + azure-core = callPackage ../development/python-modules/azure-core { }; + + azure-cosmos = callPackage ../development/python-modules/azure-cosmos { }; + + azure-cosmosdb-nspkg = callPackage ../development/python-modules/azure-cosmosdb-nspkg { }; + + azure-cosmosdb-table = callPackage ../development/python-modules/azure-cosmosdb-table { }; + + azure-datalake-store = callPackage ../development/python-modules/azure-datalake-store { }; + + azure-eventgrid = callPackage ../development/python-modules/azure-eventgrid { }; + + azure-eventhub = callPackage ../development/python-modules/azure-eventhub { }; + + azure-functions-devops-build = callPackage ../development/python-modules/azure-functions-devops-build { }; + + azure-graphrbac = callPackage ../development/python-modules/azure-graphrbac { }; + + azure-identity = callPackage ../development/python-modules/azure-identity { }; + + azure-keyvault = callPackage ../development/python-modules/azure-keyvault { }; + + azure-keyvault-administration = callPackage ../development/python-modules/azure-keyvault-administration { }; + + azure-keyvault-certificates = callPackage ../development/python-modules/azure-keyvault-certificates { }; + + azure-keyvault-keys = callPackage ../development/python-modules/azure-keyvault-keys { }; + + azure-keyvault-nspkg = callPackage ../development/python-modules/azure-keyvault-nspkg { }; + + azure-keyvault-secrets = callPackage ../development/python-modules/azure-keyvault-secrets { }; + + azure-loganalytics = callPackage ../development/python-modules/azure-loganalytics { }; + + azure-mgmt-advisor = callPackage ../development/python-modules/azure-mgmt-advisor { }; + + azure-mgmt-apimanagement = callPackage ../development/python-modules/azure-mgmt-apimanagement { }; + + azure-mgmt-appconfiguration = callPackage ../development/python-modules/azure-mgmt-appconfiguration { }; + + azure-mgmt-applicationinsights = callPackage ../development/python-modules/azure-mgmt-applicationinsights { }; + + azure-mgmt-authorization = callPackage ../development/python-modules/azure-mgmt-authorization { }; + + azure-mgmt-batchai = callPackage ../development/python-modules/azure-mgmt-batchai { }; + + azure-mgmt-batch = callPackage ../development/python-modules/azure-mgmt-batch { }; + + azure-mgmt-billing = callPackage ../development/python-modules/azure-mgmt-billing { }; + + azure-mgmt-botservice = callPackage ../development/python-modules/azure-mgmt-botservice { }; + + azure-mgmt-cdn = callPackage ../development/python-modules/azure-mgmt-cdn { }; + + azure-mgmt-cognitiveservices = callPackage ../development/python-modules/azure-mgmt-cognitiveservices { }; + + azure-mgmt-commerce = callPackage ../development/python-modules/azure-mgmt-commerce { }; + + azure-mgmt-common = callPackage ../development/python-modules/azure-mgmt-common { }; + + azure-mgmt-compute = callPackage ../development/python-modules/azure-mgmt-compute { }; + + azure-mgmt-consumption = callPackage ../development/python-modules/azure-mgmt-consumption { }; + + azure-mgmt-containerinstance = callPackage ../development/python-modules/azure-mgmt-containerinstance { }; + + azure-mgmt-containerregistry = callPackage ../development/python-modules/azure-mgmt-containerregistry { }; + + azure-mgmt-containerservice = callPackage ../development/python-modules/azure-mgmt-containerservice { }; + + azure-mgmt-core = callPackage ../development/python-modules/azure-mgmt-core { }; + + azure-mgmt-cosmosdb = callPackage ../development/python-modules/azure-mgmt-cosmosdb { }; + + azure-mgmt-databoxedge = callPackage ../development/python-modules/azure-mgmt-databoxedge { }; + + azure-mgmt-datafactory = callPackage ../development/python-modules/azure-mgmt-datafactory { }; + + azure-mgmt-datalake-analytics = callPackage ../development/python-modules/azure-mgmt-datalake-analytics { }; + + azure-mgmt-datalake-nspkg = callPackage ../development/python-modules/azure-mgmt-datalake-nspkg { }; + + azure-mgmt-datalake-store = callPackage ../development/python-modules/azure-mgmt-datalake-store { }; + + azure-mgmt-datamigration = callPackage ../development/python-modules/azure-mgmt-datamigration { }; + + azure-mgmt-deploymentmanager = callPackage ../development/python-modules/azure-mgmt-deploymentmanager { }; + + azure-mgmt-devspaces = callPackage ../development/python-modules/azure-mgmt-devspaces { }; + + azure-mgmt-devtestlabs = callPackage ../development/python-modules/azure-mgmt-devtestlabs { }; + + azure-mgmt-dns = callPackage ../development/python-modules/azure-mgmt-dns { }; + + azure-mgmt-eventgrid = callPackage ../development/python-modules/azure-mgmt-eventgrid { }; + + azure-mgmt-eventhub = callPackage ../development/python-modules/azure-mgmt-eventhub { }; + + azure-mgmt-extendedlocation = callPackage ../development/python-modules/azure-mgmt-extendedlocation { }; + + azure-mgmt-hanaonazure = callPackage ../development/python-modules/azure-mgmt-hanaonazure { }; + + azure-mgmt-hdinsight = callPackage ../development/python-modules/azure-mgmt-hdinsight { }; + + azure-mgmt-imagebuilder = callPackage ../development/python-modules/azure-mgmt-imagebuilder { }; + + azure-mgmt-iotcentral = callPackage ../development/python-modules/azure-mgmt-iotcentral { }; + + azure-mgmt-iothub = callPackage ../development/python-modules/azure-mgmt-iothub { }; + + azure-mgmt-iothubprovisioningservices = callPackage ../development/python-modules/azure-mgmt-iothubprovisioningservices { }; + + azure-mgmt-keyvault = callPackage ../development/python-modules/azure-mgmt-keyvault { }; + + azure-mgmt-kusto = callPackage ../development/python-modules/azure-mgmt-kusto { }; + + azure-mgmt-loganalytics = callPackage ../development/python-modules/azure-mgmt-loganalytics { }; + + azure-mgmt-logic = callPackage ../development/python-modules/azure-mgmt-logic { }; + + azure-mgmt-machinelearningcompute = callPackage ../development/python-modules/azure-mgmt-machinelearningcompute { }; + + azure-mgmt-managedservices = callPackage ../development/python-modules/azure-mgmt-managedservices { }; + + azure-mgmt-managementgroups = callPackage ../development/python-modules/azure-mgmt-managementgroups { }; + + azure-mgmt-managementpartner = callPackage ../development/python-modules/azure-mgmt-managementpartner { }; + + azure-mgmt-maps = callPackage ../development/python-modules/azure-mgmt-maps { }; + + azure-mgmt-marketplaceordering = callPackage ../development/python-modules/azure-mgmt-marketplaceordering { }; + + azure-mgmt-media = callPackage ../development/python-modules/azure-mgmt-media { }; + + azure-mgmt-monitor = callPackage ../development/python-modules/azure-mgmt-monitor { }; + + azure-mgmt-msi = callPackage ../development/python-modules/azure-mgmt-msi { }; + + azure-mgmt-netapp = callPackage ../development/python-modules/azure-mgmt-netapp { }; + + azure-mgmt-network = callPackage ../development/python-modules/azure-mgmt-network { }; + + azure-mgmt-notificationhubs = callPackage ../development/python-modules/azure-mgmt-notificationhubs { }; + + azure-mgmt-nspkg = callPackage ../development/python-modules/azure-mgmt-nspkg { }; + + azure-mgmt-policyinsights = callPackage ../development/python-modules/azure-mgmt-policyinsights { }; + + azure-mgmt-powerbiembedded = callPackage ../development/python-modules/azure-mgmt-powerbiembedded { }; + + azure-mgmt-privatedns = callPackage ../development/python-modules/azure-mgmt-privatedns { }; + + azure-mgmt-rdbms = callPackage ../development/python-modules/azure-mgmt-rdbms { }; + + azure-mgmt-recoveryservicesbackup = callPackage ../development/python-modules/azure-mgmt-recoveryservicesbackup { }; + + azure-mgmt-recoveryservices = callPackage ../development/python-modules/azure-mgmt-recoveryservices { }; + + azure-mgmt-redhatopenshift = callPackage ../development/python-modules/azure-mgmt-redhatopenshift { }; + + azure-mgmt-redis = callPackage ../development/python-modules/azure-mgmt-redis { }; + + azure-mgmt-relay = callPackage ../development/python-modules/azure-mgmt-relay { }; + + azure-mgmt-reservations = callPackage ../development/python-modules/azure-mgmt-reservations { }; + + azure-mgmt-resource = callPackage ../development/python-modules/azure-mgmt-resource { }; + + azure-mgmt-scheduler = callPackage ../development/python-modules/azure-mgmt-scheduler { }; + + azure-mgmt-search = callPackage ../development/python-modules/azure-mgmt-search { }; + + azure-mgmt-security = callPackage ../development/python-modules/azure-mgmt-security { }; + + azure-mgmt-servicebus = callPackage ../development/python-modules/azure-mgmt-servicebus { }; + + azure-mgmt-servicefabric = callPackage ../development/python-modules/azure-mgmt-servicefabric { }; + + azure-mgmt-servicefabricmanagedclusters = callPackage ../development/python-modules/azure-mgmt-servicefabricmanagedclusters { }; + + azure-mgmt-servicelinker = callPackage ../development/python-modules/azure-mgmt-servicelinker { }; + + azure-mgmt-signalr = callPackage ../development/python-modules/azure-mgmt-signalr { }; + + azure-mgmt-sql = callPackage ../development/python-modules/azure-mgmt-sql { }; + + azure-mgmt-sqlvirtualmachine = callPackage ../development/python-modules/azure-mgmt-sqlvirtualmachine { }; + + azure-mgmt-storage = callPackage ../development/python-modules/azure-mgmt-storage { }; + + azure-mgmt-subscription = callPackage ../development/python-modules/azure-mgmt-subscription { }; + + azure-mgmt-synapse = callPackage ../development/python-modules/azure-mgmt-synapse { }; + + azure-mgmt-trafficmanager = callPackage ../development/python-modules/azure-mgmt-trafficmanager { }; + + azure-mgmt-web = callPackage ../development/python-modules/azure-mgmt-web { }; + + azure-multiapi-storage = callPackage ../development/python-modules/azure-multiapi-storage { }; + + azure-nspkg = callPackage ../development/python-modules/azure-nspkg { }; + + azure-servicebus = callPackage ../development/python-modules/azure-servicebus { }; + + azure-servicefabric = callPackage ../development/python-modules/azure-servicefabric { }; + + azure-servicemanagement-legacy = callPackage ../development/python-modules/azure-servicemanagement-legacy { }; + + azure-storage-blob = callPackage ../development/python-modules/azure-storage-blob { }; + + azure-storage = callPackage ../development/python-modules/azure-storage { }; + + azure-storage-common = callPackage ../development/python-modules/azure-storage-common { }; + + azure-storage-file = callPackage ../development/python-modules/azure-storage-file { }; + + azure-storage-file-share = callPackage ../development/python-modules/azure-storage-file-share { }; + + azure-storage-nspkg = callPackage ../development/python-modules/azure-storage-nspkg { }; + + azure-storage-queue = callPackage ../development/python-modules/azure-storage-queue { }; + + azure-synapse-accesscontrol = callPackage ../development/python-modules/azure-synapse-accesscontrol { }; + + azure-synapse-artifacts = callPackage ../development/python-modules/azure-synapse-artifacts { }; + + azure-synapse-managedprivateendpoints = callPackage ../development/python-modules/azure-synapse-managedprivateendpoints { }; + + azure-synapse-spark = callPackage ../development/python-modules/azure-synapse-spark { }; + + b2sdk = callPackage ../development/python-modules/b2sdk { }; + + Babel = callPackage ../development/python-modules/Babel { }; + + babelfish = callPackage ../development/python-modules/babelfish { }; + + babelgladeextractor = callPackage ../development/python-modules/babelgladeextractor { }; + + backcall = callPackage ../development/python-modules/backcall { }; + + backoff = callPackage ../development/python-modules/backoff { }; + + backports_abc = callPackage ../development/python-modules/backports_abc { }; + + backports_csv = callPackage ../development/python-modules/backports_csv { }; + + backports-datetime-fromisoformat = callPackage ../development/python-modules/backports-datetime-fromisoformat { }; + + backports-entry-points-selectable = callPackage ../development/python-modules/backports-entry-points-selectable { }; + + backports_functools_lru_cache = callPackage ../development/python-modules/backports_functools_lru_cache { }; + + backports_shutil_get_terminal_size = callPackage ../development/python-modules/backports_shutil_get_terminal_size { }; + + backports-shutil-which = callPackage ../development/python-modules/backports-shutil-which { }; + + backports_ssl_match_hostname = callPackage ../development/python-modules/backports_ssl_match_hostname { }; + + backports_tempfile = callPackage ../development/python-modules/backports_tempfile { }; + + backports_unittest-mock = callPackage ../development/python-modules/backports_unittest-mock { }; + + backports_weakref = callPackage ../development/python-modules/backports_weakref { }; + + backports-zoneinfo = callPackage ../development/python-modules/backports-zoneinfo { }; + + bacpypes = callPackage ../development/python-modules/bacpypes { }; + + bagit = callPackage ../development/python-modules/bagit { }; + + banal = callPackage ../development/python-modules/banal { }; + + bandit = callPackage ../development/python-modules/bandit { }; + + bap = callPackage ../development/python-modules/bap { + inherit (pkgs.ocaml-ng.ocamlPackages) bap; + }; + + baron = callPackage ../development/python-modules/baron { }; + + base36 = callPackage ../development/python-modules/base36 { }; + + base58 = callPackage ../development/python-modules/base58 { }; + + base58check = callPackage ../development/python-modules/base58check { }; + + baseline = callPackage ../development/python-modules/baseline { }; + + baselines = callPackage ../development/python-modules/baselines { }; + + basemap = callPackage ../development/python-modules/basemap { }; + + bash_kernel = callPackage ../development/python-modules/bash_kernel { }; + + bashlex = callPackage ../development/python-modules/bashlex { }; + + basiciw = callPackage ../development/python-modules/basiciw { }; + + batchgenerators = callPackage ../development/python-modules/batchgenerators { }; + + batchspawner = callPackage ../development/python-modules/batchspawner { }; + + batinfo = callPackage ../development/python-modules/batinfo { }; + + bayesian-optimization = callPackage ../development/python-modules/bayesian-optimization { }; + + bayespy = callPackage ../development/python-modules/bayespy { }; + + bbox = callPackage ../development/python-modules/bbox { }; + + bc-python-hcl2 = callPackage ../development/python-modules/bc-python-hcl2 { }; + + bcdoc = callPackage ../development/python-modules/bcdoc { }; + + bcrypt = callPackage ../development/python-modules/bcrypt { }; + + beaker = callPackage ../development/python-modules/beaker { }; + + beancount = callPackage ../development/python-modules/beancount { }; + + beancount_docverif = callPackage ../development/python-modules/beancount_docverif { }; + + beanstalkc = callPackage ../development/python-modules/beanstalkc { }; + + beartype = callPackage ../development/python-modules/beartype { }; + + beautifulsoup4 = callPackage ../development/python-modules/beautifulsoup4 { }; + + beautifultable = callPackage ../development/python-modules/beautifultable { }; + + bedup = callPackage ../development/python-modules/bedup { }; + + behave = callPackage ../development/python-modules/behave { }; + + bellows = callPackage ../development/python-modules/bellows { }; + + beniget = callPackage ../development/python-modules/beniget { }; + + bespon = callPackage ../development/python-modules/bespon { }; + + betacode = callPackage ../development/python-modules/betacode { }; + + betamax = callPackage ../development/python-modules/betamax { }; + + betamax-matchers = callPackage ../development/python-modules/betamax-matchers { }; + + betamax-serializers = callPackage ../development/python-modules/betamax-serializers { }; + + bibtexparser = callPackage ../development/python-modules/bibtexparser { }; + + bidict = callPackage ../development/python-modules/bidict { }; + + bids-validator = callPackage ../development/python-modules/bids-validator { }; + + billiard = callPackage ../development/python-modules/billiard { }; + + bimmer-connected = callPackage ../development/python-modules/bimmer-connected { }; + + binaryornot = callPackage ../development/python-modules/binaryornot { }; + + binho-host-adapter = callPackage ../development/python-modules/binho-host-adapter { }; + + binwalk = callPackage ../development/python-modules/binwalk { }; + + binwalk-full = self.binwalk.override { visualizationSupport = true; }; + + biopython = callPackage ../development/python-modules/biopython { }; + + biplist = callPackage ../development/python-modules/biplist { }; + + bip_utils = callPackage ../development/python-modules/bip_utils { }; + + bitarray = callPackage ../development/python-modules/bitarray { }; + + bitbox02 = callPackage ../development/python-modules/bitbox02 { }; + + bitcoinlib = callPackage ../development/python-modules/bitcoinlib { }; + + bitcoin-price-api = callPackage ../development/python-modules/bitcoin-price-api { }; + + bitcoin-utils-fork-minimal = callPackage ../development/python-modules/bitcoin-utils-fork-minimal { }; + + bitcoinrpc = callPackage ../development/python-modules/bitcoinrpc { }; + + bitlist = callPackage ../development/python-modules/bitlist { }; + + bitmath = callPackage ../development/python-modules/bitmath { }; + + bitstring = callPackage ../development/python-modules/bitstring { }; + + bitstruct = callPackage ../development/python-modules/bitstruct { }; + + bitvavo-aio = callPackage ../development/python-modules/bitvavo-aio { }; + + bizkaibus = callPackage ../development/python-modules/bizkaibus { }; + + bjoern = callPackage ../development/python-modules/bjoern { }; + + bkcharts = callPackage ../development/python-modules/bkcharts { }; + + black = callPackage ../development/python-modules/black { }; + + black-macchiato = callPackage ../development/python-modules/black-macchiato { }; + + bleach = callPackage ../development/python-modules/bleach { }; + + bleak = callPackage ../development/python-modules/bleak { }; + + blebox-uniapi = callPackage ../development/python-modules/blebox-uniapi { }; + + blessed = callPackage ../development/python-modules/blessed { }; + + blessings = callPackage ../development/python-modules/blessings { }; + + blinker = callPackage ../development/python-modules/blinker { }; + + blinkpy = callPackage ../development/python-modules/blinkpy { }; + + BlinkStick = callPackage ../development/python-modules/blinkstick { }; + + blis = callPackage ../development/python-modules/blis { }; + + blockchain = callPackage ../development/python-modules/blockchain { }; + + blockdiag = callPackage ../development/python-modules/blockdiag { }; + + block-io = callPackage ../development/python-modules/block-io { }; + + blocksat-cli = callPackage ../development/python-modules/blocksat-cli { }; + + blspy = callPackage ../development/python-modules/blspy { }; + + bluepy = callPackage ../development/python-modules/bluepy { }; + + bluepy-devices = callPackage ../development/python-modules/bluepy-devices { }; + + blurhash = callPackage ../development/python-modules/blurhash { }; + + bme280spi = callPackage ../development/python-modules/bme280spi { }; + + bme680 = callPackage ../development/python-modules/bme680 { }; + + bokeh = callPackage ../development/python-modules/bokeh { }; + + boltons = callPackage ../development/python-modules/boltons { }; + + boltztrap2 = callPackage ../development/python-modules/boltztrap2 { }; + + bond-api = callPackage ../development/python-modules/bond-api { }; + + booleanoperations = callPackage ../development/python-modules/booleanoperations { }; + + boolean-py = callPackage ../development/python-modules/boolean-py { }; + + # Build boost for this specific Python version + # TODO: use separate output for libboost_python.so + boost = toPythonModule (pkgs.boost.override { + inherit (self) python numpy; + enablePython = true; + }); + + boost169 = toPythonModule (pkgs.boost169.override { + inherit (self) python numpy; + enablePython = true; + }); + + boschshcpy = callPackage ../development/python-modules/boschshcpy { }; + + boost-histogram = callPackage ../development/python-modules/boost-histogram { + inherit (pkgs) boost; + }; + + boto3 = callPackage ../development/python-modules/boto3 { }; + + boto = callPackage ../development/python-modules/boto { }; + + botocore = callPackage ../development/python-modules/botocore { }; + + bottle = callPackage ../development/python-modules/bottle { }; + + bottleneck = callPackage ../development/python-modules/bottleneck { }; + + boxx = callPackage ../development/python-modules/boxx { }; + + bpycv = callPackage ../development/python-modules/bpycv {}; + + bpython = callPackage ../development/python-modules/bpython { }; + + braceexpand = callPackage ../development/python-modules/braceexpand { }; + + bracex = callPackage ../development/python-modules/bracex { }; + + braintree = callPackage ../development/python-modules/braintree { }; + + branca = callPackage ../development/python-modules/branca { }; + + bravado-core = callPackage ../development/python-modules/bravado-core { }; + + bravia-tv = callPackage ../development/python-modules/bravia-tv { }; + + breathe = callPackage ../development/python-modules/breathe { }; + + breezy = callPackage ../development/python-modules/breezy { }; + + brelpy = callPackage ../development/python-modules/brelpy { }; + + broadlink = callPackage ../development/python-modules/broadlink { }; + + brother = callPackage ../development/python-modules/brother { }; + + brother-ql = callPackage ../development/python-modules/brother-ql { }; + + brotli = callPackage ../development/python-modules/brotli { }; + + brotlicffi = callPackage ../development/python-modules/brotlicffi { + inherit (pkgs) brotli; + }; + + brotlipy = callPackage ../development/python-modules/brotlipy { }; + + brottsplatskartan = callPackage ../development/python-modules/brottsplatskartan { }; + + browser-cookie3 = callPackage ../development/python-modules/browser-cookie3 { }; + + bsddb3 = callPackage ../development/python-modules/bsddb3 { }; + + bsdiff4 = callPackage ../development/python-modules/bsdiff4 { }; + + bsblan = callPackage ../development/python-modules/bsblan { }; + + bson = callPackage ../development/python-modules/bson { }; + + btchip = callPackage ../development/python-modules/btchip { }; + + bt-proximity = callPackage ../development/python-modules/bt-proximity { }; + + BTrees = callPackage ../development/python-modules/btrees { }; + + btrfs = callPackage ../development/python-modules/btrfs { }; + + bugsnag = callPackage ../development/python-modules/bugsnag { }; + + bugwarrior = callPackage ../development/python-modules/bugwarrior { }; + + bugz = callPackage ../development/python-modules/bugz { }; + + bugzilla = callPackage ../development/python-modules/bugzilla { }; + + buienradar = callPackage ../development/python-modules/buienradar { }; + + buildbot = callPackage ../development/python-modules/buildbot { }; + + buildbot-ui = self.buildbot.withPlugins (with self.buildbot-plugins; [ www ]); + + buildbot-full = self.buildbot.withPlugins (with self.buildbot-plugins; [ www console-view waterfall-view grid-view wsgi-dashboards ]); + + buildbot-pkg = callPackage ../development/python-modules/buildbot/pkg.nix { }; + + buildbot-plugins = pkgs.recurseIntoAttrs (callPackage ../development/python-modules/buildbot/plugins.nix { }); + + buildbot-worker = callPackage ../development/python-modules/buildbot/worker.nix { }; + + build = callPackage ../development/python-modules/build { }; + + buildcatrust = callPackage ../development/python-modules/buildcatrust { }; + + bumps = callPackage ../development/python-modules/bumps { }; + + bunch = callPackage ../development/python-modules/bunch { }; + + bx-python = callPackage ../development/python-modules/bx-python { }; + + bwapy = callPackage ../development/python-modules/bwapy { }; + + bytecode = callPackage ../development/python-modules/bytecode { }; + + bz2file = callPackage ../development/python-modules/bz2file { }; + + cachecontrol = callPackage ../development/python-modules/cachecontrol { }; + + cached-property = callPackage ../development/python-modules/cached-property { }; + + cachelib = callPackage ../development/python-modules/cachelib { }; + + cachetools = callPackage ../development/python-modules/cachetools { }; + + cachey = callPackage ../development/python-modules/cachey { }; + + cachy = callPackage ../development/python-modules/cachy { }; + + cadquery = callPackage ../development/python-modules/cadquery { + inherit (pkgs.darwin.apple_sdk.frameworks) Cocoa; + }; + + caffe = toPythonModule (pkgs.caffe.override { + pythonSupport = true; + inherit (self) python numpy boost; + }); + + cairocffi = callPackage ../development/python-modules/cairocffi { }; + + cairosvg = callPackage ../development/python-modules/cairosvg { }; + + caldav = callPackage ../development/python-modules/caldav { }; + + calmjs-parse = callPackage ../development/python-modules/calmjs-parse { }; + + can = callPackage ../development/python-modules/can { }; + + canmatrix = callPackage ../development/python-modules/canmatrix { }; + + canonicaljson = callPackage ../development/python-modules/canonicaljson { }; + + canopen = callPackage ../development/python-modules/canopen { }; + + capstone = callPackage ../development/python-modules/capstone { + inherit (pkgs) capstone; + }; + + capturer = callPackage ../development/python-modules/capturer { }; + + carbon = callPackage ../development/python-modules/carbon { }; + + cart = callPackage ../development/python-modules/cart { }; + + cartopy = callPackage ../development/python-modules/cartopy { }; + + casa-formats-io = callPackage ../development/python-modules/casa-formats-io { }; + + casbin = callPackage ../development/python-modules/casbin { }; + + case = callPackage ../development/python-modules/case { }; + + cassandra-driver = callPackage ../development/python-modules/cassandra-driver { }; + + castepxbin = callPackage ../development/python-modules/castepxbin { }; + + casttube = callPackage ../development/python-modules/casttube { }; + + catalogue = callPackage ../development/python-modules/catalogue { }; + + catboost = callPackage ../development/python-modules/catboost { }; + + cattrs = callPackage ../development/python-modules/cattrs { }; + + cbeams = callPackage ../misc/cbeams { }; + + cbor2 = callPackage ../development/python-modules/cbor2 { }; + + cbor = callPackage ../development/python-modules/cbor { }; + + cccolutils = callPackage ../development/python-modules/cccolutils { }; + + cchardet = callPackage ../development/python-modules/cchardet { }; + + cdcs = callPackage ../development/python-modules/cdcs { }; + + celery = callPackage ../development/python-modules/celery { }; + + cement = callPackage ../development/python-modules/cement { }; + + censys = callPackage ../development/python-modules/censys { }; + + connect-box = callPackage ../development/python-modules/connect_box { }; + + connection-pool = callPackage ../development/python-modules/connection-pool { }; + + coqpit = callPackage ../development/python-modules/coqpit { }; + + coqui-trainer = callPackage ../development/python-modules/coqui-trainer {}; + + cepa = callPackage ../development/python-modules/cepa { }; + + cerberus = callPackage ../development/python-modules/cerberus { }; + + cert-chain-resolver = callPackage ../development/python-modules/cert-chain-resolver { }; + + certauth = callPackage ../development/python-modules/certauth { }; + + certbot = callPackage ../development/python-modules/certbot { }; + + certbot-dns-cloudflare = callPackage ../development/python-modules/certbot-dns-cloudflare { }; + + certbot-dns-rfc2136 = callPackage ../development/python-modules/certbot-dns-rfc2136 { }; + + certbot-dns-google = callPackage ../development/python-modules/certbot-dns-google { }; + + certbot-dns-route53 = callPackage ../development/python-modules/certbot-dns-route53 { }; + + certifi = callPackage ../development/python-modules/certifi { }; + + certipy = callPackage ../development/python-modules/certipy { }; + + certvalidator = callPackage ../development/python-modules/certvalidator { }; + + cffi = callPackage ../development/python-modules/cffi { }; + + cffsubr = callPackage ../development/python-modules/cffsubr { }; + + cfgv = callPackage ../development/python-modules/cfgv { }; + + cfn-flip = callPackage ../development/python-modules/cfn-flip { }; + + cfn-lint = callPackage ../development/python-modules/cfn-lint { }; + + cftime = callPackage ../development/python-modules/cftime { }; + + cgen = callPackage ../development/python-modules/cgen { }; + + cgroup-utils = callPackage ../development/python-modules/cgroup-utils { }; + + chai = callPackage ../development/python-modules/chai { }; + + chainer = callPackage ../development/python-modules/chainer { + cudaSupport = pkgs.config.cudaSupport or false; + }; + + chainmap = callPackage ../development/python-modules/chainmap { }; + + chalice = callPackage ../development/python-modules/chalice { }; + + chameleon = callPackage ../development/python-modules/chameleon { }; + + channels = callPackage ../development/python-modules/channels { }; + + channels-redis = callPackage ../development/python-modules/channels-redis { }; + + characteristic = callPackage ../development/python-modules/characteristic { }; + + chardet = callPackage ../development/python-modules/chardet { }; + + charset-normalizer = callPackage ../development/python-modules/charset-normalizer { }; + + chart-studio = callPackage ../development/python-modules/chart-studio { }; + + check-manifest = callPackage ../development/python-modules/check-manifest { }; + + cheetah3 = callPackage ../development/python-modules/cheetah3 { }; + + cheroot = callPackage ../development/python-modules/cheroot { }; + + cherrypy = callPackage ../development/python-modules/cherrypy { }; + + chess = callPackage ../development/python-modules/chess { }; + + chevron = callPackage ../development/python-modules/chevron { }; + + chex = callPackage ../development/python-modules/chex { }; + + chiabip158 = callPackage ../development/python-modules/chiabip158 { }; + + chiapos = callPackage ../development/python-modules/chiapos { }; + + chiavdf = callPackage ../development/python-modules/chiavdf { }; + + chirpstack-api = callPackage ../development/python-modules/chirpstack-api { }; + + chispa = callPackage ../development/python-modules/chispa { }; + + chromaprint = callPackage ../development/python-modules/chromaprint { }; + + ci-info = callPackage ../development/python-modules/ci-info { }; + + ci-py = callPackage ../development/python-modules/ci-py { }; + + circuit-webhook = callPackage ../development/python-modules/circuit-webhook { }; + + circuitbreaker = callPackage ../development/python-modules/circuitbreaker { }; + + cirq = callPackage ../development/python-modules/cirq { }; + + cirq-aqt = callPackage ../development/python-modules/cirq-aqt { }; + + cirq-core = callPackage ../development/python-modules/cirq-core { }; + + cirq-ionq = callPackage ../development/python-modules/cirq-ionq { }; + + cirq-google = callPackage ../development/python-modules/cirq-google { }; + + cirq-rigetti = callPackage ../development/python-modules/cirq-rigetti { }; + + cirq-pasqal = callPackage ../development/python-modules/cirq-pasqal { }; + + cirq-web = callPackage ../development/python-modules/cirq-web { }; + + ciscoconfparse = callPackage ../development/python-modules/ciscoconfparse { }; + + ciscomobilityexpress = callPackage ../development/python-modules/ciscomobilityexpress { }; + + ciso8601 = callPackage ../development/python-modules/ciso8601 { }; + + citeproc-py = callPackage ../development/python-modules/citeproc-py { }; + + cjkwrap = callPackage ../development/python-modules/cjkwrap { }; + + ckcc-protocol = callPackage ../development/python-modules/ckcc-protocol { }; + + claripy = callPackage ../development/python-modules/claripy { }; + + cld2-cffi = callPackage ../development/python-modules/cld2-cffi { }; + + cle = callPackage ../development/python-modules/cle { }; + + cleo = callPackage ../development/python-modules/cleo { }; + + clevercsv = callPackage ../development/python-modules/clevercsv { }; + + clf = callPackage ../development/python-modules/clf { }; + + cock = callPackage ../development/python-modules/cock { }; + + click = callPackage ../development/python-modules/click { }; + + clickclick = callPackage ../development/python-modules/clickclick { }; + + click-completion = callPackage ../development/python-modules/click-completion { }; + + click-configfile = callPackage ../development/python-modules/click-configfile { }; + + click-datetime = callPackage ../development/python-modules/click-datetime { }; + + click-default-group = callPackage ../development/python-modules/click-default-group { }; + + click-didyoumean = callPackage ../development/python-modules/click-didyoumean { }; + + click-help-colors = callPackage ../development/python-modules/click-help-colors { }; + + click-log = callPackage ../development/python-modules/click-log { }; + + click-option-group = callPackage ../development/python-modules/click-option-group { }; + + click-plugins = callPackage ../development/python-modules/click-plugins { }; + + click-spinner = callPackage ../development/python-modules/click-spinner { }; + + click-repl = callPackage ../development/python-modules/click-repl { }; + + click-threading = callPackage ../development/python-modules/click-threading { }; + + clickgen = callPackage ../development/python-modules/clickgen { }; + + clickhouse-cityhash = callPackage ../development/python-modules/clickhouse-cityhash { }; + + clickhouse-cli = callPackage ../development/python-modules/clickhouse-cli { }; + + clickhouse-driver = callPackage ../development/python-modules/clickhouse-driver { }; + + cliff = callPackage ../development/python-modules/cliff { }; + + clifford = callPackage ../development/python-modules/clifford { }; + + cligj = callPackage ../development/python-modules/cligj { }; + + cli-helpers = callPackage ../development/python-modules/cli-helpers { }; + + clikit = callPackage ../development/python-modules/clikit { }; + + clint = callPackage ../development/python-modules/clint { }; + + clintermission = callPackage ../development/python-modules/clintermission { }; + + clize = callPackage ../development/python-modules/clize { }; + + clldutils = callPackage ../development/python-modules/clldutils { }; + + cloudflare = callPackage ../development/python-modules/cloudflare { }; + + cloudpickle = callPackage ../development/python-modules/cloudpickle { }; + + cloudscraper = callPackage ../development/python-modules/cloudscraper { }; + + cloudsmith-api = callPackage ../development/python-modules/cloudsmith-api { }; + + cloudsplaining = callPackage ../development/python-modules/cloudsplaining { }; + + clustershell = callPackage ../development/python-modules/clustershell { }; + + clvm = callPackage ../development/python-modules/clvm { }; + + clvm-rs = callPackage ../development/python-modules/clvm-rs { }; + + clvm-tools = callPackage ../development/python-modules/clvm-tools { }; + + cma = callPackage ../development/python-modules/cma { }; + + cmarkgfm = callPackage ../development/python-modules/cmarkgfm { }; + + cmd2 = callPackage ../development/python-modules/cmd2 { }; + + cmdline = callPackage ../development/python-modules/cmdline { }; + + cmigemo = callPackage ../development/python-modules/cmigemo { + inherit (pkgs) cmigemo; + }; + + cmsis-svd = callPackage ../development/python-modules/cmsis-svd { }; + + cntk = callPackage ../development/python-modules/cntk { }; + + cnvkit = callPackage ../development/python-modules/cnvkit { }; + + co2signal = callPackage ../development/python-modules/co2signal { }; + + coapthon3 = callPackage ../development/python-modules/coapthon3 { }; + + coconut = callPackage ../development/python-modules/coconut { }; + + cocotb = callPackage ../development/python-modules/cocotb { }; + + cocotb-bus = callPackage ../development/python-modules/cocotb-bus { }; + + codecov = callPackage ../development/python-modules/codecov { }; + + codespell = callPackage ../development/python-modules/codespell { }; + + cogapp = callPackage ../development/python-modules/cogapp { }; + + ColanderAlchemy = callPackage ../development/python-modules/colanderalchemy { }; + + colander = callPackage ../development/python-modules/colander { }; + + collections-extended = callPackage ../development/python-modules/collections-extended { }; + + colorama = callPackage ../development/python-modules/colorama { }; + + colorcet = callPackage ../development/python-modules/colorcet { }; + + colorclass = callPackage ../development/python-modules/colorclass { }; + + colored = callPackage ../development/python-modules/colored { }; + + colored-traceback = callPackage ../development/python-modules/colored-traceback { }; + + coloredlogs = callPackage ../development/python-modules/coloredlogs { }; + + colorful = callPackage ../development/python-modules/colorful { }; + + colorlog = callPackage ../development/python-modules/colorlog { }; + + colorlover = callPackage ../development/python-modules/colorlover { }; + + colormath = callPackage ../development/python-modules/colormath { }; + + colorspacious = callPackage ../development/python-modules/colorspacious { }; + + colorthief = callPackage ../development/python-modules/colorthief { }; + + colour = callPackage ../development/python-modules/colour { }; + + cometblue-lite = callPackage ../development/python-modules/cometblue-lite { }; + + commandparse = callPackage ../development/python-modules/commandparse { }; + + commentjson = callPackage ../development/python-modules/commentjson { }; + + commoncode = callPackage ../development/python-modules/commoncode { }; + + CommonMark = callPackage ../development/python-modules/commonmark { }; + + compiledb = callPackage ../development/python-modules/compiledb { }; + + compreffor = callPackage ../development/python-modules/compreffor { }; + + concurrent-log-handler = callPackage ../development/python-modules/concurrent-log-handler { }; + + conda = callPackage ../development/python-modules/conda { }; + + configargparse = callPackage ../development/python-modules/configargparse { }; + + configobj = callPackage ../development/python-modules/configobj { }; + + configparser = callPackage ../development/python-modules/configparser { }; + + configshell = callPackage ../development/python-modules/configshell { }; + + confluent-kafka = callPackage ../development/python-modules/confluent-kafka { }; + + confuse = callPackage ../development/python-modules/confuse { }; + + confight = callPackage ../development/python-modules/confight { }; + + connexion = callPackage ../development/python-modules/connexion { }; + + cons = callPackage ../development/python-modules/cons { }; + + consonance = callPackage ../development/python-modules/consonance { }; + + constantly = callPackage ../development/python-modules/constantly { }; + + construct = callPackage ../development/python-modules/construct { }; + + consul = callPackage ../development/python-modules/consul { }; + + contexter = callPackage ../development/python-modules/contexter { }; + + contextlib2 = callPackage ../development/python-modules/contextlib2 { }; + + contextvars = callPackage ../development/python-modules/contextvars { }; + + convertdate = callPackage ../development/python-modules/convertdate { }; + + cookiecutter = callPackage ../development/python-modules/cookiecutter { }; + + cookies = callPackage ../development/python-modules/cookies { }; + + coordinates = callPackage ../development/python-modules/coordinates { }; + + coreapi = callPackage ../development/python-modules/coreapi { }; + + coreschema = callPackage ../development/python-modules/coreschema { }; + + cornice = callPackage ../development/python-modules/cornice { }; + + coronavirus = callPackage ../development/python-modules/coronavirus { }; + + corsair-scan = callPackage ../development/python-modules/corsair-scan { }; + + cot = callPackage ../development/python-modules/cot { }; + + covCore = callPackage ../development/python-modules/cov-core { }; + + coverage = callPackage ../development/python-modules/coverage { }; + + coveralls = callPackage ../development/python-modules/coveralls { }; + + cppe = callPackage ../development/python-modules/cppe { + cppe = pkgs.cppe; + }; + + cppheaderparser = callPackage ../development/python-modules/cppheaderparser { }; + + cppy = callPackage ../development/python-modules/cppy { }; + + cpyparsing = callPackage ../development/python-modules/cpyparsing { }; + + cram = callPackage ../development/python-modules/cram { }; + + cramjam = callPackage ../development/python-modules/cramjam { }; + + crashtest = callPackage ../development/python-modules/crashtest { }; + + crate = callPackage ../development/python-modules/crate { }; + + crayons = callPackage ../development/python-modules/crayons { }; + + crc16 = callPackage ../development/python-modules/crc16 { }; + + crc32c = callPackage ../development/python-modules/crc32c { }; + + crccheck = callPackage ../development/python-modules/crccheck { }; + + crcmod = callPackage ../development/python-modules/crcmod { }; + + credstash = callPackage ../development/python-modules/credstash { }; + + criticality-score = callPackage ../development/python-modules/criticality-score { }; + + croniter = callPackage ../development/python-modules/croniter { }; + + crownstone-cloud = callPackage ../development/python-modules/crownstone-cloud { }; + + crownstone-core = callPackage ../development/python-modules/crownstone-core { }; + + crownstone-sse = callPackage ../development/python-modules/crownstone-sse { }; + + crownstone-uart = callPackage ../development/python-modules/crownstone-uart { }; + + cryptacular = callPackage ../development/python-modules/cryptacular { }; + + cryptography = callPackage ../development/python-modules/cryptography { + inherit (pkgs.darwin) libiconv; + }; + + cryptography_vectors = callPackage ../development/python-modules/cryptography/vectors.nix { }; + + crytic-compile = callPackage ../development/python-modules/crytic-compile { }; + + csrmesh = callPackage ../development/python-modules/csrmesh { }; + + csscompressor = callPackage ../development/python-modules/csscompressor { }; + + cssmin = callPackage ../development/python-modules/cssmin { }; + + css-html-js-minify = callPackage ../development/python-modules/css-html-js-minify { }; + + css-parser = callPackage ../development/python-modules/css-parser { }; + + cssselect2 = callPackage ../development/python-modules/cssselect2 { }; + + cssselect = callPackage ../development/python-modules/cssselect { }; + + cssutils = callPackage ../development/python-modules/cssutils { }; + + csvw = callPackage ../development/python-modules/csvw { }; + + cucumber-tag-expressions = callPackage ../development/python-modules/cucumber-tag-expressions { }; + + cufflinks = callPackage ../development/python-modules/cufflinks { }; + + cupy = callPackage ../development/python-modules/cupy { + cudatoolkit = pkgs.cudatoolkit_11; + cudnn = pkgs.cudnn_8_1_cudatoolkit_11; + nccl = pkgs.nccl_cudatoolkit_11; + cutensor = pkgs.cutensor_cudatoolkit_11; + }; + + curio = callPackage ../development/python-modules/curio { }; + + curtsies = callPackage ../development/python-modules/curtsies { }; + + curve25519-donna = callPackage ../development/python-modules/curve25519-donna { }; + + cvxopt = callPackage ../development/python-modules/cvxopt { }; + + cvxpy = callPackage ../development/python-modules/cvxpy { }; + + cwcwidth = callPackage ../development/python-modules/cwcwidth { }; + + cx_Freeze = callPackage ../development/python-modules/cx_freeze { }; + + cx_oracle = callPackage ../development/python-modules/cx_oracle { }; + + cxxfilt = callPackage ../development/python-modules/cxxfilt { }; + + cycler = callPackage ../development/python-modules/cycler { }; + + cyclonedx-python-lib = callPackage ../development/python-modules/cyclonedx-python-lib { }; + + cymem = callPackage ../development/python-modules/cymem { }; + + cypari2 = callPackage ../development/python-modules/cypari2 { }; + + cysignals = callPackage ../development/python-modules/cysignals { }; + + cython = callPackage ../development/python-modules/Cython { }; + + cytoolz = callPackage ../development/python-modules/cytoolz { }; + + d2to1 = callPackage ../development/python-modules/d2to1 { }; + + dacite = callPackage ../development/python-modules/dacite { }; + + daemonize = callPackage ../development/python-modules/daemonize { }; + + daemonocle = callPackage ../development/python-modules/daemonocle { }; + + daphne = callPackage ../development/python-modules/daphne { }; + + dasbus = callPackage ../development/python-modules/dasbus { }; + + dash = callPackage ../development/python-modules/dash { }; + + dash-core-components = callPackage ../development/python-modules/dash-core-components { }; + + dash-html-components = callPackage ../development/python-modules/dash-html-components { }; + + dash-renderer = callPackage ../development/python-modules/dash-renderer { }; + + dash-table = callPackage ../development/python-modules/dash-table { }; + + dask = callPackage ../development/python-modules/dask { }; + + dask-gateway = callPackage ../development/python-modules/dask-gateway { }; + + dask-gateway-server = callPackage ../development/python-modules/dask-gateway-server { }; + + dask-glm = callPackage ../development/python-modules/dask-glm { }; + + dask-image = callPackage ../development/python-modules/dask-image { }; + + dask-jobqueue = callPackage ../development/python-modules/dask-jobqueue { }; + + dask-ml = callPackage ../development/python-modules/dask-ml { }; + + dask-mpi = callPackage ../development/python-modules/dask-mpi { }; + + dask-xgboost = callPackage ../development/python-modules/dask-xgboost { }; + + databases = callPackage ../development/python-modules/databases { }; + + databricks-cli = callPackage ../development/python-modules/databricks-cli { }; + + databricks-connect = callPackage ../development/python-modules/databricks-connect { }; + + dataclasses = callPackage ../development/python-modules/dataclasses { }; + + dataclasses-json = callPackage ../development/python-modules/dataclasses-json { }; + + datadiff = callPackage ../development/python-modules/datadiff { }; + + datadog = callPackage ../development/python-modules/datadog { }; + + datafusion = callPackage ../development/python-modules/datafusion { }; + + datamodeldict = callPackage ../development/python-modules/datamodeldict { }; + + dataset = callPackage ../development/python-modules/dataset { }; + + datasets = callPackage ../development/python-modules/datasets { }; + + datasette = callPackage ../development/python-modules/datasette { }; + + datasette-template-sql = callPackage ../development/python-modules/datasette-template-sql { }; + + datashader = callPackage ../development/python-modules/datashader { }; + + datashape = callPackage ../development/python-modules/datashape { }; + + datatable = callPackage ../development/python-modules/datatable { }; + + dateparser = callPackage ../development/python-modules/dateparser { }; + + dateutils = callPackage ../development/python-modules/dateutils { }; + + datrie = callPackage ../development/python-modules/datrie { }; + + dawg-python = callPackage ../development/python-modules/dawg-python { }; + + dbf = callPackage ../development/python-modules/dbf { }; + + dbfread = callPackage ../development/python-modules/dbfread { }; + + dbus-next = callPackage ../development/python-modules/dbus-next { }; + + dbus-python = callPackage ../development/python-modules/dbus { + inherit (pkgs) dbus; + }; + + dbutils = callPackage ../development/python-modules/dbutils { }; + + dcmstack = callPackage ../development/python-modules/dcmstack { }; + + ddt = callPackage ../development/python-modules/ddt { }; + + deap = callPackage ../development/python-modules/deap { }; + + debian = callPackage ../development/python-modules/debian { }; + + debian-inspector = callPackage ../development/python-modules/debian-inspector { }; + + debtcollector = callPackage ../development/python-modules/debtcollector { }; + + debts = callPackage ../development/python-modules/debts { }; + + debugpy = callPackage ../development/python-modules/debugpy { }; + + decli = callPackage ../development/python-modules/decli { }; + + decorator = callPackage ../development/python-modules/decorator { }; + + decopatch = callPackage ../development/python-modules/decopatch { }; + + deemix = callPackage ../development/python-modules/deemix { }; + + deep_merge = callPackage ../development/python-modules/deep_merge { }; + + deepdiff = callPackage ../development/python-modules/deepdiff { }; + + deepdish = callPackage ../development/python-modules/deepdish { }; + + deepmerge = callPackage ../development/python-modules/deepmerge { }; + + deeptoolsintervals = callPackage ../development/python-modules/deeptoolsintervals { }; + + deep-translator = callPackage ../development/python-modules/deep-translator { }; + + deezer-py = callPackage ../development/python-modules/deezer-py { }; + + deezer-python = callPackage ../development/python-modules/deezer-python { }; + + defcon = callPackage ../development/python-modules/defcon { }; + + deform = callPackage ../development/python-modules/deform { }; + + defusedxml = callPackage ../development/python-modules/defusedxml { }; + + delegator-py = callPackage ../development/python-modules/delegator-py { }; + + delorean = callPackage ../development/python-modules/delorean { }; + + deltachat = callPackage ../development/python-modules/deltachat { }; + + deluge-client = callPackage ../development/python-modules/deluge-client { }; + + demjson3 = callPackage ../development/python-modules/demjson3 { }; + + dendropy = callPackage ../development/python-modules/dendropy { }; + + denonavr = callPackage ../development/python-modules/denonavr { }; + + dependency-injector = callPackage ../development/python-modules/dependency-injector { }; + + deprecated = callPackage ../development/python-modules/deprecated { }; + + deprecation = callPackage ../development/python-modules/deprecation { }; + + derpconf = callPackage ../development/python-modules/derpconf { }; + + descartes = callPackage ../development/python-modules/descartes { }; + + desktop-notifier = callPackage ../development/python-modules/desktop-notifier { }; + + detect-secrets = callPackage ../development/python-modules/detect-secrets { }; + + devolo-home-control-api = callPackage ../development/python-modules/devolo-home-control-api { }; + + devolo-plc-api = callPackage ../development/python-modules/devolo-plc-api { }; + + devpi-common = callPackage ../development/python-modules/devpi-common { }; + + devtools = callPackage ../development/python-modules/devtools { }; + + diagrams = callPackage ../development/python-modules/diagrams { }; + + diceware = callPackage ../development/python-modules/diceware { }; + + dicom2nifti = callPackage ../development/python-modules/dicom2nifti { }; + + dict2xml = callPackage ../development/python-modules/dict2xml { }; + + dictdiffer = callPackage ../development/python-modules/dictdiffer { }; + + dictionaries = callPackage ../development/python-modules/dictionaries { }; + + dictpath = callPackage ../development/python-modules/dictpath { }; + + dicttoxml = callPackage ../development/python-modules/dicttoxml { }; + + diff-cover = callPackage ../development/python-modules/diff-cover { }; + + diff-match-patch = callPackage ../development/python-modules/diff-match-patch { }; + + digital-ocean = callPackage ../development/python-modules/digitalocean { }; + + digi-xbee = callPackage ../development/python-modules/digi-xbee { }; + + dill = callPackage ../development/python-modules/dill { }; + + dingz = callPackage ../development/python-modules/dingz { }; + + diofant = callPackage ../development/python-modules/diofant { }; + + dipy = callPackage ../development/python-modules/dipy { }; + + directv = callPackage ../development/python-modules/directv { }; + + discid = callPackage ../development/python-modules/discid { }; + + discogs-client = callPackage ../development/python-modules/discogs-client { }; + + discordpy = callPackage ../development/python-modules/discordpy { }; + + discovery30303 = callPackage ../development/python-modules/discovery30303 { }; + + diskcache = callPackage ../development/python-modules/diskcache { }; + + dissononce = callPackage ../development/python-modules/dissononce { }; + + distlib = callPackage ../development/python-modules/distlib { }; + + distorm3 = callPackage ../development/python-modules/distorm3 { }; + + distributed = callPackage ../development/python-modules/distributed { }; + + distro = callPackage ../development/python-modules/distro { }; + + distutils_extra = callPackage ../development/python-modules/distutils_extra { }; + + django = self.django_2; + + # Current LTS + django_2 = callPackage ../development/python-modules/django/2.nix { }; + django_3 = callPackage ../development/python-modules/django/3.nix { }; + + # Current latest + django_4 = callPackage ../development/python-modules/django/4.nix { }; + + django-allauth = callPackage ../development/python-modules/django-allauth { }; + + django-anymail = callPackage ../development/python-modules/django-anymail { }; + + django_appconf = callPackage ../development/python-modules/django_appconf { }; + + django-auth-ldap = callPackage ../development/python-modules/django-auth-ldap { }; + + django-cache-url = callPackage ../development/python-modules/django-cache-url { }; + + django-cacheops = callPackage ../development/python-modules/django-cacheops { }; + + django_classytags = callPackage ../development/python-modules/django_classytags { }; + + django-cleanup = callPackage ../development/python-modules/django-cleanup { }; + + django_colorful = callPackage ../development/python-modules/django_colorful { }; + + django_compat = callPackage ../development/python-modules/django-compat { }; + + django_compressor = callPackage ../development/python-modules/django_compressor { }; + + django-configurations = callPackage ../development/python-modules/django-configurations { }; + + django_contrib_comments = callPackage ../development/python-modules/django_contrib_comments { }; + + django-cors-headers = callPackage ../development/python-modules/django-cors-headers { }; + + django-csp = callPackage ../development/python-modules/django-csp { }; + + django-debug-toolbar = callPackage ../development/python-modules/django-debug-toolbar { }; + + django-discover-runner = callPackage ../development/python-modules/django-discover-runner { }; + + django-dynamic-preferences = callPackage ../development/python-modules/django-dynamic-preferences { }; + + django-environ = callPackage ../development/python-modules/django_environ { }; + + django-extensions = callPackage ../development/python-modules/django-extensions { }; + + django-filter = callPackage ../development/python-modules/django-filter { }; + + django-formtools = callPackage ../development/python-modules/django-formtools { }; + + django-graphiql-debug-toolbar = callPackage ../development/python-modules/django-graphiql-debug-toolbar { }; + + django-gravatar2 = callPackage ../development/python-modules/django-gravatar2 { }; + + django_guardian = callPackage ../development/python-modules/django_guardian { }; + + django-haystack = callPackage ../development/python-modules/django-haystack { }; + + django_hijack_admin = callPackage ../development/python-modules/django-hijack-admin { }; + + django_hijack = callPackage ../development/python-modules/django-hijack { }; + # This package may need an older version of Django. Override the package set and set e.g. `django = super.django_1_9`. See the Nixpkgs manual for examples on how to override the package set. + + django-ipware = callPackage ../development/python-modules/django-ipware { }; + + django-jinja = callPackage ../development/python-modules/django-jinja2 { }; + + django-js-asset = callPackage ../development/python-modules/django-js-asset { }; + + django-logentry-admin = callPackage ../development/python-modules/django-logentry-admin { }; + + django-mailman3 = callPackage ../development/python-modules/django-mailman3 { }; + + django_modelcluster = callPackage ../development/python-modules/django_modelcluster { }; + + django-multiselectfield = callPackage ../development/python-modules/django-multiselectfield { }; + + django-maintenance-mode = callPackage ../development/python-modules/django-maintenance-mode { }; + + django-mptt = callPackage ../development/python-modules/django-mptt { }; + + django_nose = callPackage ../development/python-modules/django_nose { }; + + django-oauth-toolkit = callPackage ../development/python-modules/django-oauth-toolkit { }; + + django-paintstore = callPackage ../development/python-modules/django-paintstore { }; + + django-pglocks = callPackage ../development/python-modules/django-pglocks { }; + + django-picklefield = callPackage ../development/python-modules/django-picklefield { }; + + django_polymorphic = callPackage ../development/python-modules/django-polymorphic { }; + + django-postgresql-netfields = callPackage ../development/python-modules/django-postgresql-netfields { }; + + django-prometheus = callPackage ../development/python-modules/django-prometheus { }; + + django-q = callPackage ../development/python-modules/django-q { }; + + djangoql = callPackage ../development/python-modules/djangoql { }; + + django-ranged-response = callPackage ../development/python-modules/django-ranged-response { }; + + django-raster = callPackage ../development/python-modules/django-raster { }; + + django-redis = callPackage ../development/python-modules/django-redis { }; + + django-rest-auth = callPackage ../development/python-modules/django-rest-auth { }; + + django-rq = callPackage ../development/python-modules/django-rq { }; + + djangorestframework = callPackage ../development/python-modules/djangorestframework { }; + + djangorestframework-simplejwt = callPackage ../development/python-modules/djangorestframework-simplejwt { }; + + django_reversion = callPackage ../development/python-modules/django_reversion { }; + + django-sampledatahelper = callPackage ../development/python-modules/django-sampledatahelper { }; + + django-sesame = callPackage ../development/python-modules/django-sesame { }; + + django_silk = callPackage ../development/python-modules/django_silk { }; + + django-simple-captcha = callPackage ../development/python-modules/django-simple-captcha { }; + + django-sites = callPackage ../development/python-modules/django-sites { }; + + django-sr = callPackage ../development/python-modules/django-sr { }; + + django-statici18n = callPackage ../development/python-modules/django-statici18n { }; + + django-storages = callPackage ../development/python-modules/django-storages { }; + + django-tables2 = callPackage ../development/python-modules/django-tables2 { }; + + django_tagging = callPackage ../development/python-modules/django_tagging { }; + + django-taggit = callPackage ../development/python-modules/django-taggit { }; + + django-timezone-field = callPackage ../development/python-modules/django-timezone-field { }; + + django_treebeard = callPackage ../development/python-modules/django_treebeard { }; + + django-versatileimagefield = callPackage ../development/python-modules/django-versatileimagefield { }; + + django-webpack-loader = callPackage ../development/python-modules/django-webpack-loader { }; + + django-widget-tweaks = callPackage ../development/python-modules/django-widget-tweaks { }; + + dj-database-url = callPackage ../development/python-modules/dj-database-url { }; + + dj-email-url = callPackage ../development/python-modules/dj-email-url { }; + + djmail = callPackage ../development/python-modules/djmail { }; + + dj-search-url = callPackage ../development/python-modules/dj-search-url { }; + + dkimpy = callPackage ../development/python-modules/dkimpy { }; + + dlib = callPackage ../development/python-modules/dlib { + inherit (pkgs) dlib; + }; + + dlx = callPackage ../development/python-modules/dlx { }; + + dmenu-python = callPackage ../development/python-modules/dmenu { }; + + dm-haiku = callPackage ../development/python-modules/dm-haiku { }; + + dm-sonnet = callPackage ../development/python-modules/dm-sonnet { }; + + dm-tree = callPackage ../development/python-modules/dm-tree { }; + + dnachisel = callPackage ../development/python-modules/dnachisel { }; + + dnslib = callPackage ../development/python-modules/dnslib { }; + + dnspython = callPackage ../development/python-modules/dnspython { }; + + dnspythonchia = callPackage ../development/python-modules/dnspythonchia { }; + + doc8 = callPackage ../development/python-modules/doc8 { }; + + docker = callPackage ../development/python-modules/docker { }; + + dockerfile-parse = callPackage ../development/python-modules/dockerfile-parse { }; + + dockerpty = callPackage ../development/python-modules/dockerpty { }; + + docker_pycreds = callPackage ../development/python-modules/docker-pycreds { }; + + docker-py = callPackage ../development/python-modules/docker-py { }; + + dockerspawner = callPackage ../development/python-modules/dockerspawner { }; + + docloud = callPackage ../development/python-modules/docloud { }; + + docstring-to-markdown = callPackage ../development/python-modules/docstring-to-markdown { }; + + docstring-parser = callPackage ../development/python-modules/docstring-parser { }; + + docopt = callPackage ../development/python-modules/docopt { }; + + docopt-ng = callPackage ../development/python-modules/docopt-ng { }; + + docplex = callPackage ../development/python-modules/docplex { }; + + docrep = callPackage ../development/python-modules/docrep { }; + + doctest-ignore-unicode = callPackage ../development/python-modules/doctest-ignore-unicode { }; + + docutils = callPackage ../development/python-modules/docutils { }; + + docx2python = callPackage ../development/python-modules/docx2python { }; + + dodgy = callPackage ../development/python-modules/dodgy { }; + + dogpile-cache = callPackage ../development/python-modules/dogpile-cache { }; + + dogtail = callPackage ../development/python-modules/dogtail { }; + + doit = callPackage ../development/python-modules/doit { }; + + dominate = callPackage ../development/python-modules/dominate { }; + + doorbirdpy = callPackage ../development/python-modules/doorbirdpy { }; + + dopy = callPackage ../development/python-modules/dopy { }; + + dotty-dict = callPackage ../development/python-modules/dotty-dict { }; + + dot2tex = callPackage ../development/python-modules/dot2tex { + inherit (pkgs) graphviz; + }; + + dotmap = callPackage ../development/python-modules/dotmap { }; + + downloader-cli = callPackage ../development/python-modules/downloader-cli { }; + + dparse = callPackage ../development/python-modules/dparse { }; + + dpath = callPackage ../development/python-modules/dpath { }; + + dpkt = callPackage ../development/python-modules/dpkt { }; + + dragonfly = callPackage ../development/python-modules/dragonfly { }; + + drf-jwt = callPackage ../development/python-modules/drf-jwt { }; + + drf-nested-routers = callPackage ../development/python-modules/drf-nested-routers { }; + + drf-yasg = callPackage ../development/python-modules/drf-yasg { }; + + drivelib = callPackage ../development/python-modules/drivelib { }; + + drms = callPackage ../development/python-modules/drms { }; + + dropbox = callPackage ../development/python-modules/dropbox { }; + + ds-store = callPackage ../development/python-modules/ds-store { }; + + ds4drv = callPackage ../development/python-modules/ds4drv { }; + + dsinternals = callPackage ../development/python-modules/dsinternals { }; + + dsmr-parser = callPackage ../development/python-modules/dsmr-parser { }; + + dtlssocket = callPackage ../development/python-modules/dtlssocket { }; + + duckdb = callPackage ../development/python-modules/duckdb { + inherit (pkgs) duckdb; + }; + + duecredit = callPackage ../development/python-modules/duecredit { }; + + duet = callPackage ../development/python-modules/duet { }; + + dufte = callPackage ../development/python-modules/dufte { }; + + dugong = callPackage ../development/python-modules/dugong { }; + + dulwich = callPackage ../development/python-modules/dulwich { }; + + dungeon-eos = callPackage ../development/python-modules/dungeon-eos { }; + + dwdwfsapi = callPackage ../development/python-modules/dwdwfsapi { }; + + dyn = callPackage ../development/python-modules/dyn { }; + + dynalite-devices = callPackage ../development/python-modules/dynalite-devices { }; + + dynd = callPackage ../development/python-modules/dynd { }; + + easydict = callPackage ../development/python-modules/easydict { }; + + easygui = callPackage ../development/python-modules/easygui { }; + + EasyProcess = callPackage ../development/python-modules/easyprocess { }; + + easysnmp = callPackage ../development/python-modules/easysnmp { }; + + easy-thumbnails = callPackage ../development/python-modules/easy-thumbnails { }; + + easywatch = callPackage ../development/python-modules/easywatch { }; + + ebaysdk = callPackage ../development/python-modules/ebaysdk { }; + + ec2instanceconnectcli = callPackage ../tools/virtualization/ec2instanceconnectcli { }; + + eccodes = toPythonModule (pkgs.eccodes.override { + enablePython = true; + pythonPackages = self; + }); + + ecdsa = callPackage ../development/python-modules/ecdsa { }; + + ecoaliface = callPackage ../development/python-modules/ecoaliface { }; + + ecos = callPackage ../development/python-modules/ecos { }; + + ecpy = callPackage ../development/python-modules/ecpy { }; + + ecs-logging = callPackage ../development/python-modules/ecs-logging { }; + + ed25519 = callPackage ../development/python-modules/ed25519 { }; + + editables = callPackage ../development/python-modules/editables { }; + + editdistance = callPackage ../development/python-modules/editdistance { }; + + editdistance-s = callPackage ../development/python-modules/editdistance-s { }; + + editorconfig = callPackage ../development/python-modules/editorconfig { }; + + edward = callPackage ../development/python-modules/edward { }; + + effect = callPackage ../development/python-modules/effect { }; + + eggdeps = callPackage ../development/python-modules/eggdeps { }; + + einops = callPackage ../development/python-modules/einops { }; + + eiswarnung = callPackage ../development/python-modules/eiswarnung { }; + + elgato = callPackage ../development/python-modules/elgato { }; + + elkm1-lib = callPackage ../development/python-modules/elkm1-lib { }; + + elastic-apm = callPackage ../development/python-modules/elastic-apm { }; + + elasticsearch = callPackage ../development/python-modules/elasticsearch { }; + + elasticsearch-dsl = callPackage ../development/python-modules/elasticsearch-dsl { }; + + elasticsearchdsl = self.elasticsearch-dsl; + + elegy = callPackage ../development/python-modules/elegy { }; + + elementpath = callPackage ../development/python-modules/elementpath { }; + + elevate = callPackage ../development/python-modules/elevate { }; + + eliot = callPackage ../development/python-modules/eliot { }; + + eliqonline = callPackage ../development/python-modules/eliqonline { }; + + elmax = callPackage ../development/python-modules/elmax { }; + + elmax-api = callPackage ../development/python-modules/elmax-api { }; + + emailthreads = callPackage ../development/python-modules/emailthreads { }; + + email_validator = callPackage ../development/python-modules/email-validator { }; + + embrace = callPackage ../development/python-modules/embrace { }; + + emcee = callPackage ../development/python-modules/emcee { }; + + emv = callPackage ../development/python-modules/emv { }; + + emoji = callPackage ../development/python-modules/emoji { }; + + empty-files = callPackage ../development/python-modules/empty-files { }; + + empy = callPackage ../development/python-modules/empy { }; + + emulated-roku = callPackage ../development/python-modules/emulated-roku { }; + + enaml = callPackage ../development/python-modules/enaml { }; + + enamlx = callPackage ../development/python-modules/enamlx { }; + + enlighten = callPackage ../development/python-modules/enlighten { }; + + enocean = callPackage ../development/python-modules/enocean { }; + + enrich = callPackage ../development/python-modules/enrich { }; + + entrance = callPackage ../development/python-modules/entrance { + routerFeatures = false; + }; + + entrance-with-router-features = callPackage ../development/python-modules/entrance { + routerFeatures = true; + }; + + entry-points-txt = callPackage ../development/python-modules/entry-points-txt { }; + + entrypoint2 = callPackage ../development/python-modules/entrypoint2 { }; + + entrypoints = callPackage ../development/python-modules/entrypoints { }; + + enturclient = callPackage ../development/python-modules/enturclient { }; + + enum34 = callPackage ../development/python-modules/enum34 { }; + + enum-compat = callPackage ../development/python-modules/enum-compat { }; + + env-canada = callPackage ../development/python-modules/env-canada { }; + + environmental-override = callPackage ../development/python-modules/environmental-override { }; + + environs = callPackage ../development/python-modules/environs { }; + + envisage = callPackage ../development/python-modules/envisage { }; + + envs = callPackage ../development/python-modules/envs { }; + + envoy-reader = callPackage ../development/python-modules/envoy-reader { }; + + envoy-utils = callPackage ../development/python-modules/envoy-utils { }; + + enzyme = callPackage ../development/python-modules/enzyme { }; + + epc = callPackage ../development/python-modules/epc { }; + + ephem = callPackage ../development/python-modules/ephem { }; + + epson-projector = callPackage ../development/python-modules/epson-projector { }; + + eradicate = callPackage ../development/python-modules/eradicate { }; + + esprima = callPackage ../development/python-modules/esprima { }; + + escapism = callPackage ../development/python-modules/escapism { }; + + etcd = callPackage ../development/python-modules/etcd { }; + + etelemetry = callPackage ../development/python-modules/etelemetry { }; + + etebase = callPackage ../development/python-modules/etebase { + inherit (pkgs.darwin.apple_sdk.frameworks) Security; + }; + + etebase-server = callPackage ../servers/etebase { }; + + eternalegypt = callPackage ../development/python-modules/eternalegypt { }; + + etesync = callPackage ../development/python-modules/etesync { }; + + eth-hash = callPackage ../development/python-modules/eth-hash { }; + + eth-typing = callPackage ../development/python-modules/eth-typing { }; + + eth-utils = callPackage ../development/python-modules/eth-utils { }; + + etuples = callPackage ../development/python-modules/etuples { }; + + et_xmlfile = callPackage ../development/python-modules/et_xmlfile { }; + + ev3dev2 = callPackage ../development/python-modules/ev3dev2 { }; + + evdev = callPackage ../development/python-modules/evdev { }; + + eve = callPackage ../development/python-modules/eve { }; + + eventlet = callPackage ../development/python-modules/eventlet { }; + + events = callPackage ../development/python-modules/events { }; + + evernote = callPackage ../development/python-modules/evernote { }; + + evohome-async = callPackage ../development/python-modules/evohome-async { }; + + ewmh = callPackage ../development/python-modules/ewmh { }; + + exdown = callPackage ../development/python-modules/exdown { }; + + exchangelib = callPackage ../development/python-modules/exchangelib { }; + + execnet = callPackage ../development/python-modules/execnet { }; + + executing = callPackage ../development/python-modules/executing { }; + + executor = callPackage ../development/python-modules/executor { }; + + exif = callPackage ../development/python-modules/exif { }; + + exifread = callPackage ../development/python-modules/exifread { }; + + expects = callPackage ../development/python-modules/expects { }; + + expiringdict = callPackage ../development/python-modules/expiringdict { }; + + explorerscript = callPackage ../development/python-modules/explorerscript { }; + + exrex = callPackage ../development/python-modules/exrex { }; + + extractcode = callPackage ../development/python-modules/extractcode { }; + + extractcode-7z = callPackage ../development/python-modules/extractcode/7z.nix { + inherit (pkgs) p7zip; + }; + + extractcode-libarchive = callPackage ../development/python-modules/extractcode/libarchive.nix { + inherit (pkgs) + libarchive + libb2 + bzip2 + expat + lz4 + xz + zlib + zstd; + }; + + extras = callPackage ../development/python-modules/extras { }; + + eyeD3 = callPackage ../development/python-modules/eyed3 { }; + + ezdxf = callPackage ../development/python-modules/ezdxf { }; + + Fabric = callPackage ../development/python-modules/Fabric { }; + + faadelays = callPackage ../development/python-modules/faadelays { }; + + fabulous = callPackage ../development/python-modules/fabulous { }; + + facebook-sdk = callPackage ../development/python-modules/facebook-sdk { }; + + face = callPackage ../development/python-modules/face { }; + + facedancer = callPackage ../development/python-modules/facedancer { }; + + face_recognition = callPackage ../development/python-modules/face_recognition { }; + + face_recognition_models = callPackage ../development/python-modules/face_recognition_models { }; + + factory_boy = callPackage ../development/python-modules/factory_boy { }; + + fake_factory = callPackage ../development/python-modules/fake_factory { }; + + fake-useragent = callPackage ../development/python-modules/fake-useragent { }; + + faker = callPackage ../development/python-modules/faker { }; + + fakeredis = callPackage ../development/python-modules/fakeredis { }; + + falcon = callPackage ../development/python-modules/falcon { }; + + faraday-agent-parameters-types = callPackage ../development/python-modules/faraday-agent-parameters-types { }; + + faraday-plugins = callPackage ../development/python-modules/faraday-plugins { }; + + fastapi = callPackage ../development/python-modules/fastapi { }; + + fastavro = callPackage ../development/python-modules/fastavro { }; + + fastcache = callPackage ../development/python-modules/fastcache { }; + + fastcore = callPackage ../development/python-modules/fastcore { }; + + fastdiff = callPackage ../development/python-modules/fastdiff { }; + + fastdtw = callPackage ../development/python-modules/fastdtw { }; + + fastecdsa = callPackage ../development/python-modules/fastecdsa { }; + + fasteners = callPackage ../development/python-modules/fasteners { }; + + fastentrypoints = callPackage ../development/python-modules/fastentrypoints { }; + + fastimport = callPackage ../development/python-modules/fastimport { }; + + fastjet = toPythonModule (pkgs.fastjet.override { + withPython = true; + inherit (self) python; + }); + + fastjsonschema = callPackage ../development/python-modules/fastjsonschema { }; + + fastnlo_toolkit = toPythonModule (pkgs.fastnlo_toolkit.override { + withPython = true; + inherit (self) python; + }); + + fastnumbers = callPackage ../development/python-modules/fastnumbers { }; + + fastpair = callPackage ../development/python-modules/fastpair { }; + + fastparquet = callPackage ../development/python-modules/fastparquet { }; + + fastpbkdf2 = callPackage ../development/python-modules/fastpbkdf2 { }; + + fastprogress = callPackage ../development/python-modules/fastprogress { }; + + fastrlock = callPackage ../development/python-modules/fastrlock { }; + + fasttext = callPackage ../development/python-modules/fasttext { }; + + favicon = callPackage ../development/python-modules/favicon { }; + + fb-re2 = callPackage ../development/python-modules/fb-re2 { }; + + fe25519 = callPackage ../development/python-modules/fe25519 { }; + + feedgen = callPackage ../development/python-modules/feedgen { }; + + feedgenerator = callPackage ../development/python-modules/feedgenerator { + inherit (pkgs) glibcLocales; + }; + + feedparser = callPackage ../development/python-modules/feedparser { }; + + fenics = callPackage ../development/libraries/science/math/fenics { + hdf5 = pkgs.hdf5_1_10; + }; + + ffcv = callPackage ../development/python-modules/ffcv { }; + + ffmpeg-python = callPackage ../development/python-modules/ffmpeg-python { }; + + ffmpeg-progress-yield = callPackage ../development/python-modules/ffmpeg-progress-yield { }; + + fiblary3-fork = callPackage ../development/python-modules/fiblary3-fork { }; + + fido2 = callPackage ../development/python-modules/fido2 { }; + + fields = callPackage ../development/python-modules/fields { }; + + file-read-backwards = callPackage ../development/python-modules/file-read-backwards { }; + + filebrowser_safe = callPackage ../development/python-modules/filebrowser_safe { }; + + filebytes = callPackage ../development/python-modules/filebytes { }; + + filelock = callPackage ../development/python-modules/filelock { }; + + filemagic = callPackage ../development/python-modules/filemagic { }; + + filetype = callPackage ../development/python-modules/filetype { }; + + filterpy = callPackage ../development/python-modules/filterpy { }; + + finalfusion = callPackage ../development/python-modules/finalfusion { }; + + findimports = callPackage ../development/python-modules/findimports { }; + + fingerprints = callPackage ../development/python-modules/fingerprints { }; + + finitude = callPackage ../development/python-modules/finitude { }; + + fints = callPackage ../development/python-modules/fints { }; + + fiona = callPackage ../development/python-modules/fiona { }; + + fipy = callPackage ../development/python-modules/fipy { }; + + fire = callPackage ../development/python-modules/fire { }; + + firetv = callPackage ../development/python-modules/firetv { }; + + first = callPackage ../development/python-modules/first { }; + + fitbit = callPackage ../development/python-modules/fitbit { }; + + fixerio = callPackage ../development/python-modules/fixerio { }; + + fixtures = callPackage ../development/python-modules/fixtures { }; + + fjaraskupan = callPackage ../development/python-modules/fjaraskupan { }; + + flake8-blind-except = callPackage ../development/python-modules/flake8-blind-except { }; + + flake8-bugbear = callPackage ../development/python-modules/flake8-bugbear { }; + + flake8 = callPackage ../development/python-modules/flake8 { }; + + flake8-length = callPackage ../development/python-modules/flake8-length { }; + + flake8-debugger = callPackage ../development/python-modules/flake8-debugger { }; + + flake8-docstrings = callPackage ../development/python-modules/flake8-docstrings { }; + + flake8-future-import = callPackage ../development/python-modules/flake8-future-import { }; + + flake8-import-order = callPackage ../development/python-modules/flake8-import-order { }; + + flake8-polyfill = callPackage ../development/python-modules/flake8-polyfill { }; + + flaky = callPackage ../development/python-modules/flaky { }; + + flametree = callPackage ../development/python-modules/flametree { }; + + flammkuchen = callPackage ../development/python-modules/flammkuchen { }; + + flashtext = callPackage ../development/python-modules/flashtext { }; + + flask-admin = callPackage ../development/python-modules/flask-admin { }; + + flask-api = callPackage ../development/python-modules/flask-api { }; + + flask-appbuilder = callPackage ../development/python-modules/flask-appbuilder { }; + + flask_assets = callPackage ../development/python-modules/flask-assets { }; + + flask-autoindex = callPackage ../development/python-modules/flask-autoindex { }; + + flask-babel = callPackage ../development/python-modules/flask-babel { }; + + flaskbabel = callPackage ../development/python-modules/flaskbabel { }; + + flask-babelex = callPackage ../development/python-modules/flask-babelex { }; + + flask-bcrypt = callPackage ../development/python-modules/flask-bcrypt { }; + + flask-bootstrap = callPackage ../development/python-modules/flask-bootstrap { }; + + flask-caching = callPackage ../development/python-modules/flask-caching { }; + + flask = callPackage ../development/python-modules/flask { }; + + flask-common = callPackage ../development/python-modules/flask-common { }; + + flask-compress = callPackage ../development/python-modules/flask-compress { }; + + flask-cors = callPackage ../development/python-modules/flask-cors { }; + + flask_elastic = callPackage ../development/python-modules/flask-elastic { }; + + flask-gravatar = callPackage ../development/python-modules/flask-gravatar { }; + + flask-httpauth = callPackage ../development/python-modules/flask-httpauth { }; + + flask-jwt-extended = callPackage ../development/python-modules/flask-jwt-extended { }; + + flask-limiter = callPackage ../development/python-modules/flask-limiter { }; + + flask_login = callPackage ../development/python-modules/flask-login { }; + + flask_mail = callPackage ../development/python-modules/flask-mail { }; + + flask_marshmallow = callPackage ../development/python-modules/flask-marshmallow { }; + + flask_migrate = callPackage ../development/python-modules/flask-migrate { }; + + flask-mongoengine = callPackage ../development/python-modules/flask-mongoengine { }; + + flask-openid = callPackage ../development/python-modules/flask-openid { }; + + flask-paginate = callPackage ../development/python-modules/flask-paginate { }; + + flask-paranoid = callPackage ../development/python-modules/flask-paranoid { }; + + flask_principal = callPackage ../development/python-modules/flask-principal { }; + + flask-pymongo = callPackage ../development/python-modules/Flask-PyMongo { }; + + flask-restful = callPackage ../development/python-modules/flask-restful { }; + + flask-restplus = callPackage ../development/python-modules/flask-restplus { }; + + flask-restx = callPackage ../development/python-modules/flask-restx { }; + + flask-reverse-proxy-fix = callPackage ../development/python-modules/flask-reverse-proxy-fix { }; + + flask_script = callPackage ../development/python-modules/flask-script { }; + + flask-seasurf = callPackage ../development/python-modules/flask-seasurf { }; + + flask-session = callPackage ../development/python-modules/flask-session { }; + + flask-security-too = callPackage ../development/python-modules/flask-security-too { }; + + flask-silk = callPackage ../development/python-modules/flask-silk { }; + + flask-socketio = callPackage ../development/python-modules/flask-socketio { }; + + flask-sockets = callPackage ../development/python-modules/flask-sockets { }; + + flask_sqlalchemy = callPackage ../development/python-modules/flask-sqlalchemy { }; + + flask-sslify = callPackage ../development/python-modules/flask-sslify { }; + + flask-swagger = callPackage ../development/python-modules/flask-swagger { }; + + flask-swagger-ui = callPackage ../development/python-modules/flask-swagger-ui { }; + + flask-talisman = callPackage ../development/python-modules/flask-talisman { }; + + flask_testing = callPackage ../development/python-modules/flask-testing { }; + + flask-versioned = callPackage ../development/python-modules/flask-versioned { }; + + flask_wtf = callPackage ../development/python-modules/flask-wtf { }; + + flatbuffers = callPackage ../development/python-modules/flatbuffers { + inherit (pkgs) flatbuffers; + }; + + flatten-dict = callPackage ../development/python-modules/flatten-dict { }; + + flax = callPackage ../development/python-modules/flax { }; + + fleep = callPackage ../development/python-modules/fleep { }; + + flexmock = callPackage ../development/python-modules/flexmock { }; + + flickrapi = callPackage ../development/python-modules/flickrapi { }; + + flipr-api = callPackage ../development/python-modules/flipr-api { }; + + flit = callPackage ../development/python-modules/flit { }; + + flit-core = callPackage ../development/python-modules/flit-core { }; + + flower = callPackage ../development/python-modules/flower { }; + + flowlogs_reader = callPackage ../development/python-modules/flowlogs_reader { }; + + fluent-logger = callPackage ../development/python-modules/fluent-logger { }; + + flufl_bounce = callPackage ../development/python-modules/flufl/bounce.nix { }; + + flufl_i18n = callPackage ../development/python-modules/flufl/i18n.nix { }; + + flufl_lock = callPackage ../development/python-modules/flufl/lock.nix { }; + + flux-led = callPackage ../development/python-modules/flux-led { }; + + flynt = callPackage ../development/python-modules/flynt { }; + + fn = callPackage ../development/python-modules/fn { }; + + fnvhash = callPackage ../development/python-modules/fnvhash { }; + + folium = callPackage ../development/python-modules/folium { }; + + fontforge = toPythonModule (pkgs.fontforge.override { + withPython = true; + inherit python; + }); + + fontmath = callPackage ../development/python-modules/fontmath { }; + + fontparts = callPackage ../development/python-modules/fontparts { }; + + fontpens = callPackage ../development/python-modules/fontpens { }; + + fonttools = callPackage ../development/python-modules/fonttools { }; + + foobot-async = callPackage ../development/python-modules/foobot-async { }; + + foolscap = callPackage ../development/python-modules/foolscap { }; + + forbiddenfruit = callPackage ../development/python-modules/forbiddenfruit { }; + + fordpass = callPackage ../development/python-modules/fordpass { }; + + forecast-solar = callPackage ../development/python-modules/forecast-solar { }; + + formbox = callPackage ../development/python-modules/formbox { }; + + fortiosapi = callPackage ../development/python-modules/fortiosapi { }; + + FormEncode = callPackage ../development/python-modules/FormEncode { }; + + foundationdb51 = callPackage ../servers/foundationdb/python.nix { foundationdb = pkgs.foundationdb51; }; + foundationdb52 = callPackage ../servers/foundationdb/python.nix { foundationdb = pkgs.foundationdb52; }; + foundationdb60 = callPackage ../servers/foundationdb/python.nix { foundationdb = pkgs.foundationdb60; }; + foundationdb61 = callPackage ../servers/foundationdb/python.nix { foundationdb = pkgs.foundationdb61; }; + + fountains = callPackage ../development/python-modules/fountains { }; + + foxdot = callPackage ../development/python-modules/foxdot { }; + + fpdf = callPackage ../development/python-modules/fpdf { }; + + fpylll = callPackage ../development/python-modules/fpylll { }; + + fpyutils = callPackage ../development/python-modules/fpyutils { }; + + freebox-api = callPackage ../development/python-modules/freebox-api { }; + + freetype-py = callPackage ../development/python-modules/freetype-py { }; + + freezegun = callPackage ../development/python-modules/freezegun { }; + + frigidaire = callPackage ../development/python-modules/frigidaire { }; + + frilouz = callPackage ../development/python-modules/frilouz { }; + + fritzconnection = callPackage ../development/python-modules/fritzconnection { }; + + fritzprofiles = callPackage ../development/python-modules/fritzprofiles { }; + + frozendict = callPackage ../development/python-modules/frozendict { }; + + frozenlist = callPackage ../development/python-modules/frozenlist { }; + + fs = callPackage ../development/python-modules/fs { }; + + fs-s3fs = callPackage ../development/python-modules/fs-s3fs { }; + + fsspec = callPackage ../development/python-modules/fsspec { }; + + ftfy = callPackage ../development/python-modules/ftfy { }; + + ftputil = callPackage ../development/python-modules/ftputil { }; + + funcparserlib = callPackage ../development/python-modules/funcparserlib { }; + + funcsigs = callPackage ../development/python-modules/funcsigs { }; + + functools32 = callPackage ../development/python-modules/functools32 { }; + + funcy = callPackage ../development/python-modules/funcy { }; + + furl = callPackage ../development/python-modules/furl { }; + + furo = callPackage ../development/python-modules/furo { }; + + fuse = callPackage ../development/python-modules/fuse-python { + inherit (pkgs) fuse; + }; + + fusepy = callPackage ../development/python-modules/fusepy { }; + + future = callPackage ../development/python-modules/future { }; + + future-fstrings = callPackage ../development/python-modules/future-fstrings { }; + + future-typing = callPackage ../development/python-modules/future-typing { }; + + fuzzyfinder = callPackage ../development/python-modules/fuzzyfinder { }; + + fuzzywuzzy = callPackage ../development/python-modules/fuzzywuzzy { }; + + fx2 = callPackage ../development/python-modules/fx2 { }; + + galario = toPythonModule (pkgs.galario.override { + enablePython = true; + pythonPackages = self; + }); + + gamble = callPackage ../development/python-modules/gamble { }; + + gaphas = callPackage ../development/python-modules/gaphas { }; + + garminconnect-aio = callPackage ../development/python-modules/garminconnect-aio { }; + + garminconnect = callPackage ../development/python-modules/garminconnect { }; + + gast = callPackage ../development/python-modules/gast { }; + + garages-amsterdam = callPackage ../development/python-modules/garages-amsterdam { }; + + gbinder-python = callPackage ../development/python-modules/gbinder-python { }; + + gcovr = callPackage ../development/python-modules/gcovr { }; + + gcsfs = callPackage ../development/python-modules/gcsfs { }; + + gdal = toPythonModule (pkgs.gdal.override { pythonPackages = self; }); + + gdata = callPackage ../development/python-modules/gdata { }; + + gdcm = toPythonModule (pkgs.gdcm.override { + inherit (self) python; + enablePython = true; + }); + + gdown = callPackage ../development/python-modules/gdown { }; + + gdtoolkit = callPackage ../development/python-modules/gdtoolkit { }; + + ge25519 = callPackage ../development/python-modules/ge25519 { }; + + geant4 = toPythonModule (pkgs.geant4.override { + enablePython = true; + python3 = python; + }); + + geeknote = callPackage ../development/python-modules/geeknote { }; + + gehomesdk = callPackage ../development/python-modules/gehomesdk { }; + + gekitchen = callPackage ../development/python-modules/gekitchen { }; + + gemfileparser = callPackage ../development/python-modules/gemfileparser { }; + + genanki = callPackage ../development/python-modules/genanki { }; + + generic = callPackage ../development/python-modules/generic { }; + + geniushub-client = callPackage ../development/python-modules/geniushub-client { }; + + genome-collector = callPackage ../development/python-modules/genome-collector { }; + + genpy = callPackage ../development/python-modules/genpy { }; + + genshi = callPackage ../development/python-modules/genshi { }; + + gensim = callPackage ../development/python-modules/gensim { }; + + gentools = callPackage ../development/python-modules/gentools { }; + + genzshcomp = callPackage ../development/python-modules/genzshcomp { }; + + geoalchemy2 = callPackage ../development/python-modules/geoalchemy2 { }; + + geocachingapi = callPackage ../development/python-modules/geocachingapi { }; + + geographiclib = callPackage ../development/python-modules/geographiclib { }; + + geoip2 = callPackage ../development/python-modules/geoip2 { }; + + GeoIP = callPackage ../development/python-modules/GeoIP { }; + + geojson = callPackage ../development/python-modules/geojson { }; + + geojson-client = callPackage ../development/python-modules/geojson-client { }; + + geomet = callPackage ../development/python-modules/geomet { }; + + geometric = callPackage ../development/python-modules/geometric { }; + + geopandas = callPackage ../development/python-modules/geopandas { }; + + geopy = callPackage ../development/python-modules/geopy { }; + + georss-client = callPackage ../development/python-modules/georss-client { }; + + georss-generic-client = callPackage ../development/python-modules/georss-generic-client { }; + + georss-ign-sismologia-client = callPackage ../development/python-modules/georss-ign-sismologia-client { }; + + georss-ingv-centro-nazionale-terremoti-client = callPackage ../development/python-modules/georss-ingv-centro-nazionale-terremoti-client { }; + + georss-nrcan-earthquakes-client = callPackage ../development/python-modules/georss-nrcan-earthquakes-client { }; + + georss-qld-bushfire-alert-client = callPackage ../development/python-modules/georss-qld-bushfire-alert-client { }; + + georss-tfs-incidents-client = callPackage ../development/python-modules/georss-tfs-incidents-client { }; + + georss-wa-dfes-client = callPackage ../development/python-modules/georss-wa-dfes-client { }; + + getmac = callPackage ../development/python-modules/getmac { }; + + getkey = callPackage ../development/python-modules/getkey { }; + + get-video-properties = callPackage ../development/python-modules/get-video-properties { }; + + gevent = callPackage ../development/python-modules/gevent { }; + + geventhttpclient = callPackage ../development/python-modules/geventhttpclient { }; + + gevent-socketio = callPackage ../development/python-modules/gevent-socketio { }; + + gevent-websocket = callPackage ../development/python-modules/gevent-websocket { }; + + gflags = callPackage ../development/python-modules/gflags { }; + + ghapi = callPackage ../development/python-modules/ghapi { }; + + ghdiff = callPackage ../development/python-modules/ghdiff { }; + + ghp-import = callPackage ../development/python-modules/ghp-import { }; + + ghrepo-stats = callPackage ../development/python-modules/ghrepo-stats { }; + + gibberish-detector = callPackage ../development/python-modules/gibberish-detector { }; + + gidgethub = callPackage ../development/python-modules/gidgethub { }; + + gigalixir = callPackage ../development/python-modules/gigalixir { }; + + gin-config = callPackage ../development/python-modules/gin-config { }; + + gios = callPackage ../development/python-modules/gios { }; + + gipc = callPackage ../development/python-modules/gipc { }; + + gistyc = callPackage ../development/python-modules/gistyc { }; + + git-annex-adapter = + callPackage ../development/python-modules/git-annex-adapter { }; + + git-filter-repo = callPackage ../development/python-modules/git-filter-repo { }; + + gitdb = callPackage ../development/python-modules/gitdb { }; + + github3_py = callPackage ../development/python-modules/github3_py { }; + + github-to-sqlite = callPackage ../development/python-modules/github-to-sqlite { }; + + github-webhook = callPackage ../development/python-modules/github-webhook { }; + GitPython = callPackage ../development/python-modules/GitPython { }; + + git-revise = callPackage ../development/python-modules/git-revise { }; + + git-sweep = callPackage ../development/python-modules/git-sweep { }; + + glances-api = callPackage ../development/python-modules/glances-api { }; + + glasgow = callPackage ../development/python-modules/glasgow { }; + + glcontext = callPackage ../development/python-modules/glcontext { }; + + glean-parser = callPackage ../development/python-modules/glean-parser { }; + + glean-sdk = callPackage ../development/python-modules/glean-sdk { }; + + glfw = callPackage ../development/python-modules/glfw { }; + + glob2 = callPackage ../development/python-modules/glob2 { }; + + globre = callPackage ../development/python-modules/globre { }; + + globus-sdk = callPackage ../development/python-modules/globus-sdk { }; + + glom = callPackage ../development/python-modules/glom { }; + + glymur = callPackage ../development/python-modules/glymur { }; + + gmpy2 = callPackage ../development/python-modules/gmpy2 { }; + + gmpy = callPackage ../development/python-modules/gmpy { }; + + gntp = callPackage ../development/python-modules/gntp { }; + + gnureadline = callPackage ../development/python-modules/gnureadline { }; + + goalzero = callPackage ../development/python-modules/goalzero { }; + + goobook = callPackage ../development/python-modules/goobook { }; + + goocalendar = callPackage ../development/python-modules/goocalendar { }; + + goodwe = callPackage ../development/python-modules/goodwe { }; + + google-api-core = callPackage ../development/python-modules/google-api-core { }; + + google-api-python-client = callPackage ../development/python-modules/google-api-python-client { }; + + googleapis-common-protos = callPackage ../development/python-modules/googleapis-common-protos { }; + + google-auth = callPackage ../development/python-modules/google-auth { }; + + google-auth-httplib2 = callPackage ../development/python-modules/google-auth-httplib2 { }; + + google-auth-oauthlib = callPackage ../development/python-modules/google-auth-oauthlib { }; + + google-cloud-access-context-manager = callPackage ../development/python-modules/google-cloud-access-context-manager { }; + + google-cloud-appengine-logging = callPackage ../development/python-modules/google-cloud-appengine-logging { }; + + google-cloud-asset = callPackage ../development/python-modules/google-cloud-asset { }; + + google-cloud-audit-log = callPackage ../development/python-modules/google-cloud-audit-log { }; + + google-cloud-automl = callPackage ../development/python-modules/google-cloud-automl { }; + + google-cloud-bigquery = callPackage ../development/python-modules/google-cloud-bigquery { }; + + google-cloud-bigquery-datatransfer = callPackage ../development/python-modules/google-cloud-bigquery-datatransfer { }; + + google-cloud-bigquery-logging = callPackage ../development/python-modules/google-cloud-bigquery-logging { }; + + google-cloud-bigtable = callPackage ../development/python-modules/google-cloud-bigtable { }; + + google-cloud-container = callPackage ../development/python-modules/google-cloud-container { }; + + google-cloud-core = callPackage ../development/python-modules/google-cloud-core { }; + + google-cloud-datacatalog = callPackage ../development/python-modules/google-cloud-datacatalog { }; + + google-cloud-dataproc = callPackage ../development/python-modules/google-cloud-dataproc { }; + + google-cloud-datastore = callPackage ../development/python-modules/google-cloud-datastore { }; + + google-cloud-dlp = callPackage ../development/python-modules/google-cloud-dlp { }; + + google-cloud-dns = callPackage ../development/python-modules/google-cloud-dns { }; + + google-cloud-error-reporting = callPackage ../development/python-modules/google-cloud-error-reporting { }; + + google-cloud-firestore = callPackage ../development/python-modules/google-cloud-firestore { }; + + google-cloud-iam = callPackage ../development/python-modules/google-cloud-iam { }; + + google-cloud-iam-logging = callPackage ../development/python-modules/google-cloud-iam-logging { }; + + google-cloud-iot = callPackage ../development/python-modules/google-cloud-iot { }; + + google-cloud-kms = callPackage ../development/python-modules/google-cloud-kms { }; + + google-cloud-language = callPackage ../development/python-modules/google-cloud-language { }; + + google-cloud-logging = callPackage ../development/python-modules/google-cloud-logging { }; + + google-cloud-monitoring = callPackage ../development/python-modules/google-cloud-monitoring { }; + + google-cloud-org-policy = callPackage ../development/python-modules/google-cloud-org-policy { }; + + google-cloud-os-config = callPackage ../development/python-modules/google-cloud-os-config { }; + + google-cloud-pubsub = callPackage ../development/python-modules/google-cloud-pubsub { }; + + google-cloud-redis = callPackage ../development/python-modules/google-cloud-redis { }; + + google-cloud-resource-manager = callPackage ../development/python-modules/google-cloud-resource-manager { }; + + google-cloud-runtimeconfig = callPackage ../development/python-modules/google-cloud-runtimeconfig { }; + + google-cloud-secret-manager = callPackage ../development/python-modules/google-cloud-secret-manager { }; + + google-cloud-securitycenter = callPackage ../development/python-modules/google-cloud-securitycenter { }; + + google-cloud-spanner = callPackage ../development/python-modules/google-cloud-spanner { }; + + google-cloud-speech = callPackage ../development/python-modules/google-cloud-speech { }; + + google-cloud-storage = callPackage ../development/python-modules/google-cloud-storage { }; + + google-cloud-tasks = callPackage ../development/python-modules/google-cloud-tasks { }; + + google-cloud-testutils = callPackage ../development/python-modules/google-cloud-testutils { }; + + google-cloud-texttospeech = callPackage ../development/python-modules/google-cloud-texttospeech { }; + + google-cloud-trace = callPackage ../development/python-modules/google-cloud-trace { }; + + google-cloud-translate = callPackage ../development/python-modules/google-cloud-translate { }; + + google-cloud-videointelligence = callPackage ../development/python-modules/google-cloud-videointelligence { }; + + google-cloud-vision = callPackage ../development/python-modules/google-cloud-vision { }; + + google-cloud-websecurityscanner = callPackage ../development/python-modules/google-cloud-websecurityscanner { }; + + google-compute-engine = callPackage ../tools/virtualization/google-compute-engine { }; + + google-crc32c = callPackage ../development/python-modules/google-crc32c { + inherit (pkgs) crc32c; + }; + + google-i18n-address = callPackage ../development/python-modules/google-i18n-address { }; + + google-nest-sdm = callPackage ../development/python-modules/google-nest-sdm { }; + + googlemaps = callPackage ../development/python-modules/googlemaps { }; + + google-pasta = callPackage ../development/python-modules/google-pasta { }; + + google-re2 = callPackage ../development/python-modules/google-re2 { }; + + google-resumable-media = callPackage ../development/python-modules/google-resumable-media { }; + + googletrans = callPackage ../development/python-modules/googletrans { }; + + gorilla = callPackage ../development/python-modules/gorilla { }; + + goveelights = callPackage ../development/python-modules/goveelights { }; + + gpapi = callPackage ../development/python-modules/gpapi { }; + + gplaycli = callPackage ../development/python-modules/gplaycli { }; + + gpgme = toPythonModule (pkgs.gpgme.override { + pythonSupport = true; + inherit python; + }); + + gphoto2 = callPackage ../development/python-modules/gphoto2 { }; + + gprof2dot = callPackage ../development/python-modules/gprof2dot { + inherit (pkgs) graphviz; + }; + + gps3 = callPackage ../development/python-modules/gps3 { }; + + gpsoauth = callPackage ../development/python-modules/gpsoauth { }; + + gpxpy = callPackage ../development/python-modules/gpxpy { }; + + gpy = callPackage ../development/python-modules/gpy { }; + + gpyopt = callPackage ../development/python-modules/gpyopt { }; + + gql = callPackage ../development/python-modules/gql { }; + + gradient = callPackage ../development/python-modules/gradient { }; + + gradient-utils = callPackage ../development/python-modules/gradient-utils { }; + + gradient_statsd = callPackage ../development/python-modules/gradient_statsd { }; + + grammalecte = callPackage ../development/python-modules/grammalecte { }; + + grandalf = callPackage ../development/python-modules/grandalf { }; + + grapheme = callPackage ../development/python-modules/grapheme { }; + + graphite_api = callPackage ../development/python-modules/graphite-api { }; + + graphite_beacon = callPackage ../development/python-modules/graphite_beacon { }; + + graphite-web = callPackage ../development/python-modules/graphite-web { }; + + graph_nets = callPackage ../development/python-modules/graph_nets { }; + + graphene = callPackage ../development/python-modules/graphene { }; + + graphene-django = callPackage ../development/python-modules/graphene-django { }; + + graphqlclient= callPackage ../development/python-modules/graphqlclient { }; + + graphql-core = callPackage ../development/python-modules/graphql-core { }; + + graphql-relay = callPackage ../development/python-modules/graphql-relay { }; + + graphql-server-core = callPackage ../development/python-modules/graphql-server-core { }; + + graphql-subscription-manager = callPackage ../development/python-modules/graphql-subscription-manager { }; + + graph-tool = callPackage ../development/python-modules/graph-tool { }; + + graphtage = callPackage ../development/python-modules/graphtage { }; + + graphviz = callPackage ../development/python-modules/graphviz { + inherit (pkgs) graphviz; + }; + + grappelli_safe = callPackage ../development/python-modules/grappelli_safe { }; + + graspologic = callPackage ../development/python-modules/graspologic { }; + + greatfet = callPackage ../development/python-modules/greatfet { }; + + greeclimate = callPackage ../development/python-modules/greeclimate { }; + + green = callPackage ../development/python-modules/green { }; + + greenlet = callPackage ../development/python-modules/greenlet { }; + + grequests = callPackage ../development/python-modules/grequests { }; + + gremlinpython = callPackage ../development/python-modules/gremlinpython { }; + + growattserver = callPackage ../development/python-modules/growattserver { }; + + gridnet = callPackage ../development/python-modules/gridnet { }; + + grip = callPackage ../development/python-modules/grip { }; + + groestlcoin_hash = callPackage ../development/python-modules/groestlcoin_hash { }; + + grpc-google-iam-v1 = callPackage ../development/python-modules/grpc-google-iam-v1 { }; + + grpcio = callPackage ../development/python-modules/grpcio { }; + + grpcio-gcp = callPackage ../development/python-modules/grpcio-gcp { }; + + grpcio-status = callPackage ../development/python-modules/grpcio-status { }; + + grpcio-tools = callPackage ../development/python-modules/grpcio-tools { }; + + gruut = callPackage ../development/python-modules/gruut { }; + + gruut-ipa = callPackage ../development/python-modules/gruut-ipa { }; + + gsd = callPackage ../development/python-modules/gsd { }; + + gspread = callPackage ../development/python-modules/gspread { }; + + gssapi = callPackage ../development/python-modules/gssapi { + inherit (pkgs) krb5Full; + inherit (pkgs.darwin.apple_sdk.frameworks) GSS; + }; + + gst-python = callPackage ../development/python-modules/gst-python { + inherit (pkgs) meson; + gst-plugins-base = pkgs.gst_all_1.gst-plugins-base; + }; + + gtfs-realtime-bindings = callPackage ../development/python-modules/gtfs-realtime-bindings { }; + + gtimelog = callPackage ../development/python-modules/gtimelog { }; + + gtts = callPackage ../development/python-modules/gtts { }; + + gtts-token = callPackage ../development/python-modules/gtts-token { }; + + guessit = callPackage ../development/python-modules/guessit { }; + + guestfs = callPackage ../development/python-modules/guestfs { }; + + gudhi = callPackage ../development/python-modules/gudhi { }; + + gumath = callPackage ../development/python-modules/gumath { }; + + gunicorn = callPackage ../development/python-modules/gunicorn { }; + + guppy3 = callPackage ../development/python-modules/guppy3 { }; + + gurobipy = if stdenv.hostPlatform.system == "x86_64-darwin" then + callPackage ../development/python-modules/gurobipy/darwin.nix { + inherit (pkgs.darwin) cctools insert_dylib; + } + else if stdenv.hostPlatform.system == "x86_64-linux" then + callPackage ../development/python-modules/gurobipy/linux.nix { } + else + throw "gurobipy not yet supported on ${stdenv.hostPlatform.system}"; + + guzzle_sphinx_theme = callPackage ../development/python-modules/guzzle_sphinx_theme { }; + + gvm-tools = callPackage ../development/python-modules/gvm-tools { }; + + gviz-api = callPackage ../development/python-modules/gviz-api { }; + + gym = callPackage ../development/python-modules/gym { }; + + gyp = callPackage ../development/python-modules/gyp { }; + + h11 = callPackage ../development/python-modules/h11 { }; + + h2 = callPackage ../development/python-modules/h2 { }; + + h3 = callPackage ../development/python-modules/h3 { + inherit (pkgs) h3; + }; + + h5netcdf = callPackage ../development/python-modules/h5netcdf { }; + + h5py = callPackage ../development/python-modules/h5py { }; + + h5py-mpi = self.h5py.override { + hdf5 = pkgs.hdf5-mpi; + }; + + habanero = callPackage ../development/python-modules/habanero { }; + + habitipy = callPackage ../development/python-modules/habitipy { }; + + hachoir = callPackage ../development/python-modules/hachoir { }; + + hacking = callPackage ../development/python-modules/hacking { }; + + hdate = callPackage ../development/python-modules/hdate { }; + + ha-av = callPackage ../development/python-modules/ha-av { }; + + ha-ffmpeg = callPackage ../development/python-modules/ha-ffmpeg { }; + + ha-philipsjs = callPackage ../development/python-modules/ha-philipsjs{ }; + + hahomematic = callPackage ../development/python-modules/hahomematic { }; + + halo = callPackage ../development/python-modules/halo { }; + + halohome = callPackage ../development/python-modules/halohome { }; + + handout = callPackage ../development/python-modules/handout { }; + + hangups = callPackage ../development/python-modules/hangups { }; + + hap-python = callPackage ../development/python-modules/hap-python { }; + + hass-nabucasa = callPackage ../development/python-modules/hass-nabucasa { }; + + hatasmota = callPackage ../development/python-modules/hatasmota { }; + + haversine = callPackage ../development/python-modules/haversine { }; + + hawkauthlib = callPackage ../development/python-modules/hawkauthlib { }; + + hcloud = callPackage ../development/python-modules/hcloud { }; + + hcs_utils = callPackage ../development/python-modules/hcs_utils { }; + + hdbscan = callPackage ../development/python-modules/hdbscan { }; + + hdfs = callPackage ../development/python-modules/hdfs { }; + + hdmedians = callPackage ../development/python-modules/hdmedians { }; + + headerparser = callPackage ../development/python-modules/headerparser { }; + + heapdict = callPackage ../development/python-modules/heapdict { }; + + heatzypy = callPackage ../development/python-modules/heatzypy { }; + + helpdev = callPackage ../development/python-modules/helpdev { }; + + helper = callPackage ../development/python-modules/helper { }; + + hepmc3 = toPythonModule (pkgs.hepmc3.override { + inherit python; + }); + + herepy = callPackage ../development/python-modules/herepy { }; + + hetzner = callPackage ../development/python-modules/hetzner { }; + + heudiconv = callPackage ../development/python-modules/heudiconv { }; + + hg-commitsigs = callPackage ../development/python-modules/hg-commitsigs { }; + + hg-evolve = callPackage ../development/python-modules/hg-evolve { }; + + hg-git = callPackage ../development/python-modules/hg-git { }; + + hglib = callPackage ../development/python-modules/hglib { }; + + hickle = callPackage ../development/python-modules/hickle { }; + + hid = callPackage ../development/python-modules/hid { + inherit (pkgs) hidapi; + }; + + hidapi = callPackage ../development/python-modules/hidapi { + inherit (pkgs) udev libusb1; + }; + + hieroglyph = callPackage ../development/python-modules/hieroglyph { }; + + hijri-converter = callPackage ../development/python-modules/hijri-converter { }; + + hikvision = callPackage ../development/python-modules/hikvision { }; + + hiredis = callPackage ../development/python-modules/hiredis { }; + + hiro = callPackage ../development/python-modules/hiro { }; + + hiyapyco = callPackage ../development/python-modules/hiyapyco { }; + + hjson = callPackage ../development/python-modules/hjson { }; + + hkdf = callPackage ../development/python-modules/hkdf { }; + + hlk-sw16 = callPackage ../development/python-modules/hlk-sw16 { }; + + hmmlearn = callPackage ../development/python-modules/hmmlearn { }; + + hocr-tools = callPackage ../development/python-modules/hocr-tools { }; + + hole = callPackage ../development/python-modules/hole { }; + + holidays = callPackage ../development/python-modules/holidays { }; + + holoviews = callPackage ../development/python-modules/holoviews { }; + + homeassistant-pyozw = callPackage ../development/python-modules/homeassistant-pyozw { }; + + homeconnect = callPackage ../development/python-modules/homeconnect { }; + + homematicip = callPackage ../development/python-modules/homematicip { }; + + homepluscontrol = callPackage ../development/python-modules/homepluscontrol { }; + + hoomd-blue = toPythonModule (callPackage ../development/python-modules/hoomd-blue { + inherit python; + }); + + hopcroftkarp = callPackage ../development/python-modules/hopcroftkarp { }; + + howdoi = callPackage ../development/python-modules/howdoi { }; + + hpack = callPackage ../development/python-modules/hpack { }; + + hsaudiotag3k = callPackage ../development/python-modules/hsaudiotag3k { }; + + hsluv = callPackage ../development/python-modules/hsluv { }; + + hstspreload = callPackage ../development/python-modules/hstspreload { }; + + html2text = callPackage ../development/python-modules/html2text { }; + + html5lib = callPackage ../development/python-modules/html5lib { }; + + html5-parser = callPackage ../development/python-modules/html5-parser { }; + + htmllaundry = callPackage ../development/python-modules/htmllaundry { }; + + htmlmin = callPackage ../development/python-modules/htmlmin { }; + + html-sanitizer = callPackage ../development/python-modules/html-sanitizer { }; + + HTSeq = callPackage ../development/python-modules/HTSeq { }; + + httmock = callPackage ../development/python-modules/httmock { }; + + httpagentparser = callPackage ../development/python-modules/httpagentparser { }; + + httpauth = callPackage ../development/python-modules/httpauth { }; + + httpbin = callPackage ../development/python-modules/httpbin { }; + + httpcore = callPackage ../development/python-modules/httpcore { }; + + http-ece = callPackage ../development/python-modules/http-ece { }; + + httplib2 = callPackage ../development/python-modules/httplib2 { }; + + http-parser = callPackage ../development/python-modules/http-parser { }; + + httpretty = callPackage ../development/python-modules/httpretty { }; + + httpserver = callPackage ../development/python-modules/httpserver { }; + + httpsig = callPackage ../development/python-modules/httpsig { }; + + httptools = callPackage ../development/python-modules/httptools { }; + + httpx = callPackage ../development/python-modules/httpx { }; + + httpx-ntlm = callPackage ../development/python-modules/httpx-ntlm { }; + + httpx-socks = callPackage ../development/python-modules/httpx-socks { }; + + huawei-lte-api = callPackage ../development/python-modules/huawei-lte-api { }; + + huey = callPackage ../development/python-modules/huey { }; + + hug = callPackage ../development/python-modules/hug { }; + + huggingface-hub = callPackage ../development/python-modules/huggingface-hub { }; + + huisbaasje-client = callPackage ../development/python-modules/huisbaasje-client { }; + + humanfriendly = callPackage ../development/python-modules/humanfriendly { }; + + humanize = callPackage ../development/python-modules/humanize { }; + + humblewx = callPackage ../development/python-modules/humblewx { }; + + hupper = callPackage ../development/python-modules/hupper { }; + + hvac = callPackage ../development/python-modules/hvac { }; + + hvplot = callPackage ../development/python-modules/hvplot { }; + + hwi = callPackage ../development/python-modules/hwi { }; + + hy = callPackage ../development/python-modules/hy { }; + + hydra = callPackage ../development/python-modules/hydra { }; + + hydra-check = callPackage ../development/python-modules/hydra-check { }; + + hydrawiser = callPackage ../development/python-modules/hydrawiser { }; + + hypchat = callPackage ../development/python-modules/hypchat { }; + + hypercorn = callPackage ../development/python-modules/hypercorn { }; + + hyperframe = callPackage ../development/python-modules/hyperframe { }; + + hyperion-py = callPackage ../development/python-modules/hyperion-py { }; + + hyperkitty = callPackage ../servers/mail/mailman/hyperkitty.nix { }; + + hyperlink = callPackage ../development/python-modules/hyperlink { }; + + hyperopt = callPackage ../development/python-modules/hyperopt { }; + + hypothesis-auto = callPackage ../development/python-modules/hypothesis-auto { }; + + hypothesis = callPackage ../development/python-modules/hypothesis { }; + + hypothesmith = callPackage ../development/python-modules/hypothesmith { }; + + hyppo = callPackage ../development/python-modules/hyppo { }; + + i2c-tools = callPackage ../development/python-modules/i2c-tools { + inherit (pkgs) i2c-tools; + }; + + i2csense = callPackage ../development/python-modules/i2csense { }; + + i3ipc = callPackage ../development/python-modules/i3ipc { }; + + i3-py = callPackage ../development/python-modules/i3-py { }; + + iapws = callPackage ../development/python-modules/iapws { }; + + iaqualink = callPackage ../development/python-modules/iaqualink { }; + + ibis = callPackage ../development/python-modules/ibis { }; + + ibis-framework = callPackage ../development/python-modules/ibis-framework { }; + + ibm-cloud-sdk-core = callPackage ../development/python-modules/ibm-cloud-sdk-core { }; + + ibm-watson = callPackage ../development/python-modules/ibm-watson { }; + + icalendar = callPackage ../development/python-modules/icalendar { }; + + icecream = callPackage ../development/python-modules/icecream { }; + + icmplib = callPackage ../development/python-modules/icmplib { }; + + icnsutil = callPackage ../development/python-modules/icnsutil { }; + + ics = callPackage ../development/python-modules/ics { }; + + idasen = callPackage ../development/python-modules/idasen { }; + + identify = callPackage ../development/python-modules/identify { }; + + idna = callPackage ../development/python-modules/idna { }; + + idna-ssl = callPackage ../development/python-modules/idna-ssl { }; + + ifaddr = callPackage ../development/python-modules/ifaddr { }; + + ifconfig-parser = callPackage ../development/python-modules/ifconfig-parser { }; + + ifcopenshell = callPackage ../development/python-modules/ifcopenshell { }; + + ignite = callPackage ../development/python-modules/ignite { }; + + igraph = callPackage ../development/python-modules/igraph { + inherit (pkgs) igraph; + }; + + ihatemoney = callPackage ../development/python-modules/ihatemoney { }; + + ijson = callPackage ../development/python-modules/ijson { }; + + ilua = callPackage ../development/python-modules/ilua { }; + + imagecodecs-lite = callPackage ../development/python-modules/imagecodecs-lite { }; + + imagecorruptions = callPackage ../development/python-modules/imagecorruptions { }; + + imageio = callPackage ../development/python-modules/imageio { }; + + imageio-ffmpeg = callPackage ../development/python-modules/imageio-ffmpeg { }; + + image-go-nord = callPackage ../development/python-modules/image-go-nord { }; + + image-match = callPackage ../development/python-modules/image-match { }; + + imagesize = callPackage ../development/python-modules/imagesize { }; + + imantics = callPackage ../development/python-modules/imantics { }; + + imapclient = callPackage ../development/python-modules/imapclient { }; + + imaplib2 = callPackage ../development/python-modules/imaplib2 { }; + + imap-tools = callPackage ../development/python-modules/imap-tools { }; + + imbalanced-learn = callPackage ../development/python-modules/imbalanced-learn { }; + + imdbpy = callPackage ../development/python-modules/imdbpy { }; + + img2pdf = callPackage ../development/python-modules/img2pdf { }; + + imgaug = callPackage ../development/python-modules/imgaug { }; + + imgsize = callPackage ../development/python-modules/imgsize { }; + + iminuit = callPackage ../development/python-modules/iminuit { }; + + immutabledict = callPackage ../development/python-modules/immutabledict { }; + + immutables = callPackage ../development/python-modules/immutables { }; + + impacket = callPackage ../development/python-modules/impacket { }; + + importlab = callPackage ../development/python-modules/importlab { }; + + importlib-metadata = callPackage ../development/python-modules/importlib-metadata { }; + + importlib-resources = callPackage ../development/python-modules/importlib-resources { }; + + importmagic = callPackage ../development/python-modules/importmagic { }; + + imread = callPackage ../development/python-modules/imread { + inherit (pkgs) libjpeg libpng libtiff libwebp; + }; + + imutils = callPackage ../development/python-modules/imutils { }; + + in-place = callPackage ../development/python-modules/in-place { }; + + incomfort-client = callPackage ../development/python-modules/incomfort-client { }; + + incremental = callPackage ../development/python-modules/incremental { }; + + inflect = callPackage ../development/python-modules/inflect { }; + + inflection = callPackage ../development/python-modules/inflection { }; + + influxdb = callPackage ../development/python-modules/influxdb { }; + + influxdb-client = callPackage ../development/python-modules/influxdb-client { }; + + influxgraph = callPackage ../development/python-modules/influxgraph { }; + + inform = callPackage ../development/python-modules/inform { }; + + iniconfig = callPackage ../development/python-modules/iniconfig { }; + + inifile = callPackage ../development/python-modules/inifile { }; + + iniparse = callPackage ../development/python-modules/iniparse { }; + + injector = callPackage ../development/python-modules/injector { }; + + inkex = callPackage ../development/python-modules/inkex { }; + + inotify = callPackage ../development/python-modules/inotify { }; + + inotify-simple = callPackage ../development/python-modules/inotify-simple { }; + + inotifyrecursive = callPackage ../development/python-modules/inotifyrecursive { }; + + inquirer = callPackage ../development/python-modules/inquirer { }; + + insegel = callPackage ../development/python-modules/insegel { }; + + installer = callPackage ../development/python-modules/installer { }; + + intake = callPackage ../development/python-modules/intake { }; + + intake-parquet = callPackage ../development/python-modules/intake-parquet { }; + + intbitset = callPackage ../development/python-modules/intbitset { }; + + intelhex = callPackage ../development/python-modules/intelhex { }; + + intellifire4py = callPackage ../development/python-modules/intellifire4py { }; + + intensity-normalization = callPackage ../development/python-modules/intensity-normalization { }; + + internetarchive = callPackage ../development/python-modules/internetarchive { }; + + interruptingcow = callPackage ../development/python-modules/interruptingcow { }; + + intervaltree = callPackage ../development/python-modules/intervaltree { }; + + intreehooks = callPackage ../development/python-modules/intreehooks { }; + + invoke = callPackage ../development/python-modules/invoke { }; + + iodata = callPackage ../development/python-modules/iodata { }; + + iocapture = callPackage ../development/python-modules/iocapture { }; + + iotawattpy = callPackage ../development/python-modules/iotawattpy { }; + + iowait = callPackage ../development/python-modules/iowait { }; + + ipaddr = callPackage ../development/python-modules/ipaddr { }; + + ipaddress = callPackage ../development/python-modules/ipaddress { }; + + ipdb = callPackage ../development/python-modules/ipdb { }; + + ipdbplugin = callPackage ../development/python-modules/ipdbplugin { }; + + ipfshttpclient = callPackage ../development/python-modules/ipfshttpclient { }; + + i-pi = callPackage ../development/python-modules/i-pi { }; + + iptools = callPackage ../development/python-modules/iptools { }; + + ipwhl = callPackage ../development/python-modules/ipwhl { }; + + ipy = callPackage ../development/python-modules/IPy { }; + + ipydatawidgets = callPackage ../development/python-modules/ipydatawidgets { }; + + ipykernel = callPackage ../development/python-modules/ipykernel { }; + + ipympl = callPackage ../development/python-modules/ipympl { }; + + ipyparallel = callPackage ../development/python-modules/ipyparallel { }; + + ipython_genutils = callPackage ../development/python-modules/ipython_genutils { }; + + ipython = callPackage ../development/python-modules/ipython { }; + + ipyvue = callPackage ../development/python-modules/ipyvue { }; + + ipyvuetify = callPackage ../development/python-modules/ipyvuetify { }; + + ipywidgets = callPackage ../development/python-modules/ipywidgets { }; + + irc = callPackage ../development/python-modules/irc { }; + + ircrobots = callPackage ../development/python-modules/ircrobots { }; + + ircstates = callPackage ../development/python-modules/ircstates { }; + + irctokens = callPackage ../development/python-modules/irctokens { }; + + isbnlib = callPackage ../development/python-modules/isbnlib { }; + + islpy = callPackage ../development/python-modules/islpy { }; + + iso3166 = callPackage ../development/python-modules/iso3166 { }; + + ismartgate = callPackage ../development/python-modules/ismartgate { }; + + iso-639 = callPackage ../development/python-modules/iso-639 { }; + + iso4217 = callPackage ../development/python-modules/iso4217 { }; + + iso8601 = callPackage ../development/python-modules/iso8601 { }; + + isodate = callPackage ../development/python-modules/isodate { }; + + isort = callPackage ../development/python-modules/isort { }; + + isounidecode = callPackage ../development/python-modules/isounidecode { }; + + isoweek = callPackage ../development/python-modules/isoweek { }; + + itanium_demangler = callPackage ../development/python-modules/itanium_demangler { }; + + itemadapter = callPackage ../development/python-modules/itemadapter { }; + + itemdb = callPackage ../development/python-modules/itemdb { }; + + itemloaders = callPackage ../development/python-modules/itemloaders { }; + + iterm2 = callPackage ../development/python-modules/iterm2 { }; + + itsdangerous = callPackage ../development/python-modules/itsdangerous { }; + + itunespy = callPackage ../development/python-modules/itunespy { }; + + itypes = callPackage ../development/python-modules/itypes { }; + + j2cli = callPackage ../development/python-modules/j2cli { }; + + jaconv = callPackage ../development/python-modules/jaconv { }; + + jaeger-client = callPackage ../development/python-modules/jaeger-client { }; + + janus = callPackage ../development/python-modules/janus { }; + + jaraco_classes = callPackage ../development/python-modules/jaraco_classes { }; + + jaraco_collections = callPackage ../development/python-modules/jaraco_collections { }; + + jaraco-context = callPackage ../development/python-modules/jaraco-context { }; + + jaraco_functools = callPackage ../development/python-modules/jaraco_functools { }; + + jaraco_itertools = callPackage ../development/python-modules/jaraco_itertools { }; + + jaraco_logging = callPackage ../development/python-modules/jaraco_logging { }; + + jaraco_stream = callPackage ../development/python-modules/jaraco_stream { }; + + jaraco_text = callPackage ../development/python-modules/jaraco_text { }; + + javaobj-py3 = callPackage ../development/python-modules/javaobj-py3 { }; + + javaproperties = callPackage ../development/python-modules/javaproperties { }; + + jax = callPackage ../development/python-modules/jax { }; + + jaxlib-bin = callPackage ../development/python-modules/jaxlib/bin.nix { + cudaSupport = pkgs.config.cudaSupport or false; + cudatoolkit_11 = tensorflow_compat_cudatoolkit; + cudnn = tensorflow_compat_cudnn; + }; + + jaxlib-build = callPackage ../development/python-modules/jaxlib { + # Some platforms don't have `cudaSupport` defined, hence the need for 'or false'. + cudaSupport = pkgs.config.cudaSupport or false; + cudatoolkit = tensorflow_compat_cudatoolkit; + cudnn = tensorflow_compat_cudnn; + nccl = tensorflow_compat_nccl; + }; + + jaxlib = self.jaxlib-build; + + jaxlibWithCuda = self.jaxlib-build.override { + cudaSupport = true; + }; + + jaxlibWithoutCuda = self.jaxlib-build.override { + cudaSupport = false; + }; + + JayDeBeApi = callPackage ../development/python-modules/JayDeBeApi { }; + + jc = callPackage ../development/python-modules/jc { }; + + jdatetime = callPackage ../development/python-modules/jdatetime { }; + + jdcal = callPackage ../development/python-modules/jdcal { }; + + jedi = callPackage ../development/python-modules/jedi { }; + + jedi-language-server = callPackage ../development/python-modules/jedi-language-server { }; + + jeepney = callPackage ../development/python-modules/jeepney { }; + + jellyfin-apiclient-python = callPackage ../development/python-modules/jellyfin-apiclient-python { }; + + jellyfish = callPackage ../development/python-modules/jellyfish { }; + + jenkinsapi = callPackage ../development/python-modules/jenkinsapi { }; + + jenkins-job-builder = callPackage ../development/python-modules/jenkins-job-builder { }; + + jieba = callPackage ../development/python-modules/jieba { }; + + jinja2 = callPackage ../development/python-modules/jinja2 { }; + + jinja2-git = callPackage ../development/python-modules/jinja2-git { }; + + jinja2_pluralize = callPackage ../development/python-modules/jinja2_pluralize { }; + + jinja2_time = callPackage ../development/python-modules/jinja2_time { }; + + jira = callPackage ../development/python-modules/jira { }; + + jmespath = callPackage ../development/python-modules/jmespath { }; + + jmp = callPackage ../development/python-modules/jmp { }; + + joblib = callPackage ../development/python-modules/joblib { }; + + johnnycanencrypt = callPackage ../development/python-modules/johnnycanencrypt { + inherit (pkgs.darwin.apple_sdk.frameworks) PCSC; + }; + + josepy = callPackage ../development/python-modules/josepy { }; + + journalwatch = callPackage ../tools/system/journalwatch { + inherit (self) systemd pytest; + }; + + jproperties = callPackage ../development/python-modules/jproperties { }; + + jpylyzer = callPackage ../development/python-modules/jpylyzer { }; + + JPype1 = callPackage ../development/python-modules/JPype1 { }; + + jq = callPackage ../development/python-modules/jq { + inherit (pkgs) jq; + }; + + jsbeautifier = callPackage ../development/python-modules/jsbeautifier { }; + + jschema-to-python = callPackage ../development/python-modules/jschema-to-python { }; + + jsmin = callPackage ../development/python-modules/jsmin { }; + + json5 = callPackage ../development/python-modules/json5 { }; + + jsondate = callPackage ../development/python-modules/jsondate { }; + + jsondiff = callPackage ../development/python-modules/jsondiff { }; + + jsonfield = callPackage ../development/python-modules/jsonfield { }; + + jsonlines = callPackage ../development/python-modules/jsonlines { }; + + json-logging = callPackage ../development/python-modules/json-logging { }; + + jsonmerge = callPackage ../development/python-modules/jsonmerge { }; + + json-merge-patch = callPackage ../development/python-modules/json-merge-patch { }; + + json-schema-for-humans = callPackage ../development/python-modules/json-schema-for-humans { }; + + jsonnet = buildPythonPackage { inherit (pkgs.jsonnet) name src; }; + + jsonpatch = callPackage ../development/python-modules/jsonpatch { }; + + jsonpath = callPackage ../development/python-modules/jsonpath { }; + + jsonpath_rw = callPackage ../development/python-modules/jsonpath_rw { }; + + jsonpath-ng = callPackage ../development/python-modules/jsonpath-ng { }; + + jsonpickle = callPackage ../development/python-modules/jsonpickle { }; + + jsonpointer = callPackage ../development/python-modules/jsonpointer { }; + + jsonref = callPackage ../development/python-modules/jsonref { }; + + json-rpc = callPackage ../development/python-modules/json-rpc { }; + + jsonrpc-async = callPackage ../development/python-modules/jsonrpc-async { }; + + jsonrpc-base = callPackage ../development/python-modules/jsonrpc-base { }; + + jsonrpclib-pelix = callPackage ../development/python-modules/jsonrpclib-pelix { }; + + jsonrpc-websocket = callPackage ../development/python-modules/jsonrpc-websocket { }; + + jsonschema = callPackage ../development/python-modules/jsonschema { }; + + jsonstreams = callPackage ../development/python-modules/jsonstreams { }; + + json-tricks = callPackage ../development/python-modules/json-tricks { }; + + jug = callPackage ../development/python-modules/jug { }; + + junitparser = callPackage ../development/python-modules/junitparser { }; + + junit-xml = callPackage ../development/python-modules/junit-xml { }; + + junos-eznc = callPackage ../development/python-modules/junos-eznc { }; + + jupyter = callPackage ../development/python-modules/jupyter { }; + + jupyter-c-kernel = callPackage ../development/python-modules/jupyter-c-kernel { }; + + jupyter-client = callPackage ../development/python-modules/jupyter-client { }; + + jupyter_console = callPackage ../development/python-modules/jupyter_console { }; + + jupyter_core = callPackage ../development/python-modules/jupyter_core { }; + + jupyter-lsp = callPackage ../development/python-modules/jupyter-lsp { }; + + jupyter_server = callPackage ../development/python-modules/jupyter_server { }; + + jupyterhub = callPackage ../development/python-modules/jupyterhub { }; + + jupyterhub-ldapauthenticator = callPackage ../development/python-modules/jupyterhub-ldapauthenticator { }; + + jupyterhub-systemdspawner = callPackage ../development/python-modules/jupyterhub-systemdspawner { }; + + jupyterhub-tmpauthenticator = callPackage ../development/python-modules/jupyterhub-tmpauthenticator { }; + + jupyterlab = callPackage ../development/python-modules/jupyterlab { }; + + jupyterlab-git = callPackage ../development/python-modules/jupyterlab-git { }; + + jupyterlab_launcher = callPackage ../development/python-modules/jupyterlab_launcher { }; + + jupyterlab-pygments = callPackage ../development/python-modules/jupyterlab-pygments { }; + + jupyterlab_server = callPackage ../development/python-modules/jupyterlab_server { }; + + jupyterlab-widgets = callPackage ../development/python-modules/jupyterlab-widgets { }; + + jupyterlab-lsp = callPackage ../development/python-modules/jupyterlab-lsp { }; + + jupyter-packaging = callPackage ../development/python-modules/jupyter-packaging { }; + + jupyter-repo2docker = callPackage ../development/python-modules/jupyter-repo2docker { + pkgs-docker = pkgs.docker; + }; + + jupyter-server-mathjax = callPackage ../development/python-modules/jupyter-server-mathjax { }; + + jupyter-sphinx = callPackage ../development/python-modules/jupyter-sphinx { }; + + jupyter-telemetry = callPackage ../development/python-modules/jupyter-telemetry { }; + + jupytext = callPackage ../development/python-modules/jupytext { }; + + justbackoff = callPackage ../development/python-modules/justbackoff { }; + + jwcrypto = callPackage ../development/python-modules/jwcrypto { }; + + jxmlease = callPackage ../development/python-modules/jxmlease { }; + + k5test = callPackage ../development/python-modules/k5test { + inherit (pkgs) krb5Full findutils which; + }; + + kaa-base = callPackage ../development/python-modules/kaa-base { }; + + kaa-metadata = callPackage ../development/python-modules/kaa-metadata { }; + + kafka-python = callPackage ../development/python-modules/kafka-python { }; + + kaggle = callPackage ../development/python-modules/kaggle { }; + + kaitaistruct = callPackage ../development/python-modules/kaitaistruct { }; + + Kajiki = callPackage ../development/python-modules/kajiki { }; + + kaldi-active-grammar = callPackage ../development/python-modules/kaldi-active-grammar { }; + + kaptan = callPackage ../development/python-modules/kaptan { }; + + karton-asciimagic = callPackage ../development/python-modules/karton-asciimagic { }; + + karton-autoit-ripper = callPackage ../development/python-modules/karton-autoit-ripper { }; + + karton-classifier = callPackage ../development/python-modules/karton-classifier { }; + + karton-config-extractor = callPackage ../development/python-modules/karton-config-extractor { }; + + karton-core = callPackage ../development/python-modules/karton-core { }; + + karton-dashboard = callPackage ../development/python-modules/karton-dashboard { }; + + karton-mwdb-reporter = callPackage ../development/python-modules/karton-mwdb-reporter { }; + + karton-yaramatcher = callPackage ../development/python-modules/karton-yaramatcher { }; + + kazoo = callPackage ../development/python-modules/kazoo { }; + + kconfiglib = callPackage ../development/python-modules/kconfiglib { }; + + keep = callPackage ../development/python-modules/keep { }; + + keepalive = callPackage ../development/python-modules/keepalive { }; + + keepkey_agent = callPackage ../development/python-modules/keepkey_agent { }; + + keepkey = callPackage ../development/python-modules/keepkey { }; + + keras-applications = callPackage ../development/python-modules/keras-applications { }; + + keras = callPackage ../development/python-modules/keras { }; + + keras-preprocessing = callPackage ../development/python-modules/keras-preprocessing { }; + + kerberos = callPackage ../development/python-modules/kerberos { }; + + keyboard = callPackage ../development/python-modules/keyboard { }; + + keyring = callPackage ../development/python-modules/keyring { }; + + keyrings-cryptfile = callPackage ../development/python-modules/keyrings-cryptfile { }; + + keyrings-alt = callPackage ../development/python-modules/keyrings-alt { }; + + keystone-engine = callPackage ../development/python-modules/keystone-engine { }; + + keystoneauth1 = callPackage ../development/python-modules/keystoneauth1 { }; + + keyutils = callPackage ../development/python-modules/keyutils { + inherit (pkgs) keyutils; + }; + + kicad = toPythonModule (pkgs.kicad.override { + python3 = python; + }).src; + + kinparse = callPackage ../development/python-modules/kinparse { }; + + kiss-headers = callPackage ../development/python-modules/kiss-headers { }; + + kitchen = callPackage ../development/python-modules/kitchen { }; + + kivy = callPackage ../development/python-modules/kivy { + inherit (pkgs) mesa; + inherit (pkgs.darwin.apple_sdk.frameworks) ApplicationServices AVFoundation; + }; + + kivy-garden = callPackage ../development/python-modules/kivy-garden { }; + + kiwisolver = callPackage ../development/python-modules/kiwisolver { }; + + klaus = callPackage ../development/python-modules/klaus { }; + + klein = callPackage ../development/python-modules/klein { }; + + kmapper = callPackage ../development/python-modules/kmapper { }; + + kmsxx = toPythonModule (pkgs.kmsxx.override { + withPython = true; + }); + + knack = callPackage ../development/python-modules/knack { }; + + kombu = callPackage ../development/python-modules/kombu { }; + + konnected = callPackage ../development/python-modules/konnected { }; + + korean-lunar-calendar = callPackage ../development/python-modules/korean-lunar-calendar { }; + + krakenex = callPackage ../development/python-modules/krakenex { }; + + kubernetes = callPackage ../development/python-modules/kubernetes { }; + + labelbox = callPackage ../development/python-modules/labelbox { }; + + labgrid = callPackage ../development/python-modules/labgrid { }; + + labmath = callPackage ../development/python-modules/labmath { }; + + langcodes = callPackage ../development/python-modules/langcodes { }; + + langdetect = callPackage ../development/python-modules/langdetect { }; + + language-data = callPackage ../development/python-modules/language-data { }; + + lark = callPackage ../development/python-modules/lark { }; + + latexcodec = callPackage ../development/python-modules/latexcodec { }; + + launchpadlib = callPackage ../development/python-modules/launchpadlib { }; + + lazr_config = callPackage ../development/python-modules/lazr/config.nix { }; + + lazr_delegates = callPackage ../development/python-modules/lazr/delegates.nix { }; + + lazr-restfulclient = callPackage ../development/python-modules/lazr-restfulclient { }; + + lazr-uri = callPackage ../development/python-modules/lazr-uri { }; + + lazy = callPackage ../development/python-modules/lazy { }; + + lazy_import = callPackage ../development/python-modules/lazy_import { }; + + lazy-object-proxy = callPackage ../development/python-modules/lazy-object-proxy { }; + + lc7001 = callPackage ../development/python-modules/lc7001 { }; + + ldap = callPackage ../development/python-modules/ldap { + inherit (pkgs) openldap cyrus_sasl; + }; + + ldap3 = callPackage ../development/python-modules/ldap3 { }; + + ldapdomaindump = callPackage ../development/python-modules/ldapdomaindump { }; + + ldappool = callPackage ../development/python-modules/ldappool { }; + + ldaptor = callPackage ../development/python-modules/ldaptor { }; + + leather = callPackage ../development/python-modules/leather { }; + + leb128 = callPackage ../development/python-modules/leb128 { }; + + ledger_agent = callPackage ../development/python-modules/ledger_agent { }; + + ledgerblue = callPackage ../development/python-modules/ledgerblue { }; + + ledgerwallet = callPackage ../development/python-modules/ledgerwallet { + inherit (pkgs.darwin.apple_sdk.frameworks) AppKit; + }; + + lektor = callPackage ../development/python-modules/lektor { }; + + leveldb = callPackage ../development/python-modules/leveldb { }; + + levenshtein = callPackage ../development/python-modules/levenshtein { }; + + lexid = callPackage ../development/python-modules/lexid { }; + + lhapdf = toPythonModule (pkgs.lhapdf.override { + inherit python; + }); + + libagent = callPackage ../development/python-modules/libagent { }; + + pa-ringbuffer = callPackage ../development/python-modules/pa-ringbuffer { }; + + libais = callPackage ../development/python-modules/libais { }; + + libarchive-c = callPackage ../development/python-modules/libarchive-c { + inherit (pkgs) libarchive; + }; + + libarcus = callPackage ../development/python-modules/libarcus { + inherit (pkgs) protobuf; + }; + + libasyncns = callPackage ../development/python-modules/libasyncns { + inherit (pkgs) libasyncns; + }; + + libcloud = callPackage ../development/python-modules/libcloud { }; + + libcst = callPackage ../development/python-modules/libcst { }; + + libevdev = callPackage ../development/python-modules/libevdev { }; + + libfdt = toPythonModule (pkgs.dtc.override { + inherit python; + pythonSupport = true; + }); + + libgpiod = toPythonModule (pkgs.libgpiod.override { + enablePython = true; + python3 = python; + }); + + libgpuarray = callPackage ../development/python-modules/libgpuarray { + clblas = pkgs.clblas.override { boost = self.boost; }; + cudaSupport = pkgs.config.cudaSupport or false; + }; + + libiio = (toPythonModule (pkgs.libiio.override { inherit python; })).python; + + libkeepass = callPackage ../development/python-modules/libkeepass { }; + + liblarch = callPackage ../development/python-modules/liblarch { }; + + liblzfse = callPackage ../development/python-modules/liblzfse { + inherit (pkgs) lzfse; + }; + + libmodulemd = pipe pkgs.libmodulemd [ + toPythonModule + (p: + p.overrideAttrs (super: { + meta = super.meta // { + outputsToInstall = [ "py" ]; # The package always builds python3 bindings + broken = (super.meta.broken or false) || !isPy3k; + }; + })) + (p: p.override { python3 = python; }) + (p: p.py) + ]; + + libmr = callPackage ../development/python-modules/libmr { }; + + libnacl = callPackage ../development/python-modules/libnacl { + inherit (pkgs) libsodium; + }; + + libpurecool = callPackage ../development/python-modules/libpurecool { }; + + libpyfoscam = callPackage ../development/python-modules/libpyfoscam { }; + + libpyvivotek = callPackage ../development/python-modules/libpyvivotek { }; + + libredwg = toPythonModule (pkgs.libredwg.override { + enablePython = true; + inherit (self) python libxml2; + }); + + librepo = pipe pkgs.librepo [ + toPythonModule + (p: p.overrideAttrs (super: { meta = super.meta // { outputsToInstall = [ "py" ]; }; })) + (p: p.override { inherit python; }) + (p: p.py) + ]; + + librosa = callPackage ../development/python-modules/librosa { }; + + librouteros = callPackage ../development/python-modules/librouteros { }; + + libsass = (callPackage ../development/python-modules/libsass { + inherit (pkgs) libsass; + }); + + libsavitar = callPackage ../development/python-modules/libsavitar { }; + + libselinux = pipe pkgs.libselinux [ + toPythonModule + (p: + p.overrideAttrs (super: { + meta = super.meta // { + outputsToInstall = [ "py" ]; + broken = super.meta.broken or isPy27; + }; + })) + (p: + p.override { + enablePython = true; + python3 = python; + }) + (p: p.py) + ]; + + libsoundtouch = callPackage ../development/python-modules/libsoundtouch { }; + + libthumbor = callPackage ../development/python-modules/libthumbor { }; + + libtmux = callPackage ../development/python-modules/libtmux { }; + + libtorrent-rasterbar = (toPythonModule (pkgs.libtorrent-rasterbar.override { inherit python; })).python; + + libusb1 = callPackage ../development/python-modules/libusb1 { + inherit (pkgs) libusb1; + }; + + libversion = callPackage ../development/python-modules/libversion { + inherit (pkgs) libversion; + }; + + libvirt = callPackage ../development/python-modules/libvirt { + inherit (pkgs) libvirt; + }; + + libxml2 = (toPythonModule (pkgs.libxml2.override { + pythonSupport = true; + inherit python; + })).py; + + libxslt = (toPythonModule (pkgs.libxslt.override { + pythonSupport = true; + inherit (self) python libxml2; + })).py; + + license-expression = callPackage ../development/python-modules/license-expression { }; + + lief = (toPythonModule (pkgs.lief.override { + inherit python; + })).py; + + life360 = callPackage ../development/python-modules/life360 { }; + + lightgbm = callPackage ../development/python-modules/lightgbm { }; + + lightning = callPackage ../development/python-modules/lightning { }; + + lightparam = callPackage ../development/python-modules/lightparam { }; + + lightwave = callPackage ../development/python-modules/lightwave { }; + + lightwave2 = callPackage ../development/python-modules/lightwave2 { }; + + lima = callPackage ../development/python-modules/lima { }; + + limiter= callPackage ../development/python-modules/limiter { }; + + limitlessled = callPackage ../development/python-modules/limitlessled { }; + + limits = callPackage ../development/python-modules/limits { }; + + limnoria = callPackage ../development/python-modules/limnoria { }; + + linecache2 = callPackage ../development/python-modules/linecache2 { }; + + line_profiler = callPackage ../development/python-modules/line_profiler { }; + + linkify-it-py = callPackage ../development/python-modules/linkify-it-py { }; + + linode-api = callPackage ../development/python-modules/linode-api { }; + + linode = callPackage ../development/python-modules/linode { }; + + linuxfd = callPackage ../development/python-modules/linuxfd { }; + + liquidctl = callPackage ../development/python-modules/liquidctl { }; + + lirc = toPythonModule (pkgs.lirc.override { + python3 = python; + }); + + littleutils = callPackage ../development/python-modules/littleutils { }; + + livelossplot = callPackage ../development/python-modules/livelossplot { }; + + livereload = callPackage ../development/python-modules/livereload { }; + + livestreamer = callPackage ../development/python-modules/livestreamer { }; + + livestreamer-curses = callPackage ../development/python-modules/livestreamer-curses { }; + + llfuse = callPackage ../development/python-modules/llfuse { + inherit (pkgs) fuse; + }; + + llvmlite = callPackage ../development/python-modules/llvmlite { + # llvmlite always requires a specific version of llvm. + llvm = pkgs.llvm_11; + }; + + lmdb = callPackage ../development/python-modules/lmdb { + inherit (pkgs) lmdb; + }; + + lml = callPackage ../development/python-modules/lml { }; + + lmnotify = callPackage ../development/python-modules/lmnotify { }; + + lmtpd = callPackage ../development/python-modules/lmtpd { }; + + loca = callPackage ../development/python-modules/loca { }; + + localimport = callPackage ../development/python-modules/localimport { }; + + localzone = callPackage ../development/python-modules/localzone { }; + + locationsharinglib = callPackage ../development/python-modules/locationsharinglib { }; + + locket = callPackage ../development/python-modules/locket { }; + + lockfile = callPackage ../development/python-modules/lockfile { }; + + log-symbols = callPackage ../development/python-modules/log-symbols { }; + + Logbook = callPackage ../development/python-modules/Logbook { }; + + logfury = callPackage ../development/python-modules/logfury { }; + + logical-unification = callPackage ../development/python-modules/logical-unification { }; + + logilab_astng = callPackage ../development/python-modules/logilab_astng { }; + + logilab_common = callPackage ../development/python-modules/logilab/common.nix { }; + + logilab-constraint = callPackage ../development/python-modules/logilab/constraint.nix { }; + + logster = callPackage ../development/python-modules/logster { }; + + loguru = callPackage ../development/python-modules/loguru { }; + + logutils = callPackage ../development/python-modules/logutils { }; + + logzero = callPackage ../development/python-modules/logzero { }; + + lomond = callPackage ../development/python-modules/lomond { }; + + loo-py = callPackage ../development/python-modules/loo-py { }; + + losant-rest = callPackage ../development/python-modules/losant-rest { }; + + lsassy = callPackage ../development/python-modules/lsassy { }; + + luddite = callPackage ../development/python-modules/luddite { }; + + ludios_wpull = callPackage ../development/python-modules/ludios_wpull { }; + + luftdaten = callPackage ../development/python-modules/luftdaten { }; + + luhn = callPackage ../development/python-modules/luhn { }; + + luxor = callPackage ../development/python-modules/luxor { }; + + luxtronik = callPackage ../development/python-modules/luxtronik { }; + + lupa = callPackage ../development/python-modules/lupa { }; + + lupupy = callPackage ../development/python-modules/lupupy { }; + + lxml = callPackage ../development/python-modules/lxml { + inherit (pkgs) libxml2 libxslt zlib; + }; + + lyricwikia = callPackage ../development/python-modules/lyricwikia { }; + + lz4 = callPackage ../development/python-modules/lz4 { }; + + lzstring = callPackage ../development/python-modules/lzstring { }; + + m2crypto = callPackage ../development/python-modules/m2crypto { }; + + m2r = callPackage ../development/python-modules/m2r { }; + + m3u8 = callPackage ../development/python-modules/m3u8 { }; + + mac_alias = callPackage ../development/python-modules/mac_alias { }; + + macfsevents = callPackage ../development/python-modules/macfsevents { + inherit (pkgs.darwin.apple_sdk.frameworks) CoreFoundation CoreServices; + }; + + macropy = callPackage ../development/python-modules/macropy { }; + + maestral = callPackage ../development/python-modules/maestral { }; + + magic = callPackage ../development/python-modules/magic { }; + + magicgui = callPackage ../development/python-modules/magicgui { }; + + magic-wormhole = callPackage ../development/python-modules/magic-wormhole { }; + + magic-wormhole-mailbox-server = callPackage ../development/python-modules/magic-wormhole-mailbox-server { }; + + magic-wormhole-transit-relay = callPackage ../development/python-modules/magic-wormhole-transit-relay { }; + + mahotas = callPackage ../development/python-modules/mahotas { }; + + mailcap-fix = callPackage ../development/python-modules/mailcap-fix { }; + + mailchecker = callPackage ../development/python-modules/mailchecker { }; + + mailchimp = callPackage ../development/python-modules/mailchimp { }; + + mailman = callPackage ../servers/mail/mailman { }; + + mailmanclient = callPackage ../development/python-modules/mailmanclient { }; + + mailman-hyperkitty = callPackage ../development/python-modules/mailman-hyperkitty { }; + + mailman-web = callPackage ../servers/mail/mailman/web.nix { }; + + rtmixer = callPackage ../development/python-modules/rtmixer { }; + + mail-parser = callPackage ../development/python-modules/mail-parser { }; + + makefun = callPackage ../development/python-modules/makefun { }; + + mailsuite = callPackage ../development/python-modules/mailsuite { }; + + Mako = callPackage ../development/python-modules/Mako { }; + + malduck= callPackage ../development/python-modules/malduck { }; + + managesieve = callPackage ../development/python-modules/managesieve { }; + + manhole = callPackage ../development/python-modules/manhole { }; + + manimpango = callPackage ../development/python-modules/manimpango { + inherit (pkgs.darwin.apple_sdk.frameworks) AppKit; + }; + + manifestparser = callPackage ../development/python-modules/marionette-harness/manifestparser.nix { }; + + manuel = callPackage ../development/python-modules/manuel { }; + + manticore = callPackage ../development/python-modules/manticore { + inherit (pkgs) z3; + }; + + mapbox = callPackage ../development/python-modules/mapbox { }; + + mariadb = callPackage ../development/python-modules/mariadb { }; + + marisa-trie = callPackage ../development/python-modules/marisa-trie { }; + + markdown2 = callPackage ../development/python-modules/markdown2 { }; + + markdown = callPackage ../development/python-modules/markdown { }; + + markdown-include = callPackage ../development/python-modules/markdown-include { }; + + markdown-it-py = callPackage ../development/python-modules/markdown-it-py { }; + + markdown-macros = callPackage ../development/python-modules/markdown-macros { }; + + markdownsuperscript = callPackage ../development/python-modules/markdownsuperscript { }; + + markerlib = callPackage ../development/python-modules/markerlib { }; + + markupsafe = callPackage ../development/python-modules/markupsafe { }; + + markups = callPackage ../development/python-modules/markups { }; + + marshmallow = callPackage ../development/python-modules/marshmallow { }; + + marshmallow-dataclass = callPackage ../development/python-modules/marshmallow-dataclass { }; + + marshmallow-enum = callPackage ../development/python-modules/marshmallow-enum { }; + + marshmallow-oneofschema = callPackage ../development/python-modules/marshmallow-oneofschema { }; + + marshmallow-polyfield = callPackage ../development/python-modules/marshmallow-polyfield { }; + + marshmallow-sqlalchemy = callPackage ../development/python-modules/marshmallow-sqlalchemy { }; + + mask-rcnn = callPackage ../development/python-modules/mask-rcnn { }; + + mastodon-py = callPackage ../development/python-modules/mastodon-py { }; + + mat2 = callPackage ../development/python-modules/mat2 { }; + + matchpy = callPackage ../development/python-modules/matchpy { }; + + mathlibtools = callPackage ../development/python-modules/mathlibtools { }; + + matlink-gpapi = callPackage ../development/python-modules/matlink-gpapi { }; + + matplotlib = callPackage ../development/python-modules/matplotlib { + stdenv = if stdenv.isDarwin then pkgs.clangStdenv else pkgs.stdenv; + inherit (pkgs.darwin.apple_sdk.frameworks) Cocoa; + }; + + matplotlib-inline = callPackage ../development/python-modules/matplotlib-inline { }; + + matrix-api-async = callPackage ../development/python-modules/matrix-api-async { }; + + matrix-client = callPackage ../development/python-modules/matrix-client { }; + + matrix-common = callPackage ../development/python-modules/matrix-common { }; + + matrix-nio = callPackage ../development/python-modules/matrix-nio { }; + + mattermostdriver = callPackage ../development/python-modules/mattermostdriver { }; + + mautrix = callPackage ../development/python-modules/mautrix { }; + + mautrix-appservice = self.mautrix; # alias 2019-12-28 + + maxcube-api = callPackage ../development/python-modules/maxcube-api { }; + + maxminddb = callPackage ../development/python-modules/maxminddb { }; + + maya = callPackage ../development/python-modules/maya { }; + + mayavi = pkgs.libsForQt5.callPackage ../development/python-modules/mayavi { + inherit buildPythonPackage pythonOlder fetchPypi; + inherit (self) pyface pygments numpy vtk traitsui envisage apptools pyqt5; + }; + + mbddns = callPackage ../development/python-modules/mbddns { }; + + mccabe = callPackage ../development/python-modules/mccabe { }; + + mcstatus = callPackage ../development/python-modules/mcstatus { }; + + md-toc = callPackage ../development/python-modules/md-toc { }; + + md2gemini = callPackage ../development/python-modules/md2gemini { }; + + mdformat = callPackage ../development/python-modules/mdformat { }; + + mdit-py-plugins = callPackage ../development/python-modules/mdit-py-plugins { }; + + mdurl = callPackage ../development/python-modules/mdurl { }; + + MDP = callPackage ../development/python-modules/mdp { }; + + measurement = callPackage ../development/python-modules/measurement { }; + + mecab-python3 = callPackage ../development/python-modules/mecab-python3 { }; + + mechanicalsoup = callPackage ../development/python-modules/mechanicalsoup { }; + + mechanize = callPackage ../development/python-modules/mechanize { }; + + mediafile = callPackage ../development/python-modules/mediafile { }; + + meinheld = callPackage ../development/python-modules/meinheld { }; + + meld3 = callPackage ../development/python-modules/meld3 { }; + + memcached = callPackage ../development/python-modules/memcached { }; + + memory-allocator = callPackage ../development/python-modules/memory-allocator { }; + + memory_profiler = callPackage ../development/python-modules/memory_profiler { }; + + mercantile = callPackage ../development/python-modules/mercantile { }; + + mercurial = toPythonModule (pkgs.mercurial.override { + python3Packages = self; + }); + + mergedeep = callPackage ../development/python-modules/mergedeep { }; + + merkletools = callPackage ../development/python-modules/merkletools { }; + + meross-iot = callPackage ../development/python-modules/meross-iot { }; + + mesa = callPackage ../development/python-modules/mesa { }; + + meshio = callPackage ../development/python-modules/meshio { }; + + meshlabxml = callPackage ../development/python-modules/meshlabxml { }; + + meshtastic = callPackage ../development/python-modules/meshtastic { }; + + meson = toPythonModule ((pkgs.meson.override { python3 = python; }).overrideAttrs + (oldAttrs: { # We do not want the setup hook in Python packages because the build is performed differently. + setupHook = null; + })); + + mesonpep517 = callPackage ../development/python-modules/mesonpep517 { }; + + metakernel = callPackage ../development/python-modules/metakernel { }; + + metar = callPackage ../development/python-modules/metar { }; + + meteoalertapi = callPackage ../development/python-modules/meteoalertapi { }; + + mezzanine = callPackage ../development/python-modules/mezzanine { }; + + micawber = callPackage ../development/python-modules/micawber { }; + + midiutil = callPackage ../development/python-modules/midiutil { }; + + mido = callPackage ../development/python-modules/mido { }; + + migen = callPackage ../development/python-modules/migen { }; + + milc = callPackage ../development/python-modules/milc { }; + + milksnake = callPackage ../development/python-modules/milksnake { }; + + mill-local = callPackage ../development/python-modules/mill-local { }; + + millheater = callPackage ../development/python-modules/millheater { }; + + minexr = callPackage ../development/python-modules/minexr { }; + + miniaudio = callPackage ../development/python-modules/miniaudio { }; + + minidb = callPackage ../development/python-modules/minidb { }; + + minidump = callPackage ../development/python-modules/minidump { }; + + minikanren = callPackage ../development/python-modules/minikanren { }; + + minikerberos = callPackage ../development/python-modules/minikerberos { }; + + minimock = callPackage ../development/python-modules/minimock { }; + + mininet-python = (toPythonModule (pkgs.mininet.override { + python3 = python; + })).py; + + minio = callPackage ../development/python-modules/minio { }; + + miniupnpc = callPackage ../development/python-modules/miniupnpc { }; + + misaka = callPackage ../development/python-modules/misaka { }; + + mistletoe = callPackage ../development/python-modules/mistletoe { }; + + inherit (import ../development/python-modules/mistune self) + mistune + mistune_0_8 + mistune_2_0 + ; + + mitmproxy = callPackage ../development/python-modules/mitmproxy { }; + + mitogen = callPackage ../development/python-modules/mitogen { }; + + mixpanel = callPackage ../development/python-modules/mixpanel { }; + + mizani = callPackage ../development/python-modules/mizani { }; + + mkdocs = callPackage ../development/python-modules/mkdocs { }; + + mkl-service = callPackage ../development/python-modules/mkl-service { }; + + ml-collections = callPackage ../development/python-modules/ml-collections { }; + + mlflow = callPackage ../development/python-modules/mlflow { }; + + mlrose = callPackage ../development/python-modules/mlrose { }; + + mlxtend = callPackage ../development/python-modules/mlxtend { }; + + mlt = toPythonModule (pkgs.mlt.override { + python3 = python; + enablePython = true; + }); + + mmh3 = callPackage ../development/python-modules/mmh3 { }; + + mmpython = callPackage ../development/python-modules/mmpython { }; + + mnemonic = callPackage ../development/python-modules/mnemonic { }; + + mne-python = callPackage ../development/python-modules/mne-python { }; + + mnist = callPackage ../development/python-modules/mnist { }; + + mocket = callPackage ../development/python-modules/mocket { }; + + mock = callPackage ../development/python-modules/mock { }; + + mockito = callPackage ../development/python-modules/mockito { }; + + mock-open = callPackage ../development/python-modules/mock-open { }; + + mock-services = callPackage ../development/python-modules/mock-services { }; + + mockupdb = callPackage ../development/python-modules/mockupdb { }; + + modeled = callPackage ../development/python-modules/modeled { }; + + moderngl = callPackage ../development/python-modules/moderngl { }; + + moderngl-window = callPackage ../development/python-modules/moderngl_window { }; + + modestmaps = callPackage ../development/python-modules/modestmaps { }; + + mohawk = callPackage ../development/python-modules/mohawk { }; + + mongomock = callPackage ../development/python-modules/mongomock { }; + + mongodict = callPackage ../development/python-modules/mongodict { }; + + mongoengine = callPackage ../development/python-modules/mongoengine { }; + + monkeyhex = callPackage ../development/python-modules/monkeyhex { }; + + monosat = (pkgs.monosat.python { + inherit buildPythonPackage; + inherit (self) cython; + }); + + monotonic = callPackage ../development/python-modules/monotonic { }; + + monty = callPackage ../development/python-modules/monty { }; + + moonraker-api = callPackage ../development/python-modules/moonraker-api { }; + + more-itertools = callPackage ../development/python-modules/more-itertools { }; + + moretools = callPackage ../development/python-modules/moretools { }; + + morphys = callPackage ../development/python-modules/morphys { }; + + mortgage = callPackage ../development/python-modules/mortgage { }; + + motionblinds = callPackage ../development/python-modules/motionblinds { }; + + motioneye-client = callPackage ../development/python-modules/motioneye-client { }; + + moto = callPackage ../development/python-modules/moto { }; + + motor = callPackage ../development/python-modules/motor { }; + + mouseinfo = callPackage ../development/python-modules/mouseinfo { }; + + moviepy = callPackage ../development/python-modules/moviepy { }; + + mox3 = callPackage ../development/python-modules/mox3 { }; + + mox = callPackage ../development/python-modules/mox { }; + + mpd2 = callPackage ../development/python-modules/mpd2 { }; + + mpi4py = callPackage ../development/python-modules/mpi4py { }; + + mpldatacursor = callPackage ../development/python-modules/mpldatacursor { }; + + mplfinance = callPackage ../development/python-modules/mplfinance { }; + + mplleaflet = callPackage ../development/python-modules/mplleaflet { }; + + mpmath = callPackage ../development/python-modules/mpmath { }; + + mpv = callPackage ../development/python-modules/mpv { + inherit (pkgs) mpv; + }; + + mpyq = callPackage ../development/python-modules/mpyq { }; + + mrkd = callPackage ../development/python-modules/mrkd { }; + + ms-active-directory = callPackage ../development/python-modules/ms-active-directory { }; + + ms-cv = callPackage ../development/python-modules/ms-cv { }; + + msal = callPackage ../development/python-modules/msal { }; + + msal-extensions = callPackage ../development/python-modules/msal-extensions { }; + + msgpack = callPackage ../development/python-modules/msgpack { }; + + msgpack-numpy = callPackage ../development/python-modules/msgpack-numpy { }; + + msldap = callPackage ../development/python-modules/msldap { }; + + msoffcrypto-tool = callPackage ../development/python-modules/msoffcrypto-tool { }; + + mss = callPackage ../development/python-modules/mss { }; + + msrestazure = callPackage ../development/python-modules/msrestazure { }; + + msrest = callPackage ../development/python-modules/msrest { }; + + mt-940 = callPackage ../development/python-modules/mt-940 { }; + + mullvad-api = callPackage ../development/python-modules/mullvad-api { }; + + mulpyplexer = callPackage ../development/python-modules/mulpyplexer { }; + + multidict = callPackage ../development/python-modules/multidict { }; + + multi_key_dict = callPackage ../development/python-modules/multi_key_dict { }; + + multimethod = callPackage ../development/python-modules/multimethod { }; + + multipledispatch = callPackage ../development/python-modules/multipledispatch { }; + + multiprocess = callPackage ../development/python-modules/multiprocess { }; + + multiset = callPackage ../development/python-modules/multiset { }; + + multitasking = callPackage ../development/python-modules/multitasking { }; + + munch = callPackage ../development/python-modules/munch { }; + + munkres = callPackage ../development/python-modules/munkres { }; + + murmurhash = callPackage ../development/python-modules/murmurhash { }; + + musicbrainzngs = callPackage ../development/python-modules/musicbrainzngs { }; + + mutag = callPackage ../development/python-modules/mutag { }; + + mutagen = callPackage ../development/python-modules/mutagen { }; + + mutatormath = callPackage ../development/python-modules/mutatormath { }; + + mutesync = callPackage ../development/python-modules/mutesync { }; + + mutf8 = callPackage ../development/python-modules/mutf8 { }; + + mutmut = callPackage ../development/python-modules/mutmut { }; + + mujson = callPackage ../development/python-modules/mujson { }; + + mwclient = callPackage ../development/python-modules/mwclient { }; + + mwdblib = callPackage ../development/python-modules/mwdblib { }; + + mwoauth = callPackage ../development/python-modules/mwoauth { }; + + mwparserfromhell = callPackage ../development/python-modules/mwparserfromhell { }; + + mxnet = callPackage ../development/python-modules/mxnet { }; + + myfitnesspal = callPackage ../development/python-modules/myfitnesspal { }; + + mygpoclient = callPackage ../development/python-modules/mygpoclient { }; + + myhome = callPackage ../development/python-modules/myhome { }; + + myjwt = callPackage ../development/python-modules/myjwt { }; + + mypy = callPackage ../development/python-modules/mypy { }; + + mypy-boto3-builder = callPackage ../development/python-modules/mypy-boto3-builder { }; + + mypy-boto3-s3 = callPackage ../development/python-modules/mypy-boto3-s3 { }; + + mypy-extensions = callPackage ../development/python-modules/mypy/extensions.nix { }; + + mypy-protobuf = callPackage ../development/python-modules/mypy-protobuf { }; + + mysqlclient = callPackage ../development/python-modules/mysqlclient { }; + + mysql-connector = callPackage ../development/python-modules/mysql-connector { }; + + nad-receiver = callPackage ../development/python-modules/nad-receiver { }; + + nagiosplugin = callPackage ../development/python-modules/nagiosplugin { }; + + namedlist = callPackage ../development/python-modules/namedlist { }; + + nameparser = callPackage ../development/python-modules/nameparser { }; + + names = callPackage ../development/python-modules/names { }; + + nampa = callPackage ../development/python-modules/nampa { }; + + nanoleaf = callPackage ../development/python-modules/nanoleaf { }; + + nanomsg-python = callPackage ../development/python-modules/nanomsg-python { + inherit (pkgs) nanomsg; + }; + + nanotime = callPackage ../development/python-modules/nanotime { }; + + napalm = callPackage ../development/python-modules/napalm { }; + + napalm-hp-procurve = callPackage ../development/python-modules/napalm/hp-procurve.nix { }; + + napari = callPackage ../development/python-modules/napari { + inherit (pkgs.libsForQt5) mkDerivationWith wrapQtAppsHook; + }; + + napari-console = callPackage ../development/python-modules/napari-console { }; + + napari-plugin-engine = callPackage ../development/python-modules/napari-plugin-engine { }; + + napari-svg = callPackage ../development/python-modules/napari-svg { }; + + nassl = callPackage ../development/python-modules/nassl { }; + + nats-py = callPackage ../development/python-modules/nats-py { }; + + nats-python = callPackage ../development/python-modules/nats-python { }; + + natsort = callPackage ../development/python-modules/natsort { }; + + naturalsort = callPackage ../development/python-modules/naturalsort { }; + + nbclassic = callPackage ../development/python-modules/nbclassic { }; + + nbclient = callPackage ../development/python-modules/nbclient { }; + + nbconflux = callPackage ../development/python-modules/nbconflux { }; + + nbconvert = callPackage ../development/python-modules/nbconvert { }; + + nbdime = callPackage ../development/python-modules/nbdime { }; + + nbformat = callPackage ../development/python-modules/nbformat { }; + + nbmerge = callPackage ../development/python-modules/nbmerge { }; + + nbsmoke = callPackage ../development/python-modules/nbsmoke { }; + + nbsphinx = callPackage ../development/python-modules/nbsphinx { }; + + nbval = callPackage ../development/python-modules/nbval { }; + + nbxmpp = callPackage ../development/python-modules/nbxmpp { }; + + ncclient = callPackage ../development/python-modules/ncclient { }; + + nclib = callPackage ../development/python-modules/nclib { }; + + ndg-httpsclient = callPackage ../development/python-modules/ndg-httpsclient { }; + + ndjson = callPackage ../development/python-modules/ndjson { }; + + ndms2-client = callPackage ../development/python-modules/ndms2-client { }; + + ndspy = callPackage ../development/python-modules/ndspy { }; + + ndtypes = callPackage ../development/python-modules/ndtypes { }; + + nengo = callPackage ../development/python-modules/nengo { }; + + neo = callPackage ../development/python-modules/neo { }; + + neo4j-driver = callPackage ../development/python-modules/neo4j-driver { }; + + nessclient = callPackage ../development/python-modules/nessclient { }; + + nest-asyncio = callPackage ../development/python-modules/nest-asyncio { }; + + nestedtext = callPackage ../development/python-modules/nestedtext { }; + + net2grid = callPackage ../development/python-modules/net2grid { }; + + netaddr = callPackage ../development/python-modules/netaddr { }; + + netcdf4 = callPackage ../development/python-modules/netcdf4 { }; + + netdata = callPackage ../development/python-modules/netdata { }; + + netdisco = callPackage ../development/python-modules/netdisco { }; + + netifaces = callPackage ../development/python-modules/netifaces { }; + + netmiko = callPackage ../development/python-modules/netmiko { }; + + netio = callPackage ../development/python-modules/netio { }; + + nettigo-air-monitor = callPackage ../development/python-modules/nettigo-air-monitor { }; + + networkx = callPackage ../development/python-modules/networkx { }; + + neuron-mpi = pkgs.neuron-mpi.override { inherit python; }; + + neuron = pkgs.neuron.override { inherit python; }; + + neuronpy = callPackage ../development/python-modules/neuronpy { }; + + nevow = callPackage ../development/python-modules/nevow { }; + + newversion = callPackage ../development/python-modules/newversion { }; + + nexia = callPackage ../development/python-modules/nexia { }; + + nextcloudmonitor = callPackage ../development/python-modules/nextcloudmonitor { }; + + nextcord = callPackage ../development/python-modules/nextcord { }; + + nghttp2 = (toPythonModule (pkgs.nghttp2.override { + inherit (self) python cython setuptools; + inherit (pkgs) ncurses; + enablePython = true; + })).python; + + nibabel = callPackage ../development/python-modules/nibabel { }; + + nidaqmx = callPackage ../development/python-modules/nidaqmx { }; + + Nikola = callPackage ../development/python-modules/Nikola { }; + + niko-home-control = callPackage ../development/python-modules/niko-home-control { }; + + nilearn = callPackage ../development/python-modules/nilearn { }; + + niluclient = callPackage ../development/python-modules/niluclient { }; + + nimfa = callPackage ../development/python-modules/nimfa { }; + + nine = callPackage ../development/python-modules/nine { }; + + nipy = callPackage ../development/python-modules/nipy { }; + + nipype = callPackage ../development/python-modules/nipype { + inherit (pkgs) which; + }; + + nitime = callPackage ../development/python-modules/nitime { }; + + nitpick = callPackage ../applications/version-management/nitpick { }; + + nitransforms = callPackage ../development/python-modules/nitransforms { }; + + nix-kernel = callPackage ../development/python-modules/nix-kernel { + inherit (pkgs) nix; + }; + + nixpkgs = callPackage ../development/python-modules/nixpkgs { }; + + nixpkgs-pytools = callPackage ../development/python-modules/nixpkgs-pytools { }; + + nix-prefetch-github = callPackage ../development/python-modules/nix-prefetch-github { }; + + nkdfu = callPackage ../development/python-modules/nkdfu { }; + + nltk = callPackage ../development/python-modules/nltk { }; + + nmapthon2 = callPackage ../development/python-modules/nmapthon2 { }; + + amaranth-boards = callPackage ../development/python-modules/amaranth-boards { }; + + amaranth = callPackage ../development/python-modules/amaranth { }; + + amaranth-soc = callPackage ../development/python-modules/amaranth-soc { }; + + nocasedict = callPackage ../development/python-modules/nocasedict { }; + + nocaselist = callPackage ../development/python-modules/nocaselist { }; + + nodeenv = callPackage ../development/python-modules/nodeenv { }; + + nodepy-runtime = callPackage ../development/python-modules/nodepy-runtime { }; + + node-semver = callPackage ../development/python-modules/node-semver { }; + + noise = callPackage ../development/python-modules/noise { }; + + noiseprotocol = callPackage ../development/python-modules/noiseprotocol { }; + + normality = callPackage ../development/python-modules/normality { }; + + nose2 = callPackage ../development/python-modules/nose2 { }; + + nose = callPackage ../development/python-modules/nose { }; + + nose-cov = callPackage ../development/python-modules/nose-cov { }; + + nose-cover3 = callPackage ../development/python-modules/nose-cover3 { }; + + nose-cprof = callPackage ../development/python-modules/nose-cprof { }; + + nose-exclude = callPackage ../development/python-modules/nose-exclude { }; + + nose-timer = callPackage ../development/python-modules/nose-timer { }; + + nosejs = callPackage ../development/python-modules/nosejs { }; + + nose-pattern-exclude = callPackage ../development/python-modules/nose-pattern-exclude { }; + + nose_progressive = callPackage ../development/python-modules/nose_progressive { }; + + nose-randomly = callPackage ../development/python-modules/nose-randomly { }; + + nose_warnings_filters = callPackage ../development/python-modules/nose_warnings_filters { }; + + nosexcover = callPackage ../development/python-modules/nosexcover { }; + + notebook = callPackage ../development/python-modules/notebook { }; + + notedown = callPackage ../development/python-modules/notedown { }; + + notifications-python-client = callPackage ../development/python-modules/notifications-python-client { }; + + notify-py = callPackage ../development/python-modules/notify-py { }; + + notify2 = callPackage ../development/python-modules/notify2 { }; + + notmuch = callPackage ../development/python-modules/notmuch { + inherit (pkgs) notmuch; + }; + + nototools = callPackage ../data/fonts/noto-fonts/tools.nix { }; + + notus-scanner = callPackage ../development/python-modules/notus-scanner { }; + + nplusone = callPackage ../development/python-modules/nplusone { }; + + npyscreen = callPackage ../development/python-modules/npyscreen { }; + + nsapi = callPackage ../development/python-modules/nsapi { }; + + ntfy-webpush = callPackage ../tools/misc/ntfy-webpush { }; + + ntc-templates = callPackage ../development/python-modules/ntc-templates { }; + + ntlm-auth = callPackage ../development/python-modules/ntlm-auth { }; + + ntplib = callPackage ../development/python-modules/ntplib { }; + + Nuitka = callPackage ../development/python-modules/nuitka { }; + + nulltype = callPackage ../development/python-modules/nulltype { }; + + num2words = callPackage ../development/python-modules/num2words { }; + + numba = callPackage ../development/python-modules/numba { }; + + numba-scipy = callPackage ../development/python-modules/numba-scipy { }; + + numcodecs = callPackage ../development/python-modules/numcodecs { }; + + numericalunits = callPackage ../development/python-modules/numericalunits { }; + + numexpr = callPackage ../development/python-modules/numexpr { }; + + numpydoc = callPackage ../development/python-modules/numpydoc { }; + + numpy = callPackage ../development/python-modules/numpy { }; + + numpy-stl = callPackage ../development/python-modules/numpy-stl { }; + + nunavut = callPackage ../development/python-modules/nunavut { }; + + nvchecker = callPackage ../development/python-modules/nvchecker { }; + + python-nvd3 = callPackage ../development/python-modules/python-nvd3 { }; + + nwdiag = callPackage ../development/python-modules/nwdiag { }; + + oath = callPackage ../development/python-modules/oath { }; + + oauth2 = callPackage ../development/python-modules/oauth2 { }; + + oauth2client = callPackage ../development/python-modules/oauth2client { }; + + oauth = callPackage ../development/python-modules/oauth { }; + + oauthenticator = callPackage ../development/python-modules/oauthenticator { }; + + oauthlib = callPackage ../development/python-modules/oauthlib { }; + + obfsproxy = callPackage ../development/python-modules/obfsproxy { }; + + objax = callPackage ../development/python-modules/objax { }; + + objgraph = callPackage ../development/python-modules/objgraph { + # requires both the graphviz package and python package + graphvizPkgs = pkgs.graphviz; + }; + + obspy = callPackage ../development/python-modules/obspy { }; + + oci = callPackage ../development/python-modules/oci { }; + + ocrmypdf = callPackage ../development/python-modules/ocrmypdf { }; + + od = callPackage ../development/python-modules/od { }; + + odfpy = callPackage ../development/python-modules/odfpy { }; + + offtrac = callPackage ../development/python-modules/offtrac { }; + + ofxclient = callPackage ../development/python-modules/ofxclient { }; + + ofxhome = callPackage ../development/python-modules/ofxhome { }; + + ofxparse = callPackage ../development/python-modules/ofxparse { }; + + ofxtools = callPackage ../development/python-modules/ofxtools { }; + + oemthermostat = callPackage ../development/python-modules/oemthermostat { }; + + olefile = callPackage ../development/python-modules/olefile { }; + + oletools = callPackage ../development/python-modules/oletools { }; + + omegaconf = callPackage ../development/python-modules/omegaconf { }; + + omnikinverter = callPackage ../development/python-modules/omnikinverter { }; + + omnilogic = callPackage ../development/python-modules/omnilogic { }; + + ondilo = callPackage ../development/python-modules/ondilo { }; + + onetimepass = callPackage ../development/python-modules/onetimepass { }; + + onkyo-eiscp = callPackage ../development/python-modules/onkyo-eiscp { }; + + online-judge-api-client = callPackage ../development/python-modules/online-judge-api-client { }; + + online-judge-tools = callPackage ../development/python-modules/online-judge-tools { }; + + onlykey-solo-python = callPackage ../development/python-modules/onlykey-solo-python { }; + + onnx = callPackage ../development/python-modules/onnx { }; + + onvif-zeep-async = callPackage ../development/python-modules/onvif-zeep-async { }; + + oocsi = callPackage ../development/python-modules/oocsi { }; + + open-garage = callPackage ../development/python-modules/open-garage { }; + + open-meteo = callPackage ../development/python-modules/open-meteo { }; + + openant = callPackage ../development/python-modules/openant { }; + + openapi-schema-validator = callPackage ../development/python-modules/openapi-schema-validator { }; + + openapi-spec-validator = callPackage ../development/python-modules/openapi-spec-validator { }; + + openbabel-bindings = callPackage ../development/python-modules/openbabel-bindings { + openbabel = (callPackage ../development/libraries/openbabel { python = self.python; }); + }; + + opencv3 = toPythonModule (pkgs.opencv3.override { + enablePython = true; + pythonPackages = self; + }); + + opencv4 = toPythonModule (pkgs.opencv4.override { + enablePython = true; + pythonPackages = self; + }); + + openerz-api = callPackage ../development/python-modules/openerz-api { }; + + openevsewifi = callPackage ../development/python-modules/openevsewifi { }; + + openhomedevice = callPackage ../development/python-modules/openhomedevice { }; + + openidc-client = callPackage ../development/python-modules/openidc-client { }; + + openpyxl = callPackage ../development/python-modules/openpyxl { }; + + openrazer = callPackage ../development/python-modules/openrazer/pylib.nix { }; + + openrazer-daemon = callPackage ../development/python-modules/openrazer/daemon.nix { }; + + openrouteservice = callPackage ../development/python-modules/openrouteservice { }; + + opensensemap-api = callPackage ../development/python-modules/opensensemap-api { }; + + opensfm = callPackage ../development/python-modules/opensfm { }; + + openshift = callPackage ../development/python-modules/openshift { }; + + opensimplex = callPackage ../development/python-modules/opensimplex { }; + + openstackdocstheme = callPackage ../development/python-modules/openstackdocstheme { }; + + openstacksdk = callPackage ../development/python-modules/openstacksdk { }; + + opentimestamps = callPackage ../development/python-modules/opentimestamps { }; + + opentracing = callPackage ../development/python-modules/opentracing { }; + + openvino = toPythonModule (pkgs.openvino.override { + inherit (self) python; + enablePython = true; + }); + + openwebifpy = callPackage ../development/python-modules/openwebifpy { }; + + openwrt-luci-rpc = callPackage ../development/python-modules/openwrt-luci-rpc { }; + + openwrt-ubus-rpc = callPackage ../development/python-modules/openwrt-ubus-rpc { }; + + opsdroid_get_image_size = callPackage ../development/python-modules/opsdroid_get_image_size { }; + + opt-einsum = callPackage ../development/python-modules/opt-einsum { }; + + optax = callPackage ../development/python-modules/optax { }; + + optuna = callPackage ../development/python-modules/optuna { }; + + opuslib = callPackage ../development/python-modules/opuslib { }; + + ordereddict = callPackage ../development/python-modules/ordereddict { }; + + orderedmultidict = callPackage ../development/python-modules/orderedmultidict { }; + + ordered-set = callPackage ../development/python-modules/ordered-set { }; + + orderedset = callPackage ../development/python-modules/orderedset { }; + + orjson = callPackage ../development/python-modules/orjson { }; + + orm = callPackage ../development/python-modules/orm { }; + + ormar = callPackage ../development/python-modules/ormar { }; + + ortools = (toPythonModule (pkgs.or-tools.override { inherit (self) python; })).python; + + orvibo = callPackage ../development/python-modules/orvibo { }; + + os-service-types = callPackage ../development/python-modules/os-service-types { }; + + osc = callPackage ../development/python-modules/osc { }; + + osc-lib = callPackage ../development/python-modules/osc-lib { }; + + oscrypto = callPackage ../development/python-modules/oscrypto { }; + + oset = callPackage ../development/python-modules/oset { }; + + osmnx = callPackage ../development/python-modules/osmnx { }; + + osmpythontools = callPackage ../development/python-modules/osmpythontools { }; + + oslo-concurrency = callPackage ../development/python-modules/oslo-concurrency { }; + + oslo-config = callPackage ../development/python-modules/oslo-config { }; + + oslo-context = callPackage ../development/python-modules/oslo-context { }; + + oslo-db = callPackage ../development/python-modules/oslo-db { }; + + oslo-i18n = callPackage ../development/python-modules/oslo-i18n { }; + + oslo-log = callPackage ../development/python-modules/oslo-log { }; + + oslo-serialization = callPackage ../development/python-modules/oslo-serialization { }; + + oslo-utils = callPackage ../development/python-modules/oslo-utils { }; + + oslotest = callPackage ../development/python-modules/oslotest { }; + + ospd = callPackage ../development/python-modules/ospd { }; + + osqp = callPackage ../development/python-modules/osqp { }; + + outcome = callPackage ../development/python-modules/outcome { }; + + ovh = callPackage ../development/python-modules/ovh { }; + + ovoenergy = callPackage ../development/python-modules/ovoenergy { }; + + owslib = callPackage ../development/python-modules/owslib { }; + + oyaml = callPackage ../development/python-modules/oyaml { }; + + p1monitor = callPackage ../development/python-modules/p1monitor { }; + + packageurl-python = callPackage ../development/python-modules/packageurl-python { }; + + packaging = callPackage ../development/python-modules/packaging { }; + + packbits = callPackage ../development/python-modules/packbits { }; + + packet-python = callPackage ../development/python-modules/packet-python { }; + + pafy = callPackage ../development/python-modules/pafy { }; + + pagelabels = callPackage ../development/python-modules/pagelabels { }; + + paho-mqtt = callPackage ../development/python-modules/paho-mqtt { }; + + palace = callPackage ../development/python-modules/palace { }; + + palettable = callPackage ../development/python-modules/palettable { }; + + pamela = callPackage ../development/python-modules/pamela { }; + + pamqp = callPackage ../development/python-modules/pamqp { }; + + panacotta = callPackage ../development/python-modules/panacotta { }; + + pandas = callPackage ../development/python-modules/pandas { }; + + pandas-datareader = callPackage ../development/python-modules/pandas-datareader { }; + + pandoc-attributes = callPackage ../development/python-modules/pandoc-attributes { }; + + pandocfilters = callPackage ../development/python-modules/pandocfilters { }; + + panel = callPackage ../development/python-modules/panel { }; + + panflute = callPackage ../development/python-modules/panflute { }; + + papermill = callPackage ../development/python-modules/papermill { }; + + openpaperwork-core = callPackage ../applications/office/paperwork/openpaperwork-core.nix { }; + openpaperwork-gtk = callPackage ../applications/office/paperwork/openpaperwork-gtk.nix { }; + paperwork-backend = callPackage ../applications/office/paperwork/paperwork-backend.nix { }; + paperwork-shell = callPackage ../applications/office/paperwork/paperwork-shell.nix { }; + + papis = callPackage ../development/python-modules/papis { }; + + papis-python-rofi = callPackage ../development/python-modules/papis-python-rofi { }; + + param = callPackage ../development/python-modules/param { }; + + parameter-expansion-patched = callPackage ../development/python-modules/parameter-expansion-patched { }; + + parameterized = callPackage ../development/python-modules/parameterized { }; + + paramiko = callPackage ../development/python-modules/paramiko { }; + + paramz = callPackage ../development/python-modules/paramz { }; + + parfive = callPackage ../development/python-modules/parfive { }; + + parquet = callPackage ../development/python-modules/parquet { }; + + parse = callPackage ../development/python-modules/parse { }; + + parsedatetime = callPackage ../development/python-modules/parsedatetime { }; + + parsedmarc = callPackage ../development/python-modules/parsedmarc { }; + + parsel = callPackage ../development/python-modules/parsel { }; + + parse-type = callPackage ../development/python-modules/parse-type { }; + + parsimonious = callPackage ../development/python-modules/parsimonious { }; + + parsley = callPackage ../development/python-modules/parsley { }; + + parso = callPackage ../development/python-modules/parso { }; + + parsy = callPackage ../development/python-modules/parsy { }; + + partd = callPackage ../development/python-modules/partd { }; + + parts = callPackage ../development/python-modules/parts { }; + + parver = callPackage ../development/python-modules/parver { }; + arpeggio = callPackage ../development/python-modules/arpeggio { }; + + passlib = callPackage ../development/python-modules/passlib { }; + + paste = callPackage ../development/python-modules/paste { }; + + pastedeploy = callPackage ../development/python-modules/pastedeploy { }; + + pastel = callPackage ../development/python-modules/pastel { }; + + pastescript = callPackage ../development/python-modules/pastescript { }; + + patator = callPackage ../development/python-modules/patator { }; + + patch = callPackage ../development/python-modules/patch { }; + + patch-ng = callPackage ../development/python-modules/patch-ng { }; + + path-and-address = callPackage ../development/python-modules/path-and-address { }; + + pathlib2 = callPackage ../development/python-modules/pathlib2 { }; + + pathlib = callPackage ../development/python-modules/pathlib { }; + + pathos = callPackage ../development/python-modules/pathos { }; + + pathpy = callPackage ../development/python-modules/path.py { }; + + pathspec = callPackage ../development/python-modules/pathspec { }; + + pathtools = callPackage ../development/python-modules/pathtools { }; + + pathvalidate = callPackage ../development/python-modules/pathvalidate { }; + + pathy = callPackage ../development/python-modules/pathy { }; + + patiencediff = callPackage ../development/python-modules/patiencediff { }; + + patool = callPackage ../development/python-modules/patool { }; + + patsy = callPackage ../development/python-modules/patsy { }; + + patrowl4py = callPackage ../development/python-modules/patrowl4py { }; + + paver = callPackage ../development/python-modules/paver { }; + + paypalrestsdk = callPackage ../development/python-modules/paypalrestsdk { }; + + pbkdf2 = callPackage ../development/python-modules/pbkdf2 { }; + + pbr = callPackage ../development/python-modules/pbr { }; + + pc-ble-driver-py = toPythonModule (callPackage ../development/python-modules/pc-ble-driver-py { }); + + pcodedmp = callPackage ../development/python-modules/pcodedmp { }; + + pcpp = callPackage ../development/python-modules/pcpp { }; + + pdf2image = callPackage ../development/python-modules/pdf2image { }; + + pdfkit = callPackage ../development/python-modules/pdfkit { }; + + pdfminer = callPackage ../development/python-modules/pdfminer_six { }; + + pdfposter = callPackage ../development/python-modules/pdfposter { }; + + pdfrw = callPackage ../development/python-modules/pdfrw { }; + + pdftotext = callPackage ../development/python-modules/pdftotext { }; + + pdfx = callPackage ../development/python-modules/pdfx { }; + + pdm-pep517 = callPackage ../development/python-modules/pdm-pep517 { }; + + pdoc3 = callPackage ../development/python-modules/pdoc3 { }; + + pebble = callPackage ../development/python-modules/pebble { }; + + pecan = callPackage ../development/python-modules/pecan { }; + + peewee = callPackage ../development/python-modules/peewee { }; + + pefile = callPackage ../development/python-modules/pefile { }; + + pelican = callPackage ../development/python-modules/pelican { + inherit (pkgs) glibcLocales git; + }; + + pendulum = callPackage ../development/python-modules/pendulum { }; + + pep257 = callPackage ../development/python-modules/pep257 { }; + + pep440 = callPackage ../development/python-modules/pep440 { }; + + pep517 = callPackage ../development/python-modules/pep517 { }; + + pep8 = callPackage ../development/python-modules/pep8 { }; + + pep8-naming = callPackage ../development/python-modules/pep8-naming { }; + + peppercorn = callPackage ../development/python-modules/peppercorn { }; + + percol = callPackage ../development/python-modules/percol { }; + + perfplot = callPackage ../development/python-modules/perfplot { }; + + periodictable = callPackage ../development/python-modules/periodictable { }; + + persim = callPackage ../development/python-modules/persim { }; + + persistent = callPackage ../development/python-modules/persistent { }; + + persisting-theory = callPackage ../development/python-modules/persisting-theory { }; + + pescea = callPackage ../development/python-modules/pescea { }; + + pex = callPackage ../development/python-modules/pex { }; + + pexif = callPackage ../development/python-modules/pexif { }; + + pexpect = callPackage ../development/python-modules/pexpect { }; + + pg8000 = callPackage ../development/python-modules/pg8000 { }; + + pgcli = callPackage ../development/tools/database/pgcli { }; + + pglast = callPackage ../development/python-modules/pglast { }; + + pgpdump = callPackage ../development/python-modules/pgpdump { }; + + pgpy = callPackage ../development/python-modules/pgpy { }; + + pgsanity = callPackage ../development/python-modules/pgsanity { }; + + pgspecial = callPackage ../development/python-modules/pgspecial { }; + + phe = callPackage ../development/python-modules/phe { }; + + phik = callPackage ../development/python-modules/phik { }; + + phone-modem = callPackage ../development/python-modules/phone-modem { }; + + phonenumbers = callPackage ../development/python-modules/phonenumbers { }; + + micloud = callPackage ../development/python-modules/micloud { }; + + netmap = callPackage ../development/python-modules/netmap { }; + + openai = callPackage ../development/python-modules/openai { }; + + openapi-core = callPackage ../development/python-modules/openapi-core { }; + + pandas-stubs = callPackage ../development/python-modules/pandas-stubs { }; + + parameterizedtestcase = callPackage ../development/python-modules/parameterizedtestcase { }; + + pdunehd = callPackage ../development/python-modules/pdunehd { }; + + pyprecice = callPackage ../development/python-modules/pyprecice { }; + + phonopy = callPackage ../development/python-modules/phonopy { }; + + phpserialize = callPackage ../development/python-modules/phpserialize { }; + + phx-class-registry = callPackage ../development/python-modules/phx-class-registry { }; + + pi1wire = callPackage ../development/python-modules/pi1wire { }; + + piccata = callPackage ../development/python-modules/piccata { }; + + pickleshare = callPackage ../development/python-modules/pickleshare { }; + + picos = callPackage ../development/python-modules/picos { }; + + pid = callPackage ../development/python-modules/pid { }; + + piep = callPackage ../development/python-modules/piep { }; + + piexif = callPackage ../development/python-modules/piexif { }; + + pijuice = callPackage ../development/python-modules/pijuice { }; + + pika = callPackage ../development/python-modules/pika { }; + + pika-pool = callPackage ../development/python-modules/pika-pool { }; + + pikepdf = callPackage ../development/python-modules/pikepdf { }; + + pilkit = callPackage ../development/python-modules/pilkit { }; + + pillowfight = callPackage ../development/python-modules/pillowfight { }; + + pillow = callPackage ../development/python-modules/pillow { + inherit (pkgs) freetype libjpeg zlib libtiff libwebp tcl lcms2 tk; + inherit (pkgs.xorg) libX11 libxcb; + }; + + pillow-simd = callPackage ../development/python-modules/pillow-simd { + inherit (pkgs) freetype libjpeg zlib libtiff libwebp tcl lcms2 tk; + inherit (pkgs.xorg) libX11; + }; + + pims = callPackage ../development/python-modules/pims { }; + + pinboard = callPackage ../development/python-modules/pinboard { }; + + pint = callPackage ../development/python-modules/pint { }; + + pip = callPackage ../development/python-modules/pip { }; + + pipdate = callPackage ../development/python-modules/pipdate { }; + + pipenv-poetry-migrate = callPackage ../development/python-modules/pipenv-poetry-migrate { }; + + pip-tools = callPackage ../development/python-modules/pip-tools { }; + + pipx = callPackage ../development/python-modules/pipx { }; + + pivy = callPackage ../development/python-modules/pivy { + inherit (pkgs.qt5) qtbase qmake; + inherit (pkgs.libsForQt5) soqt; + }; + + pixelmatch = callPackage ../development/python-modules/pixelmatch { }; + + pkce = callPackage ../development/python-modules/pkce { }; + + pkgconfig = callPackage ../development/python-modules/pkgconfig { }; + + pkginfo = callPackage ../development/python-modules/pkginfo { }; + + pkuseg = callPackage ../development/python-modules/pkuseg { }; + + pmsensor = callPackage ../development/python-modules/pmsensor { }; + + ppdeep = callPackage ../development/python-modules/ppdeep { }; + + proxy_tools = callPackage ../development/python-modules/proxy_tools { }; + + pyaehw4a1 = callPackage ../development/python-modules/pyaehw4a1 { }; + + pyatag = callPackage ../development/python-modules/pyatag { }; + + pyatome = callPackage ../development/python-modules/pyatome { }; + + pycontrol4 = callPackage ../development/python-modules/pycontrol4 { }; + + pycoolmasternet-async = callPackage ../development/python-modules/pycoolmasternet-async { }; + + pyfireservicerota = callPackage ../development/python-modules/pyfireservicerota { }; + + pyflexit = callPackage ../development/python-modules/pyflexit { }; + + pyflick = callPackage ../development/python-modules/pyflick { }; + + pyfreedompro = callPackage ../development/python-modules/pyfreedompro { }; + + pygti = callPackage ../development/python-modules/pygti { }; + + pyheos = callPackage ../development/python-modules/pyheos { }; + + pyhiveapi = callPackage ../development/python-modules/pyhiveapi { }; + + pyhumps = callPackage ../development/python-modules/pyhumps { }; + + pyisy = callPackage ../development/python-modules/pyisy { }; + + pykrakenapi = callPackage ../development/python-modules/pykrakenapi { }; + + pynndescent = callPackage ../development/python-modules/pynndescent { }; + + pynobo = callPackage ../development/python-modules/pynobo { }; + + pynuki = callPackage ../development/python-modules/pynuki { }; + + pynut2 = callPackage ../development/python-modules/pynut2 { }; + + pynws = callPackage ../development/python-modules/pynws { }; + + pynx584 = callPackage ../development/python-modules/pynx584 { }; + + pyoverkiz = callPackage ../development/python-modules/pyoverkiz { }; + + pyownet = callPackage ../development/python-modules/pyownet { }; + + pypoint = callPackage ../development/python-modules/pypoint { }; + + pypoolstation = callPackage ../development/python-modules/pypoolstation { }; + + pyrfxtrx = callPackage ../development/python-modules/pyrfxtrx { }; + + pyrogram = callPackage ../development/python-modules/pyrogram { }; + + pysbd = callPackage ../development/python-modules/pysbd { }; + + pyshark = callPackage ../development/python-modules/pyshark { }; + + pysiaalarm = callPackage ../development/python-modules/pysiaalarm { }; + + pyskyqhub = callPackage ../development/python-modules/pyskyqhub { }; + + pyskyqremote = callPackage ../development/python-modules/pyskyqremote { }; + + pysolcast = callPackage ../development/python-modules/pysolcast { }; + + pysyncthru = callPackage ../development/python-modules/pysyncthru { }; + + python-codon-tables = callPackage ../development/python-modules/python-codon-tables { }; + + python-crfsuite = callPackage ../development/python-modules/python-crfsuite { }; + + python-csxcad = callPackage ../development/python-modules/python-csxcad { }; + + python-ecobee-api = callPackage ../development/python-modules/python-ecobee-api { }; + + python-glanceclient = callPackage ../development/python-modules/python-glanceclient { }; + + python-google-nest = callPackage ../development/python-modules/python-google-nest { }; + + python-heatclient = callPackage ../development/python-modules/python-heatclient { }; + + python-ipmi = callPackage ../development/python-modules/python-ipmi { }; + + python-ironicclient = callPackage ../development/python-modules/python-ironicclient { }; + + python-izone = callPackage ../development/python-modules/python-izone { }; + + python-juicenet = callPackage ../development/python-modules/python-juicenet { }; + + python-kasa = callPackage ../development/python-modules/python-kasa { }; + + python-keycloak = callPackage ../development/python-modules/python-keycloak { }; + + python-keystoneclient = callPackage ../development/python-modules/python-keystoneclient { }; + + python-lsp-black = callPackage ../development/python-modules/python-lsp-black { }; + + python-openems = callPackage ../development/python-modules/python-openems { }; + + python-openzwave-mqtt = callPackage ../development/python-modules/python-openzwave-mqtt { }; + + python-owasp-zap-v2-4 = callPackage ../development/python-modules/python-owasp-zap-v2-4 { }; + + python-songpal = callPackage ../development/python-modules/python-songpal { }; + + python-swiftclient = callPackage ../development/python-modules/python-swiftclient { }; + + python-tado = callPackage ../development/python-modules/python-tado { }; + + pythonfinder = callPackage ../development/python-modules/pythonfinder { }; + + pyutil = callPackage ../development/python-modules/pyutil { }; + + pkutils = callPackage ../development/python-modules/pkutils { }; + + plac = callPackage ../development/python-modules/plac { }; + + plaid-python = callPackage ../development/python-modules/plaid-python { }; + + plaster = callPackage ../development/python-modules/plaster { }; + + plaster-pastedeploy = callPackage ../development/python-modules/plaster-pastedeploy { }; + + platformdirs = callPackage ../development/python-modules/platformdirs { }; + + playsound = callPackage ../development/python-modules/playsound { }; + + plexapi = callPackage ../development/python-modules/plexapi { }; + + plexauth = callPackage ../development/python-modules/plexauth { }; + + plexwebsocket = callPackage ../development/python-modules/plexwebsocket { }; + + plone-testing = callPackage ../development/python-modules/plone-testing { }; + + plotly = callPackage ../development/python-modules/plotly { }; + + pluggy = callPackage ../development/python-modules/pluggy { }; + + plugincode = callPackage ../development/python-modules/plugincode { }; + + pluginbase = callPackage ../development/python-modules/pluginbase { }; + + plugnplay = callPackage ../development/python-modules/plugnplay { }; + + plugwise = callPackage ../development/python-modules/plugwise { }; + + plum-py = callPackage ../development/python-modules/plum-py { }; + + plumbum = callPackage ../development/python-modules/plumbum { }; + + ply = callPackage ../development/python-modules/ply { }; + + plyer = callPackage ../development/python-modules/plyer { }; + + plyfile = callPackage ../development/python-modules/plyfile { }; + + plyplus = callPackage ../development/python-modules/plyplus { }; + + plyvel = callPackage ../development/python-modules/plyvel { }; + + Pmw = callPackage ../development/python-modules/Pmw { }; + + pocket = callPackage ../development/python-modules/pocket { }; + + podcastparser = callPackage ../development/python-modules/podcastparser { }; + + podcats = callPackage ../development/python-modules/podcats { }; + + poetry = callPackage ../development/python-modules/poetry { }; + + poetry-core = callPackage ../development/python-modules/poetry-core { }; + + poetry-semver = callPackage ../development/python-modules/poetry-semver { }; + + poetry2conda = callPackage ../development/python-modules/poetry2conda { }; + + poezio = callPackage ../applications/networking/instant-messengers/poezio { }; + + polarizationsolver = callPackage ../development/python-modules/polarizationsolver { }; + + polib = callPackage ../development/python-modules/polib { }; + + policy-sentry = callPackage ../development/python-modules/policy-sentry { }; + + policyuniverse = callPackage ../development/python-modules/policyuniverse { }; + + polyline = callPackage ../development/python-modules/polyline { }; + + pomegranate = callPackage ../development/python-modules/pomegranate { }; + + pontos = callPackage ../development/python-modules/pontos { }; + + pony = callPackage ../development/python-modules/pony { }; + + ponywhoosh = callPackage ../development/python-modules/ponywhoosh { }; + + pooch = callPackage ../development/python-modules/pooch { }; + + pook = callPackage ../development/python-modules/pook { }; + + poolsense = callPackage ../development/python-modules/poolsense { }; + + poppler-qt5 = callPackage ../development/python-modules/poppler-qt5 { + inherit (pkgs.qt5) qtbase qmake; + inherit (pkgs.libsForQt5) poppler; + }; + + portalocker = callPackage ../development/python-modules/portalocker { }; + + portend = callPackage ../development/python-modules/portend { }; + + portpicker = callPackage ../development/python-modules/portpicker { }; + + posix_ipc = callPackage ../development/python-modules/posix_ipc { }; + + poster3 = callPackage ../development/python-modules/poster3 { }; + + postorius = callPackage ../servers/mail/mailman/postorius.nix { }; + + pot = callPackage ../development/python-modules/pot { }; + + potentials = callPackage ../development/python-modules/potentials { }; + + potr = callPackage ../development/python-modules/potr { }; + + power = callPackage ../development/python-modules/power { }; + + powerline = callPackage ../development/python-modules/powerline { }; + + powerline-mem-segment = callPackage ../development/python-modules/powerline-mem-segment { }; + + pox = callPackage ../development/python-modules/pox { }; + + poyo = callPackage ../development/python-modules/poyo { }; + + ppft = callPackage ../development/python-modules/ppft { }; + + pplpy = callPackage ../development/python-modules/pplpy { }; + + pprintpp = callPackage ../development/python-modules/pprintpp { }; + + pproxy = callPackage ../development/python-modules/pproxy { }; + + ppscore = callPackage ../development/python-modules/ppscore { }; + + pq = callPackage ../development/python-modules/pq { }; + + prance = callPackage ../development/python-modules/prance { }; + + prawcore = callPackage ../development/python-modules/prawcore { }; + + praw = callPackage ../development/python-modules/praw { }; + + prayer-times-calculator = callPackage ../development/python-modules/prayer-times-calculator { }; + + precis-i18n = callPackage ../development/python-modules/precis-i18n { }; + + prefixed = callPackage ../development/python-modules/prefixed { }; + + pre-commit-hooks = callPackage ../development/python-modules/pre-commit-hooks { }; + + preggy = callPackage ../development/python-modules/preggy { }; + + premailer = callPackage ../development/python-modules/premailer { }; + + preshed = callPackage ../development/python-modules/preshed { }; + + pretend = callPackage ../development/python-modules/pretend { }; + + prettytable = callPackage ../development/python-modules/prettytable { }; + + primecountpy = callPackage ../development/python-modules/primecountpy { }; + + primer3 = callPackage ../development/python-modules/primer3 { }; + + priority = callPackage ../development/python-modules/priority { }; + + prison = callPackage ../development/python-modules/prison { }; + + privacyidea-ldap-proxy = callPackage ../development/python-modules/privacyidea-ldap-proxy { }; + + proboscis = callPackage ../development/python-modules/proboscis { }; + + process-tests = callPackage ../development/python-modules/process-tests { }; + + proglog = callPackage ../development/python-modules/proglog { }; + + progressbar2 = callPackage ../development/python-modules/progressbar2 { }; + + progressbar33 = callPackage ../development/python-modules/progressbar33 { }; + + progressbar = callPackage ../development/python-modules/progressbar { }; + + progress = callPackage ../development/python-modules/progress { }; + + prometheus-client = callPackage ../development/python-modules/prometheus-client { }; + + prometheus-flask-exporter = callPackage ../development/python-modules/prometheus-flask-exporter { }; + + promise = callPackage ../development/python-modules/promise { }; + + prompt-toolkit = callPackage ../development/python-modules/prompt-toolkit { }; + + property-manager = callPackage ../development/python-modules/property-manager { }; + + protego = callPackage ../development/python-modules/protego { }; + + proto-plus = callPackage ../development/python-modules/proto-plus { }; + + protobuf = callPackage ../development/python-modules/protobuf { + disabled = isPyPy; + # If a protobuf upgrade causes many Python packages to fail, please pin it here to the previous version. + doCheck = !isPy3k; + inherit (pkgs) protobuf; + }; + + protobuf3-to-dict = callPackage ../development/python-modules/protobuf3-to-dict { }; + + proton-client = callPackage ../development/python-modules/proton-client { }; + + protonup = callPackage ../development/python-modules/protonup { }; + + protonvpn-nm-lib = callPackage ../development/python-modules/protonvpn-nm-lib { }; + + prov = callPackage ../development/python-modules/prov { }; + + prox-tv = callPackage ../development/python-modules/prox-tv { }; + + proxmoxer = callPackage ../development/python-modules/proxmoxer { }; + + proxy-py = callPackage ../development/python-modules/proxy-py { }; + + psautohint = callPackage ../development/python-modules/psautohint { }; + + pscript = callPackage ../development/python-modules/pscript { }; + + psd-tools = callPackage ../development/python-modules/psd-tools { }; + + psutil = callPackage ../development/python-modules/psutil { }; + + psycopg2 = callPackage ../development/python-modules/psycopg2 { }; + + psycopg2cffi = callPackage ../development/python-modules/psycopg2cffi { }; + + psygnal = callPackage ../development/python-modules/psygnal { }; + + ptable = callPackage ../development/python-modules/ptable { }; + + ptest = callPackage ../development/python-modules/ptest { }; + + ptpython = callPackage ../development/python-modules/ptpython { }; + + ptyprocess = callPackage ../development/python-modules/ptyprocess { }; + + publicsuffix2 = callPackage ../development/python-modules/publicsuffix2 { }; + + publicsuffix = callPackage ../development/python-modules/publicsuffix { }; + + pubnub = callPackage ../development/python-modules/pubnub { }; + + pubnubsub-handler = callPackage ../development/python-modules/pubnubsub-handler { }; + + pudb = callPackage ../development/python-modules/pudb { }; + + pulp = callPackage ../development/python-modules/pulp { }; + + pulsectl = callPackage ../development/python-modules/pulsectl { }; + + pure-cdb = callPackage ../development/python-modules/pure-cdb { }; + + pure-eval = callPackage ../development/python-modules/pure-eval { }; + + pure-pcapy3 = callPackage ../development/python-modules/pure-pcapy3 { }; + + purepng = callPackage ../development/python-modules/purepng { }; + + pure-python-adb = callPackage ../development/python-modules/pure-python-adb { }; + + pure-python-adb-homeassistant = callPackage ../development/python-modules/pure-python-adb-homeassistant { }; + + puremagic = callPackage ../development/python-modules/puremagic { }; + + purl = callPackage ../development/python-modules/purl { }; + + push-receiver = callPackage ../development/python-modules/push-receiver { }; + + pushbullet = callPackage ../development/python-modules/pushbullet { }; + + pushover-complete = callPackage ../development/python-modules/pushover-complete { }; + + pvlib = callPackage ../development/python-modules/pvlib { }; + + pvo = callPackage ../development/python-modules/pvo { }; + + Pweave = callPackage ../development/python-modules/pweave { }; + + pwntools = callPackage ../development/python-modules/pwntools { + debugger = pkgs.gdb; + }; + + pxml = callPackage ../development/python-modules/pxml { }; + + py-air-control = callPackage ../development/python-modules/py-air-control { }; + + py-air-control-exporter = callPackage ../development/python-modules/py-air-control-exporter { }; + + py-dmidecode = callPackage ../development/python-modules/py-dmidecode { }; + + py-nightscout = callPackage ../development/python-modules/py-nightscout { }; + + py-synologydsm-api = callPackage ../development/python-modules/py-synologydsm-api { }; + + py-tes = callPackage ../development/python-modules/py-tes { }; + + py-ubjson = callPackage ../development/python-modules/py-ubjson { }; + + py-zabbix = callPackage ../development/python-modules/py-zabbix { }; + + py17track = callPackage ../development/python-modules/py17track { }; + + py2bit = callPackage ../development/python-modules/py2bit { }; + + py3buddy = toPythonModule (callPackage ../development/python-modules/py3buddy { }); + + py3exiv2 = callPackage ../development/python-modules/py3exiv2 { }; + + py3status = callPackage ../development/python-modules/py3status { }; + + py3to2 = callPackage ../development/python-modules/3to2 { }; + + py4j = callPackage ../development/python-modules/py4j { }; + + pyacoustid = callPackage ../development/python-modules/pyacoustid { }; + + pyads = callPackage ../development/python-modules/pyads { }; + + pyaes = callPackage ../development/python-modules/pyaes { }; + + pyaftership = callPackage ../development/python-modules/pyaftership { }; + + pyahocorasick = callPackage ../development/python-modules/pyahocorasick { }; + + pyairnow = callPackage ../development/python-modules/pyairnow { }; + + pyairvisual = callPackage ../development/python-modules/pyairvisual { }; + + pyalgotrade = callPackage ../development/python-modules/pyalgotrade { }; + + pyalmond = callPackage ../development/python-modules/pyalmond { }; + + pyamg = callPackage ../development/python-modules/pyamg { }; + + pyaml = callPackage ../development/python-modules/pyaml { }; + + pyannotate = callPackage ../development/python-modules/pyannotate { }; + + pyarlo = callPackage ../development/python-modules/pyarlo { }; + + pyarrow = callPackage ../development/python-modules/pyarrow { + inherit (pkgs) arrow-cpp cmake; + }; + + pyasn = callPackage ../development/python-modules/pyasn { }; + + pyasn1 = callPackage ../development/python-modules/pyasn1 { }; + + pyasn1-modules = callPackage ../development/python-modules/pyasn1-modules { }; + + pyathena = callPackage ../development/python-modules/pyathena { }; + + pyatmo = callPackage ../development/python-modules/pyatmo { }; + + pyatspi = callPackage ../development/python-modules/pyatspi { }; + + pyatv = callPackage ../development/python-modules/pyatv { }; + + pyaudio = callPackage ../development/python-modules/pyaudio { }; + + pyaussiebb = callPackage ../development/python-modules/pyaussiebb { }; + + pyautogui = callPackage ../development/python-modules/pyautogui { }; + + pyavm = callPackage ../development/python-modules/pyavm { }; + + pyaxmlparser = callPackage ../development/python-modules/pyaxmlparser { }; + + pybalboa = callPackage ../development/python-modules/pybalboa { }; + + pybase64 = callPackage ../development/python-modules/pybase64 { }; + + pybids = callPackage ../development/python-modules/pybids { }; + + pybigwig = callPackage ../development/python-modules/pybigwig { }; + + pybind11 = callPackage ../development/python-modules/pybind11 { }; + + pybindgen = callPackage ../development/python-modules/pybindgen { }; + + pyblackbird = callPackage ../development/python-modules/pyblackbird { }; + + pyblake2 = callPackage ../development/python-modules/pyblake2 { }; + + pyblock = callPackage ../development/python-modules/pyblock { }; + + pybluez = callPackage ../development/python-modules/pybluez { }; + + pybotvac = callPackage ../development/python-modules/pybotvac { }; + + pybrowserid = callPackage ../development/python-modules/pybrowserid { }; + + pybtex = callPackage ../development/python-modules/pybtex { }; + + pybtex-docutils = callPackage ../development/python-modules/pybtex-docutils { }; + + pybullet = callPackage ../development/python-modules/pybullet { }; + + pycairo = callPackage ../development/python-modules/pycairo { + inherit (pkgs.buildPackages) meson; + }; + + py = callPackage ../development/python-modules/py { }; + + pycangjie = callPackage ../development/python-modules/pycangjie { }; + + pycapnp = callPackage ../development/python-modules/pycapnp { }; + + pycaption = callPackage ../development/python-modules/pycaption { }; + + pycares = callPackage ../development/python-modules/pycares { }; + + pycarwings2 = callPackage ../development/python-modules/pycarwings2 { }; + + pycategories = callPackage ../development/python-modules/pycategories { }; + + pycdio = callPackage ../development/python-modules/pycdio { }; + + pycec = callPackage ../development/python-modules/pycec { }; + + pycep-parser = callPackage ../development/python-modules/pycep-parser { }; + + pycfdns = callPackage ../development/python-modules/pycfdns { }; + + pycflow2dot = callPackage ../development/python-modules/pycflow2dot { + inherit (pkgs) graphviz; + }; + + pycfmodel = callPackage ../development/python-modules/pycfmodel { }; + + pychannels = callPackage ../development/python-modules/pychannels { }; + + pychart = callPackage ../development/python-modules/pychart { }; + + pychef = callPackage ../development/python-modules/pychef { }; + + PyChromecast = callPackage ../development/python-modules/pychromecast { }; + + pyclimacell = callPackage ../development/python-modules/pyclimacell { }; + + pyclip = callPackage ../development/python-modules/pyclip { }; + + pyclipper = callPackage ../development/python-modules/pyclipper { }; + + pycm = callPackage ../development/python-modules/pycm { }; + + pycmarkgfm = callPackage ../development/python-modules/pycmarkgfm { }; + + pycocotools = callPackage ../development/python-modules/pycocotools { }; + + pycodestyle = callPackage ../development/python-modules/pycodestyle { }; + + pycognito = callPackage ../development/python-modules/pycognito { }; + + pycoin = callPackage ../development/python-modules/pycoin { }; + + pycollada = callPackage ../development/python-modules/pycollada { }; + + pycomfoconnect = callPackage ../development/python-modules/pycomfoconnect { }; + + pycontracts = callPackage ../development/python-modules/pycontracts { }; + + pycosat = callPackage ../development/python-modules/pycosat { }; + + pycountry = callPackage ../development/python-modules/pycountry { }; + + pycparser = callPackage ../development/python-modules/pycparser { }; + + py-canary = callPackage ../development/python-modules/py-canary { }; + + py-cid = callPackage ../development/python-modules/py-cid { }; + + py-cpuinfo = callPackage ../development/python-modules/py-cpuinfo { }; + + pycrc = callPackage ../development/python-modules/pycrc { }; + + pycritty = callPackage ../development/python-modules/pycritty { }; + + pycron = callPackage ../development/python-modules/pycron { }; + + pycrypto = callPackage ../development/python-modules/pycrypto { }; + + pycryptodome = callPackage ../development/python-modules/pycryptodome { }; + + pycryptodome-test-vectors = callPackage ../development/python-modules/pycryptodome-test-vectors { }; + + pycryptodomex = callPackage ../development/python-modules/pycryptodomex { }; + + pyct = callPackage ../development/python-modules/pyct { }; + + pyctr = callPackage ../development/python-modules/pyctr { }; + + pycuda = callPackage ../development/python-modules/pycuda { + cudatoolkit = pkgs.cudatoolkit; + inherit (pkgs.stdenv) mkDerivation; + }; + + pycups = callPackage ../development/python-modules/pycups { }; + + pycurl = callPackage ../development/python-modules/pycurl { }; + + pycxx = callPackage ../development/python-modules/pycxx { }; + + pydaikin = callPackage ../development/python-modules/pydaikin { }; + + pydal = callPackage ../development/python-modules/pydal { }; + + pydanfossair = callPackage ../development/python-modules/pydanfossair { }; + + pydantic = callPackage ../development/python-modules/pydantic { }; + + pydash = callPackage ../development/python-modules/pydash { }; + + pydbus = callPackage ../development/python-modules/pydbus { }; + + pydeck = callPackage ../development/python-modules/pydeck { }; + + pydeconz = callPackage ../development/python-modules/pydeconz { }; + + pydelijn = callPackage ../development/python-modules/pydelijn { }; + + pydenticon = callPackage ../development/python-modules/pydenticon { }; + + pydes = callPackage ../development/python-modules/pydes { }; + + py-desmume = callPackage ../development/python-modules/py-desmume { }; + + pydevccu = callPackage ../development/python-modules/pydevccu { }; + + pydexcom = callPackage ../development/python-modules/pydexcom { }; + + pydicom = callPackage ../development/python-modules/pydicom { }; + + pydispatcher = callPackage ../development/python-modules/pydispatcher { }; + + pydmd = callPackage ../development/python-modules/pydmd { }; + + pydns = callPackage ../development/python-modules/py3dns { }; + + pydocstyle = callPackage ../development/python-modules/pydocstyle { }; + + pydocumentdb = callPackage ../development/python-modules/pydocumentdb { }; + + pydoods = callPackage ../development/python-modules/pydoods { }; + + pydot = callPackage ../development/python-modules/pydot { + inherit (pkgs) graphviz; + }; + + pydrive = callPackage ../development/python-modules/pydrive { }; + + pydrive2 = callPackage ../development/python-modules/pydrive2 { }; + + pydroid-ipcam = callPackage ../development/python-modules/pydroid-ipcam { }; + + pydsdl = callPackage ../development/python-modules/pydsdl { }; + + pydub = callPackage ../development/python-modules/pydub { }; + + pyduke-energy = callPackage ../development/python-modules/pyduke-energy { }; + + pydy = callPackage ../development/python-modules/pydy { }; + + pydyf = callPackage ../development/python-modules/pydyf { }; + + pyebus = callPackage ../development/python-modules/pyebus { }; + + pyechonest = callPackage ../development/python-modules/pyechonest { }; + + pyeclib = callPackage ../development/python-modules/pyeclib { }; + + pyeconet = callPackage ../development/python-modules/pyeconet { }; + + pyecowitt = callPackage ../development/python-modules/pyecowitt { }; + + pyedimax = callPackage ../development/python-modules/pyedimax { }; + + pyee = callPackage ../development/python-modules/pyee { }; + + pyefergy = callPackage ../development/python-modules/pyefergy { }; + + pyeight = callPackage ../development/python-modules/pyeight { }; + + pyelftools = callPackage ../development/python-modules/pyelftools { }; + + pyemby = callPackage ../development/python-modules/pyemby { }; + + pyemd = callPackage ../development/python-modules/pyemd { }; + + pyenchant = callPackage ../development/python-modules/pyenchant { + inherit (pkgs) enchant2; + }; + + pyenvisalink = callPackage ../development/python-modules/pyenvisalink { }; + + pyephember = callPackage ../development/python-modules/pyephember { }; + + pyepsg = callPackage ../development/python-modules/pyepsg { }; + + pyerfa = callPackage ../development/python-modules/pyerfa { }; + + pyevmasm = callPackage ../development/python-modules/pyevmasm { }; + + pyevilgenius = callPackage ../development/python-modules/pyevilgenius { }; + + pyexcel = callPackage ../development/python-modules/pyexcel { }; + + pyexcel-io = callPackage ../development/python-modules/pyexcel-io { }; + + pyexcel-ods = callPackage ../development/python-modules/pyexcel-ods { }; + + pyexcel-xls = callPackage ../development/python-modules/pyexcel-xls { }; + + pyext = callPackage ../development/python-modules/pyext { }; + + pyezviz = callPackage ../development/python-modules/pyezviz { }; + + pyface = callPackage ../development/python-modules/pyface { }; + + pyfaidx = callPackage ../development/python-modules/pyfaidx { }; + + pyfakefs = callPackage ../development/python-modules/pyfakefs { }; + + pyfakewebcam = callPackage ../development/python-modules/pyfakewebcam { }; + + pyfantom = callPackage ../development/python-modules/pyfantom { }; + + pyfcm = callPackage ../development/python-modules/pyfcm { }; + + pyfftw = callPackage ../development/python-modules/pyfftw { }; + + pyfido = callPackage ../development/python-modules/pyfido { }; + + pyfiglet = callPackage ../development/python-modules/pyfiglet { }; + + pyfnip = callPackage ../development/python-modules/pyfnip { }; + + pyflakes = callPackage ../development/python-modules/pyflakes { }; + + pyflic = callPackage ../development/python-modules/pyflic { }; + + pyflume = callPackage ../development/python-modules/pyflume { }; + + pyflunearyou = callPackage ../development/python-modules/pyflunearyou { }; + + pyfma = callPackage ../development/python-modules/pyfma { }; + + pyfribidi = callPackage ../development/python-modules/pyfribidi { }; + + pyfritzhome = callPackage ../development/python-modules/pyfritzhome { }; + + pyfronius = callPackage ../development/python-modules/pyfronius { }; + + pyftdi = callPackage ../development/python-modules/pyftdi { }; + + pyftgl = callPackage ../development/python-modules/pyftgl { }; + + pyftpdlib = callPackage ../development/python-modules/pyftpdlib { }; + + pyfttt = callPackage ../development/python-modules/pyfttt { }; + + pyfuse3 = callPackage ../development/python-modules/pyfuse3 { }; + + pyfxa = callPackage ../development/python-modules/pyfxa { }; + + pygal = callPackage ../development/python-modules/pygal { }; + + pygame = callPackage ../development/python-modules/pygame { + inherit (pkgs.darwin.apple_sdk.frameworks) AppKit; + }; + + pygame_sdl2 = callPackage ../development/python-modules/pygame_sdl2 { }; + + pygame-gui = callPackage ../development/python-modules/pygame-gui { }; + + pygatt = callPackage ../development/python-modules/pygatt { }; + + pygbm = callPackage ../development/python-modules/pygbm { }; + + pygccxml = callPackage ../development/python-modules/pygccxml { }; + + pygdbmi = callPackage ../development/python-modules/pygdbmi { }; + + pygeoip = callPackage ../development/python-modules/pygeoip { }; + + pygeos = callPackage ../development/python-modules/pygeos { }; + + pygetwindow = callPackage ../development/python-modules/pygetwindow { }; + + pygit2 = callPackage ../development/python-modules/pygit2 { + libgit2 = pkgs.libgit2_1_3_0; + }; + + PyGithub = callPackage ../development/python-modules/pyGithub { }; + + pyglet = callPackage ../development/python-modules/pyglet { }; + + pygls = callPackage ../development/python-modules/pygls { }; + + pygmars = callPackage ../development/python-modules/pygmars { }; + + pygments-better-html = callPackage ../development/python-modules/pygments-better-html { }; + + pygments = callPackage ../development/python-modules/Pygments { }; + + pygments-markdown-lexer = callPackage ../development/python-modules/pygments-markdown-lexer { }; + + pygmo = callPackage ../development/python-modules/pygmo { }; + + pygmt = callPackage ../development/python-modules/pygmt { }; + + pygobject2 = callPackage ../development/python-modules/pygobject { }; + + pygobject3 = callPackage ../development/python-modules/pygobject/3.nix { + inherit (pkgs) meson; + }; + + pygogo = callPackage ../development/python-modules/pygogo { }; + + pygpgme = callPackage ../development/python-modules/pygpgme { }; + + pygraphviz = callPackage ../development/python-modules/pygraphviz { + inherit (pkgs) graphviz; + }; + + pygreat = callPackage ../development/python-modules/pygreat { }; + + pygrok = callPackage ../development/python-modules/pygrok { }; + + pygtfs = callPackage ../development/python-modules/pygtfs { }; + + pygtail = callPackage ../development/python-modules/pygtail { }; + + pygtkspellcheck = callPackage ../development/python-modules/pygtkspellcheck { }; + + pygtrie = callPackage ../development/python-modules/pygtrie { }; + + pyhamcrest = callPackage ../development/python-modules/pyhamcrest { }; + + pyhaversion = callPackage ../development/python-modules/pyhaversion { }; + + pyhcl = callPackage ../development/python-modules/pyhcl { }; + + pyhocon = callPackage ../development/python-modules/pyhocon { }; + + pyhomematic = callPackage ../development/python-modules/pyhomematic { }; + + pyhomepilot = callPackage ../development/python-modules/pyhomepilot { }; + + pyhomeworks = callPackage ../development/python-modules/pyhomeworks { }; + + pyhs100 = callPackage ../development/python-modules/pyhs100 { }; + + pyi2cflash = callPackage ../development/python-modules/pyi2cflash { }; + + pyialarm = callPackage ../development/python-modules/pyialarm { }; + + pyicloud = callPackage ../development/python-modules/pyicloud { }; + + PyICU = callPackage ../development/python-modules/pyicu { }; + + pyimpfuzzy = callPackage ../development/python-modules/pyimpfuzzy { + inherit (pkgs) ssdeep; + }; + + pyinotify = callPackage ../development/python-modules/pyinotify { }; + + pyinputevent = callPackage ../development/python-modules/pyinputevent { }; + + pyinsteon = callPackage ../development/python-modules/pyinsteon { }; + + pyintesishome = callPackage ../development/python-modules/pyintesishome { }; + + pyipma = callPackage ../development/python-modules/pyipma { }; + + pyipp = callPackage ../development/python-modules/pyipp { }; + + pyiqvia = callPackage ../development/python-modules/pyiqvia { }; + + pyjet = callPackage ../development/python-modules/pyjet { }; + + pyjks = callPackage ../development/python-modules/pyjks { }; + + pyjson5 = callPackage ../development/python-modules/pyjson5 { }; + + pyjwkest = callPackage ../development/python-modules/pyjwkest { }; + + pyjwt = callPackage ../development/python-modules/pyjwt { }; + + pykakasi = callPackage ../development/python-modules/pykakasi { }; + + pykdl = callPackage ../development/python-modules/pykdl { }; + + pykdtree = callPackage ../development/python-modules/pykdtree { + inherit (pkgs.llvmPackages) openmp; + }; + + pykeepass = callPackage ../development/python-modules/pykeepass { }; + + pykerberos = callPackage ../development/python-modules/pykerberos { }; + + pykeyatome = callPackage ../development/python-modules/pykeyatome { }; + + pykira = callPackage ../development/python-modules/pykira { }; + + pykka = callPackage ../development/python-modules/pykka { }; + + pykmtronic = callPackage ../development/python-modules/pykmtronic { }; + + pykodi = callPackage ../development/python-modules/pykodi { }; + + pykoplenti = callPackage ../development/python-modules/pykoplenti { }; + + pykulersky = callPackage ../development/python-modules/pykulersky { }; + + pykwalify = callPackage ../development/python-modules/pykwalify { }; + + pylacrosse = callPackage ../development/python-modules/pylacrosse { }; + + pylama = callPackage ../development/python-modules/pylama { }; + + pylast = callPackage ../development/python-modules/pylast { }; + + pylatexenc = callPackage ../development/python-modules/pylatexenc { }; + + pylaunches = callPackage ../development/python-modules/pylaunches { }; + + PyLD = callPackage ../development/python-modules/PyLD { }; + + pylev = callPackage ../development/python-modules/pylev { }; + + pylgnetcast = callPackage ../development/python-modules/pylgnetcast { }; + + pylibacl = callPackage ../development/python-modules/pylibacl { }; + + pylibconfig2 = callPackage ../development/python-modules/pylibconfig2 { }; + + pylibftdi = callPackage ../development/python-modules/pylibftdi { + inherit (pkgs) libusb1; + }; + + pyliblo = callPackage ../development/python-modules/pyliblo { }; + + pylibmc = callPackage ../development/python-modules/pylibmc { }; + + pylink-square = callPackage ../development/python-modules/pylink-square { }; + + pylint-celery = callPackage ../development/python-modules/pylint-celery { }; + + pylint-django = callPackage ../development/python-modules/pylint-django { }; + + pylint-flask = callPackage ../development/python-modules/pylint-flask { }; + + pylint = callPackage ../development/python-modules/pylint { }; + + pylint-plugin-utils = callPackage ../development/python-modules/pylint-plugin-utils { }; + + pylitterbot = callPackage ../development/python-modules/pylitterbot { }; + + py-lru-cache = callPackage ../development/python-modules/py-lru-cache { }; + + pylru = callPackage ../development/python-modules/pylru { }; + + pyls-black = callPackage ../development/python-modules/pyls-black { }; + + pyls-flake8 = callPackage ../development/python-modules/pyls-flake8 { }; + + pyls-isort = callPackage ../development/python-modules/pyls-isort { }; + + pyls-mypy = callPackage ../development/python-modules/pyls-mypy { }; + + pyls-spyder = callPackage ../development/python-modules/pyls-spyder { }; + + pylsp-mypy = callPackage ../development/python-modules/pylsp-mypy { }; + + PyLTI = callPackage ../development/python-modules/pylti { }; + + pylutron = callPackage ../development/python-modules/pylutron { }; + + pylutron-caseta = callPackage ../development/python-modules/pylutron-caseta { }; + + pylyrics = callPackage ../development/python-modules/pylyrics { }; + + pylxd = callPackage ../development/python-modules/pylxd { }; + + pylzma = callPackage ../development/python-modules/pylzma { }; + + pymacaroons = callPackage ../development/python-modules/pymacaroons { }; + + pymaging = callPackage ../development/python-modules/pymaging { }; + + pymaging_png = callPackage ../development/python-modules/pymaging_png { }; + + pymanopt = callPackage ../development/python-modules/pymanopt { }; + + pymarshal = callPackage ../development/python-modules/pymarshal { }; + + pymata-express = callPackage ../development/python-modules/pymata-express { }; + + pymatgen = callPackage ../development/python-modules/pymatgen { }; + + pymatgen-lammps = callPackage ../development/python-modules/pymatgen-lammps { }; + + pymaven-patch = callPackage ../development/python-modules/pymaven-patch { }; + + pymavlink = callPackage ../development/python-modules/pymavlink { }; + + pymazda = callPackage ../development/python-modules/pymazda { }; + + pymbolic = callPackage ../development/python-modules/pymbolic { }; + + pymc3 = callPackage ../development/python-modules/pymc3 { }; + + pymdstat = callPackage ../development/python-modules/pymdstat { }; + + pymdown-extensions = callPackage ../development/python-modules/pymdown-extensions { }; + + pymediainfo = callPackage ../development/python-modules/pymediainfo { }; + + pymediaroom = callPackage ../development/python-modules/pymediaroom { }; + + pymeeus = callPackage ../development/python-modules/pymeeus { }; + + pymelcloud = callPackage ../development/python-modules/pymelcloud { }; + + pymemcache = callPackage ../development/python-modules/pymemcache { }; + + pymemoize = callPackage ../development/python-modules/pymemoize { }; + + pyment = callPackage ../development/python-modules/pyment { }; + + pymetar = callPackage ../development/python-modules/pymetar { }; + + pymeteireann = callPackage ../development/python-modules/pymeteireann { }; + + pymeteoclimatic = callPackage ../development/python-modules/pymeteoclimatic { }; + + pymetno = callPackage ../development/python-modules/pymetno { }; + + pymitv = callPackage ../development/python-modules/pymitv { }; + + pymfy = callPackage ../development/python-modules/pymfy { }; + + pymodbus = callPackage ../development/python-modules/pymodbus { }; + + pymongo = callPackage ../development/python-modules/pymongo { }; + + pymorphy2 = callPackage ../development/python-modules/pymorphy2 { }; + + pymorphy2-dicts-ru = callPackage ../development/python-modules/pymorphy2/dicts-ru.nix { }; + + pympler = callPackage ../development/python-modules/pympler { }; + + pymsgbox = callPackage ../development/python-modules/pymsgbox { }; + + pymsteams = callPackage ../development/python-modules/pymsteams { }; + + py-multiaddr = callPackage ../development/python-modules/py-multiaddr { }; + + py-multibase = callPackage ../development/python-modules/py-multibase { }; + + py-multicodec = callPackage ../development/python-modules/py-multicodec { }; + + py-multihash = callPackage ../development/python-modules/py-multihash { }; + + pymumble = callPackage ../development/python-modules/pymumble { }; + + pymunk = callPackage ../development/python-modules/pymunk { + inherit (pkgs.darwin.apple_sdk.frameworks) ApplicationServices; + }; + + pymupdf = callPackage ../development/python-modules/pymupdf { }; + + PyMVGLive = callPackage ../development/python-modules/pymvglive { }; + + pymyq = callPackage ../development/python-modules/pymyq { }; + + pymysensors = callPackage ../development/python-modules/pymysensors { }; + + pymysql = callPackage ../development/python-modules/pymysql { }; + + pymysqlsa = callPackage ../development/python-modules/pymysqlsa { }; + + pymystem3 = callPackage ../development/python-modules/pymystem3 { }; + + pynac = callPackage ../development/python-modules/pynac { }; + + pynacl = callPackage ../development/python-modules/pynacl { }; + + pynamecheap = callPackage ../development/python-modules/pynamecheap { }; + + pynamodb = callPackage ../development/python-modules/pynamodb { }; + + pynanoleaf = callPackage ../development/python-modules/pynanoleaf { }; + + pync = callPackage ../development/python-modules/pync { + inherit (pkgs) coreutils which; + }; + + pynello = callPackage ../development/python-modules/pynello { }; + + pynest2d = callPackage ../development/python-modules/pynest2d { }; + + pynetbox = callPackage ../development/python-modules/pynetbox { }; + + pynetdicom = callPackage ../development/python-modules/pynetdicom { }; + + pynetgear = callPackage ../development/python-modules/pynetgear { }; + + pynina = callPackage ../development/python-modules/pynina { }; + + pynisher = callPackage ../development/python-modules/pynisher { }; + + pynmea2 = callPackage ../development/python-modules/pynmea2 { }; + + pynput = callPackage ../development/python-modules/pynput { }; + + pynrrd = callPackage ../development/python-modules/pynrrd { }; + + pynvim = callPackage ../development/python-modules/pynvim { }; + + pynvml = callPackage ../development/python-modules/pynvml { }; + + pynzb = callPackage ../development/python-modules/pynzb { }; + + pyobihai = callPackage ../development/python-modules/pyobihai { }; + + pyocr = callPackage ../development/python-modules/pyocr { + tesseract = pkgs.tesseract4; + }; + + pyoctoprintapi = callPackage ../development/python-modules/pyoctoprintapi { }; + + pyodbc = callPackage ../development/python-modules/pyodbc { }; + + pyogg = callPackage ../development/python-modules/pyogg { }; + + pyombi = callPackage ../development/python-modules/pyombi { }; + + pyomo = callPackage ../development/python-modules/pyomo { }; + + pyp = callPackage ../development/python-modules/pyp { + inherit (pkgs) jq; + }; + + phonemizer = callPackage ../development/python-modules/phonemizer { }; + + pyopencl = callPackage ../development/python-modules/pyopencl { + mesa_drivers = pkgs.mesa.drivers; + }; + + pyopengl = callPackage ../development/python-modules/pyopengl { }; + + pyopengl-accelerate = callPackage ../development/python-modules/pyopengl-accelerate { }; + + pyopenssl = callPackage ../development/python-modules/pyopenssl { }; + + pyopenuv = callPackage ../development/python-modules/pyopenuv { }; + + pyopnsense = callPackage ../development/python-modules/pyopnsense { }; + + pyosf = callPackage ../development/python-modules/pyosf { }; + + pyosmium = callPackage ../development/python-modules/pyosmium { + inherit (pkgs) lz4; + }; + + pyotgw = callPackage ../development/python-modules/pyotgw { }; + + pyotp = callPackage ../development/python-modules/pyotp { }; + + pyowm = callPackage ../development/python-modules/pyowm { }; + + pypamtest = pkgs.libpam-wrapper.override { + enablePython = true; + inherit python; + }; + + pypandoc = callPackage ../development/python-modules/pypandoc { }; + + pyparser = callPackage ../development/python-modules/pyparser { }; + + pyparsing = callPackage ../development/python-modules/pyparsing { }; + + pyparted = callPackage ../development/python-modules/pyparted { }; + + pypass = callPackage ../development/python-modules/pypass { }; + + pypblib = callPackage ../development/python-modules/pypblib { }; + + pypca = callPackage ../development/python-modules/pypca { }; + + pypcap = callPackage ../development/python-modules/pypcap { }; + + pypck = callPackage ../development/python-modules/pypck { }; + + pypdf2 = callPackage ../development/python-modules/pypdf2 { }; + + pypdf3 = callPackage ../development/python-modules/pypdf3 { }; + + pypeg2 = callPackage ../development/python-modules/pypeg2 { }; + + pyperclip = callPackage ../development/python-modules/pyperclip { }; + + pyperf = callPackage ../development/python-modules/pyperf { }; + + pyphen = callPackage ../development/python-modules/pyphen { }; + + pyphotonfile = callPackage ../development/python-modules/pyphotonfile { }; + + pypillowfight = callPackage ../development/python-modules/pypillowfight { }; + + pypinyin = callPackage ../development/python-modules/pypinyin { }; + + pypiserver = callPackage ../development/python-modules/pypiserver { }; + + pyplaato = callPackage ../development/python-modules/pyplaato { }; + + pyplatec = callPackage ../development/python-modules/pyplatec { }; + + pyppeteer = callPackage ../development/python-modules/pyppeteer { }; + + pypresence = callPackage ../development/python-modules/pypresence { }; + + pyprind = callPackage ../development/python-modules/pyprind { }; + + pyprof2calltree = callPackage ../development/python-modules/pyprof2calltree { }; + + pyproj = callPackage ../development/python-modules/pyproj { }; + + pyprosegur = callPackage ../development/python-modules/pyprosegur { }; + + pyptlib = callPackage ../development/python-modules/pyptlib { }; + + pypubsub = callPackage ../development/python-modules/pypubsub { }; + + pypugjs = callPackage ../development/python-modules/pypugjs { }; + + pypykatz = callPackage ../development/python-modules/pypykatz { }; + + pypytools = callPackage ../development/python-modules/pypytools { }; + + pyqrcode = callPackage ../development/python-modules/pyqrcode { }; + + pyqt-builder = callPackage ../development/python-modules/pyqt-builder { }; + + pyqt4 = callPackage ../development/python-modules/pyqt/4.x.nix { }; + + pyqt5 = callPackage ../development/python-modules/pyqt/5.x.nix { }; + + pyqt5_sip = callPackage ../development/python-modules/pyqt/sip.nix { }; + + pyqt5_with_qtmultimedia = self.pyqt5.override { + withMultimedia = true; + }; + + /* + `pyqt5_with_qtwebkit` should not be used by python libraries in + pkgs/development/python-modules/*. Putting this attribute in + `propagatedBuildInputs` may cause collisions. + */ + pyqt5_with_qtwebkit = self.pyqt5.override { + withWebKit = true; + }; + + pyqtgraph = callPackage ../development/python-modules/pyqtgraph { }; + + pyqtwebengine = pkgs.libsForQt5.callPackage ../development/python-modules/pyqtwebengine { + pythonPackages = self; + }; + + pyquery = callPackage ../development/python-modules/pyquery { }; + + pyquaternion = callPackage ../development/python-modules/pyquaternion { }; + + pyquil = callPackage ../development/python-modules/pyquil { }; + + pyqvrpro = callPackage ../development/python-modules/pyqvrpro { }; + + pyrabbit2 = callPackage ../development/python-modules/pyrabbit2 { }; + + pyrad = callPackage ../development/python-modules/pyrad { }; + + pyradios = callPackage ../development/python-modules/pyradios { }; + + py-radix = callPackage ../development/python-modules/py-radix { }; + + pyramid_beaker = callPackage ../development/python-modules/pyramid_beaker { }; + + pyramid = callPackage ../development/python-modules/pyramid { }; + + pyramid_chameleon = callPackage ../development/python-modules/pyramid_chameleon { }; + + pyramid_exclog = callPackage ../development/python-modules/pyramid_exclog { }; + + pyramid_hawkauth = callPackage ../development/python-modules/pyramid_hawkauth { }; + + pyramid_jinja2 = callPackage ../development/python-modules/pyramid_jinja2 { }; + + pyramid_mako = callPackage ../development/python-modules/pyramid_mako { }; + + pyramid_multiauth = callPackage ../development/python-modules/pyramid_multiauth { }; + + pyreadability = callPackage ../development/python-modules/pyreadability { }; + + pyrealsense2 = toPythonModule (pkgs.librealsense.override { + enablePython = true; + pythonPackages = self; + }); + + pyrealsense2WithCuda = toPythonModule (pkgs.librealsenseWithCuda.override { + enablePython = true; + pythonPackages = self; + }); + + pyrealsense2WithoutCuda = toPythonModule (pkgs.librealsenseWithoutCuda.override { + enablePython = true; + pythonPackages = self; + }); + + pyrect = callPackage ../development/python-modules/pyrect { }; + + pyregion = callPackage ../development/python-modules/pyregion { }; + + pyres = callPackage ../development/python-modules/pyres { }; + + pyrisco = callPackage ../development/python-modules/pyrisco { }; + + pyrituals = callPackage ../development/python-modules/pyrituals { }; + + pyRFC3339 = callPackage ../development/python-modules/pyrfc3339 { }; + + pyrmvtransport = callPackage ../development/python-modules/pyrmvtransport { }; + + Pyro4 = callPackage ../development/python-modules/pyro4 { }; + + Pyro5 = callPackage ../development/python-modules/pyro5 { }; + + pyroma = callPackage ../development/python-modules/pyroma { }; + + pyro-api = callPackage ../development/python-modules/pyro-api { }; + + pyro-ppl = callPackage ../development/python-modules/pyro-ppl { }; + + pyroute2 = callPackage ../development/python-modules/pyroute2 { }; + + pyroute2-core = callPackage ../development/python-modules/pyroute2-core { }; + + pyroute2-ethtool = callPackage ../development/python-modules/pyroute2-ethtool { }; + + pyroute2-ipdb = callPackage ../development/python-modules/pyroute2-ipdb { }; + + pyroute2-ipset = callPackage ../development/python-modules/pyroute2-ipset { }; + + pyroute2-ndb = callPackage ../development/python-modules/pyroute2-ndb { }; + + pyroute2-nftables = callPackage ../development/python-modules/pyroute2-nftables { }; + + pyroute2-nslink = callPackage ../development/python-modules/pyroute2-nslink { }; + + pyroute2-protocols = callPackage ../development/python-modules/pyroute2-protocols { }; + + pyrr = callPackage ../development/python-modules/pyrr { }; + + pyrsistent = callPackage ../development/python-modules/pyrsistent { }; + + PyRSS2Gen = callPackage ../development/python-modules/pyrss2gen { }; + + pyrtlsdr = callPackage ../development/python-modules/pyrtlsdr { }; + + pyruckus = callPackage ../development/python-modules/pyruckus { }; + + pysam = callPackage ../development/python-modules/pysam { }; + + pysaml2 = callPackage ../development/python-modules/pysaml2 { + inherit (pkgs) xmlsec; + }; + + pysatochip = callPackage ../development/python-modules/pysatochip { }; + + pysc2 = callPackage ../development/python-modules/pysc2 { }; + + pyscard = callPackage ../development/python-modules/pyscard { + inherit (pkgs.darwin.apple_sdk.frameworks) PCSC; + }; + + pyscf = callPackage ../development/python-modules/pyscf { }; + + pyschedule = callPackage ../development/python-modules/pyschedule { }; + + pyscreenshot = callPackage ../development/python-modules/pyscreenshot { }; + + pyscreeze = callPackage ../development/python-modules/pyscreeze { }; + + py_scrypt = callPackage ../development/python-modules/py_scrypt { }; + + pyscrypt = callPackage ../development/python-modules/pyscrypt { }; + + pyscss = callPackage ../development/python-modules/pyscss { }; + + pysdcp = callPackage ../development/python-modules/pysdcp { }; + + pysdl2 = callPackage ../development/python-modules/pysdl2 { }; + + pysearpc = toPythonModule (pkgs.libsearpc.override { + python3 = self.python; + }); + + pysecuritas = callPackage ../development/python-modules/pysecuritas { }; + + pysendfile = callPackage ../development/python-modules/pysendfile { }; + + pysensors = callPackage ../development/python-modules/pysensors { }; + + pyserial-asyncio = callPackage ../development/python-modules/pyserial-asyncio { }; + + pyserial = callPackage ../development/python-modules/pyserial { }; + + pysftp = callPackage ../development/python-modules/pysftp { }; + + pysha3 = callPackage ../development/python-modules/pysha3 { }; + + pyshp = callPackage ../development/python-modules/pyshp { }; + + pyside2-tools = toPythonModule (callPackage ../development/python-modules/pyside2-tools { + inherit (pkgs) cmake qt5; + }); + + pyside2 = toPythonModule (callPackage ../development/python-modules/pyside2 { + inherit (pkgs) cmake ninja qt5; + }); + + pyside = callPackage ../development/python-modules/pyside { + inherit (pkgs) mesa; + }; + + pysideShiboken = callPackage ../development/python-modules/pyside/shiboken.nix { + inherit (pkgs) libxml2 libxslt; + }; + + pysideTools = callPackage ../development/python-modules/pyside/tools.nix { }; + + pysigma = callPackage ../development/python-modules/pysigma { }; + + pysigma-backend-splunk = callPackage ../development/python-modules/pysigma-backend-splunk { }; + + pysigma-pipeline-crowdstrike = callPackage ../development/python-modules/pysigma-pipeline-crowdstrike { }; + + pysigma-pipeline-sysmon = callPackage ../development/python-modules/pysigma-pipeline-sysmon { }; + + pysignalclirestapi = callPackage ../development/python-modules/pysignalclirestapi { }; + + pysigset = callPackage ../development/python-modules/pysigset { }; + + pysimplegui = callPackage ../development/python-modules/pysimplegui { }; + + pysingleton = callPackage ../development/python-modules/pysingleton { }; + + pyslurm = callPackage ../development/python-modules/pyslurm { + inherit (pkgs) slurm; + }; + + pysma = callPackage ../development/python-modules/pysma { }; + + pysmappee = callPackage ../development/python-modules/pysmappee { }; + + pysmart = callPackage ../development/python-modules/pysmart { }; + + pysmartapp = callPackage ../development/python-modules/pysmartapp { }; + + pysmartthings = callPackage ../development/python-modules/pysmartthings { }; + + pysmb = callPackage ../development/python-modules/pysmb { }; + + pysmbc = callPackage ../development/python-modules/pysmbc { }; + + pysmf = callPackage ../development/python-modules/pysmf { }; + + pysmi = callPackage ../development/python-modules/pysmi { }; + + pysml = callPackage ../development/python-modules/pysml { }; + + pysmt = callPackage ../development/python-modules/pysmt { }; + + pysnmp = callPackage ../development/python-modules/pysnmp { }; + + pysnooper = callPackage ../development/python-modules/pysnooper { }; + + pysnow = callPackage ../development/python-modules/pysnow { }; + + pysocks = callPackage ../development/python-modules/pysocks { }; + + pysolr = callPackage ../development/python-modules/pysolr { }; + + pysoma = callPackage ../development/python-modules/pysoma { }; + + py-sonic = callPackage ../development/python-modules/py-sonic { }; + + pysonos = callPackage ../development/python-modules/pysonos { }; + + pysoundfile = self.soundfile; # Alias added 23-06-2019 + + pyspark = callPackage ../development/python-modules/pyspark { }; + + pysparse = callPackage ../development/python-modules/pysparse { }; + + pyspcwebgw = callPackage ../development/python-modules/pyspcwebgw { }; + + pyspf = callPackage ../development/python-modules/pyspf { }; + + pyspice = callPackage ../development/python-modules/pyspice { }; + + pyspiflash = callPackage ../development/python-modules/pyspiflash { }; + + pyspinel = callPackage ../development/python-modules/pyspinel { }; + + pyspnego = callPackage ../development/python-modules/pyspnego { }; + + pyspotify = callPackage ../development/python-modules/pyspotify { }; + + pysptk = callPackage ../development/python-modules/pysptk { }; + + pysqlcipher3 = callPackage ../development/python-modules/pysqlcipher3 { + inherit (pkgs) sqlcipher; + }; + + pysqueezebox = callPackage ../development/python-modules/pysqueezebox { }; + + pysrim = callPackage ../development/python-modules/pysrim { }; + + pysrt = callPackage ../development/python-modules/pysrt { }; + + pyssim = callPackage ../development/python-modules/pyssim { }; + + pystache = callPackage ../development/python-modules/pystache { }; + + pystemd = callPackage ../development/python-modules/pystemd { + inherit (pkgs) systemd; + }; + + PyStemmer = callPackage ../development/python-modules/pystemmer { }; + + pystray = callPackage ../development/python-modules/pystray { }; + + py_stringmatching = callPackage ../development/python-modules/py_stringmatching { }; + + pysvg-py3 = callPackage ../development/python-modules/pysvg-py3 { }; + + pysvn = callPackage ../development/python-modules/pysvn { + inherit (pkgs) bash subversion apr aprutil expat neon openssl; + }; + + pyswitchbot = callPackage ../development/python-modules/pyswitchbot { }; + + pysychonaut = callPackage ../development/python-modules/pysychonaut { }; + + pysyncobj = callPackage ../development/python-modules/pysyncobj { }; + + pytabix = callPackage ../development/python-modules/pytabix { }; + + pytado = callPackage ../development/python-modules/pytado { }; + + pytaglib = callPackage ../development/python-modules/pytaglib { }; + + pytankerkoenig = callPackage ../development/python-modules/pytankerkoenig { }; + + pytap2 = callPackage ../development/python-modules/pytap2 { }; + + pytautulli = callPackage ../development/python-modules/pytautulli { }; + + pyte = callPackage ../development/python-modules/pyte { }; + + pytenable = callPackage ../development/python-modules/pytenable { }; + + pytelegrambotapi = callPackage ../development/python-modules/pyTelegramBotAPI { }; + + pytesseract = callPackage ../development/python-modules/pytesseract { }; + + pytest = self.pytest_6; + + pytest_6 = + callPackage ../development/python-modules/pytest { + # hypothesis tests require pytest that causes dependency cycle + hypothesis = self.hypothesis.override { + doCheck = false; + }; + }; + + pytest_6_1 = self.pytest_6.overridePythonAttrs (oldAttrs: rec { + version = "6.1.2"; + src = oldAttrs.src.override { + inherit version; + sha256 = "c0a7e94a8cdbc5422a51ccdad8e6f1024795939cc89159a0ae7f0b316ad3823e"; + }; + + postPatch = '' + substituteInPlace setup.cfg \ + --replace "pluggy>=0.12,<1.0" "pluggy>=0.12,<2.0" + ''; + }); + + pytest-aio = callPackage ../development/python-modules/pytest-aio { }; + + pytest-aiohttp = callPackage ../development/python-modules/pytest-aiohttp { }; + + pytest-annotate = callPackage ../development/python-modules/pytest-annotate { }; + + pytest-ansible = callPackage ../development/python-modules/pytest-ansible { }; + + pytest-arraydiff = callPackage ../development/python-modules/pytest-arraydiff { }; + + pytest-astropy = callPackage ../development/python-modules/pytest-astropy { }; + + pytest-astropy-header = callPackage ../development/python-modules/pytest-astropy-header { }; + + pytest-asyncio = callPackage ../development/python-modules/pytest-asyncio { }; + + pytest-bdd = callPackage ../development/python-modules/pytest-bdd { }; + + pytest-benchmark = callPackage ../development/python-modules/pytest-benchmark { }; + + pytest-black = callPackage ../development/python-modules/pytest-black { }; + + pytest-cache = self.pytestcache; # added 2021-01-04 + pytestcache = callPackage ../development/python-modules/pytestcache { }; + + pytest-cases = callPackage ../development/python-modules/pytest-cases{ }; + + pytest-catchlog = callPackage ../development/python-modules/pytest-catchlog { }; + + pytest-celery = callPackage ../development/python-modules/pytest-celery { }; + + pytest-check = callPackage ../development/python-modules/pytest-check { }; + + pytest-cid = callPackage ../development/python-modules/pytest-cid { }; + + pytest-click = callPackage ../development/python-modules/pytest-click { }; + + pytest-console-scripts = callPackage ../development/python-modules/pytest-console-scripts { }; + + pytest-cov = callPackage ../development/python-modules/pytest-cov { }; + + pytest-cram = callPackage ../development/python-modules/pytest-cram { }; + + pytest-datadir = callPackage ../development/python-modules/pytest-datadir { }; + + pytest-datafiles = callPackage ../development/python-modules/pytest-datafiles { }; + + pytest-dependency = callPackage ../development/python-modules/pytest-dependency { }; + + pytest-django = callPackage ../development/python-modules/pytest-django { }; + + pytest-doctestplus = callPackage ../development/python-modules/pytest-doctestplus { }; + + pytest-dotenv = callPackage ../development/python-modules/pytest-dotenv { }; + + pytest-env = callPackage ../development/python-modules/pytest-env { }; + + pytest-error-for-skips = callPackage ../development/python-modules/pytest-error-for-skips { }; + + pytest-expect = callPackage ../development/python-modules/pytest-expect { }; + + pytest-factoryboy = callPackage ../development/python-modules/pytest-factoryboy { }; + + pytest-filter-subpackage = callPackage ../development/python-modules/pytest-filter-subpackage { }; + + pytest-fixture-config = callPackage ../development/python-modules/pytest-fixture-config { }; + + pytest-flake8 = callPackage ../development/python-modules/pytest-flake8 { }; + + pytest-flakes = callPackage ../development/python-modules/pytest-flakes { }; + + pytest-flask = callPackage ../development/python-modules/pytest-flask { }; + + pytest-forked = callPackage ../development/python-modules/pytest-forked { }; + + pytest-freezegun = callPackage ../development/python-modules/pytest-freezegun { }; + + pytest-helpers-namespace = callPackage ../development/python-modules/pytest-helpers-namespace { }; + + pytest-html = callPackage ../development/python-modules/pytest-html { }; + + pytest-httpbin = callPackage ../development/python-modules/pytest-httpbin { }; + + pytest-httpserver = callPackage ../development/python-modules/pytest-httpserver { }; + + pytest-httpx = callPackage ../development/python-modules/pytest-httpx { }; + + pytest-instafail = callPackage ../development/python-modules/pytest-instafail { }; + + pytest-isort = callPackage ../development/python-modules/pytest-isort { }; + + pytest-json-report = callPackage ../development/python-modules/pytest-json-report { }; + + pytest-lazy-fixture = callPackage ../development/python-modules/pytest-lazy-fixture { }; + + pytest-localserver = callPackage ../development/python-modules/pytest-localserver { }; + + pytest-logdog = callPackage ../development/python-modules/pytest-logdog{ }; + + pytest-metadata = callPackage ../development/python-modules/pytest-metadata { }; + + pytest-mock = callPackage ../development/python-modules/pytest-mock { }; + + pytest-mockservers = callPackage ../development/python-modules/pytest-mockservers { }; + + pytest-mpl = callPackage ../development/python-modules/pytest-mpl { }; + + pytest-mypy = callPackage ../development/python-modules/pytest-mypy { }; + + pytest-mypy-plugins = callPackage ../development/python-modules/pytest-mypy-plugins { }; + + pytest-openfiles = callPackage ../development/python-modules/pytest-openfiles { }; + + pytest-order = callPackage ../development/python-modules/pytest-order { }; + + pytest-ordering = callPackage ../development/python-modules/pytest-ordering { }; + + pytest-pep257 = callPackage ../development/python-modules/pytest-pep257 { }; + + pytest-pylint = callPackage ../development/python-modules/pytest-pylint { }; + + pytest-pythonpath = callPackage ../development/python-modules/pytest-pythonpath { }; + + pytest-qt = callPackage ../development/python-modules/pytest-qt { }; + + pytest-quickcheck = callPackage ../development/python-modules/pytest-quickcheck { }; + + pytest-raises = callPackage ../development/python-modules/pytest-raises { }; + + pytest-raisesregexp = callPackage ../development/python-modules/pytest-raisesregexp { }; + + pytest-raisin = callPackage ../development/python-modules/pytest-raisin { }; + + pytest-randomly = callPackage ../development/python-modules/pytest-randomly { }; + + pytest-random-order = callPackage ../development/python-modules/pytest-random-order { }; + + pytest-regressions = callPackage ../development/python-modules/pytest-regressions { }; + + pytest-relaxed = callPackage ../development/python-modules/pytest-relaxed { }; + + pytest-remotedata = callPackage ../development/python-modules/pytest-remotedata { }; + + pytest-repeat = callPackage ../development/python-modules/pytest-repeat { }; + + pytest-rerunfailures = callPackage ../development/python-modules/pytest-rerunfailures { }; + + pytest-resource-path = callPackage ../development/python-modules/pytest-resource-path { }; + + pytest-runner = callPackage ../development/python-modules/pytest-runner { }; + + pytest-sanic = callPackage ../development/python-modules/pytest-sanic { + sanic = self.sanic.override { doCheck = false; }; + }; + + pytest-server-fixtures = callPackage ../development/python-modules/pytest-server-fixtures { }; + + pytest-services = callPackage ../development/python-modules/pytest-services { }; + + pytest-snapshot = callPackage ../development/python-modules/pytest-snapshot { }; + + pytest-shutil = callPackage ../development/python-modules/pytest-shutil { }; + + python-status = callPackage ../development/python-modules/python-status { }; + + python-string-utils = callPackage ../development/python-modules/python-string-utils { }; + + pytest-socket = callPackage ../development/python-modules/pytest-socket { }; + + pytest-subprocess = callPackage ../development/python-modules/pytest-subprocess { }; + + pytest-subtesthack = callPackage ../development/python-modules/pytest-subtesthack { }; + + pytest-subtests = callPackage ../development/python-modules/pytest-subtests { }; + + pytest-sugar = callPackage ../development/python-modules/pytest-sugar { }; + + pytest-testmon = callPackage ../development/python-modules/pytest-testmon { }; + + pytest-timeout = callPackage ../development/python-modules/pytest-timeout { }; + + pytest-tornado = callPackage ../development/python-modules/pytest-tornado { }; + + pytest-tornasync = callPackage ../development/python-modules/pytest-tornasync { }; + + pytest-trio = callPackage ../development/python-modules/pytest-trio { }; + + pytest-twisted = callPackage ../development/python-modules/pytest-twisted { }; + + pytest-vcr = callPackage ../development/python-modules/pytest-vcr { }; + + pytest-virtualenv = callPackage ../development/python-modules/pytest-virtualenv { }; + + pytest-warnings = callPackage ../development/python-modules/pytest-warnings { }; + + pytest-watch = callPackage ../development/python-modules/pytest-watch { }; + + pytest-xdist = callPackage ../development/python-modules/pytest-xdist { }; + + pytest-xprocess = callPackage ../development/python-modules/pytest-xprocess { }; + + pytest-xvfb = callPackage ../development/python-modules/pytest-xvfb { }; + + python3-application = callPackage ../development/python-modules/python3-application { }; + + python3-eventlib = callPackage ../development/python-modules/python3-eventlib { }; + + python3-gnutls = callPackage ../development/python-modules/python3-gnutls { }; + + python3-openid = callPackage ../development/python-modules/python3-openid { }; + + python-awair = callPackage ../development/python-modules/python-awair { }; + + python3-saml = callPackage ../development/python-modules/python3-saml { }; + + python-axolotl = callPackage ../development/python-modules/python-axolotl { }; + + python-axolotl-curve25519 = callPackage ../development/python-modules/python-axolotl-curve25519 { }; + + python-baseconv = callPackage ../development/python-modules/python-baseconv { }; + + python-benedict = callPackage ../development/python-modules/python-benedict { }; + + python-bidi = callPackage ../development/python-modules/python-bidi { }; + + python-binance = callPackage ../development/python-modules/python-binance { }; + + python-box = callPackage ../development/python-modules/python-box { }; + + python-cinderclient = callPackage ../development/python-modules/python-cinderclient { }; + + python-constraint = callPackage ../development/python-modules/python-constraint { }; + + python-crontab = callPackage ../development/python-modules/python-crontab { }; + + python-ctags3 = callPackage ../development/python-modules/python-ctags3 { }; + + python-daemon = callPackage ../development/python-modules/python-daemon { }; + + python-datemath = callPackage ../development/python-modules/python-datemath { }; + + python-dateutil = callPackage ../development/python-modules/dateutil { }; + + python-dbusmock = callPackage ../development/python-modules/python-dbusmock { }; + + pythondialog = callPackage ../development/python-modules/pythondialog { }; + + python-didl-lite = callPackage ../development/python-modules/python-didl-lite { }; + + python-docx = callPackage ../development/python-modules/python-docx { }; + + python-doi = callPackage ../development/python-modules/python-doi { }; + + python-dotenv = callPackage ../development/python-modules/python-dotenv { }; + + python-editor = callPackage ../development/python-modules/python-editor { }; + + python-fsutil = callPackage ../development/python-modules/python-fsutil { }; + + pythonefl = callPackage ../development/python-modules/python-efl { }; + + pythonegardia = callPackage ../development/python-modules/pythonegardia { }; + + python-engineio = callPackage ../development/python-modules/python-engineio { }; + + python-etcd = callPackage ../development/python-modules/python-etcd { }; + + python-ethtool = callPackage ../development/python-modules/python-ethtool { }; + + python_fedora = callPackage ../development/python-modules/python_fedora { }; + + python-fontconfig = callPackage ../development/python-modules/python-fontconfig { }; + + python-forecastio = callPackage ../development/python-modules/python-forecastio { }; + + python-frontmatter = callPackage ../development/python-modules/python-frontmatter { }; + + python-gammu = callPackage ../development/python-modules/python-gammu { }; + + python-gitlab = callPackage ../development/python-modules/python-gitlab { }; + + python-gnupg = callPackage ../development/python-modules/python-gnupg { }; + + python-gvm = callPackage ../development/python-modules/python-gvm { }; + + python-hglib = callPackage ../development/python-modules/python-hglib { }; + + python-hosts = callPackage ../development/python-modules/python-hosts { }; + + python-hpilo = callPackage ../development/python-modules/python-hpilo { }; + + python-http-client = callPackage ../development/python-modules/python-http-client { }; + + python-i18n = callPackage ../development/python-modules/python-i18n { }; + + pythonix = callPackage ../development/python-modules/pythonix { + nix = pkgs.nixVersions.nix_2_3; + meson = pkgs.meson.override { python3 = self.python; }; + }; + + python-jenkins = callPackage ../development/python-modules/python-jenkins { }; + + python-jose = callPackage ../development/python-modules/python-jose { }; + + python-json-logger = callPackage ../development/python-modules/python-json-logger { }; + + python-jsonrpc-server = callPackage ../development/python-modules/python-jsonrpc-server { }; + + python_keyczar = callPackage ../development/python-modules/python_keyczar { }; + + python-language-server = callPackage ../development/python-modules/python-language-server { }; + + python-ldap-test = callPackage ../development/python-modules/python-ldap-test { }; + + python-Levenshtein = callPackage ../development/python-modules/python-levenshtein { }; + + python-linux-procfs = callPackage ../development/python-modules/python-linux-procfs { }; + + python-logstash = callPackage ../development/python-modules/python-logstash { }; + + python-louvain = callPackage ../development/python-modules/python-louvain { }; + + python-lsp-jsonrpc = callPackage ../development/python-modules/python-lsp-jsonrpc { }; + + python-lsp-server = callPackage ../development/python-modules/python-lsp-server { }; + + python-ly = callPackage ../development/python-modules/python-ly { }; + + python-lzf = callPackage ../development/python-modules/python-lzf { }; + + python-lzo = callPackage ../development/python-modules/python-lzo { + inherit (pkgs) lzo; + }; + + python_magic = callPackage ../development/python-modules/python-magic { }; + + python-manilaclient = callPackage ../development/python-modules/python-manilaclient { }; + + python-mapnik = let + boost = pkgs.boost175.override { + enablePython = true; + inherit python; + }; + in callPackage ../development/python-modules/python-mapnik { + inherit (pkgs) pkg-config cairo harfbuzz icu libjpeg libpng libtiff libwebp proj zlib; + inherit boost; + mapnik = pkgs.mapnik.override { + inherit python boost; + }; + }; + + python-markdown-math = callPackage ../development/python-modules/python-markdown-math { }; + + python-miio = callPackage ../development/python-modules/python-miio { }; + + python-mimeparse = callPackage ../development/python-modules/python-mimeparse { }; + + python-mnist = callPackage ../development/python-modules/python-mnist { }; + + python-mpv-jsonipc = callPackage ../development/python-modules/python-mpv-jsonipc { }; + + python-multipart = callPackage ../development/python-modules/python-multipart { }; + + python-mystrom = callPackage ../development/python-modules/python-mystrom { }; + + python-nest = callPackage ../development/python-modules/python-nest { }; + + pythonnet = callPackage + ../development/python-modules/pythonnet { + # Using `mono > 5`, tests are failing.. + mono = pkgs.mono5; + }; + + python-nmap = callPackage ../development/python-modules/python-nmap { }; + + python-nomad = callPackage ../development/python-modules/python-nomad { }; + + python-novaclient = callPackage ../development/python-modules/python-novaclient { }; + + python-oauth2 = callPackage ../development/python-modules/python-oauth2 { }; + + pythonocc-core = toPythonModule (callPackage ../development/python-modules/pythonocc-core { + inherit (pkgs) fontconfig rapidjson; + inherit (pkgs.xorg) libX11 libXi libXmu libXext; + inherit (pkgs.darwin.apple_sdk.frameworks) Cocoa; + }); + + python-olm = callPackage ../development/python-modules/python-olm { }; + + python-opendata-transport = callPackage ../development/python-modules/python-opendata-transport { }; + + python-openstackclient = callPackage ../development/python-modules/python-openstackclient { }; + + python_openzwave = callPackage ../development/python-modules/python_openzwave { }; + + python-osc = callPackage ../development/python-modules/python-osc { }; + + python-packer = callPackage ../development/python-modules/python-packer { }; + + python-pam = callPackage ../development/python-modules/python-pam { + inherit (pkgs) pam; + }; + + python-periphery = callPackage ../development/python-modules/python-periphery { }; + + python-picnic-api = callPackage ../development/python-modules/python-picnic-api { }; + + python-pidfile = callPackage ../development/python-modules/python-pidfile { }; + + python-pipedrive = callPackage ../development/python-modules/python-pipedrive { }; + + python-pkcs11 = callPackage ../development/python-modules/python-pkcs11 { }; + + python-prctl = callPackage ../development/python-modules/python-prctl { }; + + python-ptrace = callPackage ../development/python-modules/python-ptrace { }; + + python-pushover = callPackage ../development/python-modules/pushover { }; + + python-rapidjson = callPackage ../development/python-modules/python-rapidjson { }; + + python-redis-lock = callPackage ../development/python-modules/python-redis-lock { }; + + python-registry = callPackage ../development/python-modules/python-registry { }; + + python-rtmidi = callPackage ../development/python-modules/python-rtmidi { + inherit (pkgs.darwin.apple_sdk.frameworks) CoreAudio CoreMIDI CoreServices; + }; + + python-sat = callPackage ../development/python-modules/python-sat { }; + + python-simple-hipchat = callPackage ../development/python-modules/python-simple-hipchat { }; + + python-slugify = callPackage ../development/python-modules/python-slugify { }; + + python-smarttub = callPackage ../development/python-modules/python-smarttub { }; + + python-snap7 = callPackage ../development/python-modules/python-snap7 { + inherit (pkgs) snap7; + }; + + python-snappy = callPackage ../development/python-modules/python-snappy { + inherit (pkgs) snappy; + }; + + python-socketio = callPackage ../development/python-modules/python-socketio { }; + + python-socks = callPackage ../development/python-modules/python-socks { }; + + python-sql = callPackage ../development/python-modules/python-sql { }; + + python-stdnum = callPackage ../development/python-modules/python-stdnum { }; + + python-telegram-bot = callPackage ../development/python-modules/python-telegram-bot { }; + + python-toolbox = callPackage ../development/python-modules/python-toolbox { }; + + python-trovo = callPackage ../development/python-modules/python-trovo { }; + + python-twitch-client = callPackage ../development/python-modules/python-twitch-client { }; + + python-twitter = callPackage ../development/python-modules/python-twitter { }; + + python-u2flib-host = callPackage ../development/python-modules/python-u2flib-host { }; + + python-uinput = callPackage ../development/python-modules/python-uinput { }; + + python-unshare = callPackage ../development/python-modules/python-unshare { }; + + python-utils = callPackage ../development/python-modules/python-utils { }; + + python-vagrant = callPackage ../development/python-modules/python-vagrant { }; + + python-velbus = callPackage ../development/python-modules/python-velbus { }; + + python-vipaccess = callPackage ../development/python-modules/python-vipaccess { }; + + python-vlc = callPackage ../development/python-modules/python-vlc { }; + + python-whois = callPackage ../development/python-modules/python-whois { }; + + python-wifi = callPackage ../development/python-modules/python-wifi { }; + + python-wink = callPackage ../development/python-modules/python-wink { }; + + python-xmp-toolkit = callPackage ../development/python-modules/python-xmp-toolkit { }; + + python-zbar = callPackage ../development/python-modules/python-zbar { }; + + pythran = callPackage ../development/python-modules/pythran { + inherit (pkgs.llvmPackages) openmp; + }; + + pyeapi = callPackage ../development/python-modules/pyeapi { }; + + pyeverlights = callPackage ../development/python-modules/pyeverlights { }; + + pytibber = callPackage ../development/python-modules/pytibber { }; + + pytile = callPackage ../development/python-modules/pytile { }; + + pytimeparse = callPackage ../development/python-modules/pytimeparse { }; + + pytm = callPackage ../development/python-modules/pytm { }; + + pytmx = callPackage ../development/python-modules/pytmx { }; + + pytoml = callPackage ../development/python-modules/pytoml { }; + + pytomlpp = callPackage ../development/python-modules/pytomlpp { }; + + pytools = callPackage ../development/python-modules/pytools { }; + + pytorch = callPackage ../development/python-modules/pytorch { + cudaSupport = pkgs.config.cudaSupport or false; + }; + + pytorch-bin = callPackage ../development/python-modules/pytorch/bin.nix { }; + + pytorch-lightning = callPackage ../development/python-modules/pytorch-lightning { }; + + pytorch-metric-learning = callPackage ../development/python-modules/pytorch-metric-learning { }; + + pytorch-pfn-extras = callPackage ../development/python-modules/pytorch-pfn-extras { }; + + pytorchWithCuda = self.pytorch.override { + cudaSupport = true; + }; + + pytorchWithoutCuda = self.pytorch.override { + cudaSupport = false; + }; + + pytraccar = callPackage ../development/python-modules/pytraccar { }; + + pytradfri = callPackage ../development/python-modules/pytradfri { }; + + pytrafikverket = callPackage ../development/python-modules/pytrafikverket { }; + + pytransportnsw = callPackage ../development/python-modules/pytransportnsw { }; + + pytransportnswv2 = callPackage ../development/python-modules/pytransportnswv2 { }; + + pytrends = callPackage ../development/python-modules/pytrends { }; + + pytricia = callPackage ../development/python-modules/pytricia { }; + + pytube = callPackage ../development/python-modules/pytube { }; + + pytun = callPackage ../development/python-modules/pytun { }; + + pyturbojpeg = callPackage ../development/python-modules/pyturbojpeg { }; + + pytweening = callPackage ../development/python-modules/pytweening { }; + + pytz = callPackage ../development/python-modules/pytz { }; + + pytz-deprecation-shim = callPackage ../development/python-modules/pytz-deprecation-shim { }; + + pytzdata = callPackage ../development/python-modules/pytzdata { }; + + pyu2f = callPackage ../development/python-modules/pyu2f { }; + + pyuavcan = callPackage + ../development/python-modules/pyuavcan { # this version pinpoint to anold version is necessary due to a regression + nunavut = self.nunavut.overridePythonAttrs (old: rec { + version = "0.2.3"; + src = old.src.override { + inherit version; + sha256 = "0x8a9h4mc2r2yz49s9arsbs4bn3h25mvmg4zbgksm9hcyi9536x5"; + }; + }); + }; + + pyudev = callPackage ../development/python-modules/pyudev { + inherit (pkgs) systemd; + }; + + pyunbound = callPackage ../tools/networking/unbound/python.nix { }; + + pyunifi = callPackage ../development/python-modules/pyunifi { }; + + pyupdate = callPackage ../development/python-modules/pyupdate { }; + + pyupgrade = callPackage ../development/python-modules/pyupgrade { }; + + pyuptimerobot = callPackage ../development/python-modules/pyuptimerobot { }; + + pyusb = callPackage ../development/python-modules/pyusb { + inherit (pkgs) libusb1; + }; + + pyuseragents = callPackage ../development/python-modules/pyuseragents { }; + + pyutilib = callPackage ../development/python-modules/pyutilib { }; + + pyuv = callPackage ../development/python-modules/pyuv { }; + + py-vapid = callPackage ../development/python-modules/py-vapid { }; + + pyvcd = callPackage ../development/python-modules/pyvcd { }; + + pyvcf = callPackage ../development/python-modules/pyvcf { }; + + pyvera = callPackage ../development/python-modules/pyvera { }; + + pyverilog = callPackage ../development/python-modules/pyverilog { }; + + pyversasense = callPackage ../development/python-modules/pyversasense { }; + + pyvesync = callPackage ../development/python-modules/pyvesync { }; + + pyvex = callPackage ../development/python-modules/pyvex { }; + + pyvicare = callPackage ../development/python-modules/pyvicare { }; + + pyvis = callPackage ../development/python-modules/pyvis { }; + + pyvisa = callPackage ../development/python-modules/pyvisa { }; + + pyvisa-py = callPackage ../development/python-modules/pyvisa-py { }; + + pyviz-comms = callPackage ../development/python-modules/pyviz-comms { }; + + pyvizio = callPackage ../development/python-modules/pyvizio { }; + + pyvips = callPackage ../development/python-modules/pyvips { + inherit (pkgs) vips glib; + }; + + pyvlx = callPackage ../development/python-modules/pyvlx { }; + + pyvmomi = callPackage ../development/python-modules/pyvmomi { }; + + pyvolumio = callPackage ../development/python-modules/pyvolumio { }; + + pyvoro = callPackage ../development/python-modules/pyvoro { }; + + pywal = callPackage ../development/python-modules/pywal { }; + + pywatchman = callPackage ../development/python-modules/pywatchman { }; + + pywavelets = callPackage ../development/python-modules/pywavelets { }; + + pywayland = callPackage ../development/python-modules/pywayland { }; + + pywbem = callPackage ../development/python-modules/pywbem { + inherit (pkgs) libxml2; + }; + + pyweatherflowrest = callPackage ../development/python-modules/pyweatherflowrest { }; + + pywebpush = callPackage ../development/python-modules/pywebpush { }; + + pywebview = callPackage ../development/python-modules/pywebview { }; + + pywemo = callPackage ../development/python-modules/pywemo { }; + + pywick = callPackage ../development/python-modules/pywick { }; + + pywilight = callPackage ../development/python-modules/pywilight { }; + + pywinrm = callPackage ../development/python-modules/pywinrm { }; + + pywizlight = callPackage ../development/python-modules/pywizlight { }; + + pywlroots = callPackage ../development/python-modules/pywlroots { }; + + pyxattr = callPackage ../development/python-modules/pyxattr { }; + + pyworld = callPackage ../development/python-modules/pyworld { }; + + pyx = callPackage ../development/python-modules/pyx { }; + + pyxb = callPackage ../development/python-modules/pyxb { }; + + pyxbe = callPackage ../development/python-modules/pyxbe { }; + + pyxdg = callPackage ../development/python-modules/pyxdg { }; + + pyxeoma = callPackage ../development/python-modules/pyxeoma { }; + + pyxiaomigateway = callPackage ../development/python-modules/pyxiaomigateway { }; + + pyxl3 = callPackage ../development/python-modules/pyxl3 { }; + + pyxnat = callPackage ../development/python-modules/pyxnat { }; + + pyyaml = callPackage ../development/python-modules/pyyaml { }; + + pyyaml-env-tag = callPackage ../development/python-modules/pyyaml-env-tag { }; + + pyzerproc = callPackage ../development/python-modules/pyzerproc { }; + + pyzmq = callPackage ../development/python-modules/pyzmq { }; + + pyzufall = callPackage ../development/python-modules/pyzufall { }; + + qcelemental = callPackage ../development/python-modules/qcelemental { }; + + qcengine = callPackage ../development/python-modules/qcengine { }; + + qcs-api-client = callPackage ../development/python-modules/qcs-api-client { }; + + qdarkstyle = callPackage ../development/python-modules/qdarkstyle { }; + + qdldl = callPackage ../development/python-modules/qdldl { }; + + qds_sdk = callPackage ../development/python-modules/qds_sdk { }; + + qiling = callPackage ../development/python-modules/qiling { }; + + qimage2ndarray = callPackage ../development/python-modules/qimage2ndarray { }; + + qiskit = callPackage ../development/python-modules/qiskit { }; + + qiskit-aer = callPackage ../development/python-modules/qiskit-aer { }; + + qiskit-finance = callPackage ../development/python-modules/qiskit-finance { }; + + qiskit-ibmq-provider = callPackage ../development/python-modules/qiskit-ibmq-provider { }; + + qiskit-ignis = callPackage ../development/python-modules/qiskit-ignis { }; + + qiskit-machine-learning = callPackage ../development/python-modules/qiskit-machine-learning { }; + + qiskit-nature = callPackage ../development/python-modules/qiskit-nature { }; + + qiskit-optimization = callPackage ../development/python-modules/qiskit-optimization { }; + + qiskit-terra = callPackage ../development/python-modules/qiskit-terra { }; + + qnap-qsw = callPackage ../development/python-modules/qnap-qsw{ }; + + qrcode = callPackage ../development/python-modules/qrcode { }; + + qreactor = callPackage ../development/python-modules/qreactor { }; + + qscintilla-qt4 = callPackage ../development/python-modules/qscintilla-qt4 { }; + + qscintilla-qt5 = pkgs.libsForQt5.callPackage ../development/python-modules/qscintilla-qt5 { + pythonPackages = self; + }; + + qscintilla = self.qscintilla-qt5; + + qt5reactor = callPackage ../development/python-modules/qt5reactor { }; + + qtawesome = callPackage ../development/python-modules/qtawesome { }; + + qtconsole = callPackage ../development/python-modules/qtconsole { }; + + qtpy = callPackage ../development/python-modules/qtpy { }; + + qualysclient = callPackage ../development/python-modules/qualysclient { }; + + quamash = callPackage ../development/python-modules/quamash { }; + + quandl = callPackage ../development/python-modules/quandl { }; + + # TODO: rename this + Quandl = callPackage ../development/python-modules/quandl { }; # alias for an older package which did not support Python 3 + + quantities = callPackage ../development/python-modules/quantities { }; + + quantum-gateway = callPackage ../development/python-modules/quantum-gateway { }; + + querystring_parser = callPackage ../development/python-modules/querystring-parser { }; + + questionary = callPackage ../development/python-modules/questionary { }; + + queuelib = callPackage ../development/python-modules/queuelib { }; + + qutip = callPackage ../development/python-modules/qutip { }; + + qmk-dotty-dict = callPackage ../development/python-modules/qmk-dotty-dict { }; + + r2pipe = callPackage ../development/python-modules/r2pipe { }; + + rabbitpy = callPackage ../development/python-modules/rabbitpy { }; + + rachiopy = callPackage ../development/python-modules/rachiopy { }; + + radicale_infcloud = callPackage ../development/python-modules/radicale_infcloud { }; + + radio_beam = callPackage ../development/python-modules/radio_beam { }; + + radios = callPackage ../development/python-modules/radios { }; + + radiotherm = callPackage ../development/python-modules/radiotherm { }; + + radish-bdd = callPackage ../development/python-modules/radish-bdd { }; + + railroad-diagrams = callPackage ../development/python-modules/railroad-diagrams { }; + + rainbowstream = callPackage ../development/python-modules/rainbowstream { }; + + ramlfications = callPackage ../development/python-modules/ramlfications { }; + + random2 = callPackage ../development/python-modules/random2 { }; + + rangehttpserver = callPackage ../development/python-modules/rangehttpserver { }; + + rapidfuzz = callPackage ../development/python-modules/rapidfuzz { }; + + rarfile = callPackage ../development/python-modules/rarfile { + inherit (pkgs) libarchive; + }; + + rasterio = callPackage ../development/python-modules/rasterio { }; + + ratelim = callPackage ../development/python-modules/ratelim { }; + + ratelimit = callPackage ../development/python-modules/ratelimit { }; + + ratelimiter = callPackage ../development/python-modules/ratelimiter { }; + + raven = callPackage ../development/python-modules/raven { }; + + rawkit = callPackage ../development/python-modules/rawkit { }; + + rbtools = callPackage ../development/python-modules/rbtools { }; + + rcssmin = callPackage ../development/python-modules/rcssmin { }; + + rdflib = callPackage ../development/python-modules/rdflib { }; + + rdkit = callPackage ../development/python-modules/rdkit { }; + + re-assert = callPackage ../development/python-modules/re-assert { }; + + readability-lxml = callPackage ../development/python-modules/readability-lxml { }; + + readchar = callPackage ../development/python-modules/readchar { }; + + readlike = callPackage ../development/python-modules/readlike { }; + + readme = callPackage ../development/python-modules/readme { }; + + readme_renderer = callPackage ../development/python-modules/readme_renderer { }; + + readthedocs-sphinx-ext = callPackage ../development/python-modules/readthedocs-sphinx-ext { }; + + rebulk = callPackage ../development/python-modules/rebulk { }; + + recaptcha_client = callPackage ../development/python-modules/recaptcha_client { }; + + recoll = toPythonModule (pkgs.recoll.override { + python3Packages = self; + }); + + recommonmark = callPackage ../development/python-modules/recommonmark { }; + + redbaron = callPackage ../development/python-modules/redbaron { }; + + redis = callPackage ../development/python-modules/redis { }; + + rednose = callPackage ../development/python-modules/rednose { }; + + reedsolo = callPackage ../development/python-modules/reedsolo { }; + + reflink = callPackage ../development/python-modules/reflink { }; + + regenmaschine = callPackage ../development/python-modules/regenmaschine { }; + + regex = callPackage ../development/python-modules/regex { }; + + regional = callPackage ../development/python-modules/regional { }; + + reikna = callPackage ../development/python-modules/reikna { }; + + related = callPackage ../development/python-modules/related { }; + + relatorio = callPackage ../development/python-modules/relatorio { }; + + remarshal = callPackage ../development/python-modules/remarshal { }; + + renault-api = callPackage ../development/python-modules/renault-api { }; + + rencode = callPackage ../development/python-modules/rencode { }; + + reolink = callPackage ../development/python-modules/reolink { }; + + reparser = callPackage ../development/python-modules/reparser { }; + + repocheck = callPackage ../development/python-modules/repocheck { }; + + reportlab = callPackage ../development/python-modules/reportlab { }; + + repoze_lru = callPackage ../development/python-modules/repoze_lru { }; + + repoze_sphinx_autointerface = callPackage ../development/python-modules/repoze_sphinx_autointerface { }; + + repoze_who = callPackage ../development/python-modules/repoze_who { }; + + reproject = callPackage ../development/python-modules/reproject { }; + + requests-aws4auth = callPackage ../development/python-modules/requests-aws4auth { }; + + requests-cache = callPackage ../development/python-modules/requests-cache { }; + + requests-hawk = callPackage ../development/python-modules/requests-hawk { }; + + requests = callPackage ../development/python-modules/requests { }; + + requests_download = callPackage ../development/python-modules/requests_download { }; + + requestsexceptions = callPackage ../development/python-modules/requestsexceptions { }; + + requests-file = callPackage ../development/python-modules/requests-file { }; + + requests-futures = callPackage ../development/python-modules/requests-futures { }; + + requests-http-signature = callPackage ../development/python-modules/requests-http-signature { }; + + requests-kerberos = callPackage ../development/python-modules/requests-kerberos { }; + + requests-mock = callPackage ../development/python-modules/requests-mock { }; + + requests_ntlm = callPackage ../development/python-modules/requests_ntlm { }; + + requests_oauthlib = callPackage ../development/python-modules/requests-oauthlib { }; + + requests-pkcs12 = callPackage ../development/python-modules/requests-pkcs12 { }; + + requests-toolbelt = callPackage ../development/python-modules/requests-toolbelt { }; + + requests-unixsocket = callPackage ../development/python-modules/requests-unixsocket { }; + + requirements-detector = callPackage ../development/python-modules/requirements-detector { }; + + requirements-parser = callPackage ../development/python-modules/requirements-parser { }; + + resampy = callPackage ../development/python-modules/resampy { }; + + resolvelib = callPackage ../development/python-modules/resolvelib { }; + + responses = callPackage ../development/python-modules/responses { }; + + respx = callPackage ../development/python-modules/respx { }; + + restfly = callPackage ../development/python-modules/restfly { }; + + restrictedpython = callPackage ../development/python-modules/restrictedpython { }; + + restructuredtext_lint = callPackage ../development/python-modules/restructuredtext_lint { }; + + restview = callPackage ../development/python-modules/restview { }; + + rethinkdb = callPackage ../development/python-modules/rethinkdb { }; + + retry = callPackage ../development/python-modules/retry { }; + + retry_decorator = callPackage ../development/python-modules/retry_decorator { }; + + retrying = callPackage ../development/python-modules/retrying { }; + + retworkx = callPackage ../development/python-modules/retworkx { }; + + rfc3339 = callPackage ../development/python-modules/rfc3339 { }; + + rfc3339-validator = callPackage ../development/python-modules/rfc3339-validator { }; + + rfc3986 = callPackage ../development/python-modules/rfc3986 { }; + + rfc3987 = callPackage ../development/python-modules/rfc3987 { }; + + rfc6555 = callPackage ../development/python-modules/rfc6555 { }; + + rfc7464 = callPackage ../development/python-modules/rfc7464 { }; + + rfcat = callPackage ../development/python-modules/rfcat { }; + + rflink = callPackage ../development/python-modules/rflink { }; + + rich = callPackage ../development/python-modules/rich { }; + + rich-rst = callPackage ../development/python-modules/rich-rst { }; + + rig = callPackage ../development/python-modules/rig { }; + + ring-doorbell = callPackage ../development/python-modules/ring-doorbell { }; + + riprova = callPackage ../development/python-modules/riprova { }; + + ripser = callPackage ../development/python-modules/ripser { }; + + rising = callPackage ../development/python-modules/rising { }; + + ritassist = callPackage ../development/python-modules/ritassist { }; + + rivet = toPythonModule (pkgs.rivet.override { + python3 = python; + }); + + rjsmin = callPackage ../development/python-modules/rjsmin { }; + + rki-covid-parser = callPackage ../development/python-modules/rki-covid-parser { }; + + rl-coach = callPackage ../development/python-modules/rl-coach { }; + + rlp = callPackage ../development/python-modules/rlp { }; + + rnc2rng = callPackage ../development/python-modules/rnc2rng { }; + + rnginline = callPackage ../development/python-modules/rnginline { }; + + robomachine = callPackage ../development/python-modules/robomachine { }; + + robot-detection = callPackage ../development/python-modules/robot-detection { }; + + robotframework = callPackage ../development/python-modules/robotframework { }; + + robotframework-databaselibrary = callPackage ../development/python-modules/robotframework-databaselibrary { }; + + robotframework-requests = callPackage ../development/python-modules/robotframework-requests { }; + + robotframework-selenium2library = callPackage ../development/python-modules/robotframework-selenium2library { }; + + robotframework-seleniumlibrary = callPackage ../development/python-modules/robotframework-seleniumlibrary { }; + + robotframework-sshlibrary = callPackage ../development/python-modules/robotframework-sshlibrary { }; + + robotframework-tools = callPackage ../development/python-modules/robotframework-tools { }; + + robotstatuschecker = callPackage ../development/python-modules/robotstatuschecker { }; + + robotsuite = callPackage ../development/python-modules/robotsuite { }; + + rocket-errbot = callPackage ../development/python-modules/rocket-errbot { }; + + roku = callPackage ../development/python-modules/roku { }; + + rokuecp = callPackage ../development/python-modules/rokuecp { }; + + rollbar = callPackage ../development/python-modules/rollbar { }; + + roman = callPackage ../development/python-modules/roman { }; + + roombapy = callPackage ../development/python-modules/roombapy { }; + + roonapi = callPackage ../development/python-modules/roonapi { }; + + ronin = callPackage ../development/python-modules/ronin { }; + + rope = callPackage ../development/python-modules/rope { }; + + ropgadget = callPackage ../development/python-modules/ropgadget { }; + + ropper = callPackage ../development/python-modules/ropper { }; + + routes = callPackage ../development/python-modules/routes { }; + + rpcq = callPackage ../development/python-modules/rpcq { }; + + rpdb = callPackage ../development/python-modules/rpdb { }; + + rpi-bad-power = callPackage ../development/python-modules/rpi-bad-power { }; + + rply = callPackage ../development/python-modules/rply { }; + + rpm = toPythonModule (pkgs.rpm.override { + inherit python; + }); + + rpmfile = callPackage ../development/python-modules/rpmfile { }; + + rpmfluff = callPackage ../development/python-modules/rpmfluff { }; + + rpy2 = callPackage ../development/python-modules/rpy2 { }; + + rpyc = callPackage ../development/python-modules/rpyc { }; + + rq = callPackage ../development/python-modules/rq { }; + + rsa = callPackage ../development/python-modules/rsa { }; + + rst2ansi = callPackage ../development/python-modules/rst2ansi { }; + + rstcheck = callPackage ../development/python-modules/rstcheck { }; + + rtmidi-python = callPackage ../development/python-modules/rtmidi-python { + inherit (pkgs.darwin.apple_sdk.frameworks) CoreAudio CoreMIDI CoreServices; + }; + + rtoml = callPackage ../development/python-modules/rtoml { }; + + Rtree = callPackage ../development/python-modules/Rtree { + inherit (pkgs) libspatialindex; + }; + + rtslib = callPackage ../development/python-modules/rtslib { }; + + rtsp-to-webrtc = callPackage ../development/python-modules/rtsp-to-webrtc { }; + + ruamel-base = callPackage ../development/python-modules/ruamel-base { }; + + ruamel-yaml = callPackage ../development/python-modules/ruamel-yaml { }; + + ruamel-yaml-clib = callPackage ../development/python-modules/ruamel-yaml-clib { }; + + rubymarshal = callPackage ../development/python-modules/rubymarshal { }; + + ruffus = callPackage ../development/python-modules/ruffus { }; + + runway-python = callPackage ../development/python-modules/runway-python { }; + + ruyaml = callPackage ../development/python-modules/ruyaml { }; + + rx = callPackage ../development/python-modules/rx { }; + + rxv = callPackage ../development/python-modules/rxv { }; + + rzpipe = callPackage ../development/python-modules/rzpipe { }; + + s2clientprotocol = callPackage ../development/python-modules/s2clientprotocol { }; + + s3fs = callPackage ../development/python-modules/s3fs { }; + + s3transfer = callPackage ../development/python-modules/s3transfer { }; + + sabyenc3 = callPackage ../development/python-modules/sabyenc3 { }; + + sabyenc = callPackage ../development/python-modules/sabyenc { }; + + sacn = callPackage ../development/python-modules/sacn { }; + + sacremoses = callPackage ../development/python-modules/sacremoses { }; + + safe = callPackage ../development/python-modules/safe { }; + + safety = callPackage ../development/python-modules/safety { }; + + sagemaker = callPackage ../development/python-modules/sagemaker { }; + + salmon-mail = callPackage ../development/python-modules/salmon-mail { }; + + sane = callPackage ../development/python-modules/sane { + inherit (pkgs) sane-backends; + }; + + saneyaml = callPackage ../development/python-modules/saneyaml { }; + + sampledata = callPackage ../development/python-modules/sampledata { }; + + samplerate = callPackage ../development/python-modules/samplerate { }; + + samsungctl = callPackage ../development/python-modules/samsungctl { }; + + samsungtvws = callPackage ../development/python-modules/samsungtvws { }; + + sanic = callPackage ../development/python-modules/sanic { + # Don't pass any `sanic` to avoid dependency loops. `sanic-testing` + # has special logic to disable tests when this is the case. + sanic-testing = self.sanic-testing.override { sanic = null; }; + }; + + sanic-auth = callPackage ../development/python-modules/sanic-auth { }; + + sanic-routing = callPackage ../development/python-modules/sanic-routing { }; + + sanic-testing = callPackage ../development/python-modules/sanic-testing { }; + + sapi-python-client = callPackage ../development/python-modules/sapi-python-client { }; + + sarif-om = callPackage ../development/python-modules/sarif-om { }; + + sarge = callPackage ../development/python-modules/sarge { }; + + sasmodels = callPackage ../development/python-modules/sasmodels { }; + + scales = callPackage ../development/python-modules/scales { }; + + scancode-toolkit = callPackage ../development/python-modules/scancode-toolkit { }; + + scapy = callPackage ../development/python-modules/scapy { }; + + schedule = callPackage ../development/python-modules/schedule { }; + + schema = callPackage ../development/python-modules/schema { }; + + schema-salad = callPackage ../development/python-modules/schema-salad { }; + + schiene = callPackage ../development/python-modules/schiene { }; + + scikit-bio = callPackage ../development/python-modules/scikit-bio { }; + + scikit-build = callPackage ../development/python-modules/scikit-build { }; + + scikit-fmm = callPackage ../development/python-modules/scikit-fmm { }; + + scikit-fuzzy = callPackage ../development/python-modules/scikit-fuzzy { }; + + scikit-hep-testdata = callPackage ../development/python-modules/scikit-hep-testdata { }; + + scikitimage = callPackage ../development/python-modules/scikit-image { }; + + scikit-learn = callPackage ../development/python-modules/scikit-learn { + inherit (pkgs) gfortran glibcLocales; + }; + + scikit-learn-extra = callPackage ../development/python-modules/scikit-learn-extra { }; + + scikit-optimize = callPackage ../development/python-modules/scikit-optimize { }; + + scikits-odes = callPackage ../development/python-modules/scikits-odes { }; + + scikit-tda = callPackage ../development/python-modules/scikit-tda { }; + + scipy = callPackage ../development/python-modules/scipy { }; + + scmrepo = callPackage ../development/python-modules/scmrepo { }; + + scour = callPackage ../development/python-modules/scour { }; + + scp = callPackage ../development/python-modules/scp { }; + + scramp = callPackage ../development/python-modules/scramp { }; + + scrapy = callPackage ../development/python-modules/scrapy { }; + + scrapy-deltafetch = callPackage ../development/python-modules/scrapy-deltafetch { }; + + scrapy-fake-useragent = callPackage ../development/python-modules/scrapy-fake-useragent { }; + + scrapy-splash = callPackage ../development/python-modules/scrapy-splash { }; + + screeninfo = callPackage ../development/python-modules/screeninfo { }; + + screenlogicpy = callPackage ../development/python-modules/screenlogicpy { }; + + scripttest = callPackage ../development/python-modules/scripttest { }; + + scikit-survival = callPackage ../development/python-modules/scikit-survival { }; + + scs = callPackage ../development/python-modules/scs { }; + + sdnotify = callPackage ../development/python-modules/sdnotify { }; + + seaborn = callPackage ../development/python-modules/seaborn { }; + + seabreeze = callPackage ../development/python-modules/seabreeze { }; + + seaserv = toPythonModule (pkgs.seafile-server.override { + python3 = self.python; + }); + + seatconnect = callPackage ../development/python-modules/seatconnect { }; + + seccomp = callPackage ../development/python-modules/seccomp { }; + + secp256k1 = callPackage ../development/python-modules/secp256k1 { + inherit (pkgs) secp256k1; + }; + + secretstorage = callPackage ../development/python-modules/secretstorage { }; + + secure = callPackage ../development/python-modules/secure { }; + + seekpath = callPackage ../development/python-modules/seekpath { }; + + segments = callPackage ../development/python-modules/segments { }; + + selectors2 = callPackage ../development/python-modules/selectors2 { }; + + selenium = callPackage ../development/python-modules/selenium { }; + + semantic-version = callPackage ../development/python-modules/semantic-version { }; + + semver = callPackage ../development/python-modules/semver { }; + + send2trash = callPackage ../development/python-modules/send2trash { }; + + sendgrid = callPackage ../development/python-modules/sendgrid { }; + + sense-energy = callPackage ../development/python-modules/sense-energy { }; + + sentencepiece = callPackage ../development/python-modules/sentencepiece { + inherit (pkgs) sentencepiece; + }; + + sentinel = callPackage ../development/python-modules/sentinel { }; + + sentinels = callPackage ../development/python-modules/sentinels { }; + + sentry-sdk = callPackage ../development/python-modules/sentry-sdk { }; + + sepaxml = callPackage ../development/python-modules/sepaxml { }; + + seqdiag = callPackage ../development/python-modules/seqdiag { }; + + seqeval = callPackage ../development/python-modules/seqeval { }; + + sequoia = disabledIf isPyPy (toPythonModule (pkgs.sequoia.override { + pythonPackages = self; + pythonSupport = true; + })); + + serpent = callPackage ../development/python-modules/serpent { }; + + serpy = callPackage ../development/python-modules/serpy { }; + + serverlessrepo = callPackage ../development/python-modules/serverlessrepo { }; + + service-identity = callPackage ../development/python-modules/service_identity { }; + + setproctitle = callPackage ../development/python-modules/setproctitle { }; + + setupmeta = callPackage ../development/python-modules/setupmeta { }; + + setuptools-declarative-requirements = callPackage ../development/python-modules/setuptools-declarative-requirements { }; + + setuptools-git = callPackage ../development/python-modules/setuptools-git { }; + + setuptools-lint = callPackage ../development/python-modules/setuptools-lint { }; + + setuptools-rust = callPackage ../development/python-modules/setuptools-rust { }; + + setuptools-scm = callPackage ../development/python-modules/setuptools-scm { }; + + setuptools-scm-git-archive = callPackage ../development/python-modules/setuptools-scm-git-archive { }; + + setuptoolsTrial = callPackage ../development/python-modules/setuptoolstrial { }; + + sexpdata = callPackage ../development/python-modules/sexpdata { }; + + sfepy = callPackage ../development/python-modules/sfepy { }; + + sgmllib3k = callPackage ../development/python-modules/sgmllib3k { }; + + shamir-mnemonic = callPackage ../development/python-modules/shamir-mnemonic { }; + + shap = callPackage ../development/python-modules/shap { }; + + shapely = callPackage ../development/python-modules/shapely { }; + + sharedmem = callPackage ../development/python-modules/sharedmem { }; + + sharkiqpy = callPackage ../development/python-modules/sharkiqpy { }; + + sh = callPackage ../development/python-modules/sh { }; + + shellescape = callPackage ../development/python-modules/shellescape { }; + + shellingham = callPackage ../development/python-modules/shellingham { }; + + shiboken2 = toPythonModule (callPackage ../development/python-modules/shiboken2 { + inherit (pkgs) cmake llvmPackages qt5; + }); + + shippai = callPackage ../development/python-modules/shippai { }; + + shodan = callPackage ../development/python-modules/shodan { }; + + shortuuid = callPackage ../development/python-modules/shortuuid { }; + + shouldbe = callPackage ../development/python-modules/shouldbe { }; + + should-dsl = callPackage ../development/python-modules/should-dsl { }; + + showit = callPackage ../development/python-modules/showit { }; + + shtab = callPackage ../development/python-modules/shtab { }; + + shutilwhich = callPackage ../development/python-modules/shutilwhich { }; + + sievelib = callPackage ../development/python-modules/sievelib { }; + + signedjson = callPackage ../development/python-modules/signedjson { }; + + sigrok = callPackage ../development/python-modules/sigrok { }; + + sigtools = callPackage ../development/python-modules/sigtools { }; + + simanneal = callPackage ../development/python-modules/simanneal { }; + + simber = callPackage ../development/python-modules/simber { }; + + simpleaudio = callPackage ../development/python-modules/simpleaudio { }; + + simplebayes = callPackage ../development/python-modules/simplebayes { }; + + simpleeval = callPackage ../development/python-modules/simpleeval { }; + + simplefix = callPackage ../development/python-modules/simplefix { }; + + simplegeneric = callPackage ../development/python-modules/simplegeneric { }; + + simplehound = callPackage ../development/python-modules/simplehound { }; + + simplejson = callPackage ../development/python-modules/simplejson { }; + + simplekml = callPackage ../development/python-modules/simplekml { }; + + simplenote = callPackage ../development/python-modules/simplenote { }; + + simple-di = callPackage ../development/python-modules/simple-di { }; + + simple-rest-client = callPackage ../development/python-modules/simple-rest-client { }; + + simple-salesforce = callPackage ../development/python-modules/simple-salesforce { }; + + simple-websocket-server = callPackage ../development/python-modules/simple-websocket-server { }; + + simplisafe-python = callPackage ../development/python-modules/simplisafe-python { }; + + simpy = callPackage ../development/python-modules/simpy { }; + + single-version = callPackage ../development/python-modules/single-version { }; + + signify = callPackage ../development/python-modules/signify { }; + + siosocks = callPackage ../development/python-modules/siosocks { }; + + sip = callPackage ../development/python-modules/sip { }; + + sip_4 = callPackage ../development/python-modules/sip/4.x.nix { }; + + six = callPackage ../development/python-modules/six { }; + + skein = callPackage ../development/python-modules/skein { + jre = pkgs.jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + + skidl = callPackage ../development/python-modules/skidl { }; + + sklearn-deap = callPackage ../development/python-modules/sklearn-deap { }; + + skodaconnect = callPackage ../development/python-modules/skodaconnect { }; + + skorch = callPackage ../development/python-modules/skorch { }; + + skybellpy = callPackage ../development/python-modules/skybellpy { }; + + skytemple-dtef = callPackage ../development/python-modules/skytemple-dtef { }; + + skytemple-eventserver = callPackage ../development/python-modules/skytemple-eventserver { }; + + skytemple-files = callPackage ../development/python-modules/skytemple-files { }; + + skytemple-icons = callPackage ../development/python-modules/skytemple-icons { }; + + skytemple-rust = callPackage ../development/python-modules/skytemple-rust { }; + + skytemple-ssb-debugger = callPackage ../development/python-modules/skytemple-ssb-debugger { }; + + slack-sdk = callPackage ../development/python-modules/slack-sdk { }; + + slackclient = callPackage ../development/python-modules/slackclient { }; + + sleekxmpp = callPackage ../development/python-modules/sleekxmpp { }; + + sleepyq = callPackage ../development/python-modules/sleepyq { }; + + slicedimage = callPackage ../development/python-modules/slicedimage { }; + + slicer = callPackage ../development/python-modules/slicer { }; + + slicerator = callPackage ../development/python-modules/slicerator { }; + + slither-analyzer = callPackage ../development/python-modules/slither-analyzer { }; + + slixmpp = callPackage ../development/python-modules/slixmpp { + inherit (pkgs) gnupg; + }; + + slob = callPackage ../development/python-modules/slob { }; + + slowapi = callPackage ../development/python-modules/slowapi { }; + + slugid = callPackage ../development/python-modules/slugid { }; + + sly = callPackage ../development/python-modules/sly { }; + + smart-meter-texas = callPackage ../development/python-modules/smart-meter-texas { }; + + smart-open = callPackage ../development/python-modules/smart-open { }; + + smarthab = callPackage ../development/python-modules/smarthab { }; + + smartypants = callPackage ../development/python-modules/smartypants { }; + + smbprotocol = callPackage ../development/python-modules/smbprotocol { }; + + smbus-cffi = callPackage ../development/python-modules/smbus-cffi { }; + + smbus2 = callPackage ../development/python-modules/smbus2 { }; + + smdebug-rulesconfig = callPackage ../development/python-modules/smdebug-rulesconfig { }; + + smhi-pkg = callPackage ../development/python-modules/smhi-pkg { }; + + smmap = callPackage ../development/python-modules/smmap { }; + + smpplib = callPackage ../development/python-modules/smpplib { }; + + snack = toPythonModule (pkgs.newt.override { + inherit (self) python; + }); + + snakebite = callPackage ../development/python-modules/snakebite { }; + + snakeviz = callPackage ../development/python-modules/snakeviz { }; + + snapcast = callPackage ../development/python-modules/snapcast { }; + + snapshottest = callPackage ../development/python-modules/snapshottest { }; + + sniffio = callPackage ../development/python-modules/sniffio { }; + + snitun = callPackage ../development/python-modules/snitun { }; + + snowballstemmer = callPackage ../development/python-modules/snowballstemmer { }; + + snowflake-connector-python = callPackage ../development/python-modules/snowflake-connector-python { }; + + snowflake-sqlalchemy = callPackage ../development/python-modules/snowflake-sqlalchemy { }; + + snscrape = callPackage ../development/python-modules/snscrape { }; + + snuggs = callPackage ../development/python-modules/snuggs { }; + + soapysdr = toPythonModule (pkgs.soapysdr.override { + python = self.python; + usePython = true; + }); + + soapysdr-with-plugins = toPythonModule (pkgs.soapysdr-with-plugins.override { + python = self.python; + usePython = true; + }); + + socketio-client = callPackage ../development/python-modules/socketio-client { }; + + socialscan = callPackage ../development/python-modules/socialscan { }; + + socid-extractor = callPackage ../development/python-modules/socid-extractor { }; + + sockjs = callPackage ../development/python-modules/sockjs { }; + + sockjs-tornado = callPackage ../development/python-modules/sockjs-tornado { }; + + socksipy-branch = callPackage ../development/python-modules/socksipy-branch { }; + + soco = callPackage ../development/python-modules/soco { }; + + softlayer = callPackage ../development/python-modules/softlayer { }; + + solaredge = callPackage ../development/python-modules/solaredge { }; + + solax = callPackage ../development/python-modules/solax { }; + + solc-select = callPackage ../development/python-modules/solc-select { }; + + solo-python = disabledIf (!pythonAtLeast "3.6") (callPackage ../development/python-modules/solo-python { }); + + somajo = callPackage ../development/python-modules/somajo { }; + + somecomfort = callPackage ../development/python-modules/somecomfort { }; + + somfy-mylink-synergy = callPackage ../development/python-modules/somfy-mylink-synergy { }; + + sonarr = callPackage ../development/python-modules/sonarr { }; + + sopel = callPackage ../development/python-modules/sopel { }; + + sorl_thumbnail = callPackage ../development/python-modules/sorl_thumbnail { }; + + sortedcollections = callPackage ../development/python-modules/sortedcollections { }; + + sortedcontainers = callPackage ../development/python-modules/sortedcontainers { }; + + sounddevice = callPackage ../development/python-modules/sounddevice { }; + + soundfile = callPackage ../development/python-modules/soundfile { }; + + soupsieve = callPackage ../development/python-modules/soupsieve { }; + + spacy = callPackage ../development/python-modules/spacy { }; + + spacy-alignments = callPackage ../development/python-modules/spacy-alignments { }; + + spacy-legacy = callPackage ../development/python-modules/spacy/legacy.nix { }; + + spacy-loggers = callPackage ../development/python-modules/spacy-loggers { }; + + spacy_models = callPackage ../development/python-modules/spacy/models.nix { }; + + spacy-pkuseg = callPackage ../development/python-modules/spacy-pkuseg { }; + + spacy-transformers = callPackage ../development/python-modules/spacy-transformers { }; + + spake2 = callPackage ../development/python-modules/spake2 { }; + + spark_parser = callPackage ../development/python-modules/spark_parser { }; + + sparklines = callPackage ../development/python-modules/sparklines { }; + + SPARQLWrapper = callPackage ../development/python-modules/sparqlwrapper { }; + + sparse = callPackage ../development/python-modules/sparse { }; + + spdx-tools = callPackage ../development/python-modules/spdx-tools { }; + + speaklater = callPackage ../development/python-modules/speaklater { }; + + speaklater3 = callPackage ../development/python-modules/speaklater3 { }; + + spectral-cube = callPackage ../development/python-modules/spectral-cube { }; + + speedtest-cli = callPackage ../development/python-modules/speedtest-cli { }; + + spglib = callPackage ../development/python-modules/spglib { }; + + sphfile = callPackage ../development/python-modules/sphfile { }; + + spiderpy = callPackage ../development/python-modules/spiderpy { }; + + spinners = callPackage ../development/python-modules/spinners { }; + + sphinxcontrib-actdiag = callPackage ../development/python-modules/sphinxcontrib-actdiag { }; + + sphinxcontrib-apidoc = callPackage ../development/python-modules/sphinxcontrib-apidoc { }; + + sphinxcontrib-applehelp = callPackage ../development/python-modules/sphinxcontrib-applehelp { }; + + sphinxcontrib-autoapi = callPackage ../development/python-modules/sphinxcontrib-autoapi { }; + + sphinxcontrib-bayesnet = callPackage ../development/python-modules/sphinxcontrib-bayesnet { }; + + sphinxcontrib-bibtex = callPackage ../development/python-modules/sphinxcontrib-bibtex { }; + + sphinxcontrib-blockdiag = callPackage ../development/python-modules/sphinxcontrib-blockdiag { }; + + sphinxcontrib-devhelp = callPackage ../development/python-modules/sphinxcontrib-devhelp { }; + + sphinxcontrib-excel-table = callPackage ../development/python-modules/sphinxcontrib-excel-table { }; + + sphinxcontrib-fulltoc = callPackage ../development/python-modules/sphinxcontrib-fulltoc { }; + + sphinxcontrib-htmlhelp = callPackage ../development/python-modules/sphinxcontrib-htmlhelp { }; + + sphinxcontrib_httpdomain = callPackage ../development/python-modules/sphinxcontrib_httpdomain { }; + + sphinxcontrib-jsmath = callPackage ../development/python-modules/sphinxcontrib-jsmath { }; + + sphinxcontrib-katex = callPackage ../development/python-modules/sphinxcontrib-katex { }; + + sphinxcontrib-nwdiag = callPackage ../development/python-modules/sphinxcontrib-nwdiag { }; + + sphinxcontrib_newsfeed = callPackage ../development/python-modules/sphinxcontrib_newsfeed { }; + + sphinxcontrib-openapi = callPackage ../development/python-modules/sphinxcontrib-openapi { }; + + sphinxcontrib-plantuml = callPackage ../development/python-modules/sphinxcontrib-plantuml { + inherit (pkgs) plantuml; + }; + + sphinxcontrib-programoutput = callPackage ../development/python-modules/sphinxcontrib-programoutput { }; + + sphinxcontrib-qthelp = callPackage ../development/python-modules/sphinxcontrib-qthelp { }; + + sphinxcontrib-serializinghtml = callPackage ../development/python-modules/sphinxcontrib-serializinghtml { }; + + sphinxcontrib-seqdiag = callPackage ../development/python-modules/sphinxcontrib-seqdiag { }; + + sphinxcontrib-spelling = callPackage ../development/python-modules/sphinxcontrib-spelling { }; + + sphinxcontrib-tikz = callPackage ../development/python-modules/sphinxcontrib-tikz { + texLive = pkgs.texlive.combine { inherit (pkgs.texlive) scheme-small standalone pgfplots; }; + }; + + sphinxcontrib-websupport = callPackage ../development/python-modules/sphinxcontrib-websupport { }; + + sphinx = callPackage ../development/python-modules/sphinx { }; + + sphinx-argparse = callPackage ../development/python-modules/sphinx-argparse { }; + + sphinx-autobuild = callPackage ../development/python-modules/sphinx-autobuild { }; + + sphinx-copybutton = callPackage ../development/python-modules/sphinx-copybutton { }; + + sphinx-inline-tabs = callPackage ../development/python-modules/sphinx-inline-tabs { }; + + sphinx-jinja = callPackage ../development/python-modules/sphinx-jinja { }; + + sphinx-markdown-parser = callPackage ../development/python-modules/sphinx-markdown-parser { }; + + sphinx-material = callPackage ../development/python-modules/sphinx-material { }; + + sphinx-navtree = callPackage ../development/python-modules/sphinx-navtree { }; + + sphinx_pypi_upload = callPackage ../development/python-modules/sphinx_pypi_upload { }; + + sphinx_rtd_theme = callPackage ../development/python-modules/sphinx_rtd_theme { }; + + sphinx-serve = callPackage ../development/python-modules/sphinx-serve { }; + + sphinx-testing = callPackage ../development/python-modules/sphinx-testing { }; + + sphinxext-opengraph = callPackage ../development/python-modules/sphinxext-opengraph { }; + + spidev = callPackage ../development/python-modules/spidev { }; + + splinter = callPackage ../development/python-modules/splinter { }; + + spotipy = callPackage ../development/python-modules/spotipy { }; + + spur = callPackage ../development/python-modules/spur { }; + + spyder = callPackage ../development/python-modules/spyder { }; + + spyder-kernels = callPackage ../development/python-modules/spyder-kernels { }; + + spyse-python = callPackage ../development/python-modules/spyse-python { }; + + sqlalchemy = callPackage ../development/python-modules/sqlalchemy { }; + + sqlalchemy-citext = callPackage ../development/python-modules/sqlalchemy-citext { }; + + sqlalchemy-continuum = callPackage ../development/python-modules/sqlalchemy-continuum { }; + + sqlalchemy-i18n = callPackage ../development/python-modules/sqlalchemy-i18n { }; + + SQLAlchemy-ImageAttach = callPackage ../development/python-modules/sqlalchemy-imageattach { }; + + sqlalchemy-jsonfield = callPackage ../development/python-modules/sqlalchemy-jsonfield { }; + + sqlalchemy-migrate = callPackage ../development/python-modules/sqlalchemy-migrate { }; + + sqlalchemy-mixins = callPackage ../development/python-modules/sqlalchemy-mixins { }; + + sqlalchemy-utils = callPackage ../development/python-modules/sqlalchemy-utils { }; + + sqlitedict = callPackage ../development/python-modules/sqlitedict { }; + + sqlite-fts4 = callPackage ../development/python-modules/sqlite-fts4 { }; + + sqlite-utils = callPackage ../development/python-modules/sqlite-utils { }; + + sqlmap = callPackage ../development/python-modules/sqlmap { }; + + sqlobject = callPackage ../development/python-modules/sqlobject { }; + + sqlparse = callPackage ../development/python-modules/sqlparse { }; + + sqlsoup = callPackage ../development/python-modules/sqlsoup { }; + + srp = callPackage ../development/python-modules/srp { }; + + srpenergy = callPackage ../development/python-modules/srpenergy { }; + + srptools = callPackage ../development/python-modules/srptools { }; + + srsly = callPackage ../development/python-modules/srsly { }; + + srvlookup = callPackage ../development/python-modules/srvlookup { }; + + ssdeep = callPackage ../development/python-modules/ssdeep { + inherit (pkgs) ssdeep; + }; + + ssdp = callPackage ../development/python-modules/ssdp { }; + + sseclient = callPackage ../development/python-modules/sseclient { }; + + sseclient-py = callPackage ../development/python-modules/sseclient-py { }; + + sshpubkeys = callPackage ../development/python-modules/sshpubkeys { }; + + sshtunnel = callPackage ../development/python-modules/sshtunnel { }; + + sslib = callPackage ../development/python-modules/sslib { }; + + sslyze = callPackage ../development/python-modules/sslyze { }; + + stack-data = callPackage ../development/python-modules/stack-data { }; + + stanza = callPackage ../development/python-modules/stanza { }; + + starlette = callPackage ../development/python-modules/starlette { + inherit (pkgs.darwin.apple_sdk.frameworks) ApplicationServices; + }; + + starkbank-ecdsa = callPackage ../development/python-modules/starkbank-ecdsa { }; + + starline = callPackage ../development/python-modules/starline { }; + + stashy = callPackage ../development/python-modules/stashy { }; + + staticjinja = callPackage ../development/python-modules/staticjinja { }; + + statistics = callPackage ../development/python-modules/statistics { }; + + statmake = callPackage ../development/python-modules/statmake { }; + + statsd = callPackage ../development/python-modules/statsd { }; + + statsmodels = callPackage ../development/python-modules/statsmodels { }; + + stdiomask = callPackage ../development/python-modules/stdiomask { }; + + stdlib-list = callPackage ../development/python-modules/stdlib-list { }; + + stem = callPackage ../development/python-modules/stem { }; + + stestr = callPackage ../development/python-modules/stestr { }; + + stevedore = callPackage ../development/python-modules/stevedore { }; + + stickytape = callPackage ../development/python-modules/stickytape { }; + + stm32loader = callPackage ../development/python-modules/stm32loader { }; + + stone = callPackage ../development/python-modules/stone { }; + + stopit = callPackage ../development/python-modules/stopit { }; + + strategies = callPackage ../development/python-modules/strategies { }; + + stravalib = callPackage ../development/python-modules/stravalib { }; + + streaming-form-data = callPackage ../development/python-modules/streaming-form-data { }; + + streamlabswater = callPackage ../development/python-modules/streamlabswater { }; + + streamz = callPackage ../development/python-modules/streamz { }; + + strenum = callPackage ../development/python-modules/strenum { }; + + strict-rfc3339 = callPackage ../development/python-modules/strict-rfc3339 { }; + + strictyaml = callPackage ../development/python-modules/strictyaml { }; + + stringcase = callPackage ../development/python-modules/stringcase { }; + + stripe = callPackage ../development/python-modules/stripe { }; + + striprtf = callPackage ../development/python-modules/striprtf { }; + + structlog = callPackage ../development/python-modules/structlog { }; + + stumpy = callPackage ../development/python-modules/stumpy { }; + + stups-cli-support = callPackage ../development/python-modules/stups-cli-support { }; + + stups-fullstop = callPackage ../development/python-modules/stups-fullstop { }; + + stups-pierone = callPackage ../development/python-modules/stups-pierone { }; + + stups-tokens = callPackage ../development/python-modules/stups-tokens { }; + + stups-zign = callPackage ../development/python-modules/stups-zign { }; + + stytra = callPackage ../development/python-modules/stytra { }; + + subarulink = callPackage ../development/python-modules/subarulink { }; + + subdownloader = callPackage ../development/python-modules/subdownloader { }; + + subliminal = callPackage ../development/python-modules/subliminal { }; + + subprocess-tee = callPackage ../development/python-modules/subprocess-tee { }; + + subunit = callPackage ../development/python-modules/subunit { + inherit (pkgs) subunit cppunit check; + }; + + subunit2sql = callPackage ../development/python-modules/subunit2sql { }; + + subzerod = callPackage ../development/python-modules/subzerod { }; + + suds-jurko = callPackage ../development/python-modules/suds-jurko { }; + + sumo = callPackage ../development/python-modules/sumo { }; + + sumtypes = callPackage ../development/python-modules/sumtypes { }; + + sunpy = callPackage ../development/python-modules/sunpy { }; + + sunwatcher = callPackage ../development/python-modules/sunwatcher { }; + + supervise_api = callPackage ../development/python-modules/supervise_api { }; + + supervisor = callPackage ../development/python-modules/supervisor { }; + + superqt = callPackage ../development/python-modules/superqt { }; + + sure = callPackage ../development/python-modules/sure { }; + + surepy = callPackage ../development/python-modules/surepy { }; + + surt = callPackage ../development/python-modules/surt { }; + + survey = callPackage ../development/python-modules/survey { }; + + suseapi = callPackage ../development/python-modules/suseapi { }; + + svdtools = callPackage ../development/python-modules/svdtools { }; + + svg2tikz = callPackage ../development/python-modules/svg2tikz { }; + + svglib = callPackage ../development/python-modules/svglib { }; + + svg-path = callPackage ../development/python-modules/svg-path { }; + + svgwrite = callPackage ../development/python-modules/svgwrite { }; + + swagger-spec-validator = callPackage ../development/python-modules/swagger-spec-validator { }; + + swagger-ui-bundle = callPackage ../development/python-modules/swagger-ui-bundle { }; + + swift = callPackage ../development/python-modules/swift { }; + + swisshydrodata = callPackage ../development/python-modules/swisshydrodata { }; + + swspotify = callPackage ../development/python-modules/swspotify { }; + + sybil = callPackage ../development/python-modules/sybil { }; + + symengine = callPackage ../development/python-modules/symengine { + inherit (pkgs) symengine; + }; + + sympy = callPackage ../development/python-modules/sympy { }; + + syncer = callPackage ../development/python-modules/syncer { }; + + synergy = callPackage ../development/python-modules/synergy { }; + + synologydsm-api = callPackage ../development/python-modules/synologydsm-api { }; + + syslog-rfc5424-formatter = callPackage ../development/python-modules/syslog-rfc5424-formatter { }; + + systembridge = callPackage ../development/python-modules/systembridge { }; + + systemd = callPackage ../development/python-modules/systemd { + inherit (pkgs) systemd; + }; + + sysv_ipc = callPackage ../development/python-modules/sysv_ipc { }; + + tableaudocumentapi = callPackage ../development/python-modules/tableaudocumentapi { }; + + tables = callPackage ../development/python-modules/tables { + hdf5 = pkgs.hdf5_1_10; + }; + + tablib = callPackage ../development/python-modules/tablib { }; + + tabulate = callPackage ../development/python-modules/tabulate { }; + + tabview = callPackage ../development/python-modules/tabview { }; + + tadasets = callPackage ../development/python-modules/tadasets { }; + + tag-expressions = callPackage ../development/python-modules/tag-expressions { }; + + tago = callPackage ../development/python-modules/tago { }; + + tahoma-api = callPackage ../development/python-modules/tahoma-api { }; + + tailer = callPackage ../development/python-modules/tailer { }; + + tailscale = callPackage ../development/python-modules/tailscale { }; + + tappy = callPackage ../development/python-modules/tappy { }; + + tasklib = callPackage ../development/python-modules/tasklib { }; + + taskw = callPackage ../development/python-modules/taskw { }; + + tatsu = callPackage ../development/python-modules/tatsu { }; + + tblib = callPackage ../development/python-modules/tblib { }; + + tbm-utils = callPackage ../development/python-modules/tbm-utils { }; + + teamcity-messages = callPackage ../development/python-modules/teamcity-messages { }; + + telegram = callPackage ../development/python-modules/telegram { }; + + telethon = callPackage ../development/python-modules/telethon { + inherit (pkgs) openssl; + }; + + telethon-session-sqlalchemy = callPackage ../development/python-modules/telethon-session-sqlalchemy { }; + + teletype = callPackage ../development/python-modules/teletype { }; + + telfhash = callPackage ../development/python-modules/telfhash { }; + + temescal = callPackage ../development/python-modules/temescal { }; + + tempest = callPackage ../development/python-modules/tempest { }; + + tempita = callPackage ../development/python-modules/tempita { }; + + tempora = callPackage ../development/python-modules/tempora { }; + + tenacity = callPackage ../development/python-modules/tenacity { }; + + tensorboard-data-server = callPackage ../development/python-modules/tensorboard-data-server { }; + + tensorboard-plugin-profile = callPackage ../development/python-modules/tensorboard-plugin-profile { }; + + tensorboard-plugin-wit = callPackage ../development/python-modules/tensorboard-plugin-wit { }; + + tensorboardx = callPackage ../development/python-modules/tensorboardx { }; + + tensorflow-bin = callPackage ../development/python-modules/tensorflow/bin.nix { + cudaSupport = pkgs.config.cudaSupport or false; + cudatoolkit = tensorflow_compat_cudatoolkit; + cudnn = tensorflow_compat_cudnn; + }; + + tensorflow-build = callPackage ../development/python-modules/tensorflow { + inherit (pkgs.darwin) cctools; + cudaSupport = pkgs.config.cudaSupport or false; + cudatoolkit = tensorflow_compat_cudatoolkit; + cudnn = tensorflow_compat_cudnn; + nccl = tensorflow_compat_nccl; + inherit (pkgs.darwin.apple_sdk.frameworks) Foundation Security; + flatbuffers-core = pkgs.flatbuffers; + flatbuffers-python = self.flatbuffers; + protobuf-core = pkgs.protobuf; + protobuf-python = self.protobuf; + lmdb-core = pkgs.lmdb; + }; + + tensorflow-datasets = callPackage ../development/python-modules/tensorflow-datasets { }; + + tensorflow-estimator = callPackage ../development/python-modules/tensorflow-estimator { }; + + tensorflow-metadata = callPackage ../development/python-modules/tensorflow-metadata { }; + + tensorflow-probability = callPackage ../development/python-modules/tensorflow-probability { }; + + tensorflow = self.tensorflow-build; + + tensorflow-tensorboard = callPackage ../development/python-modules/tensorflow-tensorboard { }; + + tensorflowWithCuda = self.tensorflow.override { + cudaSupport = true; + }; + + tensorflowWithoutCuda = self.tensorflow.override { + cudaSupport = false; + }; + + tensorly = callPackage ../development/python-modules/tensorly { }; + + tellduslive = callPackage ../development/python-modules/tellduslive { }; + + termcolor = callPackage ../development/python-modules/termcolor { }; + + terminado = callPackage ../development/python-modules/terminado { }; + + terminaltables = callPackage ../development/python-modules/terminaltables { }; + + termplotlib = callPackage ../development/python-modules/termplotlib { }; + + termstyle = callPackage ../development/python-modules/termstyle { }; + + tern = callPackage ../development/python-modules/tern { }; + + tesla-wall-connector = callPackage ../development/python-modules/tesla-wall-connector { }; + + teslajsonpy = callPackage ../development/python-modules/teslajsonpy { }; + + tess = callPackage ../development/python-modules/tess { }; + + tesserocr = callPackage ../development/python-modules/tesserocr { }; + + testfixtures = callPackage ../development/python-modules/testfixtures { }; + + textfsm = callPackage ../development/python-modules/textfsm { }; + + textile = callPackage ../development/python-modules/textile { }; + + textual = callPackage ../development/python-modules/textual { }; + + testing-common-database = callPackage ../development/python-modules/testing-common-database { }; + + testing-postgresql = callPackage ../development/python-modules/testing-postgresql { }; + + testpath = callPackage ../development/python-modules/testpath { }; + + testrepository = callPackage ../development/python-modules/testrepository { }; + + testresources = callPackage ../development/python-modules/testresources { }; + + testscenarios = callPackage ../development/python-modules/testscenarios { }; + + testtools = callPackage ../development/python-modules/testtools { }; + + test-tube = callPackage ../development/python-modules/test-tube { }; + + textdistance = callPackage ../development/python-modules/textdistance { }; + + textacy = callPackage ../development/python-modules/textacy { }; + + texttable = callPackage ../development/python-modules/texttable { }; + + text-unidecode = callPackage ../development/python-modules/text-unidecode { }; + + textwrap3 = callPackage ../development/python-modules/textwrap3 { }; + + tflearn = callPackage ../development/python-modules/tflearn { }; + + tgcrypto = callPackage ../development/python-modules/tgcrypto { }; + + theano-pymc = callPackage ../development/python-modules/theano-pymc { }; + + Theano = callPackage ../development/python-modules/Theano rec { + cudaSupport = pkgs.config.cudaSupport or false; + cudnnSupport = cudaSupport; + }; + + TheanoWithCuda = self.Theano.override { + cudaSupport = true; + cudnnSupport = true; + }; + + TheanoWithoutCuda = self.Theano.override { + cudaSupport = false; + cudnnSupport = false; + }; + + thespian = callPackage ../development/python-modules/thespian { }; + + thinc = callPackage ../development/python-modules/thinc { + inherit (pkgs.darwin.apple_sdk.frameworks) Accelerate CoreFoundation CoreGraphics CoreVideo; + }; + + threadloop = callPackage ../development/python-modules/threadloop { }; + + threadpool = callPackage ../development/python-modules/threadpool { }; + + threadpoolctl = callPackage ../development/python-modules/threadpoolctl { }; + + three-merge = callPackage ../development/python-modules/three-merge { }; + + thrift = callPackage ../development/python-modules/thrift { }; + + thriftpy2 = callPackage ../development/python-modules/thriftpy2 { }; + + thumborPexif = callPackage ../development/python-modules/thumborpexif { }; + + tkinter = let + py = python.override { x11Support=true; }; + in callPackage ../development/python-modules/tkinter { py = py; }; + + tidylib = callPackage ../development/python-modules/pytidylib { }; + + tifffile = callPackage ../development/python-modules/tifffile { }; + + tika = callPackage ../development/python-modules/tika { }; + + tikzplotlib = callPackage ../development/python-modules/tikzplotlib { }; + + tiledb = callPackage ../development/python-modules/tiledb { + inherit (pkgs) tiledb; + }; + + tilequant = callPackage ../development/python-modules/tilequant { }; + + tilestache = callPackage ../development/python-modules/tilestache { }; + + timeago = callPackage ../development/python-modules/timeago { }; + + timecop = callPackage ../development/python-modules/timecop { }; + + timelib = callPackage ../development/python-modules/timelib { }; + + time-machine = callPackage ../development/python-modules/time-machine { }; + + timeout-decorator = callPackage ../development/python-modules/timeout-decorator { }; + + timetagger = callPackage ../development/python-modules/timetagger { }; + + timezonefinder = callPackage ../development/python-modules/timezonefinder { }; + + tinycss2 = callPackage ../development/python-modules/tinycss2 { }; + + tinycss = callPackage ../development/python-modules/tinycss { }; + + tinydb = callPackage ../development/python-modules/tinydb { }; + + tinyobjloader-py = callPackage ../development/python-modules/tinyobjloader-py { }; + + tissue = callPackage ../development/python-modules/tissue { }; + + titlecase = callPackage ../development/python-modules/titlecase { }; + + tld = callPackage ../development/python-modules/tld { }; + + tldextract = callPackage ../development/python-modules/tldextract { }; + + tlsh = callPackage ../development/python-modules/tlsh { }; + + tlslite-ng = callPackage ../development/python-modules/tlslite-ng { }; + + tls-parser = callPackage ../development/python-modules/tls-parser { }; + + tmb = callPackage ../development/python-modules/tmb { }; + + todoist = callPackage ../development/python-modules/todoist { }; + + toggl-cli = callPackage ../development/python-modules/toggl-cli { }; + + token-bucket = callPackage ../development/python-modules/token-bucket { }; + + tokenizers = toPythonModule (callPackage ../development/python-modules/tokenizers { }); + + tokenize-rt = toPythonModule (callPackage ../development/python-modules/tokenize-rt { }); + + tokenlib = callPackage ../development/python-modules/tokenlib { }; + + tololib = callPackage ../development/python-modules/tololib { }; + + toml = callPackage ../development/python-modules/toml { }; + + tomli = callPackage ../development/python-modules/tomli { }; + + tomli-w = callPackage ../development/python-modules/tomli-w { }; + + tomlkit = callPackage ../development/python-modules/tomlkit { }; + + toolz = callPackage ../development/python-modules/toolz { }; + + toonapi = callPackage ../development/python-modules/toonapi { }; + + toposort = callPackage ../development/python-modules/toposort { }; + + torch-tb-profiler = callPackage ../development/python-modules/torch-tb-profiler/default.nix { }; + + torchaudio-bin = callPackage ../development/python-modules/torchaudio/bin.nix { }; + + torchgpipe = callPackage ../development/python-modules/torchgpipe { }; + + torchinfo = callPackage ../development/python-modules/torchinfo { }; + + torchvision = callPackage ../development/python-modules/torchvision { }; + + torchvision-bin = callPackage ../development/python-modules/torchvision/bin.nix { }; + + tornado = callPackage ../development/python-modules/tornado { }; + + # Used by circus and grab-site, 2020-08-29 + tornado_4 = callPackage ../development/python-modules/tornado/4.nix { }; + + # Used by streamlit, graphite_beacon, 2021-01-29 + tornado_5 = callPackage ../development/python-modules/tornado/5.nix { }; + + torrequest = callPackage ../development/python-modules/torrequest { }; + + total-connect-client = callPackage ../development/python-modules/total-connect-client { }; + + towncrier = callPackage ../development/python-modules/towncrier { + inherit (pkgs) git; + }; + + tox = callPackage ../development/python-modules/tox { }; + + tpm2-pytss = callPackage ../development/python-modules/tpm2-pytss { }; + + tqdm = callPackage ../development/python-modules/tqdm { }; + + traceback2 = callPackage ../development/python-modules/traceback2 { }; + + tracing = callPackage ../development/python-modules/tracing { }; + + trackpy = callPackage ../development/python-modules/trackpy { }; + + traitlets = callPackage ../development/python-modules/traitlets { }; + + traits = callPackage ../development/python-modules/traits { }; + + traitsui = callPackage ../development/python-modules/traitsui { }; + + traittypes = callPackage ../development/python-modules/traittypes { }; + + transaction = callPackage ../development/python-modules/transaction { }; + + transformers = callPackage ../development/python-modules/transformers { }; + + transforms3d = callPackage ../development/python-modules/transforms3d { }; + + transip = callPackage ../development/python-modules/transip { }; + + transitions = callPackage ../development/python-modules/transitions { }; + + translatepy = callPackage ../development/python-modules/translatepy { }; + + translationstring = callPackage ../development/python-modules/translationstring { }; + + transmission-rpc = callPackage ../development/python-modules/transmission-rpc { }; + + transmissionrpc = callPackage ../development/python-modules/transmissionrpc { }; + + treeo = callPackage ../development/python-modules/treeo { }; + + treex = callPackage ../development/python-modules/treex { }; + + treq = callPackage ../development/python-modules/treq { }; + + trezor_agent = callPackage ../development/python-modules/trezor_agent { }; + + trezor = callPackage ../development/python-modules/trezor { }; + + trimesh = callPackage ../development/python-modules/trimesh { }; + + trio = callPackage ../development/python-modules/trio { }; + + trio-asyncio = callPackage ../development/python-modules/trio-asyncio { }; + + trueskill = callPackage ../development/python-modules/trueskill { }; + + trustme = callPackage ../development/python-modules/trustme { }; + + trytond = callPackage ../development/python-modules/trytond { }; + + ttls = callPackage ../development/python-modules/ttls { }; + + ttp = callPackage ../development/python-modules/ttp { }; + + tubes = callPackage ../development/python-modules/tubes { }; + + tunigo = callPackage ../development/python-modules/tunigo { }; + + tubeup = callPackage ../development/python-modules/tubeup { }; + + tumpa = callPackage ../development/python-modules/tumpa { + inherit (pkgs.libsForQt5) wrapQtAppsHook; + }; + + tuya-iot-py-sdk = callPackage ../development/python-modules/tuya-iot-py-sdk { }; + + tuyaha = callPackage ../development/python-modules/tuyaha { }; + + tvdb_api = callPackage ../development/python-modules/tvdb_api { }; + + tweedledum = callPackage ../development/python-modules/tweedledum { }; + + tweepy = callPackage ../development/python-modules/tweepy { }; + + twentemilieu = callPackage ../development/python-modules/twentemilieu { }; + + twiggy = callPackage ../development/python-modules/twiggy { }; + + twilio = callPackage ../development/python-modules/twilio { }; + + twill = callPackage ../development/python-modules/twill { }; + + twine = callPackage ../development/python-modules/twine { }; + + twinkly-client = callPackage ../development/python-modules/twinkly-client { }; + + twisted = callPackage ../development/python-modules/twisted { }; + + twitch-python = callPackage ../development/python-modules/twitch-python { }; + + twitchapi = callPackage ../development/python-modules/twitchapi { }; + + twitter = callPackage ../development/python-modules/twitter { }; + + twitter-common-collections = callPackage ../development/python-modules/twitter-common-collections { }; + + twitter-common-confluence = callPackage ../development/python-modules/twitter-common-confluence { }; + + twitter-common-dirutil = callPackage ../development/python-modules/twitter-common-dirutil { }; + + twitter-common-lang = callPackage ../development/python-modules/twitter-common-lang { }; + + twitter-common-log = callPackage ../development/python-modules/twitter-common-log { }; + + twitter-common-options = callPackage ../development/python-modules/twitter-common-options { }; + + twitterapi = callPackage ../development/python-modules/twitterapi { }; + + twofish = callPackage ../development/python-modules/twofish { }; + + txaio = callPackage ../development/python-modules/txaio { }; + + txamqp = callPackage ../development/python-modules/txamqp { }; + + txdbus = callPackage ../development/python-modules/txdbus { }; + + txgithub = callPackage ../development/python-modules/txgithub { }; + + txredisapi = callPackage ../development/python-modules/txredisapi { }; + + txrequests = callPackage ../development/python-modules/txrequests { }; + + txtorcon = callPackage ../development/python-modules/txtorcon { }; + + txzmq = callPackage ../development/python-modules/txzmq { }; + + typecode = callPackage ../development/python-modules/typecode { }; + + typecode-libmagic = callPackage ../development/python-modules/typecode/libmagic.nix { + inherit (pkgs) file zlib; + }; + + typed-ast = callPackage ../development/python-modules/typed-ast { }; + + typed-settings = callPackage ../development/python-modules/typed-settings { }; + + typeguard = callPackage ../development/python-modules/typeguard { }; + + typer = callPackage ../development/python-modules/typer { }; + + types-cryptography = callPackage ../development/python-modules/types-cryptography { }; + + types-dateutil = callPackage ../development/python-modules/types-dateutil { }; + + types-decorator = callPackage ../development/python-modules/types-decorator { }; + + types-enum34 = callPackage ../development/python-modules/types-enum34 { }; + + types-freezegun = callPackage ../development/python-modules/types-freezegun { }; + + types-futures = callPackage ../development/python-modules/types-futures { }; + + types-ipaddress = callPackage ../development/python-modules/types-ipaddress { }; + + types-paramiko = callPackage ../development/python-modules/types-paramiko { }; + + types-protobuf = callPackage ../development/python-modules/types-protobuf { }; + + types-pytz = callPackage ../development/python-modules/types-pytz { }; + + types-requests = callPackage ../development/python-modules/types-requests { }; + + types-setuptools = callPackage ../development/python-modules/types-setuptools { }; + + types-tabulate = callPackage ../development/python-modules/types-tabulate { }; + + types-toml = callPackage ../development/python-modules/types-toml { }; + + types-typed-ast = callPackage ../development/python-modules/types-typed-ast { }; + + types-urllib3 = callPackage ../development/python-modules/types-urllib3 { }; + + typesentry = callPackage ../development/python-modules/typesentry { }; + + typesystem = callPackage ../development/python-modules/typesystem { }; + + typical = callPackage ../development/python-modules/typical { }; + + typing = null; + + typing-extensions = callPackage ../development/python-modules/typing-extensions { }; + + typing-inspect = callPackage ../development/python-modules/typing-inspect { }; + + typogrify = callPackage ../development/python-modules/typogrify { }; + + tzdata = callPackage ../development/python-modules/tzdata { }; + + tzlocal = callPackage ../development/python-modules/tzlocal { }; + + uamqp = callPackage ../development/python-modules/uamqp { + inherit (pkgs.darwin.apple_sdk.frameworks) CFNetwork CoreFoundation Security; + }; + + ua-parser = callPackage ../development/python-modules/ua-parser { }; + + uarray = callPackage ../development/python-modules/uarray { }; + + uc-micro-py = callPackage ../development/python-modules/uc-micro-py { }; + + udatetime = callPackage ../development/python-modules/udatetime { }; + + ueberzug = callPackage ../development/python-modules/ueberzug { + inherit (pkgs.xorg) libX11 libXext; + }; + + ufo2ft = callPackage ../development/python-modules/ufo2ft { }; + + ufoLib2 = callPackage ../development/python-modules/ufoLib2 { }; + + ufonormalizer = callPackage ../development/python-modules/ufonormalizer { }; + + ufoprocessor = callPackage ../development/python-modules/ufoprocessor { }; + + ueagle = callPackage ../development/python-modules/ueagle { }; + + ujson = callPackage ../development/python-modules/ujson { }; + + ukkonen = callPackage ../development/python-modules/ukkonen { }; + + ukpostcodeparser = callPackage ../development/python-modules/ukpostcodeparser { }; + + umalqurra = callPackage ../development/python-modules/umalqurra { }; + + umap-learn = callPackage ../development/python-modules/umap-learn { }; + + u-msgpack-python = callPackage ../development/python-modules/u-msgpack-python { }; + + unasync = callPackage ../development/python-modules/unasync { }; + + uncertainties = callPackage ../development/python-modules/uncertainties { }; + + uncompyle6 = callPackage ../development/python-modules/uncompyle6 { }; + + unicodecsv = callPackage ../development/python-modules/unicodecsv { }; + + unicodedata2 = callPackage ../development/python-modules/unicodedata2 { }; + + unicode-slugify = callPackage ../development/python-modules/unicode-slugify { }; + + unicorn = callPackage ../development/python-modules/unicorn { + unicorn-emu = pkgs.unicorn; + }; + + unidecode = callPackage ../development/python-modules/unidecode { }; + + unidic-lite = callPackage ../development/python-modules/unidic-lite { }; + + unidiff = callPackage ../development/python-modules/unidiff { }; + + unifi = callPackage ../development/python-modules/unifi { }; + + unify = callPackage ../development/python-modules/unify { }; + + unifiled = callPackage ../development/python-modules/unifiled { }; + + units = callPackage ../development/python-modules/units { }; + + unittest2 = callPackage ../development/python-modules/unittest2 { }; + + unittest-data-provider = callPackage ../development/python-modules/unittest-data-provider { }; + + unittest-xml-reporting = callPackage ../development/python-modules/unittest-xml-reporting { }; + + unpaddedbase64 = callPackage ../development/python-modules/unpaddedbase64 { }; + + unrardll = callPackage ../development/python-modules/unrardll { }; + + unrpa = callPackage ../development/python-modules/unrpa { }; + + untangle = callPackage ../development/python-modules/untangle { }; + + untokenize = callPackage ../development/python-modules/untokenize { }; + + uonet-request-signer-hebe = callPackage ../development/python-modules/uonet-request-signer-hebe { }; + + upass = callPackage ../development/python-modules/upass { }; + + upb-lib = callPackage ../development/python-modules/upb-lib { }; + + upcloud-api = callPackage ../development/python-modules/upcloud-api { }; + + update_checker = callPackage ../development/python-modules/update_checker { }; + + update-copyright = callPackage ../development/python-modules/update-copyright { }; + + update-dotdee = callPackage ../development/python-modules/update-dotdee { }; + + upnpy = callPackage ../development/python-modules/upnpy { }; + + uproot = callPackage ../development/python-modules/uproot { }; + + uproot3 = callPackage ../development/python-modules/uproot3 { }; + + uproot3-methods = callPackage ../development/python-modules/uproot3-methods { }; + + uptime = callPackage ../development/python-modules/uptime { }; + + uptime-kuma-monitor = callPackage ../development/python-modules/uptime-kuma-monitor { }; + + uranium = callPackage ../development/python-modules/uranium { }; + + uritemplate = callPackage ../development/python-modules/uritemplate { }; + + uritools = callPackage ../development/python-modules/uritools { }; + + url-normalize = callPackage ../development/python-modules/url-normalize { }; + + urlextract = callPackage ../development/python-modules/urlextract { }; + + urlgrabber = callPackage ../development/python-modules/urlgrabber { }; + + urllib3 = callPackage ../development/python-modules/urllib3 { }; + + urlpy = callPackage ../development/python-modules/urlpy { }; + + urwid = callPackage ../development/python-modules/urwid { }; + + urwidtrees = callPackage ../development/python-modules/urwidtrees { }; + + urwid-readline = callPackage ../development/python-modules/urwid-readline { }; + + usbtmc = callPackage ../development/python-modules/usbtmc { }; + + us = callPackage ../development/python-modules/us { }; + + user-agents = callPackage ../development/python-modules/user-agents { }; + + userpath = callPackage ../development/python-modules/userpath { }; + + ush = callPackage ../development/python-modules/ush { }; + + utils = callPackage ../development/python-modules/utils { }; + + uuid = callPackage ../development/python-modules/uuid { }; + + uvcclient = callPackage ../development/python-modules/uvcclient { }; + + uvicorn = callPackage ../development/python-modules/uvicorn { }; + + uvloop = callPackage ../development/python-modules/uvloop { + inherit (pkgs.darwin.apple_sdk.frameworks) ApplicationServices CoreServices; + }; + + validate-email = callPackage ../development/python-modules/validate-email { }; + + validators = callPackage ../development/python-modules/validators { }; + + validictory = callPackage ../development/python-modules/validictory { }; + + variants = callPackage ../development/python-modules/variants { }; + + varint = callPackage ../development/python-modules/varint { }; + + vcrpy = callPackage ../development/python-modules/vcrpy { }; + + vcver = callPackage ../development/python-modules/vcver { }; + + vcversioner = callPackage ../development/python-modules/vcversioner { }; + + vdf = callPackage ../development/python-modules/vdf { }; + + vdirsyncer = callPackage ../development/python-modules/vdirsyncer { }; + + vehicle = callPackage ../development/python-modules/vehicle { }; + + vega = callPackage ../development/python-modules/vega { }; + + vega_datasets = callPackage ../development/python-modules/vega_datasets { }; + + venstarcolortouch = callPackage ../development/python-modules/venstarcolortouch { }; + + venusian = callPackage ../development/python-modules/venusian { }; + + velbus-aio = callPackage ../development/python-modules/velbus-aio { }; + + verboselogs = callPackage ../development/python-modules/verboselogs { }; + + versioneer = callPackage ../development/python-modules/versioneer { }; + + versionfinder = callPackage ../development/python-modules/versionfinder { }; + + versiontag = callPackage ../development/python-modules/versiontag { }; + + versiontools = callPackage ../development/python-modules/versiontools { }; + + vertica-python = callPackage ../development/python-modules/vertica-python { }; + + veryprettytable = callPackage ../development/python-modules/veryprettytable { }; + + videocr = callPackage ../development/python-modules/videocr { }; + + vidstab = callPackage ../development/python-modules/vidstab { }; + + ViennaRNA = toPythonModule pkgs.ViennaRNA; + + viewstate = callPackage ../development/python-modules/viewstate { }; + + vilfo-api-client = callPackage ../development/python-modules/vilfo-api-client { }; + + vincenty = callPackage ../development/python-modules/vincenty { }; + + vine = callPackage ../development/python-modules/vine { }; + + virtkey = callPackage ../development/python-modules/virtkey { }; + + virtual-display = callPackage ../development/python-modules/virtual-display { }; + + virtualenv = callPackage ../development/python-modules/virtualenv { }; + + virtualenv-clone = callPackage ../development/python-modules/virtualenv-clone { }; + + virtualenvwrapper = callPackage ../development/python-modules/virtualenvwrapper { }; + + visitor = callPackage ../development/python-modules/visitor { }; + + vispy = callPackage ../development/python-modules/vispy { }; + + vivisect = callPackage ../development/python-modules/vivisect { }; + + viv-utils = callPackage ../development/python-modules/viv-utils { }; + + vmprof = callPackage ../development/python-modules/vmprof { }; + + vncdo = callPackage ../development/python-modules/vncdo { }; + + vobject = callPackage ../development/python-modules/vobject { }; + + volkszaehler = callPackage ../development/python-modules/volkszaehler { }; + + voluptuous = callPackage ../development/python-modules/voluptuous { }; + + voluptuous-serialize = callPackage ../development/python-modules/voluptuous-serialize { }; + + volvooncall = callPackage ../development/python-modules/volvooncall { }; + + vowpalwabbit = callPackage ../development/python-modules/vowpalwabbit { }; + + vpk = callPackage ../development/python-modules/vpk { }; + + vsts = callPackage ../development/python-modules/vsts { }; + + vsts-cd-manager = callPackage ../development/python-modules/vsts-cd-manager { }; + + vsure = callPackage ../development/python-modules/vsure { }; + + vt-py = callPackage ../development/python-modules/vt-py { }; + + vtk = toPythonModule (pkgs.vtk.override { + pythonInterpreter = python; + enablePython = true; + }); + + vulcan-api = callPackage ../development/python-modules/vulcan-api { }; + + vultr = callPackage ../development/python-modules/vultr { }; + + vulture = callPackage ../development/python-modules/vulture { }; + + vxi11 = callPackage ../development/python-modules/vxi11 { }; + + vyper = callPackage ../development/compilers/vyper { }; + + w3lib = callPackage ../development/python-modules/w3lib { }; + + wadllib = callPackage ../development/python-modules/wadllib { }; + + waitress = callPackage ../development/python-modules/waitress { }; + + waitress-django = callPackage ../development/python-modules/waitress-django { }; + + wakeonlan = callPackage ../development/python-modules/wakeonlan { }; + + wallbox = callPackage ../development/python-modules/wallbox { }; + + Wand = callPackage ../development/python-modules/Wand { }; + + wandb = callPackage ../development/python-modules/wandb { }; + + warcio = callPackage ../development/python-modules/warcio { }; + + warlock = callPackage ../development/python-modules/warlock { }; + + warrant = callPackage ../development/python-modules/warrant { }; + + warrant-lite = callPackage ../development/python-modules/warrant-lite { }; + + waqiasync = callPackage ../development/python-modules/waqiasync { }; + + wasabi = callPackage ../development/python-modules/wasabi { }; + + wasm = callPackage ../development/python-modules/wasm { }; + + wasmerPackages = pkgs.recurseIntoAttrs (callPackage ../development/python-modules/wasmer { }); + inherit (self.wasmerPackages) wasmer wasmer-compiler-cranelift wasmer-compiler-llvm wasmer-compiler-singlepass; + + watchdog = callPackage ../development/python-modules/watchdog { + inherit (pkgs.darwin.apple_sdk.frameworks) CoreServices; + }; + + watchgod = callPackage ../development/python-modules/watchgod { }; + + waterfurnace = callPackage ../development/python-modules/waterfurnace { }; + + watermark = callPackage ../development/python-modules/watermark { }; + + wavedrom = callPackage ../development/python-modules/wavedrom { }; + + wavefile = callPackage ../development/python-modules/wavefile { }; + + wavinsentio = callPackage ../development/python-modules/wavinsentio { }; + + wazeroutecalculator = callPackage ../development/python-modules/wazeroutecalculator { }; + + wcmatch = callPackage ../development/python-modules/wcmatch { }; + + wcwidth = callPackage ../development/python-modules/wcwidth { }; + + weasyprint = callPackage ../development/python-modules/weasyprint { }; + + webargs = callPackage ../development/python-modules/webargs { }; + + webapp2 = callPackage ../development/python-modules/webapp2 { }; + + webassets = callPackage ../development/python-modules/webassets { }; + + web = callPackage ../development/python-modules/web { }; + + web-cache = callPackage ../development/python-modules/web-cache { }; + + webcolors = callPackage ../development/python-modules/webcolors { }; + + webdavclient3 = callPackage ../development/python-modules/webdavclient3 { }; + + webencodings = callPackage ../development/python-modules/webencodings { }; + + webexteamssdk = callPackage ../development/python-modules/webexteamssdk { }; + + webhelpers = callPackage ../development/python-modules/webhelpers { }; + + webob = callPackage ../development/python-modules/webob { }; + + weboob = callPackage ../development/python-modules/weboob { }; + + webrtcvad = callPackage ../development/python-modules/webrtcvad { }; + + websocket-client = callPackage ../development/python-modules/websocket-client { }; + + websockets = callPackage ../development/python-modules/websockets { }; + + websockify = callPackage ../development/python-modules/websockify { }; + + webssh = callPackage ../development/python-modules/webssh { }; + + webtest = callPackage ../development/python-modules/webtest { }; + + webtest-aiohttp = callPackage ../development/python-modules/webtest-aiohttp { }; + + webthing = callPackage ../development/python-modules/webthing { }; + + weconnect = callPackage ../development/python-modules/weconnect { }; + + weconnect-mqtt = callPackage ../development/python-modules/weconnect-mqtt { }; + + werkzeug = callPackage ../development/python-modules/werkzeug { }; + + west = callPackage ../development/python-modules/west { }; + + wfuzz = callPackage ../development/python-modules/wfuzz { }; + + wget = callPackage ../development/python-modules/wget { }; + + wheel = callPackage ../development/python-modules/wheel { }; + + wheel-filename = callPackage ../development/python-modules/wheel-filename { }; + + wheel-inspect = callPackage ../development/python-modules/wheel-inspect { }; + + whichcraft = callPackage ../development/python-modules/whichcraft { }; + + whirlpool-sixth-sense = callPackage ../development/python-modules/whirlpool-sixth-sense { }; + + whisper = callPackage ../development/python-modules/whisper { }; + + whitenoise = callPackage ../development/python-modules/whitenoise { }; + + whodap = callPackage ../development/python-modules/whodap { }; + + whois = callPackage ../development/python-modules/whois { }; + + whoosh = callPackage ../development/python-modules/whoosh { }; + + widgetsnbextension = callPackage ../development/python-modules/widgetsnbextension { }; + + wiffi = callPackage ../development/python-modules/wiffi { }; + + willow = callPackage ../development/python-modules/willow { }; + + winacl = callPackage ../development/python-modules/winacl { }; + + winsspi = callPackage ../development/python-modules/winsspi { }; + + wled = callPackage ../development/python-modules/wled { }; + + woob = callPackage ../development/python-modules/woob { }; + + woodblock = callPackage ../development/python-modules/woodblock { }; + + word2vec = callPackage ../development/python-modules/word2vec { }; + + wordcloud = callPackage ../development/python-modules/wordcloud { }; + + wordfreq = callPackage ../development/python-modules/wordfreq { }; + + worldengine = callPackage ../development/python-modules/worldengine { }; + + wrapio = callPackage ../development/python-modules/wrapio { }; + + wrapt = callPackage ../development/python-modules/wrapt { }; + + wrf-python = callPackage ../development/python-modules/wrf-python { }; + + ws4py = callPackage ../development/python-modules/ws4py { }; + + wsdiscovery = callPackage ../development/python-modules/wsdiscovery { }; + + wsgi-intercept = callPackage ../development/python-modules/wsgi-intercept { }; + + wsgiprox = callPackage ../development/python-modules/wsgiprox { }; + + wsgiproxy2 = callPackage ../development/python-modules/wsgiproxy2 { }; + + wsgitools = callPackage ../development/python-modules/wsgitools { }; + + WSME = callPackage ../development/python-modules/WSME { }; + + wsnsimpy = callPackage ../development/python-modules/wsnsimpy { }; + + wsproto = callPackage ../development/python-modules/wsproto { }; + + wtforms = callPackage ../development/python-modules/wtforms { }; + + wtf-peewee = callPackage ../development/python-modules/wtf-peewee { }; + + wurlitzer = callPackage ../development/python-modules/wurlitzer { }; + + wxPython_4_0 = callPackage ../development/python-modules/wxPython/4.0.nix { + inherit (pkgs.darwin.apple_sdk.frameworks) AudioToolbox Carbon Cocoa CoreFoundation IOKit OpenGL; + wxGTK = pkgs.wxGTK30.override { + withGtk2 = false; + withWebKit = true; + }; + }; + + wxPython_4_1 = callPackage ../development/python-modules/wxPython/4.1.nix { + wxGTK = pkgs.wxGTK31.override { + withGtk2 = false; + withWebKit = true; + }; + }; + + x11_hash = callPackage ../development/python-modules/x11_hash { }; + + x256 = callPackage ../development/python-modules/x256 { }; + + xapian = callPackage ../development/python-modules/xapian { + inherit (pkgs) xapian; + }; + + xapp = callPackage ../development/python-modules/xapp { + inherit (pkgs) gtk3 gobject-introspection polkit; + inherit (pkgs.cinnamon) xapps; + }; + + xarray = callPackage ../development/python-modules/xarray { }; + + xattr = callPackage ../development/python-modules/xattr { }; + + xbox-webapi = callPackage ../development/python-modules/xbox-webapi { }; + + xboxapi = callPackage ../development/python-modules/xboxapi { }; + + xcffib = callPackage ../development/python-modules/xcffib { }; + + xdg = callPackage ../development/python-modules/xdg { }; + + xdis = callPackage ../development/python-modules/xdis { }; + + xdot = callPackage ../development/python-modules/xdot { + inherit (pkgs) graphviz; + }; + + xgboost = callPackage ../development/python-modules/xgboost { + inherit (pkgs) xgboost; + }; + + xhtml2pdf = callPackage ../development/python-modules/xhtml2pdf { }; + + xkbcommon = callPackage ../development/python-modules/xkbcommon { }; + + xkcdpass = callPackage ../development/python-modules/xkcdpass { }; + + xknx = callPackage ../development/python-modules/xknx { }; + + xlib = callPackage ../development/python-modules/xlib { }; + + xlrd = callPackage ../development/python-modules/xlrd { }; + + xlsx2csv = callPackage ../development/python-modules/xlsx2csv { }; + + XlsxWriter = callPackage ../development/python-modules/XlsxWriter { }; + + xlwt = callPackage ../development/python-modules/xlwt { }; + + xmind = callPackage ../development/python-modules/xmind { }; + + xml2rfc = callPackage ../development/python-modules/xml2rfc { }; + + xmldiff = callPackage ../development/python-modules/xmldiff { }; + + xmljson = callPackage ../development/python-modules/xmljson { }; + + xmlschema = callPackage ../development/python-modules/xmlschema { }; + + xmlsec = callPackage ../development/python-modules/xmlsec { + inherit (pkgs) libxslt libxml2 libtool pkg-config xmlsec; + }; + + xmltodict = callPackage ../development/python-modules/xmltodict { }; + + xml-marshaller = callPackage ../development/python-modules/xml-marshaller { }; + + xmodem = callPackage ../development/python-modules/xmodem { }; + + xnd = callPackage ../development/python-modules/xnd { }; + + xpath-expressions = callPackage ../development/python-modules/xpath-expressions { }; + + xpybutil = callPackage ../development/python-modules/xpybutil { }; + + xstatic-bootbox = callPackage ../development/python-modules/xstatic-bootbox { }; + + xstatic-bootstrap = callPackage ../development/python-modules/xstatic-bootstrap { }; + + xstatic = callPackage ../development/python-modules/xstatic { }; + + xstatic-jquery = callPackage ../development/python-modules/xstatic-jquery { }; + + xstatic-jquery-file-upload = callPackage ../development/python-modules/xstatic-jquery-file-upload { }; + + xstatic-jquery-ui = callPackage ../development/python-modules/xstatic-jquery-ui { }; + + xstatic-pygments = callPackage ../development/python-modules/xstatic-pygments { }; + + xtensor-python = callPackage ../development/python-modules/xtensor-python { }; + + xvfbwrapper = callPackage ../development/python-modules/xvfbwrapper { + inherit (pkgs.xorg) xorgserver; + }; + + xxh = callPackage ../tools/networking/xxh { }; + + xxhash = callPackage ../development/python-modules/xxhash { }; + + yahooweather = callPackage ../development/python-modules/yahooweather { }; + + yalesmartalarmclient = callPackage ../development/python-modules/yalesmartalarmclient { }; + + yalexs = callPackage ../development/python-modules/yalexs { }; + + yamale = callPackage ../development/python-modules/yamale { }; + + yamlfix = callPackage ../development/python-modules/yamlfix { }; + + yamllint = callPackage ../development/python-modules/yamllint { }; + + yamlloader = callPackage ../development/python-modules/yamlloader { }; + + yamlordereddictloader = callPackage ../development/python-modules/yamlordereddictloader { }; + + yanc = callPackage ../development/python-modules/yanc { }; + + yangson = callPackage ../development/python-modules/yangson { }; + + yapf = callPackage ../development/python-modules/yapf { }; + + yappi = callPackage ../development/python-modules/yappi { }; + + Yapsy = callPackage ../development/python-modules/yapsy { }; + + yara-python = callPackage ../development/python-modules/yara-python { }; + + yarg = callPackage ../development/python-modules/yarg { }; + + yarl = callPackage ../development/python-modules/yarl { }; + + yaspin = callPackage ../development/python-modules/yaspin { }; + + yaswfp = callPackage ../development/python-modules/yaswfp { }; + + yattag = callPackage ../development/python-modules/yattag { }; + + yacs = callPackage ../development/python-modules/yacs { }; + + ydiff = callPackage ../development/python-modules/ydiff { }; + + yeelight = callPackage ../development/python-modules/yeelight { }; + + yfinance = callPackage ../development/python-modules/yfinance { }; + + yoda = toPythonModule (pkgs.yoda.override { inherit python; }); + + youless-api = callPackage ../development/python-modules/youless-api { }; + + youtube-dl = callPackage ../tools/misc/youtube-dl { }; + + youtube-dl-light = callPackage ../tools/misc/youtube-dl { + ffmpegSupport = false; + phantomjsSupport = false; + }; + + yt-dlp = callPackage ../tools/misc/yt-dlp { }; + + yt-dlp-light = callPackage ../tools/misc/yt-dlp { + ffmpegSupport = false; + phantomjsSupport = false; + }; + + youtube-search = callPackage ../development/python-modules/youtube-search { }; + + youtube-search-python = callPackage ../development/python-modules/youtube-search-python { }; + + youtube-transcript-api = callPackage ../development/python-modules/youtube-transcript-api { }; + + yowsup = callPackage ../development/python-modules/yowsup { }; + + yq = callPackage ../development/python-modules/yq { + inherit (pkgs) jq; + }; + + ytmusicapi = callPackage ../development/python-modules/ytmusicapi { }; + + yubico-client = callPackage ../development/python-modules/yubico-client { }; + + z3c-checkversions = callPackage ../development/python-modules/z3c-checkversions { }; + + z3 = (toPythonModule (pkgs.z3.override { + inherit python; + })).python; + + zake = callPackage ../development/python-modules/zake { }; + + zarr = callPackage ../development/python-modules/zarr { }; + + zc-buildout = callPackage ../development/python-modules/buildout { }; + + zc_lockfile = callPackage ../development/python-modules/zc_lockfile { }; + + zconfig = callPackage ../development/python-modules/zconfig { }; + + zcs = callPackage ../development/python-modules/zcs { }; + + zdaemon = callPackage ../development/python-modules/zdaemon { }; + + zeek = toPythonModule (pkgs.zeek.override { + python3 = python; + }).py; + + zeep = callPackage ../development/python-modules/zeep { }; + + zeitgeist = (toPythonModule (pkgs.zeitgeist.override { + python3 = python; + })).py; + + zeroc-ice = callPackage ../development/python-modules/zeroc-ice { }; + + zeroconf = callPackage ../development/python-modules/zeroconf { }; + + zerorpc = callPackage ../development/python-modules/zerorpc { }; + + zetup = callPackage ../development/python-modules/zetup { }; + + zeversolarlocal = callPackage ../development/python-modules/zeversolarlocal { }; + + zfec = callPackage ../development/python-modules/zfec { }; + + zha-quirks = callPackage ../development/python-modules/zha-quirks { }; + + zict = callPackage ../development/python-modules/zict { }; + + zigpy = callPackage ../development/python-modules/zigpy { }; + + zigpy-cc = callPackage ../development/python-modules/zigpy-cc { }; + + zigpy-deconz = callPackage ../development/python-modules/zigpy-deconz { }; + + zigpy-xbee = callPackage ../development/python-modules/zigpy-xbee { }; + + zigpy-zigate = callPackage ../development/python-modules/zigpy-zigate { }; + + zigpy-znp = callPackage ../development/python-modules/zigpy-znp { }; + + zimports = callPackage ../development/python-modules/zimports { }; + + zipfile36 = callPackage ../development/python-modules/zipfile36 { }; + + zipp = callPackage ../development/python-modules/zipp { }; + + zipstream = callPackage ../development/python-modules/zipstream { }; + + zipstream-new = callPackage ../development/python-modules/zipstream-new { }; + + zm-py = callPackage ../development/python-modules/zm-py { }; + + zodb = callPackage ../development/python-modules/zodb { }; + + zodbpickle = callPackage ../development/python-modules/zodbpickle { }; + + zope_broken = callPackage ../development/python-modules/zope_broken { }; + + zope_component = callPackage ../development/python-modules/zope_component { }; + + zope_configuration = callPackage ../development/python-modules/zope_configuration { }; + + zope_contenttype = callPackage ../development/python-modules/zope_contenttype { }; + + zope_copy = callPackage ../development/python-modules/zope_copy { }; + + zope-deferredimport = callPackage ../development/python-modules/zope-deferredimport { }; + + zope_deprecation = callPackage ../development/python-modules/zope_deprecation { }; + + zope_dottedname = callPackage ../development/python-modules/zope_dottedname { }; + + zope_event = callPackage ../development/python-modules/zope_event { }; + + zope_exceptions = callPackage ../development/python-modules/zope_exceptions { }; + + zope_filerepresentation = callPackage ../development/python-modules/zope_filerepresentation { }; + + zope-hookable = callPackage ../development/python-modules/zope-hookable { }; + + zope_i18nmessageid = callPackage ../development/python-modules/zope_i18nmessageid { }; + + zope_interface = callPackage ../development/python-modules/zope_interface { }; + + zope_lifecycleevent = callPackage ../development/python-modules/zope_lifecycleevent { }; + + zope_location = callPackage ../development/python-modules/zope_location { }; + + zope_proxy = callPackage ../development/python-modules/zope_proxy { }; + + zope_schema = callPackage ../development/python-modules/zope_schema { }; + + zope_size = callPackage ../development/python-modules/zope_size { }; + + zope_testing = callPackage ../development/python-modules/zope_testing { }; + + zope_testrunner = callPackage ../development/python-modules/zope_testrunner { }; + + zopfli = callPackage ../development/python-modules/zopfli { + inherit (pkgs) zopfli; + }; + + zstandard = callPackage ../development/python-modules/zstandard { }; + + zstd = callPackage ../development/python-modules/zstd { + inherit (pkgs) zstd; + }; + + zulip = callPackage ../development/python-modules/zulip { }; + + zwave-js-server-python = callPackage ../development/python-modules/zwave-js-server-python { }; + + zxcvbn = callPackage ../development/python-modules/zxcvbn { }; +} diff --git a/nixpkgs/pkgs/top-level/python2-packages.nix b/nixpkgs/pkgs/top-level/python2-packages.nix new file mode 100644 index 000000000000..224acec1625f --- /dev/null +++ b/nixpkgs/pkgs/top-level/python2-packages.nix @@ -0,0 +1,183 @@ +# Extension with Python 2 packages that is overlayed on top +# of the Python 3 packages set. This way, Python 2+3 compatible +# packages can still be used. + +self: super: + +with self; with super; { + + bootstrapped-pip = callPackage ../development/python2-modules/bootstrapped-pip { }; + + boto3 = callPackage ../development/python2-modules/boto3 {}; + + botocore = callPackage ../development/python2-modules/botocore {}; + + certifi = callPackage ../development/python2-modules/certifi { }; + + chardet = callPackage ../development/python2-modules/chardet { }; + + cheetah = callPackage ../development/python2-modules/cheetah { }; + + click = callPackage ../development/python2-modules/click { }; + + configparser = callPackage ../development/python2-modules/configparser { }; + + construct = callPackage ../development/python2-modules/construct { }; + + contextlib2 = callPackage ../development/python2-modules/contextlib2 { }; + + coverage = callPackage ../development/python2-modules/coverage { }; + + cryptography = callPackage ../development/python2-modules/cryptography { }; + + cryptography_vectors = callPackage ../development/python2-modules/cryptography-vectors { }; + + decorator = callPackage ../development/python2-modules/decorator { }; + + enum = callPackage ../development/python2-modules/enum { }; + + filelock = callPackage ../development/python2-modules/filelock { }; + + flask = callPackage ../development/python2-modules/flask { }; + + freezegun = callPackage ../development/python2-modules/freezegun { }; + + futures = callPackage ../development/python2-modules/futures { }; + + google-apputils = callPackage ../development/python2-modules/google-apputils { }; + + gtkme = callPackage ../development/python2-modules/gtkme { }; + + httpretty = callPackage ../development/python2-modules/httpretty { }; + + hypothesis = callPackage ../development/python2-modules/hypothesis { }; + + idna = callPackage ../development/python2-modules/idna { }; + + importlib-metadata = callPackage ../development/python2-modules/importlib-metadata { }; + + ipaddr = callPackage ../development/python2-modules/ipaddr { }; + + itsdangerous = callPackage ../development/python2-modules/itsdangerous { }; + + jinja2 = callPackage ../development/python2-modules/jinja2 { }; + + libcloud = callPackage ../development/python2-modules/libcloud { }; + + lpod = callPackage ../development/python2-modules/lpod { }; + + marisa = callPackage ../development/python2-modules/marisa { + inherit (pkgs) marisa; + }; + + markdown = callPackage ../development/python2-modules/markdown { }; + + markupsafe = callPackage ../development/python2-modules/markupsafe { }; + + mock = callPackage ../development/python2-modules/mock { }; + + more-itertools = callPackage ../development/python2-modules/more-itertools { }; + + mutagen = callPackage ../development/python2-modules/mutagen { }; + + numpy = callPackage ../development/python2-modules/numpy { }; + + packaging = callPackage ../development/python2-modules/packaging { }; + + pillow = callPackage ../development/python2-modules/pillow { + inherit (pkgs) freetype libjpeg zlib libtiff libwebp tcl lcms2 tk; + inherit (pkgs.xorg) libX11; + }; + + pip = callPackage ../development/python2-modules/pip { }; + + pluggy = callPackage ../development/python2-modules/pluggy { }; + + prettytable = callPackage ../development/python2-modules/prettytable { }; + + protobuf = callPackage ../development/python2-modules/protobuf { + disabled = isPyPy; + protobuf = pkgs.protobuf3_17; # last version compatible with Python 2 + }; + + pycairo = callPackage ../development/python2-modules/pycairo { + inherit (pkgs.buildPackages) meson; + }; + + pygments = callPackage ../development/python2-modules/Pygments { }; + + pygobject3 = callPackage ../development/python2-modules/pygobject { + inherit (pkgs) meson; + }; + + pygtk = callPackage ../development/python2-modules/pygtk { }; + + pyjwt = callPackage ../development/python2-modules/pyjwt { }; + + pyparsing = callPackage ../development/python2-modules/pyparsing { }; + + pyroma = callPackage ../development/python2-modules/pyroma { }; + + pysqlite = callPackage ../development/python2-modules/pysqlite { }; + + pytest = pytest_4; + + pytest_4 = callPackage + ../development/python2-modules/pytest { + # hypothesis tests require pytest that causes dependency cycle + hypothesis = self.hypothesis.override { + doCheck = false; + }; + }; + + pytest-runner = callPackage ../development/python2-modules/pytest-runner { }; + + pytest-xdist = callPackage ../development/python2-modules/pytest-xdist { }; + + pyyaml = callPackage ../development/python2-modules/pyyaml { }; + + qpid-python = callPackage ../development/python2-modules/qpid-python { }; + + recoll = disabled super.recoll; + + rivet = disabled super.rivet; + + rpm = disabled super.rpm; + + s3transfer = callPackage ../development/python2-modules/s3transfer { }; + + scandir = callPackage ../development/python2-modules/scandir { }; + + sequoia = disabled super.sequoia; + + setuptools = callPackage ../development/python2-modules/setuptools { }; + + setuptools-scm = callPackage ../development/python2-modules/setuptools-scm { }; + + sphinxcontrib-websupport = callPackage ../development/python2-modules/sphinxcontrib-websupport { }; + + sphinx = callPackage ../development/python2-modules/sphinx { }; + + TurboCheetah = callPackage ../development/python2-modules/TurboCheetah { }; + + typing = callPackage ../development/python2-modules/typing { }; + + urllib3 = callPackage ../development/python2-modules/urllib3 { }; + + werkzeug = callPackage ../development/python2-modules/werkzeug { }; + + wsproto = callPackage ../development/python2-modules/wsproto { }; + + wxPython30 = callPackage ../development/python2-modules/wxPython { + wxGTK = pkgs.wxGTK30; + }; + + wxPython = self.wxPython30; + + vcrpy = callPackage ../development/python2-modules/vcrpy { }; + + zeek = disabled super.zeek; + + zipp = callPackage ../development/python2-modules/zipp { }; + +} diff --git a/nixpkgs/pkgs/top-level/qt5-packages.nix b/nixpkgs/pkgs/top-level/qt5-packages.nix new file mode 100644 index 000000000000..751236fdcb4b --- /dev/null +++ b/nixpkgs/pkgs/top-level/qt5-packages.nix @@ -0,0 +1,229 @@ + +# Qt packages set. +# +# Attributes in this file are packages requiring Qt and will be made available +# for every Qt version. Qt applications are called from `all-packages.nix` via +# this file. + + +{ lib +, pkgs +, qt5 +}: + +(lib.makeScope pkgs.newScope ( self: + +let + libsForQt5 = self; + callPackage = self.callPackage; + + kdeFrameworks = let + mkFrameworks = import ../development/libraries/kde-frameworks; + attrs = { + inherit libsForQt5; + inherit (pkgs) lib fetchurl; + }; + in (lib.makeOverridable mkFrameworks attrs); + + plasma5 = let + mkPlasma5 = import ../desktops/plasma-5; + attrs = { + inherit libsForQt5; + inherit (pkgs) config lib fetchurl; + gconf = pkgs.gnome2.GConf; + inherit (pkgs) gsettings-desktop-schemas; + }; + in (lib.makeOverridable mkPlasma5 attrs); + + kdeGear = let + mkGear = import ../applications/kde; + attrs = { + inherit libsForQt5; + inherit (pkgs) lib fetchurl; + }; + in (lib.makeOverridable mkGear attrs); + + plasmaMobileGear = let + mkPlamoGear = import ../applications/plasma-mobile; + attrs = { + inherit libsForQt5; + inherit (pkgs) lib fetchurl; + }; + in (lib.makeOverridable mkPlamoGear attrs); + +in (kdeFrameworks // plasmaMobileGear // plasma5 // plasma5.thirdParty // kdeGear // qt5 // { + + inherit kdeFrameworks plasmaMobileGear plasma5 kdeGear qt5; + + # Alias for backwards compatibility. Added 2021-05-07. + kdeApplications = kdeGear; + + ### LIBRARIES + + accounts-qt = callPackage ../development/libraries/accounts-qt { }; + + alkimia = callPackage ../development/libraries/alkimia { }; + + applet-window-buttons = callPackage ../development/libraries/applet-window-buttons { }; + + appstream-qt = callPackage ../development/libraries/appstream/qt.nix { }; + + dxflib = callPackage ../development/libraries/dxflib {}; + + drumstick = callPackage ../development/libraries/drumstick { }; + + fcitx-qt5 = callPackage ../tools/inputmethods/fcitx/fcitx-qt5.nix { }; + + fcitx5-qt = callPackage ../tools/inputmethods/fcitx5/fcitx5-qt.nix { }; + + qgpgme = callPackage ../development/libraries/gpgme { }; + + grantlee = callPackage ../development/libraries/grantlee/5 { }; + + qtcurve = callPackage ../data/themes/qtcurve {}; + + herqq = callPackage ../development/libraries/herqq { }; + + kdb = callPackage ../development/libraries/kdb { }; + + kde2-decoration = callPackage ../data/themes/kde2 { }; + + kcolorpicker = callPackage ../development/libraries/kcolorpicker { }; + + kdiagram = callPackage ../development/libraries/kdiagram { }; + + kdsoap = callPackage ../development/libraries/kdsoap { }; + + kf5gpgmepp = callPackage ../development/libraries/kf5gpgmepp { }; + + kirigami-addons = libsForQt5.callPackage ../development/libraries/kirigami-addons { }; + + kimageannotator = callPackage ../development/libraries/kimageannotator { }; + + kproperty = callPackage ../development/libraries/kproperty { }; + + kpeoplevcard = callPackage ../development/libraries/kpeoplevcard { }; + + kreport = callPackage ../development/libraries/kreport { }; + + kquickimageedit = callPackage ../development/libraries/kquickimageedit { }; + + kweathercore = libsForQt5.callPackage ../development/libraries/kweathercore { }; + + ldutils = callPackage ../development/libraries/ldutils { }; + + libcommuni = callPackage ../development/libraries/libcommuni { }; + + libdbusmenu = callPackage ../development/libraries/libdbusmenu-qt/qt-5.5.nix { }; + + liblastfm = callPackage ../development/libraries/liblastfm { }; + + libopenshot = callPackage ../applications/video/openshot-qt/libopenshot.nix { }; + + packagekit-qt = callPackage ../tools/package-management/packagekit/qt.nix { }; + + libopenshot-audio = callPackage ../applications/video/openshot-qt/libopenshot-audio.nix { + inherit (pkgs.darwin.apple_sdk.frameworks) AGL Cocoa Foundation; + }; + + libqglviewer = callPackage ../development/libraries/libqglviewer { + inherit (pkgs.darwin.apple_sdk.frameworks) AGL; + }; + + libqofono = callPackage ../development/libraries/libqofono { }; + + libqtav = callPackage ../development/libraries/libqtav { }; + + libqaccessibilityclient = callPackage ../development/libraries/libqaccessibilityclient { }; + + kpmcore = callPackage ../development/libraries/kpmcore { }; + + mapbox-gl-native = libsForQt5.callPackage ../development/libraries/mapbox-gl-native { }; + + mapbox-gl-qml = libsForQt5.callPackage ../development/libraries/mapbox-gl-qml { }; + + mauikit = callPackage ../development/libraries/mauikit { }; + + mauikit-filebrowsing = callPackage ../development/libraries/mauikit-filebrowsing { }; + + mlt = callPackage ../development/libraries/mlt/qt-5.nix { }; + + openbr = callPackage ../development/libraries/openbr { }; + + phonon = callPackage ../development/libraries/phonon { }; + + phonon-backend-gstreamer = callPackage ../development/libraries/phonon/backends/gstreamer.nix { }; + + phonon-backend-vlc = callPackage ../development/libraries/phonon/backends/vlc.nix { }; + + plasma-wayland-protocols = callPackage ../development/libraries/plasma-wayland-protocols { }; + + polkit-qt = callPackage ../development/libraries/polkit-qt-1 { }; + + poppler = callPackage ../development/libraries/poppler { + lcms = pkgs.lcms2; + qt5Support = true; + suffix = "qt5"; + }; + + poppler_0_61 = callPackage ../development/libraries/poppler/0.61.nix { + lcms = pkgs.lcms2; + qt5Support = true; + suffix = "qt5"; + }; + + pulseaudio-qt = callPackage ../development/libraries/pulseaudio-qt { }; + + qca-qt5 = callPackage ../development/libraries/qca-qt5 { }; + + qcoro = callPackage ../development/libraries/qcoro { }; + + qcsxcad = callPackage ../development/libraries/science/electronics/qcsxcad { }; + + qmltermwidget = callPackage ../development/libraries/qmltermwidget { + inherit (pkgs.darwin.apple_sdk.libs) utmp; + }; + + qmlbox2d = callPackage ../development/libraries/qmlbox2d { }; + + qoauth = callPackage ../development/libraries/qoauth { }; + + qscintilla = callPackage ../development/libraries/qscintilla { }; + + qt5ct = callPackage ../tools/misc/qt5ct { }; + + qtfeedback = callPackage ../development/libraries/qtfeedback { }; + + qtutilities = callPackage ../development/libraries/qtutilities { }; + + qtinstaller = callPackage ../development/libraries/qtinstaller { }; + + qtkeychain = callPackage ../development/libraries/qtkeychain { + inherit (pkgs.darwin.apple_sdk.frameworks) CoreFoundation Security; + }; + + qtpbfimageplugin = callPackage ../development/libraries/qtpbfimageplugin { }; + + qtstyleplugins = callPackage ../development/libraries/qtstyleplugins { }; + + qtstyleplugin-kvantum = callPackage ../development/libraries/qtstyleplugin-kvantum { }; + + quazip = callPackage ../development/libraries/quazip { }; + + qwt = callPackage ../development/libraries/qwt/6.nix { }; + + soqt = callPackage ../development/libraries/soqt { }; + + telepathy = callPackage ../development/libraries/telepathy/qt { }; + + qtwebkit-plugins = callPackage ../development/libraries/qtwebkit-plugins { }; + + # Not a library, but we do want it to be built for every qt version there + # is, to allow users to choose the right build if needed. + sddm = callPackage ../applications/display-managers/sddm { }; + + signond = callPackage ../development/libraries/signond {}; + + soundkonverter = callPackage ../applications/audio/soundkonverter {}; + +}))) diff --git a/nixpkgs/pkgs/top-level/release-alternatives.nix b/nixpkgs/pkgs/top-level/release-alternatives.nix new file mode 100644 index 000000000000..5e309a0129c3 --- /dev/null +++ b/nixpkgs/pkgs/top-level/release-alternatives.nix @@ -0,0 +1,91 @@ +{ pkgsFun ? import ../.. +, lib ? import ../../lib +, supportedSystems ? ["x86_64-linux"] +, allowUnfree ? false }: + +let + + # called BLAS here, but also tests LAPACK + blasUsers = [ + # "julia_07" "julia_10" "julia_11" "julia_13" "octave" "octaveFull" + "fflas-ffpack" "linbox" "R" "ipopt" "hpl" "rspamd" "octopus" + "sundials" "superlu" "suitesparse_5_3" "suitesparse_4_4" + "suitesparse_4_2" "scs" "scalapack" "petsc" "cholmod-extra" + "arpack" "qrupdate" "libcint" "iml" "globalarrays" "arrayfire" "armadillo" + "xfitter" "lammps" "plink-ng" "quantum-espresso" "siesta" + "siesta-mpi" "shogun" "calculix" "csdp" "getdp" "giac" "gmsh" "jags" + "lammps" "lammps-mpi" + + # requires openblas + # "caffe" "mxnet" "flint" "sage" "sageWithDoc" + + # broken + # "gnss-sdr" "octave-jit" "openmodelica" "torch" + + # subpackages + ["pythonPackages" "numpy"] ["pythonPackages" "prox-tv"] ["pythonPackages" "scs"] + ["pythonPackages" "pysparse"] ["pythonPackages" "cvxopt"] + # ["pythonPackages" "fenics"] + ["rPackages" "slfm"] ["rPackages" "SamplerCompare"] + # ["rPackages" "EMCluster"] + # ["ocamlPackages" "lacaml"] + # ["ocamlPackages" "owl"] + ["haskellPackages" "bindings-levmar"] + ] ++ lib.optionals allowUnfree [ "magma" ]; + blas64Users = [ + "rspamd" "suitesparse_5_3" "suitesparse_4_4" + "suitesparse_4_2" "petsc" "cholmod-extra" + "arpack" "qrupdate" "iml" "globalarrays" "arrayfire" + "xfitter" "lammps" "plink-ng" "quantum-espresso" + "calculix" "csdp" "getdp" "jags" + "lammps" "lammps-mpi" + # ["ocamlPackages" "lacaml"] + ["haskellPackages" "bindings-levmar"] + ] ++ lib.optionals allowUnfree [ "magma" ]; + blasProviders = system: [ "openblasCompat" "lapack-reference" "openblas" ] + ++ lib.optionals (allowUnfree && system.isx86) ["mkl" "mkl64"]; + + blas64Providers = [ "mkl64" "openblas"]; + + mapListToAttrs = xs: f: builtins.listToAttrs (map (name: { + name = if builtins.isList name + then builtins.elemAt name (builtins.length name - 1) + else name; + value = f name; + }) xs); + +in + +{ + blas = mapListToAttrs supportedSystems (system': let system = lib.systems.elaborate { system = system'; }; + in mapListToAttrs (blasProviders system) (provider: let + isILP64 = builtins.elem provider (["mkl64"] ++ lib.optional system.is64bit "openblas"); + pkgs = pkgsFun { + config = { inherit allowUnfree; }; + system = system'; + overlays = [(self: super: { + lapack = super.lapack.override { + lapackProvider = if provider == "mkl64" + then super.mkl + else builtins.getAttr provider super; + inherit isILP64; + }; + blas = super.blas.override { + blasProvider = if provider == "mkl64" + then super.mkl + else builtins.getAttr provider super; + inherit isILP64; + }; + })]; + }; + in mapListToAttrs (if builtins.elem provider blas64Providers + then blas64Users else blasUsers) + (attr: if builtins.isList attr + then lib.getAttrFromPath attr pkgs + else builtins.getAttr attr pkgs) + + // { recurseForDerivations = true; }) + // { recurseForDerivations = true; }) + // { recurseForDerivations = true; }; + recurseForDerivations = true; +} diff --git a/nixpkgs/pkgs/top-level/release-cross.nix b/nixpkgs/pkgs/top-level/release-cross.nix new file mode 100644 index 000000000000..205558d666a1 --- /dev/null +++ b/nixpkgs/pkgs/top-level/release-cross.nix @@ -0,0 +1,215 @@ +/* This file defines some basic smoke tests for cross compilation. +*/ + +{ # The platforms *from* which we cross compile. + supportedSystems ? [ "x86_64-linux" "x86_64-darwin" "aarch64-linux" ] +, # Strip most of attributes when evaluating to spare memory usage + scrubJobs ? true +, # Attributes passed to nixpkgs. Don't build packages marked as unfree. + nixpkgsArgs ? { config = { allowUnfree = false; inHydra = true; }; } +}: + +with import ./release-lib.nix { inherit supportedSystems scrubJobs nixpkgsArgs; }; + +let + nativePlatforms = all; + + embedded = { + buildPackages.binutils = nativePlatforms; + buildPackages.gcc = nativePlatforms; + libcCross = nativePlatforms; + }; + + common = { + buildPackages.binutils = nativePlatforms; + gmp = nativePlatforms; + libcCross = nativePlatforms; + nix = nativePlatforms; + nixUnstable = nativePlatforms; + mesa = nativePlatforms; + }; + + gnuCommon = lib.recursiveUpdate common { + buildPackages.gcc = nativePlatforms; + coreutils = nativePlatforms; + haskell.packages.ghcHEAD.hello = nativePlatforms; + haskellPackages.hello = nativePlatforms; + }; + + linuxCommon = lib.recursiveUpdate gnuCommon { + buildPackages.gdb = nativePlatforms; + + bison = nativePlatforms; + busybox = nativePlatforms; + dropbear = nativePlatforms; + ed = nativePlatforms; + ncurses = nativePlatforms; + patch = nativePlatforms; + }; + + windowsCommon = lib.recursiveUpdate gnuCommon { + boehmgc = nativePlatforms; + guile_1_8 = nativePlatforms; + libffi = nativePlatforms; + libtool = nativePlatforms; + libunistring = nativePlatforms; + windows.wxMSW = nativePlatforms; + windows.mingw_w64_pthreads = nativePlatforms; + }; + + wasiCommon = { + gmp = nativePlatforms; + boehmgc = nativePlatforms; + hello = nativePlatforms; + zlib = nativePlatforms; + }; + + darwinCommon = { + buildPackages.binutils = darwin; + }; + + rpiCommon = linuxCommon // { + vim = nativePlatforms; + unzip = nativePlatforms; + ddrescue = nativePlatforms; + lynx = nativePlatforms; + patchelf = nativePlatforms; + buildPackages.binutils = nativePlatforms; + mpg123 = nativePlatforms; + }; +in + +{ + # These derivations from a cross package set's `buildPackages` should be + # identical to their vanilla equivalents --- none of these package should + # observe the target platform which is the only difference between those + # package sets. + ensureUnaffected = let + # Absurd values are fine here, as we are not building anything. In fact, + # there probably a good idea to try to be "more parametric" --- i.e. avoid + # any special casing. + crossSystem = { + config = "mips64el-apple-windows-gnu"; + libc = "glibc"; + }; + + # Converting to a string (drv path) before checking equality is probably a + # good idea lest there be some irrelevant pass-through debug attrs that + # cause false negatives. + testEqualOne = path: system: let + f = path: crossSystem: system: builtins.toString (lib.getAttrFromPath path (pkgsForCross crossSystem system)); + in assertTrue ( + f path null system + == + f (["buildPackages"] ++ path) crossSystem system + ); + + testEqual = path: systems: forMatchingSystems systems (testEqualOne path); + + mapTestEqual = lib.mapAttrsRecursive testEqual; + + in mapTestEqual { + boehmgc = nativePlatforms; + libffi = nativePlatforms; + libiconv = nativePlatforms; + libtool = nativePlatforms; + zlib = nativePlatforms; + readline = nativePlatforms; + libxml2 = nativePlatforms; + guile = nativePlatforms; + }; + + crossIphone64 = mapTestOnCross lib.systems.examples.iphone64 darwinCommon; + + crossIphone32 = mapTestOnCross lib.systems.examples.iphone32 darwinCommon; + + /* Test some cross builds to the Sheevaplug */ + crossSheevaplugLinux = mapTestOnCross lib.systems.examples.sheevaplug (linuxCommon // { + ubootSheevaplug = nativePlatforms; + }); + + /* Test some cross builds on 32 bit mingw-w64 */ + crossMingw32 = mapTestOnCross lib.systems.examples.mingw32 windowsCommon; + + /* Test some cross builds on 64 bit mingw-w64 */ + crossMingwW64 = mapTestOnCross lib.systems.examples.mingwW64 windowsCommon; + + /* Linux on mipsel */ + fuloongminipc = mapTestOnCross lib.systems.examples.fuloongminipc linuxCommon; + ben-nanonote = mapTestOnCross lib.systems.examples.ben-nanonote linuxCommon; + + /* Javacript */ + ghcjs = mapTestOnCross lib.systems.examples.ghcjs { + haskell.packages.ghcjs.hello = nativePlatforms; + }; + + /* Linux on Raspberrypi */ + rpi = mapTestOnCross lib.systems.examples.raspberryPi rpiCommon; + rpi-musl = mapTestOnCross lib.systems.examples.muslpi rpiCommon; + + /* Linux on the Remarkable */ + remarkable1 = mapTestOnCross lib.systems.examples.remarkable1 linuxCommon; + remarkable2 = mapTestOnCross lib.systems.examples.remarkable2 linuxCommon; + + /* Linux on armv7l-hf */ + armv7l-hf = mapTestOnCross lib.systems.examples.armv7l-hf-multiplatform linuxCommon; + scaleway-c1 = mapTestOnCross lib.systems.examples.scaleway-c1 linuxCommon; + + pogoplug4 = mapTestOnCross lib.systems.examples.pogoplug4 linuxCommon; + + /* Linux on aarch64 */ + aarch64 = mapTestOnCross lib.systems.examples.aarch64-multiplatform linuxCommon; + aarch64-musl = mapTestOnCross lib.systems.examples.aarch64-multiplatform-musl linuxCommon; + + /* Linux on RISCV */ + riscv64 = mapTestOnCross lib.systems.examples.riscv64 linuxCommon; + riscv32 = mapTestOnCross lib.systems.examples.riscv32 linuxCommon; + + m68k = mapTestOnCross lib.systems.examples.m68k linuxCommon; + s390x = mapTestOnCross lib.systems.examples.s390x linuxCommon; + + /* (Cross-compiled) Linux on x86 */ + x86_64-musl = mapTestOnCross lib.systems.examples.musl64 linuxCommon; + x86_64-gnu = mapTestOnCross lib.systems.examples.gnu64 linuxCommon; + i686-musl = mapTestOnCross lib.systems.examples.musl32 linuxCommon; + i686-gnu = mapTestOnCross lib.systems.examples.gnu32 linuxCommon; + + ppc64le = mapTestOnCross lib.systems.examples.powernv linuxCommon; + ppc64le-musl = mapTestOnCross lib.systems.examples.musl-power linuxCommon; + + android64 = mapTestOnCross lib.systems.examples.aarch64-android-prebuilt linuxCommon; + android32 = mapTestOnCross lib.systems.examples.armv7a-android-prebuilt linuxCommon; + + wasi32 = mapTestOnCross lib.systems.examples.wasi32 wasiCommon; + + msp430 = mapTestOnCross lib.systems.examples.msp430 embedded; + mmix = mapTestOnCross lib.systems.examples.mmix embedded; + vc4 = mapTestOnCross lib.systems.examples.vc4 embedded; + or1k = mapTestOnCross lib.systems.examples.or1k embedded; + avr = mapTestOnCross lib.systems.examples.avr embedded; + arm-embedded = mapTestOnCross lib.systems.examples.arm-embedded embedded; + armhf-embedded = mapTestOnCross lib.systems.examples.armhf-embedded embedded; + aarch64-embedded = mapTestOnCross lib.systems.examples.aarch64-embedded embedded; + aarch64be-embedded = mapTestOnCross lib.systems.examples.aarch64be-embedded embedded; + powerpc-embedded = mapTestOnCross lib.systems.examples.ppc-embedded embedded; + powerpcle-embedded = mapTestOnCross lib.systems.examples.ppcle-embedded embedded; + i686-embedded = mapTestOnCross lib.systems.examples.i686-embedded embedded; + x86_64-embedded = mapTestOnCross lib.systems.examples.x86_64-embedded embedded; + riscv64-embedded = mapTestOnCross lib.systems.examples.riscv64 embedded; + riscv32-embedded = mapTestOnCross lib.systems.examples.riscv32 embedded; + + x86_64-netbsd = mapTestOnCross lib.systems.examples.x86_64-netbsd common; + + # we test `embedded` instead of `linuxCommon` because very few packages + # successfully cross-compile to Redox so far + x86_64-redox = mapTestOnCross lib.systems.examples.x86_64-unknown-redox embedded; + + /* Cross-built bootstrap tools for every supported platform */ + bootstrapTools = let + tools = import ../stdenv/linux/make-bootstrap-tools-cross.nix { system = "x86_64-linux"; }; + maintainers = [ lib.maintainers.dezgeg ]; + mkBootstrapToolsJob = drv: + assert lib.elem drv.system supportedSystems; + hydraJob' (lib.addMetaAttrs { inherit maintainers; } drv); + in lib.mapAttrsRecursiveCond (as: !lib.isDerivation as) (name: mkBootstrapToolsJob) tools; +} diff --git a/nixpkgs/pkgs/top-level/release-haskell.nix b/nixpkgs/pkgs/top-level/release-haskell.nix new file mode 100644 index 000000000000..82828a3d611e --- /dev/null +++ b/nixpkgs/pkgs/top-level/release-haskell.nix @@ -0,0 +1,421 @@ +/* + This is the Hydra jobset for the `haskell-updates` branch in Nixpkgs. + You can see the status of this jobset at + https://hydra.nixos.org/jobset/nixpkgs/haskell-updates. + + To debug this expression you can use `hydra-eval-jobs` from + `pkgs.hydra-unstable` which prints the jobset description + to `stdout`: + + $ hydra-eval-jobs -I . pkgs/top-level/release-haskell.nix +*/ +{ supportedSystems ? [ "x86_64-linux" "x86_64-darwin" "aarch64-linux" ] }: + +let + + releaseLib = import ./release-lib.nix { + inherit supportedSystems; + }; + + inherit (releaseLib) + lib + mapTestOn + packagePlatforms + pkgs + ; + + # Helper function which traverses a (nested) set + # of derivations produced by mapTestOn and flattens + # it to a list of derivations suitable to be passed + # to `releaseTools.aggregate` as constituents. + # Removes all non derivations from the input jobList. + # + # accumulateDerivations :: [ Either Derivation AttrSet ] -> [ Derivation ] + # + # > accumulateDerivations [ drv1 "string" { foo = drv2; bar = { baz = drv3; }; } ] + # [ drv1 drv2 drv3 ] + accumulateDerivations = jobList: + lib.concatMap ( + attrs: + if lib.isDerivation attrs + then [ attrs ] + else if lib.isAttrs attrs + then accumulateDerivations (lib.attrValues attrs) + else [] + ) jobList; + + # names of all subsets of `pkgs.haskell.packages` + compilerNames = lib.mapAttrs (name: _: name) pkgs.haskell.packages; + + # list of all compilers to test specific packages on + released = with compilerNames; [ + ghc884 + ghc8107 + ghc902 + ghc921 + ]; + + # packagePlatforms applied to `haskell.packages.*` + compilerPlatforms = lib.mapAttrs + (_: v: packagePlatforms v) + pkgs.haskell.packages; + + # This function lets you specify specific packages + # which are to be tested on a list of specific GHC + # versions and returns a job set for all specified + # combinations. See `jobs` below for an example. + versionedCompilerJobs = config: mapTestOn { + haskell.packages = + (lib.mapAttrs ( + ghc: jobs: + lib.filterAttrs ( + jobName: platforms: + lib.elem ghc (config."${jobName}" or []) + ) jobs + ) compilerPlatforms); + }; + + # hydra jobs for `pkgs` of which we import a subset of + pkgsPlatforms = packagePlatforms pkgs; + + # names of packages in an attribute set that are maintained + maintainedPkgNames = set: builtins.attrNames + (lib.filterAttrs ( + _: v: builtins.length (v.meta.maintainers or []) > 0 + ) set); + + recursiveUpdateMany = builtins.foldl' lib.recursiveUpdate {}; + + # Remove multiple elements from a list at once. + # + # removeMany + # :: [a] -- list of elements to remove + # -> [a] -- list of elements from which to remove + # -> [a] + # + # > removeMany ["aarch64-linux" "x86_64-darwin"] ["aarch64-linux" "x86_64-darwin" "x86_64-linux"] + # ["x86_64-linux"] + removeMany = itemsToRemove: list: lib.foldr lib.remove list itemsToRemove; + + # Recursively remove platforms from the values in an attribute set. + # + # removePlatforms + # :: [String] + # -> AttrSet + # -> AttrSet + # + # > attrSet = { + # foo = ["aarch64-linux" "x86_64-darwin" "x86_64-linux"]; + # bar.baz = ["aarch64-linux" "x86_64-linux"]; + # bar.quux = ["aarch64-linux" "x86_64-darwin"]; + # } + # > removePlatforms ["aarch64-linux" "x86_64-darwin"] attrSet + # { + # foo = ["x86_64-linux"]; + # bar = { + # baz = ["x86_64-linux"]; + # quux = []; + # }; + # } + removePlatforms = platformsToRemove: packageSet: + lib.mapAttrsRecursive + (_: val: + if lib.isList val + then removeMany platformsToRemove val + else val + ) + packageSet; + + jobs = recursiveUpdateMany [ + (mapTestOn { + haskellPackages = packagePlatforms pkgs.haskellPackages; + haskell.compiler = packagePlatforms pkgs.haskell.compiler; + + tests.haskell = packagePlatforms pkgs.tests.haskell; + + nixosTests.agda = (packagePlatforms pkgs.nixosTests).agda; + agdaPackages = packagePlatforms pkgs.agdaPackages; + + # top-level packages that depend on haskellPackages + inherit (pkgsPlatforms) + agda + arion + bench + bustle + blucontrol + cabal-install + cabal2nix + cachix + carp + cedille + client-ip-echo + darcs + dconf2nix + dhall + dhall-bash + dhall-docs + dhall-lsp-server + dhall-json + dhall-nix + dhall-text + diagrams-builder + elm2nix + fffuu + futhark + ghcid + git-annex + git-brunch + gitit + glirc + hadolint + haskell-ci + haskell-language-server + hasura-graphql-engine + hci + hercules-ci-agent + hinit + hedgewars + hledger + hledger-check-fancyassertions + hledger-iadd + hledger-interest + hledger-ui + hledger-web + hlint + hpack + # hyper-haskell # depends on electron-10.4.7 which is marked as insecure + hyper-haskell-server-with-packages + icepeak + idris + ihaskell + jacinda + jl + koka + krank + lambdabot + madlang + matterhorn + mueval + neuron-notes + niv + nix-delegate + nix-deploy + nix-diff + nix-linter + nix-output-monitor + nix-script + nix-tree + nixfmt + nota + nvfetcher + ormolu + pandoc + pakcs + petrinizer + place-cursor-at + pinboard-notes-backup + pretty-simple + shake + shellcheck + sourceAndTags + spacecookie + spago + splot + stack + stack2nix + stutter + stylish-haskell + taffybar + tamarin-prover + taskell + termonad-with-packages + tldr-hs + tweet-hs + update-nix-fetchgit + uusi + uqm + uuagc + vaultenv + wstunnel + xmobar + xmonad-with-packages + yi + zsh-git-prompt + ; + + elmPackages.elm = pkgsPlatforms.elmPackages.elm; + + # GHCs linked to musl. + pkgsMusl.haskell.compiler = lib.recursiveUpdate + (packagePlatforms pkgs.pkgsMusl.haskell.compiler) + { + # remove musl ghc865Binary since it is known to be broken and + # causes an evaluation error on darwin. + # TODO: remove ghc865Binary altogether and use ghc8102Binary + ghc865Binary = {}; + + ghcjs = {}; + ghcjs810 = {}; + + # Can't be built with musl, see meta.broken comment in the drv + integer-simple.ghc884 = {}; + }; + + # Get some cache going for MUSL-enabled GHC. + pkgsMusl.haskellPackages = + removePlatforms + [ + # pkgsMusl is compiled natively with musl. It is not + # cross-compiled (unlike pkgsStatic). We can only + # natively bootstrap GHC with musl on x86_64-linux because + # upstream doesn't provide a musl bindist for aarch64. + "aarch64-linux" + + # musl only supports linux, not darwin. + "x86_64-darwin" + ] + { + inherit (packagePlatforms pkgs.pkgsMusl.haskellPackages) + hello + lens + random + ; + }; + + # Test some statically linked packages to catch regressions + # and get some cache going for static compilation with GHC. + # Use integer-simple to avoid GMP linking problems (LGPL) + pkgsStatic.haskell.packages.integer-simple.ghc8107 = + removePlatforms + [ + "aarch64-linux" # times out on Hydra + "x86_64-darwin" # TODO: reenable when static libiconv works on darwin + ] + { + inherit (packagePlatforms pkgs.pkgsStatic.haskell.packages.integer-simple.ghc8107) + hello + lens + random + ; + }; + }) + (versionedCompilerJobs { + # Packages which should be checked on more than the + # default GHC version. This list can be used to test + # the state of the package set with newer compilers + # and to confirm that critical packages for the + # package sets (like Cabal, jailbreak-cabal) are + # working as expected. + cabal-install = released; + Cabal_3_6_2_0 = released; + cabal2nix = released; + cabal2nix-unstable = released; + funcmp = released; + haskell-language-server = released; + hoogle = released; + hlint = released; + hsdns = released; + jailbreak-cabal = released; + language-nix = released; + nix-paths = released; + titlecase = released; + ghc-api-compat = [ + compilerNames.ghc884 + compilerNames.ghc8107 + compilerNames.ghc902 + ]; + }) + { + mergeable = pkgs.releaseTools.aggregate { + name = "haskell-updates-mergeable"; + meta = { + description = '' + Critical haskell packages that should work at all times, + serves as minimum requirement for an update merge + ''; + maintainers = lib.teams.haskell.members; + }; + constituents = accumulateDerivations [ + # haskell specific tests + jobs.tests.haskell + # important top-level packages + jobs.cabal-install + jobs.cabal2nix + jobs.cachix + jobs.darcs + jobs.haskell-language-server + jobs.hledger + jobs.hledger-ui + jobs.hpack + jobs.niv + jobs.pandoc + jobs.stack + jobs.stylish-haskell + # important haskell (library) packages + jobs.haskellPackages.cabal-plan + jobs.haskellPackages.distribution-nixpkgs + jobs.haskellPackages.hackage-db + jobs.haskellPackages.policeman + jobs.haskellPackages.xmonad + jobs.haskellPackages.xmonad-contrib + # haskell packages maintained by @peti + # imported from the old hydra jobset + jobs.haskellPackages.hopenssl + jobs.haskellPackages.hsemail + jobs.haskellPackages.hsyslog + ]; + }; + maintained = pkgs.releaseTools.aggregate { + name = "maintained-haskell-packages"; + meta = { + description = "Aggregate jobset of all haskell packages with a maintainer"; + maintainers = lib.teams.haskell.members; + }; + constituents = accumulateDerivations + (builtins.map + (name: jobs.haskellPackages."${name}") + (maintainedPkgNames pkgs.haskellPackages)); + }; + + muslGHCs = pkgs.releaseTools.aggregate { + name = "haskell-pkgsMusl-ghcs"; + meta = { + description = "GHCs built with musl"; + maintainers = with lib.maintainers; [ + nh2 + ]; + }; + constituents = accumulateDerivations [ + jobs.pkgsMusl.haskell.compiler.ghc8102Binary + jobs.pkgsMusl.haskell.compiler.ghc8107Binary + jobs.pkgsMusl.haskell.compiler.ghc884 + jobs.pkgsMusl.haskell.compiler.ghc8107 + jobs.pkgsMusl.haskell.compiler.ghc902 + jobs.pkgsMusl.haskell.compiler.ghc921 + jobs.pkgsMusl.haskell.compiler.ghcHEAD + jobs.pkgsMusl.haskell.compiler.integer-simple.ghc8107 + jobs.pkgsMusl.haskell.compiler.native-bignum.ghc902 + jobs.pkgsMusl.haskell.compiler.native-bignum.ghc921 + jobs.pkgsMusl.haskell.compiler.native-bignum.ghcHEAD + ]; + }; + + staticHaskellPackages = pkgs.releaseTools.aggregate { + name = "static-haskell-packages"; + meta = { + description = "Static haskell builds using the pkgsStatic infrastructure"; + maintainers = [ + lib.maintainers.sternenseemann + lib.maintainers.rnhmjoj + ]; + }; + constituents = accumulateDerivations [ + jobs.pkgsStatic.haskell.packages.integer-simple.ghc8107.hello + jobs.pkgsStatic.haskell.packages.integer-simple.ghc8107.lens + jobs.pkgsStatic.haskell.packages.integer-simple.ghc8107.random + ]; + }; + } + ]; + +in jobs diff --git a/nixpkgs/pkgs/top-level/release-lib.nix b/nixpkgs/pkgs/top-level/release-lib.nix new file mode 100644 index 000000000000..ceae00baec9c --- /dev/null +++ b/nixpkgs/pkgs/top-level/release-lib.nix @@ -0,0 +1,160 @@ +{ supportedSystems +, packageSet ? (import ../..) +, scrubJobs ? true +, # Attributes passed to nixpkgs. Don't build packages marked as unfree. + nixpkgsArgs ? { config = { allowUnfree = false; inHydra = true; }; } +}: + +let + lib = import ../../lib; +in with lib; + +rec { + + pkgs = packageSet (lib.recursiveUpdate { system = "x86_64-linux"; config.allowUnsupportedSystem = true; } nixpkgsArgs); + inherit lib; + + + hydraJob' = if scrubJobs then hydraJob else id; + + + /* !!! Hack: poor man's memoisation function. Necessary to prevent + Nixpkgs from being evaluated again and again for every + job/platform pair. */ + mkPkgsFor = crossSystem: let + packageSet' = args: packageSet (args // { inherit crossSystem; } // nixpkgsArgs); + + pkgs_x86_64_linux = packageSet' { system = "x86_64-linux"; }; + pkgs_i686_linux = packageSet' { system = "i686-linux"; }; + pkgs_aarch64_linux = packageSet' { system = "aarch64-linux"; }; + pkgs_aarch64_darwin = packageSet' { system = "aarch64-darwin"; }; + pkgs_armv6l_linux = packageSet' { system = "armv6l-linux"; }; + pkgs_armv7l_linux = packageSet' { system = "armv7l-linux"; }; + pkgs_x86_64_darwin = packageSet' { system = "x86_64-darwin"; }; + pkgs_x86_64_freebsd = packageSet' { system = "x86_64-freebsd"; }; + pkgs_i686_freebsd = packageSet' { system = "i686-freebsd"; }; + pkgs_i686_cygwin = packageSet' { system = "i686-cygwin"; }; + pkgs_x86_64_cygwin = packageSet' { system = "x86_64-cygwin"; }; + + in system: + if system == "x86_64-linux" then pkgs_x86_64_linux + else if system == "i686-linux" then pkgs_i686_linux + else if system == "aarch64-linux" then pkgs_aarch64_linux + else if system == "aarch64-darwin" then pkgs_aarch64_darwin + else if system == "armv6l-linux" then pkgs_armv6l_linux + else if system == "armv7l-linux" then pkgs_armv7l_linux + else if system == "x86_64-darwin" then pkgs_x86_64_darwin + else if system == "x86_64-freebsd" then pkgs_x86_64_freebsd + else if system == "i686-freebsd" then pkgs_i686_freebsd + else if system == "i686-cygwin" then pkgs_i686_cygwin + else if system == "x86_64-cygwin" then pkgs_x86_64_cygwin + else abort "unsupported system type: ${system}"; + + pkgsFor = pkgsForCross null; + + + # More poor man's memoisation + pkgsForCross = let + examplesByConfig = lib.flip lib.mapAttrs' + lib.systems.examples + (_: crossSystem: nameValuePair crossSystem.config { + inherit crossSystem; + pkgsFor = mkPkgsFor crossSystem; + }); + native = mkPkgsFor null; + in crossSystem: let + candidate = examplesByConfig.${crossSystem.config} or null; + in if crossSystem == null + then native + else if candidate != null && lib.matchAttrs crossSystem candidate.crossSystem + then candidate.pkgsFor + else mkPkgsFor crossSystem; # uncached fallback + + + # Given a list of 'meta.platforms'-style patterns, return the sublist of + # `supportedSystems` containing systems that matches at least one of the given + # patterns. + # + # This is written in a funny way so that we only elaborate the systems once. + supportedMatches = let + supportedPlatforms = map + (system: lib.systems.elaborate { inherit system; }) + supportedSystems; + in metaPatterns: let + anyMatch = platform: + lib.any (lib.meta.platformMatch platform) metaPatterns; + matchingPlatforms = lib.filter anyMatch supportedPlatforms; + in map ({ system, ...}: system) matchingPlatforms; + + + assertTrue = bool: + if bool + then pkgs.runCommand "evaluated-to-true" {} "touch $out" + else pkgs.runCommand "evaluated-to-false" {} "false"; + + + /* The working or failing mails for cross builds will be sent only to + the following maintainers, as most package maintainers will not be + interested in the result of cross building a package. */ + crossMaintainers = [ maintainers.viric ]; + + + # Generate attributes for all supported systems. + forAllSystems = genAttrs supportedSystems; + + + # Generate attributes for all sytems matching at least one of the given + # patterns + forMatchingSystems = metaPatterns: genAttrs (supportedMatches metaPatterns); + + + /* Build a package on the given set of platforms. The function `f' + is called for each supported platform with Nixpkgs for that + platform as an argument . We return an attribute set containing + a derivation for each supported platform, i.e. ‘{ x86_64-linux = + f pkgs_x86_64_linux; i686-linux = f pkgs_i686_linux; ... }’. */ + testOn = testOnCross null; + + + /* Similar to the testOn function, but with an additional + 'crossSystem' parameter for packageSet', defining the target + platform for cross builds. */ + testOnCross = crossSystem: metaPatterns: f: forMatchingSystems metaPatterns + (system: hydraJob' (f (pkgsForCross crossSystem system))); + + + /* Given a nested set where the leaf nodes are lists of platforms, + map each leaf node to `testOn [platforms...] (pkgs: + pkgs.<attrPath>)'. */ + mapTestOn = _mapTestOnHelper id null; + + + _mapTestOnHelper = f: crossSystem: mapAttrsRecursive + (path: metaPatterns: testOnCross crossSystem metaPatterns + (pkgs: f (getAttrFromPath path pkgs))); + + + /* Similar to the testOn function, but with an additional 'crossSystem' + * parameter for packageSet', defining the target platform for cross builds, + * and triggering the build of the host derivation. */ + mapTestOnCross = _mapTestOnHelper + (addMetaAttrs { maintainers = crossMaintainers; }); + + + /* Recursively map a (nested) set of derivations to an isomorphic + set of meta.platforms values. */ + packagePlatforms = mapAttrs (name: value: + if isDerivation value then + value.meta.hydraPlatforms + or (value.meta.platforms or [ "x86_64-linux" ]) + else if value.recurseForDerivations or false || value.recurseForRelease or false then + packagePlatforms value + else + [] + ); + + + /* Common platform groups on which to test packages. */ + inherit (platforms) unix linux darwin cygwin all mesaPlatforms; + +} diff --git a/nixpkgs/pkgs/top-level/release-python.nix b/nixpkgs/pkgs/top-level/release-python.nix new file mode 100644 index 000000000000..d90be7f3bb4c --- /dev/null +++ b/nixpkgs/pkgs/top-level/release-python.nix @@ -0,0 +1,47 @@ +/* + test for example like this + $ hydra-eval-jobs pkgs/top-level/release-python.nix +*/ + +{ # The platforms for which we build Nixpkgs. + supportedSystems ? [ + "aarch64-linux" + "x86_64-linux" + ] +, # Attributes passed to nixpkgs. Don't build packages marked as unfree. + nixpkgsArgs ? { config = { allowUnfree = false; inHydra = true; }; } +}: + +with import ./release-lib.nix {inherit supportedSystems nixpkgsArgs; }; +with lib; + +let + packagePython = mapAttrs (name: value: + let res = builtins.tryEval ( + if isDerivation value then + value.meta.isBuildPythonPackage or [] + else if value.recurseForDerivations or false || value.recurseForRelease or false then + packagePython value + else + []); + in if res.success then res.value else [] + ); + + jobs = { + lib-tests = import ../../lib/tests/release.nix { inherit pkgs; }; + pkgs-lib-tests = import ../pkgs-lib/tests { inherit pkgs; }; + + tested = pkgs.releaseTools.aggregate { + name = "python-tested"; + meta.description = "Release-critical packages from the python package sets"; + constituents = [ + jobs.remarshal.x86_64-linux # Used in pkgs.formats helper + jobs.python39Packages.colorama.x86_64-linux # Used in nixos test-driver + jobs.python39Packages.ptpython.x86_64-linux # Used in nixos test-driver + jobs.python39Packages.requests.x86_64-linux # Almost ubiquous package + jobs.python39Packages.sphinx.x86_64-linux # Document creation for many packages + ]; + }; + + } // (mapTestOn (packagePython pkgs)); +in jobs diff --git a/nixpkgs/pkgs/top-level/release-r.nix b/nixpkgs/pkgs/top-level/release-r.nix new file mode 100644 index 000000000000..4c715a7786d6 --- /dev/null +++ b/nixpkgs/pkgs/top-level/release-r.nix @@ -0,0 +1,13 @@ +/* + This is the Hydra jobset for the `r-updates` branch in Nixpkgs. + The jobset can be tested by: + + $ hydra-eval-jobs -I . pkgs/top-level/release-r.nix +*/ +{ supportedSystems ? [ "x86_64-linux" "aarch64-linux" ] }: + +with import ./release-lib.nix { inherit supportedSystems; }; + +mapTestOn { + rPackages = packagePlatforms pkgs.rPackages; +} diff --git a/nixpkgs/pkgs/top-level/release-small.nix b/nixpkgs/pkgs/top-level/release-small.nix new file mode 100644 index 000000000000..a267b20d6675 --- /dev/null +++ b/nixpkgs/pkgs/top-level/release-small.nix @@ -0,0 +1,154 @@ +/* A small release file, with few packages to be built. The aim is to reduce + the load on Hydra when testing the `stdenv-updates' branch. */ + +{ nixpkgs ? { outPath = (import ../../lib).cleanSource ../..; revCount = 1234; shortRev = "abcdef"; } +, supportedSystems ? [ "x86_64-linux" "x86_64-darwin" ] +, # Attributes passed to nixpkgs. Don't build packages marked as unfree. + nixpkgsArgs ? { config = { allowUnfree = false; inHydra = true; }; } +}: + +with import ./release-lib.nix { inherit supportedSystems nixpkgsArgs; }; + +{ + + tarball = import ./make-tarball.nix { + inherit nixpkgs supportedSystems; + officialRelease = false; + }; + +} // (mapTestOn ({ + + aspell = all; + at = linux; + autoconf = all; + automake = all; + avahi = unix; # Cygwin builds fail + bash = all; + bashInteractive = all; + bc = all; + binutils = linux; + bind = linux; + bsdiff = all; + bzip2 = all; + cmake = all; + coreutils = all; + cpio = all; + cron = linux; + cups = linux; + dbus = linux; + dhcp = linux; + diffutils = all; + e2fsprogs = linux; + emacs = linux; + file = all; + findutils = all; + flex = all; + gcc = all; + glibc = linux; + glibcLocales = linux; + gnugrep = all; + gnum4 = all; + gnumake = all; + gnupatch = all; + gnupg = linux; + gnuplot = unix; # Cygwin builds fail + gnused = all; + gnutar = all; + gnutls = linux; + grub = linux; + grub2 = linux; + guile = linux; # tests fail on Cygwin + gzip = all; + hddtemp = linux; + hdparm = linux; + hello = all; + host = linux; + iana-etc = linux; + icewm = linux; + idutils = all; + inetutils = linux; + iputils = linux; + kvm = linux; + qemu = linux; + qemu_kvm = linux; + lapack-reference = linux; + less = all; + lftp = all; + libtool = all; + libtool_2 = all; + libxml2 = all; + libxslt = all; + lout = linux; + lsh = linux; + lsof = linux; + ltrace = linux; + lvm2 = linux; + lynx = linux; + xz = linux; + man = linux; + man-pages = linux; + mc = all; + mdadm = linux; + mesa = mesaPlatforms; + mingetty = linux; + mktemp = all; + monotone = linux; + mutt = linux; + mysql = linux; + # netcat broken on darwin + netcat = linux; + nfs-utils = linux; + nix = all; + nixUnstable = all; + nss_ldap = linux; + nssmdns = linux; + ntfs3g = linux; + ntp = linux; + openssh = linux; + openssl = all; + pan = linux; + pciutils = linux; + pdf2xml = all; + perl = all; + pkg-config = all; + pmccabe = linux; + procps = linux; + python3 = unix; # Cygwin builds fail + readline = all; + rlwrap = all; + rpcbind = linux; + rsync = linux; + screen = linux ++ darwin; + scrot = linux; + sdparm = linux; + smartmontools = all; + sqlite = unix; # Cygwin builds fail + squid = linux; + ssmtp = linux; + stdenv = all; + strace = linux; + su = linux; + sudo = linux; + sysklogd = linux; + syslinux = ["i686-linux"]; + tcl = linux; + tcpdump = linux; + texinfo = all; + time = linux; + tinycc = linux; + udev = linux; + unzip = all; + usbutils = linux; + util-linux = linux; + util-linuxMinimal = linux; + w3m = all; + webkitgtk = linux; + wget = all; + which = all; + wirelesstools = linux; + wpa_supplicant = linux; + xfsprogs = linux; + xkeyboard_config = linux; + zip = all; + +} )) diff --git a/nixpkgs/pkgs/top-level/release.nix b/nixpkgs/pkgs/top-level/release.nix new file mode 100644 index 000000000000..0c759095f56d --- /dev/null +++ b/nixpkgs/pkgs/top-level/release.nix @@ -0,0 +1,224 @@ +/* This file defines the builds that constitute the Nixpkgs. + Everything defined here ends up in the Nixpkgs channel. Individual + jobs can be tested by running: + + $ nix-build pkgs/top-level/release.nix -A <jobname>.<system> + + e.g. + + $ nix-build pkgs/top-level/release.nix -A coreutils.x86_64-linux +*/ +{ nixpkgs ? { outPath = (import ../../lib).cleanSource ../..; revCount = 1234; shortRev = "abcdef"; revision = "0000000000000000000000000000000000000000"; } +, officialRelease ? false + # The platforms for which we build Nixpkgs. +, supportedSystems ? [ "x86_64-linux" "x86_64-darwin" "aarch64-linux" ] +, limitedSupportedSystems ? [ "i686-linux" ] + # Strip most of attributes when evaluating to spare memory usage +, scrubJobs ? true + # Attributes passed to nixpkgs. Don't build packages marked as unfree. +, nixpkgsArgs ? { config = { allowUnfree = false; inHydra = true; }; } +}: + +with import ./release-lib.nix { inherit supportedSystems scrubJobs nixpkgsArgs; }; + +let + + systemsWithAnySupport = supportedSystems ++ limitedSupportedSystems; + + supportDarwin = lib.genAttrs [ + "x86_64" + "aarch64" + ] (arch: builtins.elem "${arch}-darwin" systemsWithAnySupport); + + jobs = + { tarball = import ./make-tarball.nix { inherit pkgs nixpkgs officialRelease supportedSystems; }; + + metrics = import ./metrics.nix { inherit pkgs nixpkgs; }; + + manual = import ../../doc { inherit pkgs nixpkgs; }; + lib-tests = import ../../lib/tests/release.nix { inherit pkgs; }; + pkgs-lib-tests = import ../pkgs-lib/tests { inherit pkgs; }; + + darwin-tested = if supportDarwin.x86_64 then pkgs.releaseTools.aggregate + { name = "nixpkgs-darwin-${jobs.tarball.version}"; + meta.description = "Release-critical builds for the Nixpkgs darwin channel"; + constituents = + [ jobs.tarball + jobs.cabal2nix.x86_64-darwin + jobs.ghc.x86_64-darwin + jobs.git.x86_64-darwin + jobs.go.x86_64-darwin + jobs.mariadb.x86_64-darwin + jobs.nix.x86_64-darwin + jobs.nixpkgs-review.x86_64-darwin + jobs.nix-info.x86_64-darwin + jobs.nix-info-tested.x86_64-darwin + jobs.openssh.x86_64-darwin + jobs.openssl.x86_64-darwin + jobs.pandoc.x86_64-darwin + jobs.postgresql.x86_64-darwin + jobs.python2.x86_64-darwin + jobs.python3.x86_64-darwin + jobs.ruby.x86_64-darwin + jobs.rustc.x86_64-darwin + # blocking ofBorg CI 2020-02-28 + # jobs.stack.x86_64-darwin + jobs.stdenv.x86_64-darwin + jobs.vim.x86_64-darwin + jobs.cachix.x86_64-darwin + + # UI apps + # jobs.firefox-unwrapped.x86_64-darwin + jobs.qt5.qtmultimedia.x86_64-darwin + jobs.inkscape.x86_64-darwin + jobs.gimp.x86_64-darwin + jobs.emacs.x86_64-darwin + jobs.wireshark.x86_64-darwin + jobs.transmission-gtk.x86_64-darwin + + # Tests + /* + jobs.tests.cc-wrapper.x86_64-darwin + jobs.tests.cc-wrapper-clang.x86_64-darwin + jobs.tests.cc-wrapper-libcxx.x86_64-darwin + jobs.tests.stdenv-inputs.x86_64-darwin + jobs.tests.macOSSierraShared.x86_64-darwin + jobs.tests.patch-shebangs.x86_64-darwin + */ + ]; + } else null; + + unstable = pkgs.releaseTools.aggregate + { name = "nixpkgs-${jobs.tarball.version}"; + meta.description = "Release-critical builds for the Nixpkgs unstable channel"; + constituents = + [ jobs.tarball + jobs.metrics + jobs.manual + jobs.lib-tests + jobs.pkgs-lib-tests + jobs.stdenv.x86_64-linux + jobs.cargo.x86_64-linux + jobs.go.x86_64-linux + jobs.linux.x86_64-linux + jobs.pandoc.x86_64-linux + jobs.python2.x86_64-linux + jobs.python3.x86_64-linux + # Needed by contributors to test PRs (by inclusion of the PR template) + jobs.nixpkgs-review.x86_64-linux + # Needed for support + jobs.nix-info.x86_64-linux + jobs.nix-info-tested.x86_64-linux + # Ensure that X11/GTK are in order. + jobs.thunderbird-unwrapped.x86_64-linux + jobs.cachix.x86_64-linux + + /* + jobs.tests.cc-wrapper.x86_64-linux + jobs.tests.cc-wrapper-gcc7.x86_64-linux + jobs.tests.cc-wrapper-gcc8.x86_64-linux + + # broken see issue #40038 + + jobs.tests.cc-wrapper-clang.x86_64-linux + jobs.tests.cc-wrapper-libcxx.x86_64-linux + jobs.tests.cc-wrapper-clang-5.x86_64-linux + jobs.tests.cc-wrapper-libcxx-5.x86_64-linux + jobs.tests.cc-wrapper-clang-6.x86_64-linux + jobs.tests.cc-wrapper-libcxx-6.x86_64-linux + jobs.tests.cc-multilib-gcc.x86_64-linux + jobs.tests.cc-multilib-clang.x86_64-linux + jobs.tests.stdenv-inputs.x86_64-linux + jobs.tests.patch-shebangs.x86_64-linux + */ + ] + ++ lib.collect lib.isDerivation jobs.stdenvBootstrapTools + ++ lib.optionals supportDarwin.x86_64 [ + jobs.stdenv.x86_64-darwin + jobs.cargo.x86_64-darwin + jobs.cachix.x86_64-darwin + jobs.go.x86_64-darwin + jobs.python2.x86_64-darwin + jobs.python3.x86_64-darwin + jobs.nixpkgs-review.x86_64-darwin + jobs.nix-info.x86_64-darwin + jobs.nix-info-tested.x86_64-darwin + jobs.git.x86_64-darwin + jobs.mariadb.x86_64-darwin + jobs.vim.x86_64-darwin + jobs.inkscape.x86_64-darwin + jobs.qt5.qtmultimedia.x86_64-darwin + /* + jobs.tests.cc-wrapper.x86_64-darwin + jobs.tests.cc-wrapper-gcc7.x86_64-darwin + # jobs.tests.cc-wrapper-gcc8.x86_64-darwin + jobs.tests.cc-wrapper-clang.x86_64-darwin + jobs.tests.cc-wrapper-libcxx.x86_64-darwin + jobs.tests.cc-wrapper-clang-5.x86_64-darwin + jobs.tests.cc-wrapper-libcxx-6.x86_64-darwin + jobs.tests.cc-wrapper-clang-6.x86_64-darwin + jobs.tests.cc-wrapper-libcxx-6.x86_64-darwin + jobs.tests.stdenv-inputs.x86_64-darwin + jobs.tests.macOSSierraShared.x86_64-darwin + jobs.tests.patch-shebangs.x86_64-darwin + */ + ]; + }; + + stdenvBootstrapTools = with lib; + genAttrs systemsWithAnySupport + (system: { + inherit + (import ../stdenv/linux/make-bootstrap-tools.nix { + localSystem = { inherit system; }; + }) + dist test; + }) + # darwin is special in this + // optionalAttrs supportDarwin.x86_64 { + x86_64-darwin = + let + bootstrap = import ../stdenv/darwin/make-bootstrap-tools.nix { system = "x86_64-darwin"; }; + in { + # Lightweight distribution and test + inherit (bootstrap) dist test; + # Test a full stdenv bootstrap from the bootstrap tools definition + inherit (bootstrap.test-pkgs) stdenv; + }; + } // optionalAttrs supportDarwin.aarch64 { + # Cross compiled bootstrap tools + aarch64-darwin = + let + bootstrap = import ../stdenv/darwin/make-bootstrap-tools.nix { system = "x86_64-darwin"; crossSystem = "aarch64-darwin"; }; + in { + # Distribution only for now + inherit (bootstrap) dist; + }; + }; + + } // (mapTestOn ((packagePlatforms pkgs) // { + haskell.compiler = packagePlatforms pkgs.haskell.compiler; + haskellPackages = packagePlatforms pkgs.haskellPackages; + idrisPackages = packagePlatforms pkgs.idrisPackages; + agdaPackages = packagePlatforms pkgs.agdaPackages; + + pkgsLLVM.stdenv = [ "x86_64-linux" "aarch64-linux" ]; + pkgsMusl.stdenv = [ "x86_64-linux" "aarch64-linux" ]; + pkgsStatic.stdenv = [ "x86_64-linux" "aarch64-linux" ]; + + tests = packagePlatforms pkgs.tests; + + # Language packages disabled in https://github.com/NixOS/nixpkgs/commit/ccd1029f58a3bb9eca32d81bf3f33cb4be25cc66 + + #emacsPackages = packagePlatforms pkgs.emacsPackages; + #rPackages = packagePlatforms pkgs.rPackages; + ocamlPackages = { }; + perlPackages = { }; + + darwin = packagePlatforms pkgs.darwin // { + cf-private = {}; + xcode = {}; + }; + } )); + +in jobs diff --git a/nixpkgs/pkgs/top-level/ruby-packages.nix b/nixpkgs/pkgs/top-level/ruby-packages.nix new file mode 100644 index 000000000000..9e64afe31f3b --- /dev/null +++ b/nixpkgs/pkgs/top-level/ruby-packages.nix @@ -0,0 +1,3102 @@ +{ + actioncable = { + dependencies = ["actionpack" "activesupport" "nio4r" "websocket-driver"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "121zl6435dwz1d14xviyynxj4njbawbv1ljxj5p0cxlhql1n3jsm"; + type = "gem"; + }; + version = "7.0.1"; + }; + actionmailbox = { + dependencies = ["actionpack" "activejob" "activerecord" "activestorage" "activesupport" "mail" "net-imap" "net-pop" "net-smtp"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1jkxqdp9ha8pm2cd61ajs2pgn41adz3x1f8yqvdca3fvfrlgirjg"; + type = "gem"; + }; + version = "7.0.1"; + }; + actionmailer = { + dependencies = ["actionpack" "actionview" "activejob" "activesupport" "mail" "net-imap" "net-pop" "net-smtp" "rails-dom-testing"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0r27a5g0r7b27mzcl150hdc7ljgl5iyrxw1z4wn3n1jfb7xs5rkq"; + type = "gem"; + }; + version = "7.0.1"; + }; + actionpack = { + dependencies = ["actionview" "activesupport" "rack" "rack-test" "rails-dom-testing" "rails-html-sanitizer"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0q27kqcl369g9y7sxxcfigrm1yyj3q22kd135l7ahx977vcy5hjm"; + type = "gem"; + }; + version = "7.0.1"; + }; + actiontext = { + dependencies = ["actionpack" "activerecord" "activestorage" "activesupport" "globalid" "nokogiri"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0yya6xda23q8p3knvg5c8zfqk7xwnkjplf2bxnvmipn88918cz6w"; + type = "gem"; + }; + version = "7.0.1"; + }; + actionview = { + dependencies = ["activesupport" "builder" "erubi" "rails-dom-testing" "rails-html-sanitizer"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0nc0v74mdlag3kxcby0rrcz2ivvc94sfdrw3zm5ng2qrchh56w1b"; + type = "gem"; + }; + version = "7.0.1"; + }; + activejob = { + dependencies = ["activesupport" "globalid"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1yshbsy4k8702x9jv90yr6cjjpn5vxlw42pb878g70cgp2wq45r3"; + type = "gem"; + }; + version = "7.0.1"; + }; + activemodel = { + dependencies = ["activesupport"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0vr3ayykc1s7n12ajddcyff751v9j48yfimgxrys6qsxj89gmnmh"; + type = "gem"; + }; + version = "7.0.1"; + }; + activerecord = { + dependencies = ["activemodel" "activesupport"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1dpn1r1v2165bx9wj07rh1g27jl49yr6kyd34xhkd48hxfadq3jb"; + type = "gem"; + }; + version = "7.0.1"; + }; + activestorage = { + dependencies = ["actionpack" "activejob" "activerecord" "activesupport" "marcel" "mini_mime"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0pxjxyjgh4al11k7z1lbnsc5wx5dnraz95p2wx00dkrvpgw8gm8b"; + type = "gem"; + }; + version = "7.0.1"; + }; + activesupport = { + dependencies = ["concurrent-ruby" "i18n" "minitest" "tzinfo"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "02lys9pnb99hsczs551iqzjn008i8k7c728xxba7acfi9rdw9pa6"; + type = "gem"; + }; + version = "7.0.1"; + }; + addressable = { + dependencies = ["idn-ruby"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "sha256-920p0tH1S2xqSa7Fj5WDsI2X4IjCJ6P8upL2xlMdWQg="; + type = "gem"; + }; + version = "2.8.0"; + }; + ansi = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "14ims9zfal4gs2wpx2m5rd8zsrl2k794d359shkrsgg3fhr2a22l"; + type = "gem"; + }; + version = "1.5.0"; + }; + ast = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "04nc8x27hlzlrr5c2gn7mar4vdr0apw5xg22wp6m8dx3wqr04a0y"; + type = "gem"; + }; + version = "2.4.2"; + }; + atk = { + dependencies = ["glib2"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "05brc25pfvak610mdwgjsc64di29yff9i9g72m6hyc21pdjwfy3n"; + type = "gem"; + }; + version = "3.4.3"; + }; + atomos = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "17vq6sjyswr5jfzwdccw748kgph6bdw30bakwnn6p8sl4hpv4hvx"; + type = "gem"; + }; + version = "0.1.3"; + }; + awesome_print = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0vkq6c8y2jvaw03ynds5vjzl1v9wg608cimkd3bidzxc0jvk56z9"; + type = "gem"; + }; + version = "1.9.2"; + }; + backport = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0xbzzjrgah0f8ifgd449kak2vyf30micpz6x2g82aipfv7ypsb4i"; + type = "gem"; + }; + version = "1.2.0"; + }; + bacon = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1f06gdj77bmwzc1k5iragl1595hbn67yc7sqvs56ca8plrr2vmai"; + type = "gem"; + }; + version = "1.2.0"; + }; + benchmark = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0xwcnbwnbqq8jp92mvawn6y69cb53wsz84wwmk9vsfk1jjvqfw2z"; + type = "gem"; + }; + version = "0.2.0"; + }; + builder = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "045wzckxpwcqzrjr353cxnyaxgf0qg22jh00dcx7z38cys5g1jlr"; + type = "gem"; + }; + version = "3.2.4"; + }; + byebug = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0nx3yjf4xzdgb8jkmk2344081gqr22pgjqnmjg2q64mj5d6r9194"; + type = "gem"; + }; + version = "11.1.3"; + }; + cairo = { + dependencies = ["native-package-installer" "pkg-config" "red-colors"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0vbj9szp2xbnxqan8hppip8vm9fxpcmpx745y5fvg2scdh9f0p7s"; + type = "gem"; + }; + version = "1.17.5"; + }; + cairo-gobject = { + dependencies = ["cairo" "glib2"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "136aa800dgq6bmr0lb59mfj5q72r712wwp5wy5qxnp48adjw1k2h"; + type = "gem"; + }; + version = "3.4.3"; + }; + camping = { + dependencies = ["mab" "rack"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1q2a5x97pgnld0b8yziblp9fqkjyib4gfwv9gcyynyhswqwsldpf"; + type = "gem"; + }; + version = "2.1.532"; + }; + CFPropertyList = { + dependencies = ["rexml"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "193l8r1ycd3dcxa7lsb4pqcghbk56dzc5244m6y8xmv88z6m31d7"; + type = "gem"; + }; + version = "3.0.5"; + }; + charlock_holmes = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0hybw8jw9ryvz5zrki3gc9r88jqy373m6v46ynxsdzv1ysiyr40p"; + type = "gem"; + }; + version = "0.7.7"; + }; + claide = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0bpqhc0kqjp1bh9b7ffc395l9gfls0337rrhmab4v46ykl45qg3d"; + type = "gem"; + }; + version = "1.1.0"; + }; + clamp = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "08m0syh06bhx8dqn560ivjg96l5cs5s3l9jh2szsnlcdcyl9jsjg"; + type = "gem"; + }; + version = "1.3.2"; + }; + cld3 = { + dependencies = ["ffi"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "10vcm1dadj5sjrg31afzv7h1f0irhc7va5sr5y0fcvlkg2hms8jk"; + type = "gem"; + }; + version = "3.4.3"; + }; + cocoapods = { + dependencies = ["activesupport" "claide" "cocoapods-core" "cocoapods-deintegrate" "cocoapods-downloader" "cocoapods-plugins" "cocoapods-search" "cocoapods-stats" "cocoapods-trunk" "cocoapods-try" "colored" "escape" "fourflusher" "molinillo" "nap" "xcodeproj"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0rnxjwrfk3yz34xx11hh61j7p57l6vwh8b86jvjivzlgrj4a025r"; + type = "gem"; + }; + version = "1.0.1"; + }; + cocoapods-acknowledgements = { + dependencies = ["cocoapods" "redcarpet" "xcodeproj"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "04gaijs4djjkynan06wyaxxz48db0czzfrhh95jn3r201k2ypa7k"; + type = "gem"; + }; + version = "1.3.0"; + }; + cocoapods-art = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1yi4dgl6w6fs35szsxb4z24d7svmqgxyr4ma4hsrcsb2pv4qk3xj"; + type = "gem"; + }; + version = "1.1.0"; + }; + cocoapods-browser = { + dependencies = ["cocoapods"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1mq9mcw3xnf2nqkmcjg874sx422dbmfa99vhw31c9jb0cd4j3m9p"; + type = "gem"; + }; + version = "0.1.5"; + }; + cocoapods-clean = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "16zy8xl94clblxivlcrw2jf3dnvmwlr6jni6kz74rnc8wj42sf1w"; + type = "gem"; + }; + version = "0.0.1"; + }; + cocoapods-clean_build_phases_scripts = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0syya8l1kz36069y7cx4f37aihpmbm4yd5wvifs3j8qzz8bpxpfi"; + type = "gem"; + }; + version = "0.0.3"; + }; + cocoapods-core = { + dependencies = ["activesupport" "fuzzy_match" "nap"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1bh69sbljlf3hvg98y2zssx0ch51lllz1k1lc8xysn43dm3ahaa5"; + type = "gem"; + }; + version = "1.0.1"; + }; + cocoapods-coverage = { + dependencies = ["cocoapods-testing" "slather"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1zaid3awk470igr5yilx1wvj1jnh88fbjl11hp93a4qic7j3i6ca"; + type = "gem"; + }; + version = "0.0.6"; + }; + cocoapods-deintegrate = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "18pnng0lv5z6kpp8hnki0agdxx979iq6hxkfkglsyqzmir22lz2i"; + type = "gem"; + }; + version = "1.0.5"; + }; + cocoapods-dependencies = { + dependencies = ["ruby-graphviz"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "10ssv98af44698kp4w0wfdrc7x3ccf2w9dhcva6i7hwlffjvcsz3"; + type = "gem"; + }; + version = "1.3.0"; + }; + cocoapods-deploy = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1qnhl54z0dqyn0sk7rgn3vwmfax0yr3sk2r464h888d2qjxz6v7j"; + type = "gem"; + }; + version = "0.0.12"; + }; + cocoapods-disable-podfile-validations = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1fxrq0b1x5gr2gr9md6mkwgaj8519gf1sbyqs88yqphbigf5iy75"; + type = "gem"; + }; + version = "0.1.1"; + }; + cocoapods-downloader = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "161sjpyxipnbhwcr5kyfbcdbzs9zq20sigsazjm782cn3s466p0z"; + type = "gem"; + }; + version = "1.5.1"; + }; + cocoapods-expert-difficulty = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "19shjj4kj9rqg1a3pax568q0w9rkq8jcba2mycvq0szbv7bw6pgl"; + type = "gem"; + }; + version = "1.0.0"; + }; + cocoapods-fix-react-native = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0jhgg3amman51hvk0x7h1xqqdb71kfmbzfziaip6fxkl7sjr43ix"; + type = "gem"; + }; + version = "2019.09.17.15"; + }; + cocoapods-generate = { + dependencies = ["cocoapods-disable-podfile-validations"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0vpn0y2r91cv9kr2kh6rwh51ipi90iyjfya8ir9grxh1ngv179ck"; + type = "gem"; + }; + version = "2.2.2"; + }; + cocoapods-git_url_rewriter = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1cmyrj92d781pkq1b6qbvpmxvfx8k3l36cdqsi46w55icjm1jqbw"; + type = "gem"; + }; + version = "1.0.1"; + }; + cocoapods-keys = { + dependencies = ["dotenv" "osx_keychain"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "153cxxsi77dygc4qrij6qs44dbvc7dw31jx06cmf0ajrhv9qjnxl"; + type = "gem"; + }; + version = "2.2.1"; + }; + cocoapods-open = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1z9x1cqrz4zc6yd08clawi8gg7ip8vbhkh9lkrdkzw7i6lqyrp0j"; + type = "gem"; + }; + version = "0.0.8"; + }; + cocoapods-plugins = { + dependencies = ["nap"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "16na82sfyc8801qs1n22nwq486s4j7yj6rj7fcp8cbxmj371fpbj"; + type = "gem"; + }; + version = "1.0.0"; + }; + cocoapods-search = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "12amy0nknv09bvzix8bkmcjn996c50c4ms20v2dl7v8rcw73n4qv"; + type = "gem"; + }; + version = "1.0.1"; + }; + cocoapods-stats = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1xhdh5v94p6l612rwrk290nd2hdfx8lbaqfbkmj34md218kilqww"; + type = "gem"; + }; + version = "1.1.0"; + }; + cocoapods-testing = { + dependencies = ["xctasks"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "03dqcz9pks7mbzq3zkfm2rzbjwkcwp8z3rip60d4pqs8b2bb61bg"; + type = "gem"; + }; + version = "0.0.6"; + }; + cocoapods-trunk = { + dependencies = ["nap" "netrc"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0cgdx7z9psxxrsa13fk7qc9i6jskrwcafhrdz94avzia2y6dlnsz"; + type = "gem"; + }; + version = "1.6.0"; + }; + cocoapods-try = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1znyp625rql37ivb5rk9fk9564cmax8icxfr041ysivpdrn98nql"; + type = "gem"; + }; + version = "1.2.0"; + }; + cocoapods-try-release-fix = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0a7hbc5j0p507cyd9a0rd2mf2d525ia3gcnx7bdspxqnhl0a43bf"; + type = "gem"; + }; + version = "0.1.2"; + }; + cocoapods-update-if-you-dare = { + dependencies = ["colored2"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0nqvywrbfxiagip2vl9kj71h39g4idq1lshkxl5bqh1hq57g4k9q"; + type = "gem"; + }; + version = "0.2.0"; + }; + cocoapods-whitelist = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "09g67hih1y1ibj85mc9w6xrwwv3402620i031jivc55msm6dmdvs"; + type = "gem"; + }; + version = "0.2.1"; + }; + cocoapods-wholemodule = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "03gr4r0aa9mrj8i27dd6l87jzq78sid3jbywmkazg3yrq6y38i21"; + type = "gem"; + }; + version = "0.0.1"; + }; + coderay = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0jvxqxzply1lwp7ysn94zjhh57vc14mcshw1ygw14ib8lhc00lyw"; + type = "gem"; + }; + version = "1.1.3"; + }; + coffee-script = { + dependencies = ["coffee-script-source" "execjs"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0rc7scyk7mnpfxqv5yy4y5q1hx3i7q3ahplcp4bq2g5r24g2izl2"; + type = "gem"; + }; + version = "2.4.1"; + }; + coffee-script-source = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1907v9q1zcqmmyqzhzych5l7qifgls2rlbnbhy5vzyr7i7yicaz1"; + type = "gem"; + }; + version = "1.12.2"; + }; + colorator = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "09zp15hyd9wlbgf1kmrf4rnry8cpvh1h9fj7afarlqcy4hrfdpvs"; + type = "gem"; + }; + version = "0.1"; + }; + colored = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0b0x5jmsyi0z69bm6sij1k89z7h0laag3cb4mdn7zkl9qmxb90lx"; + type = "gem"; + }; + version = "1.2"; + }; + colored2 = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0jlbqa9q4mvrm73aw9mxh23ygzbjiqwisl32d8szfb5fxvbjng5i"; + type = "gem"; + }; + version = "3.1.2"; + }; + concurrent-ruby = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0nwad3211p7yv9sda31jmbyw6sdafzmdi2i2niaz6f0wk5nq9h0f"; + type = "gem"; + }; + version = "1.1.9"; + }; + crass = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0pfl5c0pyqaparxaqxi6s4gfl21bdldwiawrc0aknyvflli60lfw"; + type = "gem"; + }; + version = "1.0.6"; + }; + curb = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "06k7iybv6shvf8ypw28q9pbks129v2k34sn4f293650000ybdman"; + type = "gem"; + }; + version = "1.0.0"; + }; + curses = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0py4n868h0whr5n8a4943nyagkpf0vnldk9nyizgf1q1lmrj1pkx"; + type = "gem"; + }; + version = "1.4.3"; + }; + daemons = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "07cszb0zl8mqmwhc8a2yfg36vi6lbgrp4pa5bvmryrpcz9v6viwg"; + type = "gem"; + }; + version = "1.4.1"; + }; + data_objects = { + dependencies = ["addressable"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "19fw1ckqc5f1wc4r72qrymy2k6cmd8azbxpn61ksbsjqhzc2bgqd"; + type = "gem"; + }; + version = "0.10.17"; + }; + dep-selector-libgecode = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "09frwp3np5c64y8g5rnbl46n7riknmdjprhndsh6zzajkjr9m3xj"; + type = "gem"; + }; + version = "1.3.5"; + }; + diff-lcs = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0rwvjahnp7cpmracd8x732rjgnilqv2sx7d1gfrysslc3h039fa9"; + type = "gem"; + }; + version = "1.5.0"; + }; + digest = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "00vwzvxgby22h7jhwadqqf9ssbkp3ag2pl4g7q3zf1y8mlk7rk39"; + type = "gem"; + }; + version = "3.1.0"; + }; + digest-sha3 = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "135a8r9nq10wlzbjm74dflls67y9iiwp04aj1089ablbmvbiiq41"; + type = "gem"; + }; + version = "1.1.0"; + }; + do_sqlite3 = { + dependencies = ["data_objects"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0gxz54qjgwg6a2mkqpai28m0i5swbyxpr4qmh9x1nwf20lysrgcf"; + type = "gem"; + }; + version = "0.10.17"; + }; + docile = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1lxqxgq71rqwj1lpl9q1mbhhhhhhdkkj7my341f2889pwayk85sz"; + type = "gem"; + }; + version = "1.4.0"; + }; + domain_name = { + dependencies = ["unf"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0lcqjsmixjp52bnlgzh4lg9ppsk52x9hpwdjd53k8jnbah2602h0"; + type = "gem"; + }; + version = "0.5.20190701"; + }; + dotenv = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0iym172c5337sm1x2ykc2i3f961vj3wdclbyg1x6sxs3irgfsl94"; + type = "gem"; + }; + version = "2.7.6"; + }; + e2mmap = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0n8gxjb63dck3vrmsdcqqll7xs7f3wk78mw8w0gdk9wp5nx6pvj5"; + type = "gem"; + }; + version = "0.1.0"; + }; + erubi = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "09l8lz3j00m898li0yfsnb6ihc63rdvhw3k5xczna5zrjk104f2l"; + type = "gem"; + }; + version = "1.10.0"; + }; + escape = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0sa1xkfc9jvkwyw1jbz3jhkq0ms1zrvswi6mmfiwcisg5fp497z4"; + type = "gem"; + }; + version = "0.0.4"; + }; + ethon = { + dependencies = ["ffi"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0kd7c61f28f810fgxg480j7457nlvqarza9c2ra0zhav0dd80288"; + type = "gem"; + }; + version = "0.15.0"; + }; + eventmachine = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0wh9aqb0skz80fhfn66lbpr4f86ya2z5rx6gm5xlfhd05bj1ch4r"; + type = "gem"; + }; + version = "1.2.7"; + }; + excon = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1bkh80zzjpfglm14rhz116qgz0nb5gvk3ydfjpg14av5407srgh1"; + type = "gem"; + }; + version = "0.90.0"; + }; + execjs = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "121h6af4i6wr3wxvv84y53jcyw2sk71j5wsncm6wq6yqrwcrk4vd"; + type = "gem"; + }; + version = "2.8.1"; + }; + faraday = { + dependencies = ["faraday-em_http" "faraday-em_synchrony" "faraday-excon" "faraday-httpclient" "faraday-multipart" "faraday-net_http" "faraday-net_http_persistent" "faraday-patron" "faraday-rack" "faraday-retry" "ruby2_keywords"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0y32gj994ll3zlcqjmwp78r7s03iiwayij6fz2pjpkfywgvp71s6"; + type = "gem"; + }; + version = "1.9.3"; + }; + faraday-em_http = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "12cnqpbak4vhikrh2cdn94assh3yxza8rq2p9w2j34bqg5q4qgbs"; + type = "gem"; + }; + version = "1.0.0"; + }; + faraday-em_synchrony = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1vgrbhkp83sngv6k4mii9f2s9v5lmp693hylfxp2ssfc60fas3a6"; + type = "gem"; + }; + version = "1.0.0"; + }; + faraday-excon = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0h09wkb0k0bhm6dqsd47ac601qiaah8qdzjh8gvxfd376x1chmdh"; + type = "gem"; + }; + version = "1.1.0"; + }; + faraday-httpclient = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0fyk0jd3ks7fdn8nv3spnwjpzx2lmxmg2gh4inz3by1zjzqg33sc"; + type = "gem"; + }; + version = "1.0.1"; + }; + faraday-multipart = { + dependencies = ["multipart-post"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "03qfi9020ynf7hkdiaq01sd2mllvw7fg4qiin3pk028b4wv23j3j"; + type = "gem"; + }; + version = "1.0.3"; + }; + faraday-net_http = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1fi8sda5hc54v1w3mqfl5yz09nhx35kglyx72w7b8xxvdr0cwi9j"; + type = "gem"; + }; + version = "1.0.1"; + }; + faraday-net_http_persistent = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0dc36ih95qw3rlccffcb0vgxjhmipsvxhn6cw71l7ffs0f7vq30b"; + type = "gem"; + }; + version = "1.2.0"; + }; + faraday-patron = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "19wgsgfq0xkski1g7m96snv39la3zxz6x7nbdgiwhg5v82rxfb6w"; + type = "gem"; + }; + version = "1.0.0"; + }; + faraday-rack = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1h184g4vqql5jv9s9im6igy00jp6mrah2h14py6mpf9bkabfqq7g"; + type = "gem"; + }; + version = "1.0.0"; + }; + faraday-retry = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "153i967yrwnswqgvnnajgwp981k9p50ys1h80yz3q94rygs59ldd"; + type = "gem"; + }; + version = "1.0.3"; + }; + ffi = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1862ydmclzy1a0cjbvm8dz7847d9rch495ib0zb64y84d3xd4bkg"; + type = "gem"; + }; + version = "1.15.5"; + }; + ffi-compiler = { + dependencies = ["ffi" "rake"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0c2caqm9wqnbidcb8dj4wd3s902z15qmgxplwyfyqbwa0ydki7q1"; + type = "gem"; + }; + version = "1.0.1"; + }; + ffi-rzmq-core = { + dependencies = ["ffi"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0amkbvljpjfnv0jpdmz71p1i3mqbhyrnhamjn566w0c01xd64hb5"; + type = "gem"; + }; + version = "1.0.7"; + }; + fog-core = { + dependencies = ["builder" "excon" "formatador" "mime-types"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0l5zk5pzyrydavyw2ai6yz97alg4qvd93mb19m6460vzrj6x00qg"; + type = "gem"; + }; + version = "2.2.4"; + }; + fog-dnsimple = { + dependencies = ["fog-core" "fog-json"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0lbzkc0w96a62ahjw0b7mfbqgg9x2jp7khg5hvpbgw0kfs5xza63"; + type = "gem"; + }; + version = "2.1.0"; + }; + fog-json = { + dependencies = ["fog-core" "multi_json"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1zj8llzc119zafbmfa4ai3z5s7c4vp9akfs0f9l2piyvcarmlkyx"; + type = "gem"; + }; + version = "1.2.0"; + }; + formatador = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0mprf1dwznz5ld0q1jpbyl59fwnwk6azspnd0am7zz7kfg3pxhv5"; + type = "gem"; + }; + version = "0.3.0"; + }; + fourflusher = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0yp0pxj6xsd84h2barwh3z5w289p1a6lqib309m7sbzh643qx3zz"; + type = "gem"; + }; + version = "0.3.2"; + }; + fuzzy_match = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "19gw1ifsgfrv7xdi6n61658vffgm1867f4xdqfswb2b5h6alzpmm"; + type = "gem"; + }; + version = "2.0.4"; + }; + gdk_pixbuf2 = { + dependencies = ["gio2"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0hslcfns2ysvjyj21hjvp4hghrafw1sdl627fm0nj0wsncs94m67"; + type = "gem"; + }; + version = "3.4.3"; + }; + gemoji = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0n3r6p1lrcwq2y3fzbj350qai0z8giz8wjhhxall8qkvacrcbb6w"; + type = "gem"; + }; + version = "2.1.0"; + }; + gio2 = { + dependencies = ["gobject-introspection"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1l30xsr1dgnzqfmln17arnqi8iga97ldf6zgbqrfby6a94v3ammd"; + type = "gem"; + }; + version = "3.4.3"; + }; + github-pages = { + dependencies = ["github-pages-health-check" "jekyll" "jekyll-coffeescript" "jekyll-feed" "jekyll-gist" "jekyll-github-metadata" "jekyll-mentions" "jekyll-paginate" "jekyll-redirect-from" "jekyll-sass-converter" "jekyll-seo-tag" "jekyll-sitemap" "jemoji" "kramdown" "liquid" "listen" "mercenary" "rouge" "terminal-table"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "15ngq2x2i4m7dp87lczv7w5xh5qxqnhn898jyaahgl6wgcq8fggc"; + type = "gem"; + }; + version = "87"; + }; + github-pages-health-check = { + dependencies = ["addressable" "net-dns" "octokit" "public_suffix" "typhoeus"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0x1ccwi3nfb1s3lv9px6lx3fjbn0s1g1v1cm0jcs2gb2zixgn4nf"; + type = "gem"; + }; + version = "1.1.0"; + }; + gitlab-markup = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "11kc33j6m0nayppkb7645w0ldh8g18pgmxgb8wz39pd5vilr6qpv"; + type = "gem"; + }; + version = "1.8.0"; + }; + glib2 = { + dependencies = ["native-package-installer" "pkg-config"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0l46ymdf7azpd137xq4rarbaq54hxs9rgfry0r6b0ywj74rmw9ih"; + type = "gem"; + }; + version = "3.4.3"; + }; + globalid = { + dependencies = ["activesupport"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1n5yc058i8xhi1fwcp1w7mfi6xaxfmrifdb4r4hjfff33ldn8lqj"; + type = "gem"; + }; + version = "1.0.0"; + }; + gobject-introspection = { + dependencies = ["glib2"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "11gas9hzq36a2bwqi7h5c6p6jihanbhsarwhv5fw53dxap4iwj25"; + type = "gem"; + }; + version = "3.4.3"; + }; + gpgme = { + dependencies = ["mini_portile2"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0xbgh9d8nbvsvyzqnd0mzhz0nr9hx4qn025kmz6d837lry4lc6gw"; + type = "gem"; + }; + version = "2.0.20"; + }; + gtk2 = { + dependencies = ["atk" "gdk_pixbuf2" "pango"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0v1ag6irp52asm0yaxa7s533czy7yzhanhgn1v0cndqpzqk8icfz"; + type = "gem"; + }; + version = "3.4.3"; + }; + hashie = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1nh3arcrbz1rc1cr59qm53sdhqm137b258y8rcb4cvd3y98lwv4x"; + type = "gem"; + }; + version = "5.0.0"; + }; + highline = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0yclf57n2j3cw8144ania99h1zinf8q3f5zrhqa754j6gl95rp9d"; + type = "gem"; + }; + version = "2.0.3"; + }; + hike = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0hbhmchyhm1xf632cczmyg3fsbn7zly988q3fjpi8l3nb4cn40xj"; + type = "gem"; + }; + version = "2.1.3"; + }; + hitimes = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0ix9rp9rsrwin38z2aqiwpxc8p2dzl6m3ra47az47fsija1cb2qf"; + type = "gem"; + }; + version = "2.0.0"; + }; + hpricot = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1jn8x9ch79gqmnzgyz78kppavjh5lqx0y0r6frykga2b86rz9s6z"; + type = "gem"; + }; + version = "0.8.6"; + }; + html-pipeline = { + dependencies = ["activesupport" "nokogiri"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "080sn9z1a64gv04p318jz10y6lv6qd3avip08rrcmq9k4ihai0f1"; + type = "gem"; + }; + version = "2.14.0"; + }; + http-accept = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "09m1facypsdjynfwrcv19xcb1mqg8z6kk31g8r33pfxzh838c9n6"; + type = "gem"; + }; + version = "1.7.0"; + }; + http-cookie = { + dependencies = ["domain_name"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "19370bc97gsy2j4hanij246hv1ddc85hw0xjb6sj7n1ykqdlx9l9"; + type = "gem"; + }; + version = "1.0.4"; + }; + httpclient = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "19mxmvghp7ki3klsxwrlwr431li7hm1lczhhj8z4qihl2acy8l99"; + type = "gem"; + }; + version = "2.8.3"; + }; + i18n = { + dependencies = ["concurrent-ruby"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0vdd1kii40qhbr9n8qx71k2gskq6rkl8ygy8hw5hfj8bb5a364xf"; + type = "gem"; + }; + version = "1.8.11"; + }; + iconv = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "00fppiz9ypy7xpc08xdk6glq842rbc69c7a1p0kmv195271i4yqv"; + type = "gem"; + }; + version = "1.0.8"; + }; + idn-ruby = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1xjr8nxpq6vsa4kd7pvd14xxiba9y4dais1yyz4dj567hsqdrhcm"; + type = "gem"; + }; + version = "0.1.4"; + }; + io-wait = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "10jj6xz15qaw8gkck5wv3a3xg1zdfsarrandkglfbf75x4xmkrfz"; + type = "gem"; + }; + version = "0.2.1"; + }; + jaro_winkler = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1y8l6k34svmdyqxya3iahpwbpvmn3fswhwsvrz0nk1wyb8yfihsh"; + type = "gem"; + }; + version = "1.5.4"; + }; + jbuilder = { + dependencies = ["actionview" "activesupport"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1h58xgmp0fqpnd6mvw0zl0f76119v8lnf4xabqhckbzl6jrk8qpa"; + type = "gem"; + }; + version = "2.11.5"; + }; + jekyll = { + dependencies = ["colorator" "jekyll-sass-converter" "jekyll-watch" "kramdown" "liquid" "mercenary" "rouge" "safe_yaml"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1l1kq96bps29sx1cawbn4p9al4cljkywlr02zwgbcdwrr0211rhp"; + type = "gem"; + }; + version = "3.1.6"; + }; + jekyll-coffeescript = { + dependencies = ["coffee-script"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "19nkqbaxqbzqbfbi7sgshshj2krp9ap88m9fc5pa6mglb2ypk3hg"; + type = "gem"; + }; + version = "1.0.1"; + }; + jekyll-feed = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0jq7048yynabd9c1s171bb0wp1qqkh00n1q15w16fdp4hrvvjmsh"; + type = "gem"; + }; + version = "0.5.1"; + }; + jekyll-gist = { + dependencies = ["octokit"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1mjw9y7mqmglckn81ix9x1gqnvbxb28fbz72yhvmm5sdk2l957lr"; + type = "gem"; + }; + version = "1.4.0"; + }; + jekyll-github-metadata = { + dependencies = ["jekyll" "octokit"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0psxsfbic425qhniz0nxfr0qqjdwji06x66jpqxpyn9js0iqh5hj"; + type = "gem"; + }; + version = "2.0.2"; + }; + jekyll-mentions = { + dependencies = ["html-pipeline" "jekyll"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1ps50b62gn6dp7ga5wg5x4j1vr9wlw91sqhv9pkmbbv805w5fxbq"; + type = "gem"; + }; + version = "1.1.3"; + }; + jekyll-paginate = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0r7bcs8fq98zldih4787zk5i9w24nz5wa26m84ssja95n3sas2l8"; + type = "gem"; + }; + version = "1.1.0"; + }; + jekyll-redirect-from = { + dependencies = ["jekyll"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1s85rsjl7jd783iiwzd3vq84qcmcz86frl7mjhhlipski60x5fjp"; + type = "gem"; + }; + version = "0.11.0"; + }; + jekyll-sass-converter = { + dependencies = ["sass"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1xqmlr87xmzpalf846gybkbfqkj48y3fva81r7c7175my9p4ykl1"; + type = "gem"; + }; + version = "1.3.0"; + }; + jekyll-seo-tag = { + dependencies = ["jekyll"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0y0szawdxs00qz13plxdfgy9njw40m0jcmg9l3ng2q0b2wnhf3cb"; + type = "gem"; + }; + version = "2.0.0"; + }; + jekyll-sitemap = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1sg0yzhzja2lw48w5l23l3612pig5c2x4hf883c8bgz0rvr81di1"; + type = "gem"; + }; + version = "0.10.0"; + }; + jekyll-watch = { + dependencies = ["listen"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1f0p3jbvp9gafbddkbpk78gb6837d2qdhw97py3svsk3d9vkbcdn"; + type = "gem"; + }; + version = "1.5.1"; + }; + jemoji = { + dependencies = ["gemoji" "html-pipeline" "jekyll"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "090zxsm77ag8phb8c3mhrqcivq1kazs10srqnxc8wjbvcp37qrdi"; + type = "gem"; + }; + version = "0.6.2"; + }; + jmespath = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1ylph158dc3ql6cvkik00ab6gf2k1rv2dii63m196xclhkzwfyan"; + type = "gem"; + }; + version = "1.5.0"; + }; + json = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1z9grvjyfz16ag55hg522d3q4dh07hf391sf9s96npc0vfi85xkz"; + type = "gem"; + }; + version = "2.6.1"; + }; + jwt = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0bg8pjx0mpvl10k6d8a6gc8dzlv2z5jkqcjbjcirnk032iriq838"; + type = "gem"; + }; + version = "2.3.0"; + }; + kramdown = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "05ljwi07hjjwgnjg19sg8mkyxf1an5xn8kn1717d5qrrqkzn3zq1"; + type = "gem"; + }; + version = "1.11.1"; + }; + kramdown-rfc2629 = { + dependencies = ["kramdown"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1ay4jy434mpcn72l1rx2cj2gp8lv0z8r5skxyzs1r79yljmxkx4b"; + type = "gem"; + }; + version = "1.0.32"; + }; + libv8 = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0317sr3nrl51sp844bps71smkrwim3fjn47wdfpbycixnbxspivm"; + type = "gem"; + }; + version = "8.4.255.0"; + }; + libxml-ruby = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0kr51hg192mfn5ixngs41f1z8iyik5r6b52chcy8ilfs006fdkgi"; + type = "gem"; + }; + version = "3.2.2"; + }; + liquid = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "033png37ym4jrjz5bi7zb4ic4yxacwvnllm1xxmrnr4swgyyygc2"; + type = "gem"; + }; + version = "3.0.6"; + }; + listen = { + dependencies = ["rb-fsevent" "rb-inotify"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0zv8rdn3nwnmf5iyxv7ync46wjk8z2sxjpda1j9pjc5n2mkdz97b"; + type = "gem"; + }; + version = "3.0.6"; + }; + loofah = { + dependencies = ["crass" "nokogiri"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "17rvbrqcci1579d7dpbsfmz1f9g7msk82lyh9ip5h29dkrnixcgg"; + type = "gem"; + }; + version = "2.13.0"; + }; + mab = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0manxbilpx0hdi19lhdsr4ncvbzgmwh279b64j8w60dg0p0i4b4j"; + type = "gem"; + }; + version = "0.0.3"; + }; + magic = { + dependencies = ["ffi"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "18vkdq2748wxg0kr923fbhx92wikh2dwv2hp8xind57qs7gn26pr"; + type = "gem"; + }; + version = "0.2.9"; + }; + mail = { + dependencies = ["mini_mime"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "00wwz6ys0502dpk8xprwcqfwyf3hmnx6lgxaiq6vj43mkx43sapc"; + type = "gem"; + }; + version = "2.7.1"; + }; + marcel = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0kky3yiwagsk8gfbzn3mvl2fxlh3b39v6nawzm4wpjs6xxvvc4x0"; + type = "gem"; + }; + version = "1.0.2"; + }; + markaby = { + dependencies = ["builder"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1j4jc31ycydbkh5h3q6zwidzpavg3g5mbb5lqyaczd3jrq78rd7i"; + type = "gem"; + }; + version = "0.9.0"; + }; + maruku = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1r7bxpgnx2hp3g12bjrmdrpv663dfqxsdp0af69kjhxmaxpia56x"; + type = "gem"; + }; + version = "0.7.3"; + }; + matrix = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1h2cgkpzkh3dd0flnnwfq6f3nl2b1zff9lvqz8xs853ssv5kq23i"; + type = "gem"; + }; + version = "0.4.2"; + }; + mercenary = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "10la0xw82dh5mqab8bl0dk21zld63cqxb1g16fk8cb39ylc4n21a"; + type = "gem"; + }; + version = "0.3.6"; + }; + method_source = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1pnyh44qycnf9mzi1j6fywd5fkskv3x7nmsqrrws0rjn5dd4ayfp"; + type = "gem"; + }; + version = "1.0.0"; + }; + mime-types = { + dependencies = ["mime-types-data"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0ipw892jbksbxxcrlx9g5ljq60qx47pm24ywgfbyjskbcl78pkvb"; + type = "gem"; + }; + version = "3.4.1"; + }; + mime-types-data = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "003gd7mcay800k2q4pb2zn8lwwgci4bhi42v2jvlidm8ksx03i6q"; + type = "gem"; + }; + version = "3.2022.0105"; + }; + mini_magick = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1aj604x11d9pksbljh0l38f70b558rhdgji1s9i763hiagvvx2hs"; + type = "gem"; + }; + version = "4.11.0"; + }; + mini_mime = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0lbim375gw2dk6383qirz13hgdmxlan0vc5da2l072j3qw6fqjm5"; + type = "gem"; + }; + version = "1.1.2"; + }; + mini_portile2 = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0d3ga166pahsxavzwj19yjj4lr13rw1vsb36s2qs8blcxigrdp6z"; + type = "gem"; + }; + version = "2.7.1"; + }; + minitest = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "06xf558gid4w8lwx13jwfdafsch9maz8m0g85wnfymqj63x5nbbd"; + type = "gem"; + }; + version = "5.15.0"; + }; + molinillo = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0msabpxiyhlbgayrvr01316alaxrxwh6h8yzqz6p36v1zhqgddw4"; + type = "gem"; + }; + version = "0.4.5"; + }; + msgpack = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "06iajjyhx0rvpn4yr3h1hc4w4w3k59bdmfhxnjzzh76wsrdxxrc6"; + type = "gem"; + }; + version = "1.4.2"; + }; + multi_json = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0pb1g1y3dsiahavspyzkdy39j4q377009f6ix0bh1ag4nqw43l0z"; + type = "gem"; + }; + version = "1.15.0"; + }; + multipart-post = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1zgw9zlwh2a6i1yvhhc4a84ry1hv824d6g2iw2chs3k5aylpmpfj"; + type = "gem"; + }; + version = "2.1.1"; + }; + mustermann = { + dependencies = ["ruby2_keywords"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0ccm54qgshr1lq3pr1dfh7gphkilc19dp63rw6fcx7460pjwy88a"; + type = "gem"; + }; + version = "1.1.1"; + }; + mysql2 = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0d14pcy5m4hjig0zdxnl9in5f4izszc7v9zcczf2gyi5kiyxk8jw"; + type = "gem"; + }; + version = "0.5.3"; + }; + nanaimo = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0xi36h3f7nm8bc2k0b6svpda1lyank2gf872lxjbhw3h95hdrbma"; + type = "gem"; + }; + version = "0.3.0"; + }; + nap = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0xm5xssxk5s03wjarpipfm39qmgxsalb46v1prsis14x1xk935ll"; + type = "gem"; + }; + version = "1.1.0"; + }; + native-package-installer = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1pcpqw8vjxf2cs97bzzxcz5bh72x6bkayj0vzsilidw90kvrv2ds"; + type = "gem"; + }; + version = "1.1.3"; + }; + ncursesw = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1nc14wls1yiigz593vw7580hb99lf4n485axapiz6sqpg1jnlhcr"; + type = "gem"; + }; + version = "1.4.10"; + }; + net-dns = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "18d97xjphw21naaqfhgxp95ikr1d79rx708b2df3xm01j6isqy1d"; + type = "gem"; + }; + version = "0.9.0"; + }; + net-imap = { + dependencies = ["digest" "net-protocol" "strscan"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1rl79ykmxa2k4dlk6ykrb9l0a4h101q1gd8c4qv3cl0p9h68zmbn"; + type = "gem"; + }; + version = "0.2.3"; + }; + net-pop = { + dependencies = ["digest" "net-protocol" "timeout"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1slsl3xlbf0cqzmf2q1rfqbm61xvxzmr0h9zprwlbm1xn1cvn9xb"; + type = "gem"; + }; + version = "0.1.1"; + }; + net-protocol = { + dependencies = ["io-wait" "timeout"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0rrzdar609d8c96ikpw2yif44pp5k3n3cpjld31ia0rgmz9z59gv"; + type = "gem"; + }; + version = "0.1.2"; + }; + net-scp = { + dependencies = ["net-ssh"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0b4h3ip8d1gkrc0znnw54hbxillk73mdnaf5pz330lmrcl1wiilg"; + type = "gem"; + }; + version = "3.0.0"; + }; + net-smtp = { + dependencies = ["digest" "net-protocol" "timeout"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1s358kfv9mnfxcjbpr1d5a2gs1q7wkw7ffpn86mf1b3s9p31bw9s"; + type = "gem"; + }; + version = "0.3.1"; + }; + net-ssh = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0jp3jgcn8cij407xx9ldb5h9c6jv13jc4cf6kk2idclz43ww21c9"; + type = "gem"; + }; + version = "6.1.0"; + }; + netrc = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0gzfmcywp1da8nzfqsql2zqi648mfnx6qwkig3cv36n9m0yy676y"; + type = "gem"; + }; + version = "0.11.0"; + }; + nio4r = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0xk64wghkscs6bv2n22853k2nh39d131c6rfpnlw12mbjnnv9v1v"; + type = "gem"; + }; + version = "2.5.8"; + }; + nokogiri = { + dependencies = ["mini_portile2" "racc"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1zqzawia52cdcmi55lp7v8jmiqyw7pcpwsksqlnirwfm3f7bnf11"; + type = "gem"; + }; + version = "1.13.1"; + }; + octokit = { + dependencies = ["faraday" "sawyer"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1nmdd7klyinvrrv2mggwwmc99ykaq7i379j00i37hvvaqx4giifj"; + type = "gem"; + }; + version = "4.22.0"; + }; + opus-ruby = { + dependencies = ["ffi"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0lyf2a8f1w1jk0qrl8h0gsydfalbh19g5k2c6xlq8j1sfzb0ij4d"; + type = "gem"; + }; + version = "1.0.1"; + }; + osx_keychain = { + dependencies = ["RubyInline"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "10hr3lihq7s5fv18dp0g4mfncvapkcwcd6xnn5483ximyd7rhfx0"; + type = "gem"; + }; + version = "1.0.2"; + }; + ovirt-engine-sdk = { + dependencies = ["json"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0m2acfd6l6k9xvqxvwivcnwji9974ac7498znydxh69z1x3rr8nm"; + type = "gem"; + }; + version = "4.4.1"; + }; + pango = { + dependencies = ["cairo-gobject" "gobject-introspection"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "05smxn2jank7wqih59lhr30ab8f4qxdsdiiag5v7a0gjgzkmbi7f"; + type = "gem"; + }; + version = "3.4.3"; + }; + parallel = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1hkfpm78c2vs1qblnva3k1grijvxh87iixcnyd83s3lxrxsjvag4"; + type = "gem"; + }; + version = "1.21.0"; + }; + parser = { + dependencies = ["ast"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1f7gmm60yla325wlnd3qkxs59qm2y0aan8ljpg6k18rwzrrfil6z"; + type = "gem"; + }; + version = "2.7.2.0"; + }; + patron = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0523gddx88zql2mq6655k60gy2ac8vybpzkcf90lmd9nx7wl3fi9"; + type = "gem"; + }; + version = "0.13.3"; + }; + pcaprub = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0886fcc5bi0kc0rbma5fj3wa3hbg2nl7ivnbi2j995yzg36zq7xy"; + type = "gem"; + }; + version = "0.13.1"; + }; + pg = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "13mfrysrdrh8cka1d96zm0lnfs59i5x2g6ps49r2kz5p3q81xrzj"; + type = "gem"; + }; + version = "1.2.3"; + }; + pkg-config = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1rkxhps7fxzjhld68bpdaq8sss2k6fp14jz5kcqgrxp8x3yd15mk"; + type = "gem"; + }; + version = "1.4.7"; + }; + polyglot = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1bqnxwyip623d8pr29rg6m8r0hdg08fpr2yb74f46rn1wgsnxmjr"; + type = "gem"; + }; + version = "0.3.5"; + }; + prettier = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1vi8yzllqgjnmx0lcqrcyqw5lah06w4qln0mg8nczvgp8finflcb"; + type = "gem"; + }; + version = "2.0.0"; + }; + pry = { + dependencies = ["coderay" "method_source"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0iyw4q4an2wmk8v5rn2ghfy2jaz9vmw2nk8415nnpx2s866934qk"; + type = "gem"; + }; + version = "0.13.1"; + }; + pry-byebug = { + dependencies = ["byebug" "pry"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "096y5vmzpyy4x9h4ky4cs4y7d19vdq9vbwwrqafbh5gagzwhifiv"; + type = "gem"; + }; + version = "3.9.0"; + }; + pry-doc = { + dependencies = ["pry" "yard"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0wyvql6pb6m8jl8bsamabxhxhd86bnqblspaxzz05sl0fm2ynj0r"; + type = "gem"; + }; + version = "1.3.0"; + }; + public_suffix = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "02rqflr53584j1278hxvhxyrc6hqasv33qiqb7j186ji3s018y5c"; + type = "gem"; + }; + version = "1.5.3"; + }; + puma = { + dependencies = ["nio4r"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1xblxnrs0c5m326v7kgr32k4m00cl2ipcf5m0qvyisrw62vd5dbn"; + type = "gem"; + }; + version = "5.5.2"; + }; + racc = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0la56m0z26j3mfn1a9lf2l03qx1xifanndf9p3vx1azf6sqy7v9d"; + type = "gem"; + }; + version = "1.6.0"; + }; + rack = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0i5vs0dph9i5jn8dfc6aqd6njcafmb20rwqngrf759c9cvmyff16"; + type = "gem"; + }; + version = "2.2.3"; + }; + rack-protection = { + dependencies = ["rack"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "159a4j4kragqh0z0z8vrpilpmaisnlz3n7kgiyf16bxkwlb3qlhz"; + type = "gem"; + }; + version = "2.1.0"; + }; + rack-test = { + dependencies = ["rack"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0rh8h376mx71ci5yklnpqqn118z3bl67nnv5k801qaqn1zs62h8m"; + type = "gem"; + }; + version = "1.1.0"; + }; + rails = { + dependencies = ["actioncable" "actionmailbox" "actionmailer" "actionpack" "actiontext" "actionview" "activejob" "activemodel" "activerecord" "activestorage" "activesupport" "railties"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1yfqhxa89331mk0z33l12pvzdm4y35fx41kjb2p9jzl06jhz00rz"; + type = "gem"; + }; + version = "7.0.1"; + }; + rails-dom-testing = { + dependencies = ["activesupport" "nokogiri"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1lfq2a7kp2x64dzzi5p4cjcbiv62vxh9lyqk2f0rqq3fkzrw8h5i"; + type = "gem"; + }; + version = "2.0.3"; + }; + rails-html-sanitizer = { + dependencies = ["loofah"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "09qrfi3pgllxb08r024lln9k0qzxs57v0slsj8616xf9c0cwnwbk"; + type = "gem"; + }; + version = "1.4.2"; + }; + railties = { + dependencies = ["actionpack" "activesupport" "method_source" "rake" "thor" "zeitwerk"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0gi4q1j3n7vb79ijsqjgy1fnqqxypk4zdj61kic4py19pn6xqaxw"; + type = "gem"; + }; + version = "7.0.1"; + }; + rainbow = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0smwg4mii0fm38pyb5fddbmrdpifwv22zv3d3px2xx497am93503"; + type = "gem"; + }; + version = "3.1.1"; + }; + rake = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "15whn7p9nrkxangbs9hh75q585yfn66lv0v2mhj6q6dl6x8bzr2w"; + type = "gem"; + }; + version = "13.0.6"; + }; + rb-fsevent = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1qsx9c4jr11vr3a9s5j83avczx9qn9rjaf32gxpc2v451hvbc0is"; + type = "gem"; + }; + version = "0.11.0"; + }; + rb-inotify = { + dependencies = ["ffi"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1jm76h8f8hji38z3ggf4bzi8vps6p7sagxn3ab57qc0xyga64005"; + type = "gem"; + }; + version = "0.10.1"; + }; + rb-readline = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "14w79a121czmvk1s953qfzww30mqjb2zc0k9qhi0ivxxk3hxg6wy"; + type = "gem"; + }; + version = "0.5.5"; + }; + rbnacl = { + dependencies = ["ffi"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0y8yzianlkc9w6sbqy8iy8l0yym0y6x7p5rjflkfixq76fqmhvzk"; + type = "gem"; + }; + version = "7.1.1"; + }; + re2 = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "13za43xb5xfg1xb1vwlvwx14jlmnk7jal5dqw8q9a5g13csx41sw"; + type = "gem"; + }; + version = "1.4.0"; + }; + red-colors = { + dependencies = ["matrix"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1xqnbbcqg55abn985m716l6n5izyaaf4zdllhc8095cfqz2fbjcx"; + type = "gem"; + }; + version = "0.3.0"; + }; + redcarpet = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0bvk8yyns5s1ls437z719y5sdv9fr8kfs8dmr6g8s761dv5n8zvi"; + type = "gem"; + }; + version = "3.5.1"; + }; + redis = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "03r9739q3vq38g456snf3rk9hadf955bs5im6qs6m69h19mrz2yw"; + type = "gem"; + }; + version = "4.5.1"; + }; + redis-rack = { + dependencies = ["rack" "redis-store"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1nblbxg1f051dn83jp92lz3lc1wxm18nviglrabv2l0vz6rd0pkb"; + type = "gem"; + }; + version = "2.1.3"; + }; + redis-store = { + dependencies = ["redis"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0cpzbf2svnk4j5awb24ncl0mih45zkbdrd7q23jdg1r8k3q7mdg6"; + type = "gem"; + }; + version = "1.9.0"; + }; + regexp_parser = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "008yn8j44414qxhn1c0nxp4a70rq0bqhz70hnjpgx8cjh2g0makp"; + type = "gem"; + }; + version = "2.2.0"; + }; + rest-client = { + dependencies = ["http-accept" "http-cookie" "mime-types" "netrc"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1qs74yzl58agzx9dgjhcpgmzfn61fqkk33k1js2y5yhlvc5l19im"; + type = "gem"; + }; + version = "2.1.0"; + }; + reverse_markdown = { + dependencies = ["nokogiri"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0087vhw5ik50lxvddicns01clkx800fk5v5qnrvi3b42nrk6885j"; + type = "gem"; + }; + version = "2.1.1"; + }; + rexml = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "08ximcyfjy94pm1rhcx04ny1vx2sk0x4y185gzn86yfsbzwkng53"; + type = "gem"; + }; + version = "3.2.5"; + }; + rmagick = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0zxljscsg2sp49s2f80n2rdpbazkf97v3jd2fydm3kgaplcyrh96"; + type = "gem"; + }; + version = "4.2.4"; + }; + rouge = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "13amckbdknnc5491ag28y8pqbyfpbzx5n4rlmadxhd3wkrhp92c8"; + type = "gem"; + }; + version = "1.11.1"; + }; + rpam2 = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1zvli3s4z1hf2l7gyfickm5i3afjrnycc3ihbiax6ji6arpbyf33"; + type = "gem"; + }; + version = "4.0.2"; + }; + rspec = { + dependencies = ["rspec-core" "rspec-expectations" "rspec-mocks"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1dwai7jnwmdmd7ajbi2q0k0lx1dh88knv5wl7c34wjmf94yv8w5q"; + type = "gem"; + }; + version = "3.10.0"; + }; + rspec-core = { + dependencies = ["rspec-support"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0wwnfhxxvrlxlk1a3yxlb82k2f9lm0yn0598x7lk8fksaz4vv6mc"; + type = "gem"; + }; + version = "3.10.1"; + }; + rspec-expectations = { + dependencies = ["diff-lcs" "rspec-support"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1qrj2j9jcd3m4aksk4kbv439882yl3z1harv2jrybrgjgdzdz7zs"; + type = "gem"; + }; + version = "3.10.2"; + }; + rspec-mocks = { + dependencies = ["diff-lcs" "rspec-support"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1d13g6kipqqc9lmwz5b244pdwc97z15vcbnbq6n9rlf32bipdz4k"; + type = "gem"; + }; + version = "3.10.2"; + }; + rspec-support = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0pjckrh8q6sqxy38xw7f4ziylq1983k84xh927s6352pps68zj35"; + type = "gem"; + }; + version = "3.10.3"; + }; + rubocop = { + dependencies = ["parallel" "parser" "rainbow" "regexp_parser" "rexml" "rubocop-ast" "ruby-progressbar" "unicode-display_width"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0phrig25dykgi42z6mf1abllh3ws6sv7awa82hzvvvbjx2xlzd3k"; + type = "gem"; + }; + version = "0.93.1"; + }; + rubocop-ast = { + dependencies = ["parser"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0gkf1p8yal38nlvdb39qaiy0gr85fxfr09j5dxh8qvrgpncpnk78"; + type = "gem"; + }; + version = "1.4.1"; + }; + rubocop-performance = { + dependencies = ["rubocop" "rubocop-ast"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "07c3kymvsid9aajwmmwr3n6apxgyjcbzbl2n6r5lpzkyz28jqn15"; + type = "gem"; + }; + version = "1.10.2"; + }; + ruby-graphviz = { + dependencies = ["rexml"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "010m283gk4qgzxkgrldlnrglh8d5fn6zvrzm56wf5abd7x7b8aqw"; + type = "gem"; + }; + version = "1.2.5"; + }; + ruby-libvirt = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0rnmbfhdz270fky0cm8w1i73gkrnlf3s1hdkm5yxjkdbvapwvjsd"; + type = "gem"; + }; + version = "0.8.0"; + }; + ruby-lxc = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "08pnghqp15fwylq6w2qh7x1ikkiq87irpy0z03n0gma4gdzzx2qa"; + type = "gem"; + }; + version = "1.2.3"; + }; + ruby-progressbar = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "02nmaw7yx9kl7rbaan5pl8x5nn0y4j5954mzrkzi9i3dhsrps4nc"; + type = "gem"; + }; + version = "1.11.0"; + }; + ruby-terminfo = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0rl4ic5pzvrpgd42z0c1s2n3j39c9znksblxxvmhkzrc0ckyg2cm"; + type = "gem"; + }; + version = "0.1.1"; + }; + ruby-vips = { + dependencies = ["ffi"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "19pzpx406rr9s3qk527rn9y3b76sjq5pi7y0xzqiy50q3k0hhg7g"; + type = "gem"; + }; + version = "2.1.4"; + }; + ruby2_keywords = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1vz322p8n39hz3b4a9gkmz9y7a5jaz41zrm2ywf31dvkqm03glgz"; + type = "gem"; + }; + version = "0.0.5"; + }; + RubyInline = { + dependencies = ["ZenTest"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0mn175vcdm8d1a96j4lzq3dqclcml6cvv8xhnklx5vbzdfw9qmfl"; + type = "gem"; + }; + version = "3.12.5"; + }; + rubyzip = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0grps9197qyxakbpw02pda59v45lfgbgiyw48i0mq9f2bn9y6mrz"; + type = "gem"; + }; + version = "2.3.2"; + }; + rugged = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0x00xqq666wfi53w2bb7lgqrr3diyakncbr4sxpbvkd2yvvra913"; + type = "gem"; + }; + version = "1.3.0"; + }; + safe_yaml = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0j7qv63p0vqcd838i2iy2f76c3dgwzkiz1d1xkg7n0pbnxj2vb56"; + type = "gem"; + }; + version = "1.0.5"; + }; + sass = { + dependencies = ["sass-listen"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0p95lhs0jza5l7hqci1isflxakz83xkj97lkvxl919is0lwhv2w0"; + type = "gem"; + }; + version = "3.7.4"; + }; + sass-listen = { + dependencies = ["rb-fsevent" "rb-inotify"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0xw3q46cmahkgyldid5hwyiwacp590zj2vmswlll68ryvmvcp7df"; + type = "gem"; + }; + version = "4.0.0"; + }; + sassc = { + dependencies = ["ffi"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0gpqv48xhl8mb8qqhcifcp0pixn206a7imc07g48armklfqa4q2c"; + type = "gem"; + }; + version = "2.4.0"; + }; + sawyer = { + dependencies = ["addressable" "faraday"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0yrdchs3psh583rjapkv33mljdivggqn99wkydkjdckcjn43j3cz"; + type = "gem"; + }; + version = "0.8.2"; + }; + scrypt = { + dependencies = ["ffi-compiler"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0jw2bn6mqpw2wbjpmsfz44pppwa6zmhg9lywimm684sxkmlxscbl"; + type = "gem"; + }; + version = "3.0.7"; + }; + semian = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0k7iz98xfv84dkdjk2d90vxnzrjqx20gg6k3fdm45q5rnp2lb9j7"; + type = "gem"; + }; + version = "0.11.8"; + }; + sequel = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0z0s3xq6dmak96296dchi8j61m0cih7j9pzdpxxsh786vrpznwlj"; + type = "gem"; + }; + version = "5.52.0"; + }; + sequel_pg = { + dependencies = ["pg" "sequel"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0mkbnc96bfpl5wqacblzwiwqywbx4vqrvkz57fj1h2f0bn635nk6"; + type = "gem"; + }; + version = "1.14.0"; + }; + simplecov = { + dependencies = ["docile" "simplecov-html" "simplecov_json_formatter"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1hrv046jll6ad1s964gsmcq4hvkr3zzr6jc7z1mns22mvfpbc3cr"; + type = "gem"; + }; + version = "0.21.2"; + }; + simplecov-html = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0yx01bxa8pbf9ip4hagqkp5m0mqfnwnw2xk8kjraiywz4lrss6jb"; + type = "gem"; + }; + version = "0.12.3"; + }; + simplecov_json_formatter = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "19r15hyvh52jx7fmsrcflb58xh8l7l0zx4sxkh3hqzhq68y81pjl"; + type = "gem"; + }; + version = "0.1.3"; + }; + sinatra = { + dependencies = ["mustermann" "rack" "rack-protection" "tilt"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0dd53rzpkxgs697pycbhhgc9vcnxra4ly4xar8ni6aiydx2f88zk"; + type = "gem"; + }; + version = "2.1.0"; + }; + slather = { + dependencies = ["CFPropertyList" "activesupport" "clamp" "nokogiri" "xcodeproj"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0wy8ws5n2gvxgkncbhrp4vkwjcbphcczw4k7y3g2wfl8fdmv5b4n"; + type = "gem"; + }; + version = "2.7.2"; + }; + slop = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "067bvjmjdjs19bvy138hkqqvw8li3732radcd4x5f5dbf30yk3a9"; + type = "gem"; + }; + version = "4.9.1"; + }; + snappy = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0xl54r1vvrhlkxf16mxqk4kz18j0igf1f7l66kqd9dbyv6x99zfg"; + type = "gem"; + }; + version = "0.2.0"; + }; + snmp = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1xr7rwfk7mwxzqcgir0glmyy4j27g6yixfaswsbd2qn6r8c980qf"; + type = "gem"; + }; + version = "1.3.2"; + }; + solargraph = { + dependencies = ["backport" "benchmark" "e2mmap" "jaro_winkler" "maruku" "nokogiri" "parser" "reverse_markdown" "rubocop" "thor" "tilt" "yard"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "06fby6dpq1jcq30x8ladig4dvz8j2pxd08mkrad3d41jx33zd2hg"; + type = "gem"; + }; + version = "0.39.17"; + }; + sqlite3 = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0lja01cp9xd5m6vmx99zwn4r7s97r1w5cb76gqd8xhbm1wxyzf78"; + type = "gem"; + }; + version = "1.4.2"; + }; + strscan = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "05bzfzfwvs5ngl14yf303nvrg5wjx3srgbjqkki7x65cm66w948p"; + type = "gem"; + }; + version = "3.0.1"; + }; + taglib-ruby = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1nkwmlx0ja35gs4lkh7hmshlwsqk5wm1wqrc2p45icnjmrh0x5cw"; + type = "gem"; + }; + version = "1.1.0"; + }; + terminal-table = { + dependencies = ["unicode-display_width"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1512cngw35hsmhvw4c05rscihc59mnj09m249sm9p3pik831ydqk"; + type = "gem"; + }; + version = "1.8.0"; + }; + thor = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0inl77jh4ia03jw3iqm5ipr76ghal3hyjrd6r8zqsswwvi9j2xdi"; + type = "gem"; + }; + version = "1.2.1"; + }; + thrift = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0rb9nax4k72zbriq7k98shfcj4lf54sqjpin2xm6ma7bb48ra8mc"; + type = "gem"; + }; + version = "0.15.0"; + }; + tilt = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0rn8z8hda4h41a64l0zhkiwz2vxw9b1nb70gl37h1dg2k874yrlv"; + type = "gem"; + }; + version = "2.0.10"; + }; + timeout = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "10bx1hcyrjqgq6a848fc1i0cgrvx42gcy8hk4vp90y6zc7k8xzbk"; + type = "gem"; + }; + version = "0.2.0"; + }; + tiny_tds = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "06fa5xpw5zrnhg0ds246l8sq49k22hpplqa1msxylnqibbsnb2y9"; + type = "gem"; + }; + version = "2.1.5"; + }; + treetop = { + dependencies = ["polyglot"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0697qz1akblf8r3wi0s2dsjh468hfsd57fb0mrp93z35y2ni6bhh"; + type = "gem"; + }; + version = "1.6.11"; + }; + typhoeus = { + dependencies = ["ethon"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "03x3fxjsnhgayl4s96h0a9975awlvx2v9nmx2ba0cnliglyczdr8"; + type = "gem"; + }; + version = "0.8.0"; + }; + tzinfo = { + dependencies = ["concurrent-ruby"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "10qp5x7f9hvlc0psv9gsfbxg4a7s0485wsbq1kljkxq94in91l4z"; + type = "gem"; + }; + version = "2.0.4"; + }; + unf = { + dependencies = ["unf_ext"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0bh2cf73i2ffh4fcpdn9ir4mhq8zi50ik0zqa1braahzadx536a9"; + type = "gem"; + }; + version = "0.1.4"; + }; + unf_ext = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0jmbimpnpjdzz8hlrppgl9spm99qh3qzbx0b81k3gkgwba8nk3yd"; + type = "gem"; + }; + version = "0.0.8"; + }; + unicode-display_width = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1204c1jx2g89pc25qk5150mk7j5k90692i7ihgfzqnad6qni74h2"; + type = "gem"; + }; + version = "1.8.0"; + }; + uuid4r = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0qlcxzn8pnql34pcdrkd20kdla3k6n2sspaxp3lwwx8a87jnzbc3"; + type = "gem"; + }; + version = "0.2.0"; + }; + webrick = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1d4cvgmxhfczxiq5fr534lmizkhigd15bsx5719r5ds7k7ivisc7"; + type = "gem"; + }; + version = "1.7.0"; + }; + websocket-driver = { + dependencies = ["websocket-extensions"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0a3bwxd9v3ghrxzjc4vxmf4xa18c6m4xqy5wb0yk5c6b9psc7052"; + type = "gem"; + }; + version = "0.7.5"; + }; + websocket-extensions = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0hc2g9qps8lmhibl5baa91b4qx8wqw872rgwagml78ydj8qacsqw"; + type = "gem"; + }; + version = "0.1.5"; + }; + whois = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "092y84kak86ds2as9kwn5a9m2yzqwqcz4wx31jk3kin32c3hwcrn"; + type = "gem"; + }; + version = "5.0.2"; + }; + xcodeproj = { + dependencies = ["CFPropertyList" "atomos" "claide" "colored2" "nanaimo" "rexml"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0xmzb1mdsnkpf7v07whz0n2wc8kg6785sc7i5zyawd8dl8517rp4"; + type = "gem"; + }; + version = "1.21.0"; + }; + xctasks = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1jmxq0dv2q4qs628cykrhsm9piysjsacbq5blsf35a0fj015bw7l"; + type = "gem"; + }; + version = "0.2.2"; + }; + yard = { + dependencies = ["webrick"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0d08gkis1imlvppyh8dbslk89hwj5af2fmlzvmwahgx2bm48d9sn"; + type = "gem"; + }; + version = "0.9.27"; + }; + zeitwerk = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0lmg9x683gr9mkrbq9df2m0zb0650mdfxqna0bs10js44inv7znx"; + type = "gem"; + }; + version = "2.5.3"; + }; + ZenTest = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1vss0ldskqprnlvl5pczcl8p346p2ib1sc6hyprbprh6gjq4v16y"; + type = "gem"; + }; + version = "4.12.1"; + }; + zookeeper = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "06i33nf1b9hsb19na42yvxmiplijw994dhij1f71cp8n4krhymhv"; + type = "gem"; + }; + version = "1.5.1"; + }; +} diff --git a/nixpkgs/pkgs/top-level/splice.nix b/nixpkgs/pkgs/top-level/splice.nix new file mode 100644 index 000000000000..459baaca2e63 --- /dev/null +++ b/nixpkgs/pkgs/top-level/splice.nix @@ -0,0 +1,137 @@ +# The `splicedPackages' package set, and its use by `callPackage` +# +# The `buildPackages` pkg set is a new concept, and the vast majority package +# expression (the other *.nix files) are not designed with it in mind. This +# presents us with a problem with how to get the right version (build-time vs +# run-time) of a package to a consumer that isn't used to thinking so cleverly. +# +# The solution is to splice the package sets together as we do below, so every +# `callPackage`d expression in fact gets both versions. Each# derivation (and +# each derivation's outputs) consists of the run-time version, augmented with a +# `nativeDrv` field for the build-time version, and `crossDrv` field for the +# run-time version. +# +# We could have used any names we want for the disambiguated versions, but +# `crossDrv` and `nativeDrv` were somewhat similarly used for the old +# cross-compiling infrastructure. The names are mostly invisible as +# `mkDerivation` knows how to pull out the right ones for `buildDepends` and +# friends, but a few packages use them directly, so it seemed efficient (to +# @Ericson2314) to reuse those names, at least initially, to minimize breakage. +# +# For performance reasons, rather than uniformally splice in all cases, we only +# do so when `pkgs` and `buildPackages` are distinct. The `actuallySplice` +# parameter there the boolean value of that equality check. +lib: pkgs: actuallySplice: + +let + + spliceReal = { pkgsBuildBuild, pkgsBuildHost, pkgsBuildTarget + , pkgsHostHost, pkgsHostTarget + , pkgsTargetTarget + }: let + mash = + # Other pkgs sets + pkgsBuildBuild // pkgsBuildTarget // pkgsHostHost // pkgsTargetTarget + # The same pkgs sets one probably intends + // pkgsBuildHost // pkgsHostTarget; + merge = name: { + inherit name; + value = let + defaultValue = mash.${name}; + # `or {}` is for the non-derivation attsert splicing case, where `{}` is the identity. + valueBuildBuild = pkgsBuildBuild.${name} or {}; + valueBuildHost = pkgsBuildHost.${name} or {}; + valueBuildTarget = pkgsBuildTarget.${name} or {}; + valueHostHost = pkgsHostHost.${name} or {}; + valueHostTarget = pkgsHostTarget.${name} or {}; + valueTargetTarget = pkgsTargetTarget.${name} or {}; + augmentedValue = defaultValue + # TODO(@Ericson2314): Stop using old names after transition period + // (lib.optionalAttrs (pkgsBuildHost ? ${name}) { nativeDrv = valueBuildHost; }) + // (lib.optionalAttrs (pkgsHostTarget ? ${name}) { crossDrv = valueHostTarget; }) + // { + __spliced = + (lib.optionalAttrs (pkgsBuildBuild ? ${name}) { buildBuild = valueBuildBuild; }) + // (lib.optionalAttrs (pkgsBuildTarget ? ${name}) { buildTarget = valueBuildTarget; }) + // (lib.optionalAttrs (pkgsHostHost ? ${name}) { hostHost = valueHostHost; }) + // (lib.optionalAttrs (pkgsTargetTarget ? ${name}) { targetTarget = valueTargetTarget; + }); + }; + # Get the set of outputs of a derivation. If one derivation fails to + # evaluate we don't want to diverge the entire splice, so we fall back + # on {} + tryGetOutputs = value0: let + inherit (builtins.tryEval value0) success value; + in getOutputs (lib.optionalAttrs success value); + getOutputs = value: lib.genAttrs + (value.outputs or (lib.optional (value ? out) "out")) + (output: value.${output}); + in + # The derivation along with its outputs, which we recur + # on to splice them together. + if lib.isDerivation defaultValue then augmentedValue // spliceReal { + pkgsBuildBuild = tryGetOutputs valueBuildBuild; + pkgsBuildHost = tryGetOutputs valueBuildHost; + pkgsBuildTarget = tryGetOutputs valueBuildTarget; + pkgsHostHost = tryGetOutputs valueHostHost; + pkgsHostTarget = getOutputs valueHostTarget; + pkgsTargetTarget = tryGetOutputs valueTargetTarget; + # Just recur on plain attrsets + } else if lib.isAttrs defaultValue then spliceReal { + pkgsBuildBuild = valueBuildBuild; + pkgsBuildHost = valueBuildHost; + pkgsBuildTarget = valueBuildTarget; + pkgsHostHost = valueHostHost; + pkgsHostTarget = valueHostTarget; + pkgsTargetTarget = valueTargetTarget; + # Don't be fancy about non-derivations. But we could have used used + # `__functor__` for functions instead. + } else defaultValue; + }; + in lib.listToAttrs (map merge (lib.attrNames mash)); + + splicePackages = { pkgsBuildBuild, pkgsBuildHost, pkgsBuildTarget + , pkgsHostHost, pkgsHostTarget + , pkgsTargetTarget + } @ args: + if actuallySplice then spliceReal args else pkgsHostTarget; + + splicedPackages = splicePackages { + inherit (pkgs) + pkgsBuildBuild pkgsBuildHost pkgsBuildTarget + pkgsHostHost pkgsHostTarget + pkgsTargetTarget + ; + } // { + # These should never be spliced under any circumstances + inherit (pkgs) + pkgsBuildBuild pkgsBuildHost pkgsBuildTarget + pkgsHostHost pkgsHostTarget + pkgsTargetTarget + buildPackages pkgs targetPackages + ; + inherit (pkgs.stdenv) buildPlatform targetPlatform hostPlatform; + }; + + splicedPackagesWithXorg = splicedPackages // builtins.removeAttrs splicedPackages.xorg [ + "callPackage" "newScope" "overrideScope" "packages" + ]; + +in + +{ + inherit splicePackages; + + # We use `callPackage' to be able to omit function arguments that can be + # obtained `pkgs` or `buildPackages` and their `xorg` package sets. Use + # `newScope' for sets of packages in `pkgs' (see e.g. `gnome' below). + callPackage = pkgs.newScope {}; + + callPackages = lib.callPackagesWith splicedPackagesWithXorg; + + newScope = extra: lib.callPackageWith (splicedPackagesWithXorg // extra); + + # Haskell package sets need this because they reimplement their own + # `newScope`. + __splicedPackages = splicedPackages // { recurseForDerivations = false; }; +} diff --git a/nixpkgs/pkgs/top-level/stage.nix b/nixpkgs/pkgs/top-level/stage.nix new file mode 100644 index 000000000000..9d34ddb3685f --- /dev/null +++ b/nixpkgs/pkgs/top-level/stage.nix @@ -0,0 +1,276 @@ +/* This file composes a single bootstrapping stage of the Nix Packages + collection. That is, it imports the functions that build the various + packages, and calls them with appropriate arguments. The result is a set of + all the packages in the Nix Packages collection for some particular platform + for some particular stage. + + Default arguments are only provided for bootstrapping + arguments. Normal users should not import this directly but instead + import `pkgs/default.nix` or `default.nix`. */ + + +{ ## Misc parameters kept the same for all stages + ## + + # Utility functions, could just import but passing in for efficiency + lib + +, # Use to reevaluate Nixpkgs + nixpkgsFun + + ## Other parameters + ## + +, # Either null or an object in the form: + # + # { + # pkgsBuildBuild = ...; + # pkgsBuildHost = ...; + # pkgsBuildTarget = ...; + # pkgsHostHost = ...; + # # pkgsHostTarget skipped on purpose. + # pkgsTargetTarget ...; + # } + # + # These are references to adjacent bootstrapping stages. The more familiar + # `buildPackages` and `targetPackages` are defined in terms of them. If null, + # they are instead defined internally as the current stage. This allows us to + # avoid expensive splicing. `pkgsHostTarget` is skipped because it is always + # defined as the current stage. + adjacentPackages + +, # The standard environment to use for building packages. + stdenv + +, # This is used because stdenv replacement and the stdenvCross do benefit from + # the overridden configuration provided by the user, as opposed to the normal + # bootstrapping stdenvs. + allowCustomOverrides + +, # Non-GNU/Linux OSes are currently "impure" platforms, with their libc + # outside of the store. Thus, GCC, GFortran, & co. must always look for files + # in standard system directories (/usr/include, etc.) + noSysDirs ? stdenv.buildPlatform.system != "x86_64-freebsd" + && stdenv.buildPlatform.system != "i686-freebsd" + && stdenv.buildPlatform.system != "x86_64-solaris" + && stdenv.buildPlatform.system != "x86_64-kfreebsd-gnu" + +, # The configuration attribute set + config + +, # A list of overlays (Additional `self: super: { .. }` customization + # functions) to be fixed together in the produced package set + overlays +} @args: + +let + stdenvAdapters = self: super: + let + res = import ../stdenv/adapters.nix { + inherit lib config; + pkgs = self; + }; + in res // { + stdenvAdapters = res; + }; + + trivialBuilders = self: super: + import ../build-support/trivial-builders.nix { + inherit lib; + inherit (self) runtimeShell stdenv stdenvNoCC; + inherit (self.pkgsBuildHost) shellcheck; + inherit (self.pkgsBuildHost.xorg) lndir; + }; + + stdenvBootstappingAndPlatforms = self: super: let + withFallback = thisPkgs: + (if adjacentPackages == null then self else thisPkgs) + // { recurseForDerivations = false; }; + in { + # Here are package sets of from related stages. They are all in the form + # `pkgs{theirHost}{theirTarget}`. For example, `pkgsBuildHost` means their + # host platform is our build platform, and their target platform is our host + # platform. We only care about their host/target platforms, not their build + # platform, because the the former two alone affect the interface of the + # final package; the build platform is just an implementation detail that + # should not leak. + pkgsBuildBuild = withFallback adjacentPackages.pkgsBuildBuild; + pkgsBuildHost = withFallback adjacentPackages.pkgsBuildHost; + pkgsBuildTarget = withFallback adjacentPackages.pkgsBuildTarget; + pkgsHostHost = withFallback adjacentPackages.pkgsHostHost; + pkgsHostTarget = self // { recurseForDerivations = false; }; # always `self` + pkgsTargetTarget = withFallback adjacentPackages.pkgsTargetTarget; + + # Older names for package sets. Use these when only the host platform of the + # package set matter (i.e. use `buildPackages` where any of `pkgsBuild*` + # would do, and `targetPackages` when any of `pkgsTarget*` would do (if we + # had more than just `pkgsTargetTarget`).) + buildPackages = self.pkgsBuildHost; + pkgs = self.pkgsHostTarget; + targetPackages = self.pkgsTargetTarget; + + inherit stdenv; + }; + + # The old identifiers for cross-compiling. These should eventually be removed, + # and the packages that rely on them refactored accordingly. + platformCompat = self: super: let + inherit (super.stdenv) buildPlatform hostPlatform targetPlatform; + in { + inherit buildPlatform hostPlatform targetPlatform; + }; + + splice = self: super: import ./splice.nix lib self (adjacentPackages != null); + + allPackages = self: super: + let res = import ./all-packages.nix + { inherit lib noSysDirs config overlays; } + res self super; + in res; + + aliases = self: super: lib.optionalAttrs (config.allowAliases or true) (import ./aliases.nix lib self super); + + # stdenvOverrides is used to avoid having multiple of versions + # of certain dependencies that were used in bootstrapping the + # standard environment. + stdenvOverrides = self: super: + (super.stdenv.overrides or (_: _: {})) self super; + + # Allow packages to be overridden globally via the `packageOverrides' + # configuration option, which must be a function that takes `pkgs' + # as an argument and returns a set of new or overridden packages. + # The `packageOverrides' function is called with the *original* + # (un-overridden) set of packages, allowing packageOverrides + # attributes to refer to the original attributes (e.g. "foo = + # ... pkgs.foo ..."). + configOverrides = self: super: + lib.optionalAttrs allowCustomOverrides + ((config.packageOverrides or (super: {})) super); + + # Convenience attributes for instantitating package sets. Each of + # these will instantiate a new version of allPackages. Currently the + # following package sets are provided: + # + # - pkgsCross.<system> where system is a member of lib.systems.examples + # - pkgsMusl + # - pkgsi686Linux + otherPackageSets = self: super: { + # This maps each entry in lib.systems.examples to its own package + # set. Each of these will contain all packages cross compiled for + # that target system. For instance, pkgsCross.raspberryPi.hello, + # will refer to the "hello" package built for the ARM6-based + # Raspberry Pi. + pkgsCross = lib.mapAttrs (n: crossSystem: + nixpkgsFun { inherit crossSystem; }) + lib.systems.examples; + + pkgsLLVM = nixpkgsFun { + overlays = [ + (self': super': { + pkgsLLVM = super'; + }) + ] ++ overlays; + # Bootstrap a cross stdenv using the LLVM toolchain. + # This is currently not possible when compiling natively, + # so we don't need to check hostPlatform != buildPlatform. + crossSystem = stdenv.hostPlatform // { + useLLVM = true; + linker = "lld"; + }; + }; + + # All packages built with the Musl libc. This will override the + # default GNU libc on Linux systems. Non-Linux systems are not + # supported. + pkgsMusl = if stdenv.hostPlatform.isLinux then nixpkgsFun { + overlays = [ (self': super': { + pkgsMusl = super'; + })] ++ overlays; + ${if stdenv.hostPlatform == stdenv.buildPlatform + then "localSystem" else "crossSystem"} = { + parsed = stdenv.hostPlatform.parsed // { + abi = { + gnu = lib.systems.parse.abis.musl; + gnueabi = lib.systems.parse.abis.musleabi; + gnueabihf = lib.systems.parse.abis.musleabihf; + }.${stdenv.hostPlatform.parsed.abi.name} + or lib.systems.parse.abis.musl; + }; + }; + } else throw "Musl libc only supports Linux systems."; + + # All packages built for i686 Linux. + # Used by wine, firefox with debugging version of Flash, ... + pkgsi686Linux = if stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isx86 then nixpkgsFun { + overlays = [ (self': super': { + pkgsi686Linux = super'; + })] ++ overlays; + ${if stdenv.hostPlatform == stdenv.buildPlatform + then "localSystem" else "crossSystem"} = { + parsed = stdenv.hostPlatform.parsed // { + cpu = lib.systems.parse.cpuTypes.i686; + }; + }; + } else throw "i686 Linux package set can only be used with the x86 family."; + + # Extend the package set with zero or more overlays. This preserves + # preexisting overlays. Prefer to initialize with the right overlays + # in one go when calling Nixpkgs, for performance and simplicity. + appendOverlays = extraOverlays: + if extraOverlays == [] + then self + else nixpkgsFun { overlays = args.overlays ++ extraOverlays; }; + + # NOTE: each call to extend causes a full nixpkgs rebuild, adding ~130MB + # of allocations. DO NOT USE THIS IN NIXPKGS. + # + # Extend the package set with a single overlay. This preserves + # preexisting overlays. Prefer to initialize with the right overlays + # in one go when calling Nixpkgs, for performance and simplicity. + # Prefer appendOverlays if used repeatedly. + extend = f: self.appendOverlays [f]; + + # Fully static packages. + # Currently uses Musl on Linux (couldn’t get static glibc to work). + pkgsStatic = nixpkgsFun ({ + overlays = [ (self': super': { + pkgsStatic = super'; + })] ++ overlays; + } // lib.optionalAttrs stdenv.hostPlatform.isLinux { + crossSystem = { + isStatic = true; + parsed = stdenv.hostPlatform.parsed // { + abi = { + gnu = lib.systems.parse.abis.musl; + gnueabi = lib.systems.parse.abis.musleabi; + gnueabihf = lib.systems.parse.abis.musleabihf; + musleabi = lib.systems.parse.abis.musleabi; + musleabihf = lib.systems.parse.abis.musleabihf; + }.${stdenv.hostPlatform.parsed.abi.name} + or lib.systems.parse.abis.musl; + }; + } // lib.optionalAttrs (stdenv.hostPlatform.system == "powerpc64-linux") { + gcc.abi = "elfv2"; + }; + }); + }; + + # The complete chain of package set builders, applied from top to bottom. + # stdenvOverlays must be last as it brings package forward from the + # previous bootstrapping phases which have already been overlayed. + toFix = lib.foldl' (lib.flip lib.extends) (self: {}) ([ + stdenvBootstappingAndPlatforms + platformCompat + stdenvAdapters + trivialBuilders + splice + allPackages + otherPackageSets + aliases + configOverrides + ] ++ overlays ++ [ + stdenvOverrides ]); + +in + # Return the complete set of packages. + lib.fix toFix diff --git a/nixpkgs/pkgs/top-level/unixtools.nix b/nixpkgs/pkgs/top-level/unixtools.nix new file mode 100644 index 000000000000..b7fea20b76bc --- /dev/null +++ b/nixpkgs/pkgs/top-level/unixtools.nix @@ -0,0 +1,195 @@ +{ pkgs, buildEnv, runCommand, lib, stdenv }: + +# These are some unix tools that are commonly included in the /usr/bin +# and /usr/sbin directory under more normal distributions. Along with +# coreutils, these are commonly assumed to be available by build +# systems, but we can't assume they are available. In Nix, we list +# each program by name directly through this unixtools attribute. + +# You should always try to use single binaries when available. For +# instance, if your program needs to use "ps", just list it as a build +# input, not "procps" which requires Linux. + +with lib; + +let + version = "1003.1-2008"; + + singleBinary = cmd: providers: let + provider = providers.${stdenv.hostPlatform.parsed.kernel.name} or providers.linux; + bin = "${getBin provider}/bin/${cmd}"; + manpage = "${getOutput "man" provider}/share/man/man1/${cmd}.1.gz"; + in runCommand "${cmd}-${provider.name}" { + meta = { + priority = 10; + platforms = lib.platforms.${stdenv.hostPlatform.parsed.kernel.name} or lib.platforms.all; + }; + passthru = { inherit provider; }; + preferLocalBuild = true; + } '' + if ! [ -x ${bin} ]; then + echo Cannot find command ${cmd} + exit 1 + fi + + mkdir -p $out/bin + ln -s ${bin} $out/bin/${cmd} + + if [ -f ${manpage} ]; then + mkdir -p $out/share/man/man1 + ln -s ${manpage} $out/share/man/man1/${cmd}.1.gz + fi + ''; + + # more is unavailable in darwin + # so we just use less + more_compat = runCommand "more-${pkgs.less.name}" {} '' + mkdir -p $out/bin + ln -s ${pkgs.less}/bin/less $out/bin/more + ''; + + bins = mapAttrs singleBinary { + # singular binaries + arp = { + linux = pkgs.nettools; + darwin = pkgs.darwin.network_cmds; + }; + col = { + linux = pkgs.util-linux; + darwin = pkgs.darwin.text_cmds; + }; + column = { + linux = pkgs.util-linux; + darwin = pkgs.netbsd.column; + }; + eject = { + linux = pkgs.util-linux; + }; + getconf = { + linux = if stdenv.hostPlatform.libc == "glibc" then pkgs.stdenv.cc.libc + else pkgs.netbsd.getconf; + darwin = pkgs.darwin.system_cmds; + }; + getent = { + linux = if stdenv.hostPlatform.libc == "glibc" then pkgs.stdenv.cc.libc + else pkgs.netbsd.getent; + darwin = pkgs.netbsd.getent; + }; + getopt = { + linux = pkgs.util-linux; + darwin = pkgs.getopt; + }; + fdisk = { + linux = pkgs.util-linux; + darwin = pkgs.darwin.diskdev_cmds; + }; + fsck = { + linux = pkgs.util-linux; + darwin = pkgs.darwin.diskdev_cmds; + }; + hexdump = { + linux = pkgs.util-linux; + darwin = pkgs.darwin.shell_cmds; + }; + hostname = { + linux = pkgs.nettools; + darwin = pkgs.darwin.shell_cmds; + }; + ifconfig = { + linux = pkgs.nettools; + darwin = pkgs.darwin.network_cmds; + }; + killall = { + linux = pkgs.psmisc; + darwin = pkgs.darwin.shell_cmds; + }; + locale = { + linux = pkgs.glibc; + darwin = pkgs.netbsd.locale; + }; + logger = { + linux = pkgs.util-linux; + }; + more = { + linux = pkgs.util-linux; + darwin = more_compat; + }; + mount = { + linux = pkgs.util-linux; + darwin = pkgs.darwin.diskdev_cmds; + }; + netstat = { + linux = pkgs.nettools; + darwin = pkgs.darwin.network_cmds; + }; + ping = { + linux = pkgs.iputils; + darwin = pkgs.darwin.network_cmds; + }; + ps = { + linux = pkgs.procps; + darwin = pkgs.darwin.ps; + }; + quota = { + linux = pkgs.linuxquota; + darwin = pkgs.darwin.diskdev_cmds; + }; + route = { + linux = pkgs.nettools; + darwin = pkgs.darwin.network_cmds; + }; + script = { + linux = pkgs.util-linux; + darwin = pkgs.darwin.shell_cmds; + }; + sysctl = { + linux = pkgs.procps; + darwin = pkgs.darwin.system_cmds; + }; + top = { + linux = pkgs.procps; + darwin = pkgs.darwin.top; + }; + umount = { + linux = pkgs.util-linux; + darwin = pkgs.darwin.diskdev_cmds; + }; + whereis = { + linux = pkgs.util-linux; + darwin = pkgs.darwin.shell_cmds; + }; + wall = { + linux = pkgs.util-linux; + }; + watch = { + linux = pkgs.procps; + + # watch is the only command from procps that builds currently on + # Darwin. Unfortunately no other implementations exist currently! + darwin = pkgs.callPackage ../os-specific/linux/procps-ng {}; + }; + write = { + linux = pkgs.util-linux; + darwin = pkgs.darwin.basic_cmds; + }; + xxd = { + linux = pkgs.vim; + darwin = pkgs.vim; + }; + }; + + makeCompat = pname: paths: + buildEnv { + name = "${pname}-${version}"; + inherit paths; + }; + + # Compatibility derivations + # Provided for old usage of these commands. + compat = with bins; lib.mapAttrs makeCompat { + procps = [ ps sysctl top watch ]; + util-linux = [ fsck fdisk getopt hexdump mount + script umount whereis write col column ]; + nettools = [ arp hostname ifconfig netstat route ]; + }; +in bins // compat diff --git a/nixpkgs/pkgs/top-level/wine-packages.nix b/nixpkgs/pkgs/top-level/wine-packages.nix new file mode 100644 index 000000000000..c8bdaeb426e7 --- /dev/null +++ b/nixpkgs/pkgs/top-level/wine-packages.nix @@ -0,0 +1,58 @@ +{ stdenv, config, callPackage, wineBuild }: + +rec { + fonts = callPackage ../applications/emulators/wine/fonts.nix {}; + minimal = callPackage ../applications/emulators/wine { + wineRelease = config.wine.release or "stable"; + inherit wineBuild; + }; + + base = minimal.override { + gettextSupport = true; + fontconfigSupport = stdenv.isLinux; + alsaSupport = stdenv.isLinux; + openglSupport = true; + vulkanSupport = true; + tlsSupport = true; + cupsSupport = true; + dbusSupport = stdenv.isLinux; + cairoSupport = stdenv.isLinux; + cursesSupport = true; + saneSupport = stdenv.isLinux; + pulseaudioSupport = config.pulseaudio or stdenv.isLinux; + udevSupport = stdenv.isLinux; + xineramaSupport = stdenv.isLinux; + sdlSupport = true; + mingwSupport = true; + usbSupport = true; + }; + + full = base.override { + gtkSupport = stdenv.isLinux; + gstreamerSupport = true; + openalSupport = true; + openclSupport = true; + odbcSupport = true; + netapiSupport = stdenv.isLinux; + vaSupport = stdenv.isLinux; + pcapSupport = true; + v4lSupport = stdenv.isLinux; + gphoto2Support = true; + krb5Support = true; + ldapSupport = true; + vkd3dSupport = true; + embedInstallers = true; + }; + + stable = base.override { wineRelease = "stable"; }; + stableFull = full.override { wineRelease = "stable"; }; + + unstable = base.override { wineRelease = "unstable"; }; + unstableFull = full.override { wineRelease = "unstable"; }; + + staging = base.override { wineRelease = "staging"; }; + stagingFull = full.override { wineRelease = "staging"; }; + + wayland = base.override { wineRelease = "wayland"; }; + waylandFull = full.override { wineRelease = "wayland"; }; +} |