diff options
author | Mx Kookie <kookie@spacekookie.de> | 2020-10-31 19:35:09 +0100 |
---|---|---|
committer | Mx Kookie <kookie@spacekookie.de> | 2020-10-31 19:35:09 +0100 |
commit | c4625b175f8200f643fd6e11010932ea44c78433 (patch) | |
tree | bce3f89888c8ac3991fa5569a878a9eab6801ccc /infra/libkookie/nixpkgs/pkgs/top-level | |
parent | 49f735974dd103039ddc4cb576bb76555164a9e7 (diff) | |
parent | d661aa56a8843e991261510c1bb28fdc2f6975ae (diff) |
Add 'infra/libkookie/' from commit 'd661aa56a8843e991261510c1bb28fdc2f6975ae'
git-subtree-dir: infra/libkookie
git-subtree-mainline: 49f735974dd103039ddc4cb576bb76555164a9e7
git-subtree-split: d661aa56a8843e991261510c1bb28fdc2f6975ae
Diffstat (limited to 'infra/libkookie/nixpkgs/pkgs/top-level')
37 files changed, 69266 insertions, 0 deletions
diff --git a/infra/libkookie/nixpkgs/pkgs/top-level/agda-packages.nix b/infra/libkookie/nixpkgs/pkgs/top-level/agda-packages.nix new file mode 100644 index 000000000000..601ab6d42b9d --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/top-level/agda-packages.nix @@ -0,0 +1,33 @@ +{ 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; + + agda = withPackages [] // { inherit withPackages; }; + + 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 { }; + }; +in mkAgdaPackages Agda diff --git a/infra/libkookie/nixpkgs/pkgs/top-level/aliases.nix b/infra/libkookie/nixpkgs/pkgs/top-level/aliases.nix new file mode 100644 index 000000000000..3e9cdc8e87e9 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/top-level/aliases.nix @@ -0,0 +1,749 @@ +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 + +mapAliases ({ + PPSSPP = ppsspp; # added 2017-10-01 + QmidiNet = qmidinet; # added 2016-05-22 + accounts-qt = libsForQt5.accounts-qt; # added 2015-12-19 + adobeReader = adobe-reader; # added 2013-11-04 + adobe_flex_sdk = apache-flex-sdk; # added 2018-06-01 + ag = silver-searcher; # added 2018-04-25 + aircrackng = aircrack-ng; # added 2016-01-14 + alienfx = throw "alienfx has been removed."; # added 2019-12-08 + ammonite-repl = ammonite; # added 2017-05-02 + antimicro = throw "antimicro has been removed as it was broken, see antimicroX instead."; # added 2020-08-06 + arduino_core = arduino-core; # added 2015-02-04 + arora = throw "arora has been removed."; # added 2020-09-09 + asciidocFull = asciidoc-full; # added 2014-06-22 + asterisk_15 = throw "Asterisk 15 is end of life and has been removed."; # added 2020-10-07 + at_spi2_atk = at-spi2-atk; # added 2018-02-25 + at_spi2_core = at-spi2-core; # added 2018-02-25 + avldrums-lv2 = x42-avldrums; # added 2020-03-29 + bar-xft = lemonbar-xft; # added 2015-01-16 + bashCompletion = bash-completion; # Added 2016-09-28 + 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 + beegfs = throw "beegfs has been removed."; # added 2019-11-24 + bluezFull = bluez; # Added 2019-12-03 + bridge_utils = bridge-utils; # added 2015-02-20 + bro = zeek; # added 2019-09-29 + bootchart = throw "bootchart has been removed from nixpkgs, as it is without a maintainer"; # added 2019-12-10 + btrfsProgs = btrfs-progs; # added 2016-01-03 + bittorrentSync = throw "bittorrentSync has been deprecated by resilio-sync."; # added 2019-06-03 + bittorrentSync14 = throw "bittorrentSync14 has been deprecated by resilio-sync."; # added 2019-06-03 + bittorrentSync20 = throw "bittorrentSync20 has been deprecated by resilio-sync."; # added 2019-06-03 + buildPerlPackage = perlPackages.buildPerlPackage; # added 2018-10-12 + buildGo112Package = throw "buildGo112Package has been removed"; # added 2020-04-26 + buildGo112Module = throw "buildGo112Module has been removed"; # added 2020-04-26 + bundler_HEAD = bundler; # added 2015-11-15 + 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 + cantarell_fonts = cantarell-fonts; # added 2018-03-03 + 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 + cgmanager = throw "cgmanager was deprecated by lxc and therefore removed from nixpkgs."; # added 2020-06-05 + checkbashism = checkbashisms; # added 2016-08-16 + chronos = throw "chronos has been removed from nixpkgs, as it was unmaintained"; # added 2020-08-15 + cide = throw "deprecated in 2019-09-11: abandoned by upstream"; + cinepaint = throw "cinepaint has been removed from nixpkgs, as it was unmaintained"; # added 2019-12-10 + cifs_utils = cifs-utils; # added 2016-08 + ckb = ckb-next; # added 2018-10-21 + clangAnalyzer = clang-analyzer; # added 2015-02-20 + clawsMail = claws-mail; # added 2016-04-29 + clutter_gtk = clutter-gtk; # added 2018-02-25 + compton = picom; # added 2019-12-02 + compton-git = compton; # added 2019-05-20 + conntrack_tools = conntrack-tools; # added 2018-05 + cool-old-term = cool-retro-term; # added 2015-01-31 + coprthr = throw "coprthr has been removed."; # added 2019-12-08 + corebird = throw "deprecated 2019-10-02: See https://www.patreon.com/posts/corebirds-future-18921328. Please use Cawbird as replacement."; + coredumper = throw "coredumper has been removed: Abandoned by upstream."; # added 2019-11-16 + cryptol = throw "cryptol was remove for prolonged broken build"; # added 2020-08-21 + cpp-gsl = microsoft_gsl; # added 2019-05-24 + cupsBjnp = cups-bjnp; # added 2016-01-02 + cups_filters = cups-filters; # added 2016-08 + cquery = throw "cquery has been removed because it is abandoned by upstream. Consider switching to clangd or ccls instead."; # added 2020-06-15 + cv = progress; # added 2015-09-06 + d1x_rebirth = dxx-rebirth; # added 2018-04-25 + d2x_rebirth = dxx-rebirth; # added 2018-04-25 + dat = nodePackages.dat; + dbvisualizer = throw "dbvisualizer has been remove from nixpkgs, as it's unmaintained"; # added 2020-09-20 + dbus_daemon = dbus.daemon; # added 2018-04-25 + dbus_glib = dbus-glib; # added 2018-02-25 + dbus_libs = dbus; # added 2018-04-25 + diffuse = throw "diffuse has been removed from nixpkgs, as it's unmaintained"; # added 2019-12-10 + dbus_tools = dbus.out; # added 2018-04-25 + deadbeef-mpris2-plugin = deadbeefPlugins.mpris2; # added 2018-02-23 + deadpixi-sam = deadpixi-sam-unstable; + debian_devscripts = debian-devscripts; # added 2016-03-23 + 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 + desktop_file_utils = desktop-file-utils; # added 2018-02-25 + devicemapper = lvm2; # added 2018-04-25 + digikam5 = digikam; # added 2017-02-18 + dmtx = dmtx-utils; # added 2018-04-25 + dnnl = oneDNN; # added 2020-04-22 + docbook5_xsl = docbook_xsl_ns; # added 2018-04-25 + docbook_xml_xslt = docbook_xsl; # added 2018-04-25 + double_conversion = double-conversion; # 2017-11-22 + docker_compose = docker-compose; # 2018-11-10 + draftsight = throw "draftsight has been removed, no longer available as freeware"; # added 2020-08-14 + dwarf_fortress = dwarf-fortress; # added 2016-01-23 + emacsPackagesGen = emacsPackagesFor; # added 2018-08-18 + emacsPackagesNgGen = emacsPackagesFor; # added 2018-08-18 + emacsPackagesNgFor = emacsPackagesFor; # added 2019-08-07 + emacsPackagesNg = emacsPackages; # added 2019-08-07 + emby = throw "The Emby derivation has been removed, see jellyfin instead for a free software fork."; # added 2019-05-01 + enblendenfuse = enblend-enfuse; # 2015-09-30 + evolution_data_server = evolution-data-server; # added 2018-02-25 + etcdctl = etcd; # added 2018-04-25 + exfat-utils = exfat; # 2015-09-11 + 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 + fetchFromGithub = throw "You meant fetchFromGitHub, with a capital H."; + ffadoFull = ffado; # added 2018-05-01 + firefox-esr-68 = throw "Firefox 68 ESR reached end of life with its final release 68.12esr on 2020-08-25 and was therefore removed from nixpkgs"; + firefox-esr-wrapper = firefox-esr; # 2016-01 + firefox-wrapper = firefox; # 2016-01 + firefoxWrapper = firefox; # 2015-09 + + firestr = throw "firestr has been removed."; # added 2019-12-08 + flameGraph = flamegraph; # added 2018-04-25 + foldingathome = fahclient; # added 2020-09-03 + font-awesome-ttf = font-awesome; # 2018-02-25 + # 2019-10-31 + 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. + ''; + fontconfig-penultimate = throw '' + fontconfig-penultimate has been removed. + It was a fork of the abandoned fontconfig-ultimate. + ''; + # 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. + ''; + font-droid = throw "font-droid has been deprecated by noto-fonts"; # 2019-04-12 + foomatic_filters = foomatic-filters; # 2016-08 + fuse_exfat = exfat; # 2015-09-11 + fuseki = apache-jena-fuseki; # added 2018-04-25 + fusesmb = throw "fusesmb is abandoned by upstream"; # added 2019-10-15 + fwupdate = throw "fwupdate was merged into fwupd"; # added 2020-05-19 + g4py = python3Packages.geant4; # added 2020-06-06 + gccApple = throw "gccApple is no longer supported"; # added 2018-04-25 + gdb-multitarget = gdb; # added 2017-11-13 + gdk_pixbuf = gdk-pixbuf; # added 2019-05-22 + gettextWithExpat = gettext; # 2016-02-19 + git-hub = gitAndTools.git-hub; # added 2016-04-29 + glib_networking = glib-networking; # added 2018-02-25 + gmailieer = lieer; # added 2020-04-19 + gnome-mpv = celluloid; # added 2019-08-22 + gnome15 = throw "gnome15 has been removed from nixpkgs, as it's unmaintained and depends on deprecated libraries."; # added 2019-12-10 + gmic_krita_qt = gmic-qt-krita; # added 2019-09-07 + gnome-themes-standard = gnome-themes-extra; # added 2018-03-14 + gnome_doc_utils = gnome-doc-utils; # added 2018-02-25 + gnome_themes_standard = gnome-themes-standard; # added 2018-02-25 + gnunet_git = throw "gnunet_git was removed due to gnunet becoming stable"; # added 2019-05-27 + gnuradio-nacl = gr-nacl; # added 2019-05-27 + gnuradio-gsm = gr-gsm; # added 2019-05-27 + gnuradio-ais = gr-ais; # added 2019-05-27 + gnuradio-limesdr = gr-limesdr; # added 2019-05-27 + gnuradio-rds = gr-rds; # added 2019-05-27 + gnuradio-osmosdr = gr-osmosdr; # added 2019-05-27 + gnustep-make = gnustep.make; # added 2016-7-6 + gnupg20 = throw "gnupg20 has been removed from nixpkgs as upstream dropped support on 2017-12-31";# added 2020-07-12 + go_1_12 = throw "go_1_12 has been removed"; # added 2020-04-26 + go-pup = pup; # added 2017-12-19 + gobjectIntrospection = gobject-introspection; # added 2018-12-02 + goimports = gotools; # added 2018-09-16 + gometalinter = throw "Abandoned by upstream. Consider switching to golangci-lint instead"; # added 2020-04-23 + google-gflags = gflags; # added 2019-07-25 + googleAuthenticator = google-authenticator; # added 2016-10-16 + grantlee5 = libsForQt5.grantlee; # added 2015-12-19 + gsettings_desktop_schemas = gsettings-desktop-schemas; # added 2018-02-25 + gtk_doc = gtk-doc; # added 2018-02-25 + guileCairo = guile-cairo; # added 2017-09-24 + guileGnome = guile-gnome; # added 2017-09-24 + guileLint = guile-lint; # added 2017-09-27 + guile_lib = guile-lib; # added 2017-09-24 + guile_ncurses = guile-ncurses; # added 2017-09-24 + gupnp_av = gupnp-av; # added 2018-02-25 + gupnp_dlna = gupnp-dlna; # added 2018-02-25 + gupnp_igd = gupnp-igd; # added 2018-02-25 + gupnptools = gupnp-tools; # added 2015-12-19 + gutenberg = zola; # added 2018-11-17 + heimdalFull = heimdal; # added 2018-05-01 + hepmc = hepmc2; # added 2019-08-05 + hexen = throw "hexen (SDL port) has been removed: Abandoned by upstream."; # added 2019-12-11 + hicolor_icon_theme = hicolor-icon-theme; # added 2018-02-25 + htmlTidy = html-tidy; # added 2014-12-06 + iana_etc = iana-etc; # added 2017-03-08 + icedtea8_web = adoptopenjdk-icedtea-web; # added 2019-08-21 + icedtea_web = adoptopenjdk-icedtea-web; # added 2019-08-21 + idea = jetbrains; # added 2017-04-03 + infiniband-diags = rdma-core; # added 2019-08-09 + inotifyTools = inotify-tools; + jasper = throw "jasper has been removed: abandoned upstream with many vulnerabilities"; + jbuilder = dune; # added 2018-09-09 + jikes = throw "deprecated in 2019-10-07: jikes was abandoned by upstream"; + joseki = apache-jena-fuseki; # added 2016-02-28 + json_glib = json-glib; # added 2018-02-25 + kdecoration-viewer = throw "kdecoration-viewer has been removed from nixpkgs, as there is no upstream activity"; # 2020-06-16 + kdiff3-qt5 = kdiff3; # added 2017-02-18 + keepass-keefox = keepass-keepassrpc; # backwards compatibility alias, added 2018-02 + keepassx-community = keepassxc; # added 2017-11 + keepassx-reboot = keepassx-community; # added 2017-02-01 + keepassx2-http = keepassx-reboot; # added 2016-10-17 + keybase-go = keybase; # added 2016-08-24 + kinetic-cpp-client = throw "kinetic-cpp-client has been removed from nixpkgs, as it's abandoned."; # 2020-04-28 + kicad-with-packages3d = kicad; # added 2019-11-25 + krename-qt5 = krename; # added 2017-02-18 + keymon = throw "keymon has been removed from nixpkgs, as it's abandoned and archived."; # 2019-12-10 + kvm = qemu_kvm; # added 2018-04-25 + latinmodern-math = lmmath; + letsencrypt = certbot; # added 2016-05-16 + libaudit = audit; # added 2018-04-25 + libcanberra_gtk2 = libcanberra-gtk2; # added 2018-02-25 + libcanberra_gtk3 = libcanberra-gtk3; # added 2018-02-25 + libcap_manpages = libcap.doc; # added 2016-04-29 + libcap_pam = if stdenv.isLinux then libcap.pam else null; # added 2016-04-29 + libcroco = throw "libcroco has been removed as it's no longer used in any derivations."; # added 2020-03-04 + libindicate = throw "libindacate 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 + libindicate-gtk2 = throw "libindacate-gtk3 has been removed from nixpkgs, as it's abandoned and uses deprecated libraries"; # added 2019-12-10 + libcap_progs = libcap.out; # added 2016-04-29 + libdbusmenu_qt5 = libsForQt5.libdbusmenu; # added 2015-12-19 + libdbusmenu-glib = libdbusmenu; # added 2018-05-01 + liberation_ttf_v1_from_source = liberation_ttf_v1; # added 2018-12-12 + liberation_ttf_v2_from_source = liberation_ttf_v2; # added 2018-12-12 + liberationsansnarrow = liberation-sans-narrow; # added 2018-12-12 + libgnome_keyring = libgnome-keyring; # added 2018-02-25 + libgnome_keyring3 = libgnome-keyring3; # added 2018-02-25 + libgumbo = gumbo; # added 2018-01-21 + libGL_driver = mesa.drivers; + libintlOrEmpty = stdenv.lib.optional (!stdenv.isLinux || stdenv.hostPlatform.libc != "glibc") gettext; # added 2018-03-14 + libjpeg_drop = libjpeg_original; # added 2020-06-05 + libjson_rpc_cpp = libjson-rpc-cpp; # added 2017-02-28 + liblapackWithoutAtlas = lapack-reference; # added 2018-11-05 + liblastfm = libsForQt5.liblastfm; # added 2020-06-14 + liblrdf = lrdf; # added 2018-04-25 + libqrencode = qrencode; # added 2019-01-01 + librdf = lrdf; # added 2020-03-22 + librecad2 = librecad; # backwards compatibility alias, added 2015-10 + libsysfs = sysfsutils; # added 2018-04-25 + libtidy = html-tidy; # added 2014-12-21 + libtxc_dxtn = throw "removed 2020-03-16, now integrated in Mesa"; + libtxc_dxtn_s2tc = throw "removed 2020-03-16, now integrated in Mesa"; + libudev = udev; # added 2018-04-25 + libusb = libusb1; # added 2020-04-28 + libsexy = throw "libsexy has been removed from nixpkgs, as it's abandoned and no package needed it."; # 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."; # 2020-06-22 + libqmatrixclient = throw "libqmatrixclient was renamed to libquotient"; # added 2020-04-09 + links = links2; # added 2016-01-31 + linux_rpi0 = linux_rpi1; + linuxPackages_rpi0 = linuxPackages_rpi1; + + # 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"; + + 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 + lttngTools = lttng-tools; # added 2014-07-31 + lttngUst = lttng-ust; # added 2014-07-31 + lua5_1_sockets = lua51Packages.luasocket; # added 2017-05-02 + lua5_expat = luaPackages.luaexpat; # added 2017-05-02 + lua5_sec = luaPackages.luasec; # added 2017-05-02 + lxappearance-gtk3 = throw "lxappearance-gtk3 has been removed. Use lxappearance instead, which now defaults to Gtk3"; # added 2020-06-03 + m3d-linux = m33-linux; # added 2016-08-13 + man_db = man-db; # added 2016-05 + manpages = man-pages; # added 2015-12-06 + 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 + mess = mame; # added 2019-10-30 + 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"; # added 2019-12-10 + mirage = throw "mirage has been femoved from nixpkgs, as it's unmaintained"; # added 2019-12-10 + mysql-client = hiPrio mariadb.client; + memtest86 = memtest86plus; # added 2019-05-08 + mesa_noglu = mesa; # added 2019-05-28 + # NOTE: 2018-07-12: legacy alias: + # gcsecurity bussiness 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; + mesos = throw "mesos has been removed from nixpkgs, as it's unmaintained"; # added 2020-08-15 + midoriWrapper = midori; # added 2015-01 + 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 = libsForQt5.mlt; # added 2015-12-19 + mobile_broadband_provider_info = mobile-broadband-provider-info; # added 2018-02-25 + moby = throw "moby has been removed, merged into linuxkit in 2018. Use linuxkit instead."; + module_init_tools = kmod; # added 2016-04-22 + mono-zeroconf = throw "deprecated 2019-09-20: abandoned by upstream."; + mozart = mozart2-binary; # added 2019-09-23 + mozart-binary = mozart2-binary; # added 2019-09-23 + mpich2 = mpich; # added 2018-08-06 + msf = metasploit; # added 2018-04-25 + libmsgpack = msgpack; # added 2018-08-17 + mssys = ms-sys; # added 2015-12-13 + mpv-with-scripts = self.wrapMpv self.mpv-unwrapped { }; # added 2020-05-22 + multipath_tools = multipath-tools; # added 2016-01-21 + mupen64plus1_5 = mupen64plus; # added 2016-02-12 + mysqlWorkbench = mysql-workbench; # added 2017-01-19 + nagiosPluginsOfficial = monitoring-plugins; + ncat = nmap; # added 2016-01-26 + netcat-openbsd = libressl.nc; # added 2018-04-25 + netease-cloud-music = throw "netease-cloud-music has been removed together with deepin"; # added 2020-08-31 + networkmanager_fortisslvpn = networkmanager-fortisslvpn; # added 2018-02-25 + networkmanager_iodine = networkmanager-iodine; # added 2018-02-25 + networkmanager_l2tp = networkmanager-l2tp; # added 2018-02-25 + networkmanager_openconnect = networkmanager-openconnect; # added 2018-02-25 + networkmanager_openvpn = networkmanager-openvpn; # added 2018-02-25 + networkmanager_vpnc = networkmanager-vpnc; # added 2018-02-25 + neutral-style = throw "neural-style has been removed, as the upstream project has been abandoned"; # added 2020-03-28 + nfsUtils = nfs-utils; # added 2014-12-06 + nginxUnstable = nginxMainline; # added 2018-04-25 + nilfs_utils = nilfs-utils; # added 2018-04-25 + nix-review = nixpkgs-review; # added 2019-12-22 + nmap_graphical = nmap-graphical; # added 2017-01-19 + nologin = shadow; # added 2018-04-25 + nxproxy = nx-libs; # added 2019-02-15 + nylas-mail-bin = throw "deprecated in 2019-09-11: abandoned by upstream"; + opencascade_oce = opencascade; # added 2018-04-25 + oblogout = throw "oblogout has been removed from nixpkgs, as it's archived upstream."; # added 2019-12-10 + opencl-icd = ocl-icd; # added 2017-01-20 + openexr_ctl = ctl; # added 2018-04-25 + openjpeg_2_1 = openjpeg_2; # added 2018-10-25 + opensans-ttf = open-sans; # added 2018-12-04 + openssh_with_kerberos = openssh; # added 2018-01-28 + osquery = throw "osquery has been removed."; # added 2019-11-24 + otter-browser = throw "otter-browser has been removed from nixpkgs, as it was unmaintained"; # added 2020-02-02 + owncloudclient = owncloud-client; # added 2016-08 + p11_kit = p11-kit; # added 2018-02-25 + parity = openethereum; # added 2020-08-01 + parquet-cpp = arrow-cpp; # added 2018-09-08 + pass-otp = pass.withExtensions (ext: [ext.pass-otp]); # added 2018-05-04 + perlXMLParser = perlPackages.XMLParser; # added 2018-10-12 + perlArchiveCpio = perlPackages.ArchiveCpio; # added 2018-10-12 + pgp-tools = signing-party; # added 2017-03-26 + pg_tmp = ephemeralpg; # added 2018-01-16 + + 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 + php74Packages-embed = phpPackages-embed; + php73Packages-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 + php74Packages-unit = phpPackages-unit; + php73Packages-unit = phpPackages-unit; + + pidgin-with-plugins = pidgin; # added 2016-06 + pidginlatex = pidgin-latex; # added 2018-01-08 + pidginlatexSF = pidgin-latex; # added 2014-11-02 + pidginmsnpecan = pidgin-msn-pecan; # added 2018-01-08 + pidginosd = pidgin-osd; # added 2018-01-08 + pidginotr = pidgin-otr; # added 2018-01-08 + pidginsipe = pidgin-sipe; # added 2018-01-08 + pidginwindowmerge = pidgin-window-merge; # added 2018-01-08 + piwik = matomo; # added 2018-01-16 + pltScheme = racket; # just to be sure + plexpy = tautulli; # plexpy got renamed to tautulli, added 2019-02-22 + pmtools = acpica-tools; # added 2018-11-01 + polarssl = mbedtls; # added 2018-04-25 + poppler_qt5 = libsForQt5.poppler; # added 2015-12-19 + postgresql95 = postgresql_9_5; + postgresql96 = postgresql_9_6; + postgresql100 = throw "deprecated 2018-10-21: use postgresql_10 instead"; + # postgresql plugins + pgjwt = postgresqlPackages.pgjwt; + pg_repack = postgresqlPackages.pg_repack; + pgroonga = postgresqlPackages.pgroonga; + pg_similarity = postgresqlPackages.pg_similarity; + pgtap = postgresqlPackages.pgtap; + plv8 = postgresqlPackages.plv8; + timescaledb = postgresqlPackages.timescaledb; + tsearch_extras = postgresqlPackages.tsearch_extras; + cstore_fdw = postgresqlPackages.cstore_fdw; + pg_hll = postgresqlPackages.pg_hll; + pg_cron = postgresqlPackages.pg_cron; + pg_topn = postgresqlPackages.pg_topn; + pinentry_curses = pinentry-curses; # added 2019-10-14 + pinentry_emacs = pinentry-emacs; # added 2019-10-14 + pinentry_gtk2 = pinentry-gtk2; # added 2019-10-14 + pinentry_qt = pinentry-qt; # added 2019-10-14 + pinentry_gnome = pinentry-gnome; # added 2019-10-14 + pinentry_qt5 = pinentry-qt; # added 2020-02-11 + postgis = postgresqlPackages.postgis; + # end + ppl-address-book = throw "deprecated in 2019-05-02: abandoned by upstream."; + processing3 = processing; # added 2019-08-16 + procps-ng = procps; # added 2018-06-08 + pygmentex = texlive.bin.pygmentex; # added 2019-12-15 + pyo3-pack = maturin; + pmenu = throw "pmenu has been removed from nixpkgs, as its maintainer is no longer interested in the package."; # added 2019-12-10 + pulseaudioLight = pulseaudio; # added 2018-04-25 + phonon-backend-gstreamer = throw "Please use libsForQt5.phonon-backend-gstreamer, as Qt4 support in this package has been removed."; # added 2019-11-22 + phonon-backend-vlc = throw "Please use libsForQt5.phonon-backend-vlc, as Qt4 support in this package has been removed."; # added 2019-11-22 + phonon = throw "Please use libsForQt5.phonon, as Qt4 support in this package has been removed."; # added 2019-11-22 + qca-qt5 = libsForQt5.qca-qt5; # added 2015-12-19 + quake3game = ioquake3; # added 2016-01-14 + qvim = throw "qvim has been removed."; # added 2020-08-31 + qwt6 = libsForQt5.qwt; # added 2015-12-19 + qtpfsgui = throw "Is now luminanceHDR"; # added 2019-06-26 + quaternion-git = throw "quaternion-git has been removed in favor of the stable version 'quaternion'"; # added 2020-04-09 + rdf4store = throw "rdf4store has been removed from nixpkgs."; # added 2019-12-21 + rdiff_backup = rdiff-backup; # added 2014-11-23 + rdmd = dtools; # added 2017-08-19 + rhc = throw "deprecated in 2019-04-09: abandoned by upstream."; + rng_tools = rng-tools; # added 2018-10-24 + robomongo = robo3t; #added 2017-09-28 + rocm-runtime-ext = throw "rocm-runtime-ext has been removed, since its functionality was added to rocm-runtime"; #added 2020-08-21 + rssglx = rss-glx; #added 2015-03-25 + rssh = throw "rssh has been removed from nixpkgs: no upstream releases since 2012, several known CVEs"; # added 2020-08-25 + recordmydesktop = throw "recordmydesktop has been removed from nixpkgs, as it's unmaintained and uses deprecated libraries"; # added 2019-12-10 + gtk-recordmydesktop = throw "gtk-recordmydesktop has been removed from nixpkgs, as it's unmaintained and uses deprecated libraries"; # added 2019-12-10 + qt-recordmydesktop = throw "qt-recordmydesktop has been removed from nixpkgs, as it's abandoned and uses deprecated libraries"; # added 2019-12-10 + rfkill = throw "rfkill has been removed, as it's included in util-linux"; # added 2020-08-23 + rkt = throw "rkt was archived by upstream"; # added 2020-05-16 + ruby_2_0_0 = throw "deprecated 2018-0213: use a newer version of ruby"; + ruby_2_1_0 = throw "deprecated 2018-0213: use a newer version of ruby"; + ruby_2_2_9 = throw "deprecated 2018-0213: use a newer version of ruby"; + ruby_2_3_6 = throw "deprecated 2018-0213: use a newer version of ruby"; + ruby_2_3 = throw "deprecated 2019-09-06: use a newer version of ruby"; + ruby_2_4_3 = throw "deprecated 2018-0213: use a newer version of ruby"; + ruby_2_4 = throw "deprecated 2019-12: use a newer version of ruby"; + ruby_2_5_0 = throw "deprecated 2018-0213: use a newer version of ruby"; + rubyPackages_2_4 = throw "deprecated 2019-12: use a newer version of rubyPackages instead"; + rubygems = throw "deprecated 2016-03-02: rubygems is now bundled with ruby"; + rxvt_unicode-with-plugins = rxvt-unicode; # added 2020-02-02 + rxvt_unicode = rxvt-unicode-unwrapped; # added 2020-02-02 + urxvt_autocomplete_all_the_things = rxvt-unicode-plugins.autocomplete-all-the-things; # 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_font_size = rxvt-unicode-plugins.font-size; # 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 + urxvt_bidi = rxvt-unicode-plugins.bidi; # added 2020-02-02 + s6Dns = s6-dns; # added 2018-07-23 + s6Networking = s6-networking; # added 2018-07-23 + s6LinuxUtils = s6-linux-utils; # added 2018-07-23 + s6PortableUtils = s6-portable-utils; # added 2018-07-23 + sagemath = sage; # added 2018-10-27 + sam = deadpixi-sam; # added 2018-04-25 + samba3 = throw "Samba 3 is discontinued, please switch to samba4"; # added 2019-10-15 + samba3_light = throw "Samba 3 is discontinued, please switch to samba4"; # added 2019-10-15 + sambaMaster = throw "removed 2019-09-13: outdated and no longer needed"; + samsungUnifiedLinuxDriver = samsung-unified-linux-driver; # added 2016-01-25 + saneBackends = sane-backends; # added 2016-01-02 + saneBackendsGit = sane-backends-git; # added 2016-01-02 + saneFrontends = sane-frontends; # added 2016-01-02 + sapic = throw "deprecated 2019-1-19: sapic is bundled with 'tamarin-prover' now"; + scim = sc-im; # added 2016-01-22 + scollector = bosun; # added 2018-04-25 + 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)"; + shared_mime_info = shared-mime-info; # added 2018-02-25 + skrooge2 = skrooge; # added 2017-02-18 + sky = throw "sky has been removed from nixpkgs (2020-09-16)"; + skype = skypeforlinux; # added 2017-07-27 + skydive = throw "skydive has been removed from nixpkgs (2019-09-10)"; + slack-dark = slack; # added 2020-03-27 + slic3r-prusa3d = prusa-slicer; # added 2019-05-21 + slurm-llnl = slurm; # renamed July 2017 + slurm-llnl-full = slurm-full; # renamed July 2017 + slurm-full = slurm; # added 2018-05-1 + smbclient = samba; # added 2018-04-25 + 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 + sundials_3 = throw "removed 2020-02. outdated and no longer needed"; + + # 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; + + net_snmp = net-snmp; # added 2019-12-21 + oracleXE = throw "oracleXE has been removed, as it's heavily outdated and unmaintained."; # added 2020-10-09 + spaceOrbit = space-orbit; # addewd 2016-05-23 + speech_tools = speech-tools; # added 2018-04-25 + speedtest_cli = speedtest-cli; # added 2015-02-17 + spice_gtk = spice-gtk; # added 2018-02-25 + spice_protocol = spice-protocol; # added 2018-02-25 + spidermonkey_52 = throw "spidermonkey_52 has been removed. Please use spidermonkey_60 instead."; # added 2019-10-16 + spring-boot = spring-boot-cli; # added 2020-04-24 + sqlite3_analyzer = sqlite-analyzer; # added 2018-05-22 + sqliteInteractive = sqlite-interactive; # added 2014-12-06 + squid4 = squid; # added 2019-08-22 + sshfsFuse = sshfs-fuse; # added 2016-09 + suil-qt5 = suil; # added 2018-05-01 + surf-webkit2 = surf; # added 2017-04-02 + sup = throw "deprecated in 2019-09-10: abandoned by upstream"; + swfdec = throw "swfdec has been removed as broken and unmaintained."; # added 2020-08-23 + system_config_printer = system-config-printer; # added 2016-01-03 + systemd-cryptsetup-generator = throw "systemd-cryptsetup-generator is now included in the systemd package"; # added 2020-07-12 + systemd_with_lvm2 = throw "obsolete, enabled by default via the lvm module"; # added 2020-07-12 + systool = sysfsutils; # added 2018-04-25 + tahoelafs = tahoe-lafs; # added 2018-03-26 + tangogps = foxtrotgps; # added 2020-01-26 + telepathy_farstream = telepathy-farstream; # added 2018-02-25 + telepathy_gabble = telepathy-gabble; # added 2018-02-25 + telepathy_glib = telepathy-glib; # added 2018-02-25 + telepathy_haze = telepathy-haze; # added 2018-02-25 + telepathy_idle = telepathy-idle; # added 2018-02-25 + telepathy_logger = telepathy-logger; # added 2018-02-25 + telepathy_mission_control = telepathy-mission-control; # added 2018-02-25 + telepathy-qt = throw "telepathy-qt no longer supports Qt 4. Please use libsForQt5.telepathy instead."; # added 2020-07-02 + telepathy_qt = telepathy-qt; # added 2018-02-25 + telepathy_qt5 = libsForQt5.telepathy; # added 2015-12-19 + telepathy_salut = telepathy-salut; # added 2018-02-25 + telnet = inetutils; # added 2018-05-15 + terraform-provider-ibm = terraform-providers.ibm; # added 2018-09-28 + terraform-provider-libvirt = terraform-providers.libvirt; # added 2018-09-28 + terraform-provider-lxd = terraform-providers.lxd; # added 2020-03-16 + terraform-provider-nixos = terraform-providers.nixos; # added 2018-09-28 + tesseract_4 = tesseract4; # added 2018-12-19 + testdisk-photorec = throw "This package was a duplicate, please use testdisk or testdisk-qt instead"; # added 2019-10-13 + tex-gyre-bonum-math = tex-gyre-math.bonum; # added 2018-04-03 + tex-gyre-pagella-math = tex-gyre-math.pagella; # added 2018-04-03 + tex-gyre-schola-math = tex-gyre-math.schola; # added 2018-04-03 + tex-gyre-termes-math = tex-gyre-math.termes; # added 2018-04-03 + tftp_hpa = tftp-hpa; # added 2015-04-03 + timescale-prometheus = promscale; # added 2020-09-29 + tomcat85 = tomcat8; # added 2020-03-11 + torbrowser = tor-browser-bundle-bin; # added 2017-04-05 + 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 = jing-trang; # added 2018-04-25 + transcribe = throw "transcribe has been removed after being marked a broken for over a year"; # added 2020-09-16 + transmission_gtk = transmission-gtk; # added 2018-01-06 + transmission_remote_gtk = transmission-remote-gtk; # added 2018-01-06 + transmission-remote-cli = "transmission-remote-cli has been removed, as the upstream project has been abandoned. Please use tremc instead"; # added 2020-10-14 + transporter = throw "transporter 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 = veracrypt; # added 2018-10-24 + tshark = wireshark-cli; # added 2018-04-25 + uberwriter = apostrophe; # added 2020-04-23 + ubootBeagleboneBlack = ubootAmx335xEVM; # added 2020-01-21 + ucsFonts = ucs-fonts; # added 2016-07-15 + ultrastardx-beta = ultrastardx; # added 2017-08-12 + usb_modeswitch = usb-modeswitch; # added 2016-05-10 + usbguard-nox = usbguard; # added 2019-09-04 + uzbl = throw "uzbl has been removed from nixpkgs, as it's unmaintained and uses insecure libraries"; + v4l_utils = v4l-utils; # added 2019-08-07 + v8_3_16_14 = throw "removed 2019-11-01: no longer referenced by other packages"; + valadoc = throw "deprecated 2019-10-10: valadoc was merged into vala 0.38"; + vamp = { vampSDK = vamp-plugin-sdk; }; # added 2020-03-26 + vimbWrapper = vimb; # added 2015-01 + 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 + virtviewer = virt-viewer; # added 2015-12-24 + virtmanager = virt-manager; # added 2019-10-29 + virtmanager-qt = virt-manager-qt; # added 2019-10-29 + vorbisTools = vorbis-tools; # added 2016-01-26 + webkit = webkitgtk; # added 2019-03-05 + webkitgtk24x-gtk3 = throw "webkitgtk24x-gtk3 has been removed because it's insecure. Please use webkitgtk."; # added 2019-12-05 + webkitgtk24x-gtk2 = throw "webkitgtk24x-gtk2 has been removed because it's insecure. Please use webkitgtk."; # added 2019-12-05 + weechat-matrix-bridge = weechatScripts.weechat-matrix-bridge; # added 2018-09-06 + wineStaging = wine-staging; # added 2018-01-08 + winusb = woeusb; # added 2017-12-22 + winswitch = throw "winswitch has been removed from nixpkgs."; # added 2019-12-10 + wireguard = wireguard-tools; # added 2018-05-19 + morituri = whipper; # added 2018-09-13 + xp-pen-g430 = pentablet-driver; # added 2020-05-03 + xfceUnstable = xfce4-14; # added 2019-09-17 + xfce4-14 = xfce; + xfce4-12 = throw "xfce4-12 has been replaced by xfce4-14"; # added 2020-03-14 + x11 = xlibsWrapper; # added 2015-09 + xara = throw "xara has been removed from nixpkgs. Unmaintained since 2006"; # added 2020-06-24 + xbmc = kodi; # added 2018-04-25 + xbmcPlain = kodiPlain; # added 2018-04-25 + xbmcPlugins = kodiPlugins; # added 2018-04-25 + xmonad_log_applet_gnome3 = xmonad_log_applet; # added 2018-05-01 + xf86_video_nouveau = xorg.xf86videonouveau; # added 2015-09 + xf86_input_mtrack = throw ("xf86_input_mtrack has been removed from nixpkgs as it hasn't been maintained" + + "and is broken. Working alternatives are libinput and synaptics."); + xf86_input_multitouch = throw "xf86_input_multitouch has been removed from nixpkgs."; # added 2020-01-20 + xlibs = xorg; # added 2015-09 + xpraGtk3 = xpra; # added 2018-09-13 + xv = xxv; # added 2020-02-22 + youtubeDL = youtube-dl; # added 2014-10-26 + ytop = throw "Abandoned by upstream. Consider switching to bottom instead"; + zdfmediathk = mediathekview; # added 2019-01-19 + gnome_user_docs = gnome-user-docs; # added 2019-11-20 + # spidermonkey is not ABI upwards-ompatible, so only allow this for nix-shell + spidermonkey = spidermonkey_78; # added 2020-10-09 + + # TODO(ekleog): add ‘wasm’ alias to ‘ocamlPackages.wasm’ after 19.03 + # branch-off + + # added 2017-05-27 + wineMinimal = winePackages.minimal; + wineFull = winePackages.full; + wineStable = winePackages.stable; + wineUnstable = winePackages.unstable; + + # added 2018-03-26 + libva-full = libva; + libva1-full = libva1; + + # forceSystem should not be used directly in Nixpkgs. + # added 2018-07-16 + forceSystem = system: _: + (import self.path { localSystem = { inherit system; }; }); + callPackage_i686 = pkgsi686Linux.callPackage; + + inherit (ocaml-ng) # added 2016-09-14 + ocamlPackages_4_00_1 ocamlPackages_4_01_0 ocamlPackages_4_02 + ocamlPackages_4_03 + ocamlPackages_latest; + + # added 2019-08-01 + mumble_git = pkgs.mumble; + murmur_git = pkgs.murmur; + + # added 2020-08-17 + zabbix44 = throw "Zabbix 4.4 is end of life, see https://www.zabbix.com/documentation/current/manual/installation/upgrade_notes_500 for details on upgrading to Zabbix 5.0."; + + # 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"; +} // (with ocaml-ng; { # added 2016-09-14 + ocaml_4_00_1 = ocamlPackages_4_00_1.ocaml; + ocaml_4_01_0 = ocamlPackages_4_01_0.ocaml; + ocaml_4_02 = ocamlPackages_4_02.ocaml; + ocaml_4_03 = ocamlPackages_4_03.ocaml; +}) // { + + # added 2019-10-28 + gnatsd = nats-server; + + # added 2020-01-10 + 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. See #77452."; + # 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. See #77452."; + + # added 2020-02-09 + dina-font-pcf = dina-font; + + # added 2019-04-13 + # *-polly pointed to llvmPackages_latest + llvm-polly = throw "clang is now built with polly-plugin by default"; + clang-polly = throw "clang is now built with polly-plugin by default"; + + /* Cleanup before 20.09 */ + oraclejdk8psu = throw '' + The *psu versions of oraclejdk aren't provided by upstream anymore and were therefore removed! + ''; + oraclejre8psu = oraclejdk8psu; + oraclejdk8psu_distro = oraclejdk8psu; + + dnscrypt-proxy = throw "dnscrypt-proxy has been removed. Please use dnscrypt-proxy2."; # added 2020-02-02 + sqldeveloper_18 = throw "sqldeveloper_18 is not maintained anymore!"; # added 2020-02-04 + + gcc-snapshot = throw "Marked as broken for >2 years, additionally this 'snapshot' pointed to a fairly old one from gcc7."; + + /* Cleanup before 21.03 */ + riot-desktop = throw "riot-desktop is now element-desktop!"; + riot-web = throw "riot-web is now element-web"; + + ant-dracula-theme = throw "ant-dracula-theme is now dracula-theme, and theme name is Dracula instead of Ant-Dracula."; + +}) diff --git a/infra/libkookie/nixpkgs/pkgs/top-level/all-packages.nix b/infra/libkookie/nixpkgs/pkgs/top-level/all-packages.nix new file mode 100644 index 000000000000..78b8abba55a6 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/top-level/all-packages.nix @@ -0,0 +1,28318 @@ +/* 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; + +let + self = + builtins.trace '' + It seems that you are using a patched Nixpkgs that references the self + variable in pkgs/top-level/all-packages.nix. This variable was incorrectly + named, so its usage needs attention. Please use pkgs for packages or super + for functions. + '' + res; # Do *NOT* use res in your fork. It will be removed. + + # TODO: turn self into an error + +in +{ + + # 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; extraAttrs.noCC = true; }; + + 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 = 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 { }; + + 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 = makeSetupHook + { deps = [ autoconf automake gettext libtool ]; } + ../build-support/setup-hooks/autoreconf.sh; + + autoreconfHook264 = makeSetupHook + { deps = [ autoconf264 automake111x gettext libtool ]; } + ../build-support/setup-hooks/autoreconf.sh; + + autoPatchelfHook = makeSetupHook { name = "auto-patchelf-hook"; } + ../build-support/setup-hooks/auto-patchelf.sh; + + appimageTools = callPackage ../build-support/appimage { + buildFHSUserEnv = buildFHSUserEnvBubblewrap; + }; + + appindicator-sharp = callPackage ../development/libraries/appindicator-sharp { }; + + 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 { }; + + alda = callPackage ../development/interpreters/alda { }; + + ankisyncd = callPackage ../servers/ankisyncd { }; + + avro-tools = callPackage ../development/tools/avro-tools { }; + + # 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 { }; + + cereal = callPackage ../development/libraries/cereal { }; + + clj-kondo = callPackage ../development/tools/clj-kondo { }; + + cmark = callPackage ../development/libraries/cmark { }; + + cm256cc = callPackage ../development/libraries/cm256cc { }; + + conftest = callPackage ../development/tools/conftest { }; + + corgi = callPackage ../development/tools/corgi { }; + + colorz = callPackage ../tools/misc/colorz { }; + + colorpicker = callPackage ../tools/misc/colorpicker { }; + + comedilib = callPackage ../development/libraries/comedilib { }; + + cpu-x = callPackage ../applications/misc/cpu-x { }; + + dhallToNix = callPackage ../build-support/dhall-to-nix.nix { + inherit dhall-nix; + }; + + deadcode = callPackage ../development/tools/deadcode { }; + + eclipse-mat = callPackage ../development/tools/eclipse-mat { }; + + glade = callPackage ../development/tools/glade { }; + + hobbes = callPackage ../development/tools/hobbes { }; + + html5validator = python36Packages.callPackage ../applications/misc/html5validator { }; + + proto-contrib = callPackage ../development/tools/proto-contrib {}; + + protoc-gen-doc = callPackage ../development/tools/protoc-gen-doc {}; + + ptags = callPackage ../development/tools/misc/ptags { }; + + demoit = callPackage ../servers/demoit { }; + + deviceTree = callPackage ../os-specific/linux/device-tree {}; + + enum4linux = callPackage ../tools/security/enum4linux {}; + + onesixtyone = callPackage ../tools/security/onesixtyone {}; + + creddump = callPackage ../tools/security/creddump {}; + + device-tree_rpi = callPackage ../os-specific/linux/device-tree/raspberrypi.nix {}; + + diffPlugins = (callPackage ../build-support/plugins.nix {}).diffPlugins; + + dieHook = makeSetupHook {} ../build-support/setup-hooks/die.sh; + + archiver = callPackage ../applications/misc/archiver { }; + + digitalbitbox = libsForQt514.callPackage ../applications/misc/digitalbitbox { }; + + grsync = callPackage ../applications/misc/grsync { }; + + dockerTools = callPackage ../build-support/docker { + writePython3 = writers.writePython3; + }; + + 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 { }; + + docui = callPackage ../tools/misc/docui { }; + + dotfiles = callPackage ../applications/misc/dotfiles { }; + + dotnetenv = callPackage ../build-support/dotnetenv { + dotnetfx = dotnetfx40; + }; + + dotnetbuildhelpers = callPackage ../build-support/dotnetbuildhelpers { }; + + dotnetCorePackages = recurseIntoAttrs (callPackage ../development/compilers/dotnet {}); + + dotnet-sdk = dotnetCorePackages.sdk_2_1; + + dotnet-sdk_2 = dotnetCorePackages.sdk_2_1; + + dotnet-sdk_3 = dotnetCorePackages.sdk_3_1; + + dotnet-sdk_5 = dotnetCorePackages.sdk_5_0; + + dotnet-netcore = dotnetCorePackages.netcore_2_1; + + dotnet-aspnetcore = dotnetCorePackages.aspnetcore_2_1; + + 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 { }; + + etBook = callPackage ../data/fonts/et-book { }; + + fet-sh = callPackage ../tools/misc/fet-sh { }; + + fetchbower = callPackage ../build-support/fetchbower { + inherit (nodePackages) bower2nix; + }; + + fetchbzr = callPackage ../build-support/fetchbzr { }; + + fetchcvs = 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; + }; + + fetchgitLocal = callPackage ../build-support/fetchgitlocal { }; + + fetchmtn = callPackage ../build-support/fetchmtn (config.fetchmtn or {}); + + fetchMavenArtifact = callPackage ../build-support/fetchmavenartifact { }; + + prefer-remote-fetch = import ../build-support/prefer-remote-fetch; + + global-platform-pro = callPackage ../development/tools/global-platform-pro/default.nix { }; + + graph-easy = callPackage ../tools/graphics/graph-easy { }; + + packer = callPackage ../development/tools/packer { }; + + packr = callPackage ../development/libraries/packr { }; + + pet = callPackage ../development/tools/pet { }; + + pkger = callPackage ../development/libraries/pkger { }; + + run = callPackage ../development/tools/run { }; + + mod = callPackage ../development/tools/mod { }; + + broadlink-cli = callPackage ../tools/misc/broadlink-cli {}; + + mht2htm = callPackage ../tools/misc/mht2htm { }; + + fetchpatch = callPackage ../build-support/fetchpatch { }; + + fetchs3 = callPackage ../build-support/fetchs3 { }; + + fetchsvn = callPackage ../build-support/fetchsvn { }; + + fetchsvnrevision = import ../build-support/fetchsvnrevision runCommand subversion; + + fetchsvnssh = callPackage ../build-support/fetchsvnssh { }; + + fetchhg = callPackage ../build-support/fetchhg { }; + + # `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.curl.override (old: rec { + # break dependency cycles + fetchurl = stdenv.fetchurlBoot; + zlib = buildPackages.zlib.override { fetchurl = stdenv.fetchurlBoot; }; + pkgconfig = buildPackages.pkgconfig.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; + coreutils = buildPackages.coreutils.override { + fetchurl = stdenv.fetchurlBoot; + inherit perl; + xz = buildPackages.xz.override { fetchurl = stdenv.fetchurlBoot; }; + gmp = null; + aclSupport = false; + attrSupport = false; + }; + inherit perl; + buildPackages = { 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 pkgconfig perl openssl; + keyutils = buildPackages.keyutils.override { fetchurl = stdenv.fetchurlBoot; }; + }; + nghttp2 = buildPackages.nghttp2.override { + fetchurl = stdenv.fetchurlBoot; + inherit zlib pkgconfig 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 { }; + + fetchFromGitHub = callPackage ../build-support/fetchgithub {}; + + fetchFromBitbucket = callPackage ../build-support/fetchbitbucket {}; + + fetchFromSavannah = callPackage ../build-support/fetchsavannah {}; + + fetchFromGitLab = callPackage ../build-support/fetchgitlab {}; + + fetchFromGitiles = callPackage ../build-support/fetchgitiles {}; + + fetchFromRepoOrCz = callPackage ../build-support/fetchrepoorcz {}; + + fetchNuGet = callPackage ../build-support/fetchnuget { }; + buildDotnetPackage = callPackage ../build-support/build-dotnet-package { }; + + fetchgx = callPackage ../build-support/fetchgx { }; + + resolveMirrorURLs = {url}: fetchurl { + showURLs = true; + inherit url; + }; + + installShellFiles = callPackage ../build-support/install-shell-files {}; + + 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 { }; + + makeDesktopItem = callPackage ../build-support/make-desktopitem { }; + + makeAutostartItem = callPackage ../build-support/make-startupitem { }; + + makeInitrd = callPackage ../build-support/kernel/make-initrd.nix; # Args intentionally left out + + makeWrapper = makeSetupHook { deps = [ dieHook ]; substitutions = { shell = pkgs.runtimeShell; }; } + ../build-support/setup-hooks/make-wrapper.sh; + + makeModulesClosure = { kernel, firmware, rootModules, allowMissing ? false }: + callPackage ../build-support/kernel/modules-closure.nix { + inherit kernel firmware rootModules allowMissing; + }; + + mkShell = callPackage ../build-support/mkshell { }; + + nixBufferBuilders = import ../build-support/emacs/buffer.nix { inherit (pkgs) lib writeText; inherit (emacsPackages) inherit-local; }; + + nix-gitignore = callPackage ../build-support/nix-gitignore { }; + + ociTools = callPackage ../build-support/oci-tools { }; + + 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 { }; + + srcOnly = callPackage ../build-support/src-only { }; + + 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 { }; + + referencesByPopularity = callPackage ../build-support/references-by-popularity { }; + + removeReferencesTo = callPackage ../build-support/remove-references-to { }; + + vmTools = callPackage ../build-support/vm { }; + + releaseTools = callPackage ../build-support/release { }; + + inherit (lib.systems) platforms; + + setJavaClassPath = makeSetupHook { } ../build-support/setup-hooks/set-java-classpath.sh; + + fixDarwinDylibNames = makeSetupHook { } ../build-support/setup-hooks/fix-darwin-dylib-names.sh; + + keepBuildTree = makeSetupHook { } ../build-support/setup-hooks/keep-build-tree.sh; + + enableGCOVInstrumentation = makeSetupHook { } ../build-support/setup-hooks/enable-coverage-instrumentation.sh; + + makeGCOVReport = makeSetupHook + { deps = [ pkgs.lcov pkgs.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 { }; + + 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 pkgconfig ]; } + ../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 + + _0x0 = callPackage ../tools/misc/0x0 { }; + + _3llo = callPackage ../tools/misc/3llo { }; + + _3mux = callPackage ../tools/misc/3mux { }; + + _1password = callPackage ../applications/misc/1password { }; + + _1password-gui = callPackage ../tools/security/1password-gui { }; + + _6tunnel = callPackage ../tools/networking/6tunnel { }; + + _9pfs = callPackage ../tools/filesystems/9pfs { }; + + 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 { }; + + acoustidFingerprinter = callPackage ../tools/audio/acoustid-fingerprinter { + ffmpeg = ffmpeg_2; + }; + + 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 { }; + + tuijam = callPackage ../applications/audio/tuijam { inherit (python3Packages) buildPythonApplication; }; + + opnplug = callPackage ../applications/audio/adlplug { + adlplugChip = "-DADLplug_CHIP=OPN2"; + pname = "OPNplug"; + }; + + 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 { }; + + acme-client = callPackage ../tools/networking/acme-client { inherit (darwin) apple_sdk; stdenv = gccStdenv; }; + + amass = callPackage ../tools/networking/amass { }; + + afew = callPackage ../applications/networking/mailreaders/afew { }; + + 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 { }; + + agda-pkg = callPackage ../development/tools/agda-pkg { }; + + agrep = callPackage ../tools/text/agrep { }; + + aha = callPackage ../tools/text/aha { }; + + ahcpd = callPackage ../tools/networking/ahcpd { }; + + aide = callPackage ../tools/security/aide { }; + + aircrack-ng = callPackage ../tools/networking/aircrack-ng { }; + + airfield = callPackage ../tools/networking/airfield { }; + + apache-airflow = with python37.pkgs; toPythonApplication apache-airflow; + + airsonic = callPackage ../servers/misc/airsonic { }; + + airspy = callPackage ../applications/radio/airspy { }; + + airtame = callPackage ../applications/misc/airtame { }; + + aj-snapshot = callPackage ../applications/audio/aj-snapshot { }; + + albert = libsForQt5.callPackage ../applications/misc/albert {}; + + alacritty = callPackage ../applications/misc/alacritty { + inherit (xorg) libXcursor libXxf86vm libXi; + inherit (darwin.apple_sdk.frameworks) AppKit CoreGraphics CoreServices CoreText Foundation OpenGL; + }; + + aldo = callPackage ../applications/radio/aldo { }; + + almanah = callPackage ../applications/misc/almanah { }; + + alpine-make-vm-image = callPackage ../tools/virtualization/alpine-make-vm-image { }; + + amazon-ecs-cli = callPackage ../tools/virtualization/amazon-ecs-cli { }; + + amazon-glacier-cmd-interface = callPackage ../tools/backup/amazon-glacier-cmd-interface { }; + + amber = callPackage ../tools/text/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 {}; + + ansifilter = callPackage ../tools/text/ansifilter {}; + + antora = callPackage ../development/tools/documentation/antora {}; + + apfs-fuse = callPackage ../tools/filesystems/apfs-fuse { }; + + apk-tools = callPackage ../tools/package-management/apk-tools { + lua = lua5_3; + }; + + apktool = callPackage ../development/tools/apktool { + inherit (androidenv.androidPkgs_9_0) build-tools; + }; + + appimage-run = callPackage ../tools/package-management/appimage-run {}; + + 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 { }; + + archivemount = callPackage ../tools/filesystems/archivemount { }; + + 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 {}; + + arduino = arduino-core.override { withGui = true; }; + + arduino-cli = callPackage ../development/arduino/arduino-cli { }; + + arduino-core = callPackage ../development/arduino/arduino-core { }; + + arduino-mk = callPackage ../development/arduino/arduino-mk {}; + + apitrace = libsForQt514.callPackage ../applications/graphics/apitrace {}; + + arguments = callPackage ../development/libraries/arguments { }; + + argus = callPackage ../tools/networking/argus {}; + + argus-clients = callPackage ../tools/networking/argus-clients {}; + + argtable = callPackage ../tools/misc/argtable {}; + + argyllcms = callPackage ../tools/graphics/argyllcms {}; + + arp-scan = callPackage ../tools/misc/arp-scan { }; + + inherit (callPackages ../data/fonts/arphic {}) + arphic-ukai arphic-uming; + + artyFX = callPackage ../applications/audio/artyFX {}; + + 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 {}; + + asls = callPackage ../development/tools/misc/asls { }; + + asymptote = callPackage ../tools/graphics/asymptote { + texLive = texlive.combine { inherit (texlive) scheme-small epsf cm-super texinfo; }; + gsl = gsl_1; + }; + + async = callPackage ../development/tools/async {}; + + atheme = callPackage ../servers/irc/atheme { }; + + atinout = callPackage ../tools/networking/atinout { }; + + atomicparsley = callPackage ../tools/video/atomicparsley { + inherit (darwin.apple_sdk.frameworks) Cocoa; + }; + + autoflake = callPackage ../development/tools/analysis/autoflake { }; + + autospotting = callPackage ../applications/misc/autospotting { }; + + avfs = callPackage ../tools/filesystems/avfs { }; + + aws-iam-authenticator = callPackage ../tools/security/aws-iam-authenticator {}; + + awscli = callPackage ../tools/admin/awscli { }; + + awscli2 = callPackage ../tools/admin/awscli2 { }; + + awsebcli = callPackage ../tools/virtualization/awsebcli {}; + + awslogs = callPackage ../tools/admin/awslogs { }; + + aws-env = callPackage ../tools/admin/aws-env { }; + + aws-google-auth = python3Packages.callPackage ../tools/admin/aws-google-auth { }; + + 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 { python = python3; }; + + aws-vault = callPackage ../tools/admin/aws-vault { }; + + iamy = callPackage ../tools/admin/iamy { }; + + azure-cli = callPackage ../tools/admin/azure-cli { python = python37; }; + + 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/default.nix { }; + + brakeman = callPackage ../development/tools/analysis/brakeman { }; + + brewtarget = libsForQt514.callPackage ../applications/misc/brewtarget { } ; + + boxes = callPackage ../tools/text/boxes { }; + + chamber = callPackage ../tools/admin/chamber { }; + + charm = callPackage ../applications/misc/charm { }; + + ec2_api_tools = callPackage ../tools/virtualization/ec2-api-tools { }; + + ec2_ami_tools = callPackage ../tools/virtualization/ec2-ami-tools { }; + + ec2-utils = callPackage ../tools/virtualization/ec2-utils { }; + + exoscale-cli = callPackage ../tools/admin/exoscale-cli { }; + + altermime = callPackage ../tools/networking/altermime {}; + + alttab = callPackage ../tools/X11/alttab { }; + + amule = callPackage ../tools/networking/p2p/amule { }; + + amuleDaemon = appendToName "daemon" (amule.override { + monolithic = false; + enableDaemon = true; + }); + + amuleGui = appendToName "gui" (amule.override { + monolithic = false; + client = true; + }); + + apg = callPackage ../tools/security/apg { }; + + apt-dater = callPackage ../tools/package-management/apt-dater { }; + + autorevision = callPackage ../tools/misc/autorevision { }; + + automirror = callPackage ../tools/misc/automirror { }; + + barman = python3Packages.callPackage ../tools/misc/barman { }; + + 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 { }; + + bitwarden = callPackage ../tools/security/bitwarden { }; + + inherit (nodePackages) bitwarden-cli; + + bitwarden_rs = callPackage ../tools/security/bitwarden_rs { + inherit (darwin.apple_sdk.frameworks) Security CoreServices; + }; + bitwarden_rs-sqlite = bitwarden_rs; + bitwarden_rs-mysql = bitwarden_rs.override { dbBackend = "mysql"; }; + bitwarden_rs-postgresql = bitwarden_rs.override { dbBackend = "postgresql"; }; + + bitwarden_rs-vault = callPackage ../tools/security/bitwarden_rs/vault.nix { }; + + bmap-tools = callPackage ../tools/misc/bmap-tools { }; + + bonnie = callPackage ../tools/filesystems/bonnie { }; + + bonfire = callPackage ../tools/misc/bonfire { }; + + boulder = callPackage ../tools/admin/boulder { }; + + btrfs-heatmap = callPackage ../tools/filesystems/btrfs-heatmap { }; + + 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; + + bunny = callPackage ../tools/package-management/bunny { }; + + calls = callPackage ../applications/networking/calls { }; + + inherit (nodePackages) castnow; + + certigo = callPackage ../tools/admin/certigo { }; + + 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 { }; + + codeql = callPackage ../development/tools/analysis/codeql { }; + + container-linux-config-transpiler = callPackage ../development/tools/container-linux-config-transpiler { }; + + fedora-coreos-config-transpiler = callPackage ../development/tools/fedora-coreos-config-transpiler { }; + + ccextractor = callPackage ../applications/video/ccextractor { }; + + cconv = callPackage ../tools/text/cconv { }; + + go-check = callPackage ../development/tools/check { }; + + chkcrontab = callPackage ../tools/admin/chkcrontab { }; + + claws = callPackage ../tools/misc/claws { }; + + cloud-custodian = python3Packages.callPackage ../tools/networking/cloud-custodian { }; + + cod = callPackage ../tools/misc/cod { }; + + codespell = with python3Packages; toPythonApplication codespell; + + coolreader = libsForQt5.callPackage ../applications/misc/coolreader {}; + + cozy = callPackage ../applications/audio/cozy-audiobooks { }; + + cpuid = callPackage ../os-specific/linux/cpuid { }; + + 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 { }; + + deltachat-electron = callPackage + ../applications/networking/instant-messengers/deltachat-electron { }; + + deskew = callPackage ../applications/graphics/deskew { }; + + detect-secrets = python3Packages.callPackage ../development/tools/detect-secrets { }; + + diskonaut = callPackage ../tools/misc/diskonaut { }; + + diskus = callPackage ../tools/misc/diskus { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + djmount = callPackage ../tools/filesystems/djmount { }; + + dgsh = callPackage ../shells/dgsh { }; + + dkimpy = with python3Packages; toPythonApplication dkimpy; + + 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 { }; + + ecdsautils = callPackage ../tools/security/ecdsautils { }; + + sedutil = callPackage ../tools/security/sedutil { }; + + elvish = callPackage ../shells/elvish { }; + + emplace = callPackage ../tools/package-management/emplace { }; + + encryptr = callPackage ../tools/security/encryptr { + gconf = gnome2.GConf; + }; + + enchive = callPackage ../tools/security/enchive { }; + + enpass = callPackage ../tools/security/enpass { }; + + 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/default.nix { }; + + fxlinuxprintutil = callPackage ../tools/misc/fxlinuxprintutil { }; + + genpass = callPackage ../tools/security/genpass { + inherit (darwin.apple_sdk.frameworks) CoreFoundation Security; + }; + + genymotion = callPackage ../development/mobile/genymotion { }; + + gaia = callPackage ../development/libraries/gaia { }; + + gama = callPackage ../applications/science/geometry/gama { }; + + 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-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 { }; + + gitless = callPackage ../applications/version-management/gitless { python = python3; }; + + 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; + + goimapnotify = callPackage ../tools/networking/goimapnotify { }; + + gomatrix = callPackage ../applications/misc/gomatrix { }; + + gopacked = callPackage ../applications/misc/gopacked { }; + + gucci = callPackage ../tools/text/gucci { }; + + grc = callPackage ../tools/misc/grc { }; + + green-pdfviewer = callPackage ../applications/misc/green-pdfviewer { + SDL = SDL_sixel; + }; + + gremlin-console = callPackage ../applications/misc/gremlin-console { }; + + grex = callPackage ../tools/misc/grex { }; + + gcsfuse = callPackage ../tools/filesystems/gcsfuse { }; + + glyr = callPackage ../tools/audio/glyr { }; + + google-amber = callPackage ../tools/graphics/amber { }; + + hime = callPackage ../tools/inputmethods/hime {}; + + 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 { }; + + imageworsener = callPackage ../tools/graphics/imageworsener { }; + + imgpatchtools = callPackage ../development/mobile/imgpatchtools { }; + + ipgrep = callPackage ../tools/networking/ipgrep { }; + + lastpass-cli = callPackage ../tools/security/lastpass-cli { }; + + lesspass-cli = callPackage ../tools/security/lesspass-cli { }; + + pacparser = callPackage ../tools/networking/pacparser { }; + + pass = callPackage ../tools/security/pass { }; + + pass-wayland = callPackage ../tools/security/pass { + waylandSupport = true; + pass = pass-wayland; + }; + + passExtensions = recurseIntoAttrs pass.extensions; + + asc-key-to-qr-code-gif = callPackage ../tools/security/asc-key-to-qr-code-gif { }; + + gopass = callPackage ../tools/security/gopass { }; + + 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 { }; + + chunkwm = callPackage ../os-specific/darwin/chunkwm { + inherit (darwin.apple_sdk.frameworks) Carbon Cocoa ScriptingBridge; + }; + + 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 { }; + + 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; + }; + + wiiload = callPackage ../development/tools/wiiload { }; + + wiimms-iso-tools = callPackage ../tools/filesystems/wiimms-iso-tools { }; + + xcodeenv = callPackage ../development/mobile/xcodeenv { }; + + ssh-agents = callPackage ../tools/networking/ssh-agents { }; + + ssh-import-id = python3Packages.callPackage ../tools/admin/ssh-import-id { }; + + 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 { }; + }; + + aria2 = callPackage ../tools/networking/aria2 { + inherit (darwin.apple_sdk.frameworks) Security; + inherit (pythonPackages) sphinx; + }; + aria = aria2; + + asmfmt = callPackage ../development/tools/asmfmt { }; + + aspcud = callPackage ../tools/misc/aspcud { }; + + at = callPackage ../tools/system/at { }; + + atftp = callPackage ../tools/networking/atftp { }; + + 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++ { boost = boost160; }; + + 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; + }; + + azureus = callPackage ../tools/networking/p2p/azureus { + jdk = jdk8; + swt = swt_jdk8; + }; + + b3sum = callPackage ../tools/security/b3sum {}; + + backblaze-b2 = python.pkgs.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 { }; + + badvpn = callPackage ../tools/networking/badvpn {}; + + barcode = callPackage ../tools/graphics/barcode {}; + + bashburn = callPackage ../tools/cd-dvd/bashburn { }; + + bashmount = callPackage ../tools/filesystems/bashmount {}; + + bat = callPackage ../tools/misc/bat { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + bat-extras = recurseIntoAttrs (callPackages ../tools/misc/bat-extras { }); + + bc = callPackage ../tools/misc/bc { }; + + bdf2psf = callPackage ../tools/misc/bdf2psf { }; + + bdf2sfd = callPackage ../tools/misc/bdf2sfd { }; + + bcat = callPackage ../tools/text/bcat {}; + + 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 + journalbeat7; + + 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 { }; + + birdtray = libsForQt514.callPackage ../applications/misc/birdtray { }; + + bitbucket-cli = python2Packages.bitbucket-cli; + + blink = libsForQt5.callPackage ../applications/networking/instant-messengers/blink { }; + + blockbook = callPackage ../servers/blockbook { }; + + blockhash = callPackage ../tools/graphics/blockhash { }; + + bluemix-cli = callPackage ../tools/admin/bluemix-cli { }; + + blur-effect = callPackage ../tools/graphics/blur-effect { }; + + 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 = pkgs.config.cudaSupport or false; + inherit (linuxPackages) nvidia_x11; + cudatoolkit = cudatoolkit_10_0; + cudnn = cudnn_cudatoolkit_10_0; + }; + + libtensorflow = + if python.pkgs.tensorflow ? libtensorflow + then python.pkgs.tensorflow.libtensorflow + else libtensorflow-bin; + + libtorch-bin = callPackage ../development/libraries/science/math/libtorch/bin.nix { + inherit (linuxPackages) nvidia_x11; + cudaSupport = pkgs.config.cudaSupport or false; + }; + + behdad-fonts = callPackage ../data/fonts/behdad-fonts { }; + + 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 { }; + + bochs = callPackage ../applications/virtualization/bochs { }; + + bubblewrap = callPackage ../tools/admin/bubblewrap { }; + + borgbackup = callPackage ../tools/backup/borg { }; + + boringtun = callPackage ../tools/networking/boringtun { }; + + boomerang = libsForQt512.callPackage ../development/tools/boomerang { }; + + boost-build = callPackage ../development/tools/boost-build { }; + + boot = callPackage ../development/tools/build-managers/boot { }; + + bowtie2 = callPackage ../applications/science/biology/bowtie2 { }; + + boxfs = callPackage ../tools/filesystems/boxfs { }; + + 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; + }; + + bruteforce-luks = callPackage ../tools/security/bruteforce-luks { }; + + brutespray = callPackage ../tools/security/brutespray { }; + + breakpointHook = assert stdenv.isLinux; + makeSetupHook { } ../build-support/setup-hooks/breakpoint-hook.sh; + + bsod = callPackage ../misc/emulators/bsod { }; + + btrfs-progs = callPackage ../tools/filesystems/btrfs-progs { }; + + btrbk = callPackage ../tools/backup/btrbk { + asciidoc = asciidoc-full; + }; + + buildpack = callPackage ../development/tools/buildpack { }; + + buildtorrent = callPackage ../tools/misc/buildtorrent { }; + + bustle = haskellPackages.bustle; + + buttersink = callPackage ../tools/filesystems/buttersink { }; + + bwm_ng = callPackage ../tools/networking/bwm-ng { }; + + 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 {}; + + c3d = callPackage ../applications/graphics/c3d { + inherit (darwin.apple_sdk.frameworks) Cocoa; + }; + + cue2pops = callPackage ../tools/cd-dvd/cue2pops { }; + + cabal2nix-unwrapped = haskell.lib.justStaticExecutables (haskell.lib.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) (drv: { + executableToolDepends = [ makeWrapper ]; + postInstall = '' + wrapProgram $out/bin/stack2nix \ + --prefix PATH ":" "${git}/bin:${cabal-install}/bin" + ''; + }); + + caddy = callPackage ../servers/caddy { }; + + traefik = callPackage ../servers/traefik { }; + + calamares = libsForQt514.callPackage ../tools/misc/calamares { + python = python3; + boost = pkgs.boost.override { python = python3; }; + }; + + candle = libsForQt5.callPackage ../applications/misc/candle { }; + + capstone = callPackage ../development/libraries/capstone { }; + unicorn-emu = callPackage ../development/libraries/unicorn-emu { }; + + 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 { }; + + cawbird = callPackage ../applications/networking/cawbird { }; + + cde = callPackage ../tools/package-management/cde { }; + + cdemu-daemon = callPackage ../misc/emulators/cdemu/daemon.nix { }; + + cdemu-client = callPackage ../misc/emulators/cdemu/client.nix { }; + + ceres-solver = callPackage ../development/libraries/ceres-solver { + gflags = null; # only required for examples/tests + }; + + gcdemu = callPackage ../misc/emulators/cdemu/gui.nix { }; + + image-analyzer = callPackage ../misc/emulators/cdemu/analyzer.nix { }; + + cbor-diag = callPackage ../development/tools/cbor-diag { }; + + ccnet = callPackage ../tools/networking/ccnet { }; + + cassowary = callPackage ../tools/networking/cassowary { }; + + croc = callPackage ../tools/networking/croc { }; + + cddl = callPackage ../development/tools/cddl { }; + + cedille = callPackage ../applications/science/logic/cedille + { inherit (haskellPackages) alex happy Agda ghcWithPackages; + }; + + cfdyndns = callPackage ../applications/networking/dyndns/cfdyndns { }; + + charliecloud = callPackage ../applications/virtualization/charliecloud { }; + + chelf = callPackage ../tools/misc/chelf { }; + + cht-sh = callPackage ../tools/misc/cht.sh { }; + + ckbcomp = callPackage ../tools/X11/ckbcomp { }; + + clac = callPackage ../tools/misc/clac {}; + + clash = callPackage ../tools/networking/clash { }; + + clasp = callPackage ../tools/misc/clasp { }; + + clevis = callPackage ../tools/security/clevis { + asciidoc = asciidoc-full; + }; + + cli53 = callPackage ../tools/admin/cli53 { }; + + cli-visualizer = callPackage ../applications/misc/cli-visualizer { }; + + clog-cli = callPackage ../development/tools/clog-cli { }; + + cloud-init = python3.pkgs.callPackage ../tools/virtualization/cloud-init { }; + + 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 { }; + + coloredlogs = with python3Packages; toPythonApplication coloredlogs; + + colord-kde = libsForQt5.callPackage ../tools/misc/colord-kde {}; + + colpack = callPackage ../applications/science/math/colpack { }; + + commitizen = callPackage ../applications/version-management/commitizen {}; + + 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 { }; + + cherrytree = callPackage ../applications/misc/cherrytree { }; + + chntpw = callPackage ../tools/security/chntpw { }; + + clipman = callPackage ../tools/misc/clipman { }; + + clipster = callPackage ../tools/misc/clipster { }; + + contrast = callPackage ../applications/accessibility/contrast { }; + + cplex = callPackage ../applications/science/math/cplex (config.cplex or {}); + + cpulimit = callPackage ../tools/misc/cpulimit { }; + + 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 {}; + + 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 { }; + + csvkit = callPackage ../tools/text/csvkit { }; + + csv2latex = callPackage ../tools/misc/csv2latex { }; + + csvs-to-sqlite = with python3Packages; toPythonApplication csvs-to-sqlite; + + cucumber = callPackage ../development/tools/cucumber {}; + + dabtools = callPackage ../applications/radio/dabtools { }; + + daemontools = callPackage ../tools/admin/daemontools { }; + + dale = callPackage ../development/compilers/dale { }; + + dante = callPackage ../servers/dante { }; + + dapr-cli = callPackage ../development/tools/dapr/cli {}; + + dasher = callPackage ../applications/accessibility/dasher { }; + + datamash = callPackage ../tools/misc/datamash { }; + + datasette = with python3Packages; toPythonApplication datasette; + + howard-hinnant-date = callPackage ../development/libraries/howard-hinnant-date { }; + + datefudge = callPackage ../tools/system/datefudge { }; + + dateutils = callPackage ../tools/misc/dateutils { }; + + datovka = libsForQt5.callPackage ../applications/networking/datovka { }; + + dconf = callPackage ../development/libraries/dconf { }; + + dcw-gmt = callPackage ../applications/gis/gmt/dcw.nix { }; + + ddar = callPackage ../tools/backup/ddar { }; + + ddate = callPackage ../tools/misc/ddate { }; + + dedup = callPackage ../tools/backup/dedup { }; + + dehydrated = callPackage ../tools/admin/dehydrated { }; + + deis = callPackage ../development/tools/deis {}; + + deisctl = callPackage ../development/tools/deisctl {}; + + 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 {}; + + diagrams-builder = callPackage ../tools/graphics/diagrams-builder { + inherit (haskellPackages) ghcWithPackages diagrams-builder; + }; + + dialog = callPackage ../development/tools/misc/dialog { }; + + dibbler = callPackage ../tools/networking/dibbler { }; + + diesel-cli = callPackage ../development/tools/diesel-cli { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + 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 { }; + + discocss = callPackage ../tools/misc/discocss { }; + + 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 { }; + + dlx = callPackage ../misc/emulators/dlx { }; + + doitlive = callPackage ../tools/misc/doitlive { }; + + dokuwiki = callPackage ../servers/web-apps/dokuwiki { }; + + doppler = callPackage ../tools/security/doppler {}; + + dosage = callPackage ../applications/graphics/dosage { }; + + dot-merlin-reader = callPackage ../development/tools/ocaml/merlin/dot-merlin-reader.nix { }; + + dozenal = callPackage ../applications/misc/dozenal { }; + + dpic = callPackage ../tools/graphics/dpic { }; + + dragon-drop = callPackage ../tools/X11/dragon-drop { + gtk = gtk3; + }; + + dsvpn = callPackage ../applications/networking/dsvpn { }; + + dtools = callPackage ../development/tools/dtools { }; + + dtrx = callPackage ../tools/compression/dtrx { }; + + dua = callPackage ../tools/misc/dua { }; + + duf = callPackage ../tools/misc/duf { }; + + inherit (ocamlPackages) dune dune_2 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; + }; + + dylibbundler = callPackage ../tools/misc/dylibbundler { }; + + dynamic-colors = callPackage ../tools/misc/dynamic-colors { }; + + dyncall = callPackage ../development/libraries/dyncall { }; + + 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 { }; + + eggdrop = callPackage ../tools/networking/eggdrop { }; + + eksctl = callPackage ../tools/admin/eksctl { }; + + electronplayer = callPackage ../applications/video/electronplayer/electronplayer.nix { }; + + element-desktop = callPackage ../applications/networking/instant-messengers/element/element-desktop.nix { }; + + 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 { }; + + 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 {}; + + 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 { }; + + facter = callPackage ../tools/system/facter { }; + + fasd = callPackage ../tools/misc/fasd { }; + + fastJson = callPackage ../development/libraries/fastjson { }; + + fast-cli = nodePackages.fast-cli; + + 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 { }; + + firecracker = callPackage ../applications/virtualization/firecracker { }; + + firectl = callPackage ../applications/virtualization/firectl { }; + + firestarter = callPackage ../applications/misc/firestarter { }; + + fselect = callPackage ../tools/misc/fselect { }; + + fsmon = callPackage ../tools/misc/fsmon { }; + + 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.justStaticExecutables haskellPackages.futhark; + + tllist = callPackage ../development/libraries/tllist { }; + + fcft = callPackage ../development/libraries/fcft { }; + + fuzzel = callPackage ../applications/misc/fuzzel { }; + + flashfocus = python3Packages.callPackage ../misc/flashfocus { }; + + qt-video-wlr = libsForQt5.callPackage ../applications/misc/qt-video-wlr { }; + + fwup = callPackage ../tools/misc/fwup { }; + + 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 { }; + + gbsplay = callPackage ../applications/audio/gbsplay { }; + + gdrivefs = python27Packages.gdrivefs; + + gdrive = callPackage ../applications/networking/gdrive { }; + + 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 { }; + + geekbench = callPackage ../tools/misc/geekbench { }; + + gencfsm = callPackage ../tools/security/gencfsm { }; + + genromfs = callPackage ../tools/filesystems/genromfs { }; + + gh-ost = callPackage ../tools/misc/gh-ost { }; + + ghidra-bin = callPackage ../tools/security/ghidra { }; + + gif-for-cli = callPackage ../tools/misc/gif-for-cli { }; + + gir-rs = callPackage ../development/tools/gir { }; + + gist = callPackage ../tools/text/gist { }; + + 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; + }; + + goa = callPackage ../development/tools/goa { }; + + gohai = callPackage ../tools/system/gohai { }; + + gorilla-bin = callPackage ../tools/security/gorilla-bin { }; + + godu = callPackage ../tools/misc/godu { }; + + gosu = callPackage ../tools/misc/gosu { }; + + gotify-cli = callPackage ../tools/misc/gotify-cli { }; + + gping = callPackage ../tools/networking/gping { }; + + greg = callPackage ../applications/audio/greg { + pythonPackages = python3Packages; + }; + + grim = callPackage ../tools/graphics/grim { }; + + gringo = callPackage ../tools/misc/gringo { }; + + grobi = callPackage ../tools/X11/grobi { + buildGoModule = buildGo114Module; + }; + + 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 { }; + + hocr-tools = with python3Packages; toPythonApplication hocr-tools; + + home-manager = callPackage ../tools/package-management/home-manager {}; + + hostsblock = callPackage ../tools/misc/hostsblock { }; + + 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 {}; + + ifm = callPackage ../tools/graphics/ifm {}; + + interlock = callPackage ../servers/interlock {}; + + jellyfin = callPackage ../servers/jellyfin { }; + + jellyfin_10_5 = callPackage ../servers/jellyfin/10.5.x.nix { }; + + jellyfin-mpv-shim = python3Packages.callPackage ../applications/video/jellyfin-mpv-shim { }; + + jotta-cli = callPackage ../applications/misc/jotta-cli { }; + + jwt-cli = callPackage ../tools/security/jwt-cli { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + kapacitor = callPackage ../servers/monitoring/kapacitor { }; + + kisslicer = callPackage ../tools/misc/kisslicer { }; + + klaus = with python3Packages; toPythonApplication klaus; + + kramdown-rfc2629 = callPackage ../tools/text/kramdown-rfc2629 { }; + + klipper = callPackage ../servers/klipper { }; + + lcdproc = callPackage ../servers/monitoring/lcdproc { }; + + languagetool = callPackage ../tools/text/languagetool { }; + + lepton = callPackage ../tools/graphics/lepton { }; + + lexicon = callPackage ../tools/admin/lexicon { }; + + lief = callPackage ../development/libraries/lief {}; + + libndtypes = callPackage ../development/libraries/libndtypes { }; + + libxnd = callPackage ../development/libraries/libxnd { }; + + link-grammar = callPackage ../tools/text/link-grammar { }; + + linuxptp = callPackage ../os-specific/linux/linuxptp { }; + + lite = callPackage ../applications/editors/lite { }; + + 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 { }; + + 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 { }; + + mapproxy = callPackage ../applications/misc/mapproxy { }; + + marlin-calc = callPackage ../tools/misc/marlin-calc {}; + + masscan = callPackage ../tools/security/masscan { + stdenv = gccStdenv; + }; + + massren = callPackage ../tools/misc/massren { }; + + maxcso = callPackage ../tools/archivers/maxcso {}; + + medusa = callPackage ../tools/security/medusa { }; + + megasync = libsForQt514.callPackage ../applications/misc/megasync { }; + + megacmd = callPackage ../applications/misc/megacmd { }; + + meritous = callPackage ../games/meritous { }; + + opendune = callPackage ../games/opendune { }; + + 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 { }; + + mididings = callPackage ../tools/audio/mididings { }; + + 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 { }; + + molly-brown = callPackage ../servers/gemini/molly-brown { }; + + monetdb = callPackage ../servers/sql/monetdb { }; + + mons = callPackage ../tools/misc/mons {}; + + mousetweaks = callPackage ../applications/accessibility/mousetweaks { + inherit (pkgs.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-mpris = callPackage ../tools/audio/mpd-mpris { }; + + mq-cli = callPackage ../tools/system/mq-cli { }; + + nextdns = callPackage ../applications/networking/nextdns { }; + + nfdump = callPackage ../tools/networking/nfdump { }; + + nfstrace = callPackage ../tools/networking/nfstrace { }; + + nix-direnv = callPackage ../tools/misc/nix-direnv { }; + + nix-output-monitor = haskell.lib.justStaticExecutables (haskellPackages.nix-output-monitor); + + nix-template = callPackage ../tools/package-management/nix-template { }; + + nixpkgs-pytools = with python3.pkgs; toPythonApplication nixpkgs-pytools; + + noteshrink = callPackage ../tools/misc/noteshrink { }; + + noti = callPackage ../tools/misc/noti { + inherit (darwin.apple_sdk.frameworks) Cocoa; + }; + + nrsc5 = callPackage ../applications/misc/nrsc5 { }; + + nwipe = callPackage ../tools/security/nwipe { }; + + nx-libs = callPackage ../tools/X11/nx-libs { }; + + nyx = callPackage ../tools/networking/nyx { }; + + ocrmypdf = callPackage ../tools/text/ocrmypdf { }; + + onboard = callPackage ../applications/misc/onboard { }; + + oneshot = callPackage ../tools/networking/oneshot { }; + + onnxruntime = callPackage ../development/libraries/onnxruntime { }; + + xkbd = callPackage ../applications/misc/xkbd { }; + + libpsm2 = callPackage ../os-specific/linux/libpsm2 { }; + + optar = callPackage ../tools/graphics/optar {}; + + obinskit = callPackage ../applications/misc/obinskit {}; + + odafileconverter = libsForQt5.callPackage ../applications/graphics/odafileconverter {}; + + pastel = callPackage ../applications/misc/pastel { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + patdiff = callPackage ../tools/misc/patdiff { }; + + pbpst = callPackage ../applications/misc/pbpst { }; + + pbzx = callPackage ../tools/compression/pbzx { }; + + persepolis = python3Packages.callPackage ../tools/networking/persepolis { + wrapQtAppsHook = qt5.wrapQtAppsHook; + }; + + pev = callPackage ../development/tools/analysis/pev { }; + + phoronix-test-suite = callPackage ../tools/misc/phoronix-test-suite { }; + + photon = callPackage ../tools/networking/photon { }; + + playerctl = callPackage ../tools/audio/playerctl { }; + + ps_mem = callPackage ../tools/system/ps_mem { }; + + psstop = callPackage ../tools/system/psstop { }; + + precice = callPackage ../development/libraries/precice { python3 = python37; }; + + pueue = callPackage ../applications/misc/pueue { }; + + pixiecore = callPackage ../tools/networking/pixiecore {}; + + pyCA = python3Packages.callPackage ../applications/video/pyca {}; + + pyrit = callPackage ../tools/security/pyrit {}; + + pyznap = python3Packages.callPackage ../tools/backup/pyznap {}; + + procs = callPackage ../tools/admin/procs { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + psrecord = python3Packages.callPackage ../tools/misc/psrecord {}; + + rmapi = callPackage ../applications/misc/remarkable/rmapi { }; + + remarkable-mouse = python3Packages.callPackage ../applications/misc/remarkable/remarkable-mouse { }; + + ryujinx = callPackage ../misc/emulators/ryujinx { }; + + scour = with python3Packages; toPythonApplication scour; + + s2png = callPackage ../tools/graphics/s2png { }; + + shab = callPackage ../tools/text/shab { }; + + shell-hist = callPackage ../tools/misc/shell-hist { }; + + simg2img = callPackage ../tools/filesystems/simg2img { }; + + simplenes = callPackage ../misc/emulators/simplenes { }; + + snipes = callPackage ../games/snipes { }; + + snippetpixie = callPackage ../tools/text/snippetpixie { }; + + socklog = callPackage ../tools/system/socklog { }; + + stagit = callPackage ../development/tools/stagit { }; + + starboard = callPackage ../applications/networking/cluster/starboard { }; + + statserial = callPackage ../tools/misc/statserial { }; + + step-ca = callPackage ../tools/security/step-ca { }; + + 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 { }; + + syscall_limiter = callPackage ../os-specific/linux/syscall_limiter {}; + + syslogng = callPackage ../tools/system/syslog-ng { }; + + syslogng_incubator = callPackage ../tools/system/syslog-ng-incubator { }; + + inherit (callPackages ../servers/rainloop { }) + rainloop-community + rainloop-standard; + + rav1e = callPackage ../tools/video/rav1e { }; + + razergenie = libsForQt5.callPackage ../applications/misc/razergenie { }; + + ring-daemon = callPackage ../applications/networking/instant-messengers/ring-daemon { }; + + 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 { }; + + 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; + }; + + xmlsort = perlPackages.XMLFilterSort; + + xmousepasteblock = callPackage ../tools/X11/xmousepasteblock { }; + + mar1d = callPackage ../games/mar1d { } ; + + mcrypt = callPackage ../tools/misc/mcrypt { }; + + 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 { }; + + mcelog = callPackage ../os-specific/linux/mcelog { + utillinux = utillinuxMinimal; + }; + + 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 { }; + + arping = callPackage ../tools/networking/arping { }; + + arpoison = callPackage ../tools/networking/arpoison { }; + + asciidoc = callPackage ../tools/typesetting/asciidoc { + inherit (python2Packages) matplotlib numpy aafigure recursivePthLoader; + w3m = w3m-batch; + enableStandardFeatures = false; + }; + + asciidoc-full = appendToName "full" (asciidoc.override { + inherit (python2Packages) pygments; + texlive = texlive.combine { inherit (texlive) scheme-minimal dvipng; }; + enableStandardFeatures = true; + }); + + asciidoc-full-with-plugins = appendToName "full-with-plugins" (asciidoc.override { + inherit (python2Packages) pygments; + texlive = texlive.combine { inherit (texlive) scheme-minimal dvipng; }; + enableStandardFeatures = true; + enableExtraPlugins = true; + }); + + asciidoctor = callPackage ../tools/typesetting/asciidoctor { + # kindlegen is unfree, don't enable by default + kindlegen = null; + # epubcheck pulls in Java, which is problematic on some platforms + epubcheck = null; + }; + + 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 { }; + + 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 { }; + + beets = callPackage ../tools/audio/beets { + pythonPackages = python3Packages; + }; + + bento4 = callPackage ../tools/video/bento4 { }; + + bepasty = callPackage ../tools/misc/bepasty { }; + + bettercap = callPackage ../tools/security/bettercap { }; + + bfg-repo-cleaner = gitAndTools.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 { }; + + birdfont = callPackage ../tools/misc/birdfont { }; + xmlbird = callPackage ../tools/misc/birdfont/xmlbird.nix { stdenv = gccStdenv; }; + + blastem = callPackage ../misc/emulators/blastem { + inherit (python27Packages) pillow; + }; + + 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 { }; + + bsdbuild = callPackage ../development/tools/misc/bsdbuild { }; + + bsdiff = callPackage ../tools/compression/bsdiff { }; + + btar = callPackage ../tools/backup/btar { + librsync = librsync_0_9; + }; + + bud = callPackage ../tools/networking/bud { + inherit (pythonPackages) gyp; + }; + + bup = callPackage ../tools/backup/bup { }; + + burp = callPackage ../tools/backup/burp { }; + + buku = callPackage ../applications/misc/buku { }; + + byzanz = callPackage ../applications/video/byzanz {}; + + ori = callPackage ../tools/backup/ori { }; + + anydesk = callPackage ../applications/networking/remote/anydesk { }; + + atool = callPackage ../tools/archivers/atool { }; + + bash_unit = callPackage ../tools/misc/bash_unit { }; + + 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 { + openssl = openssl_1_0_2; + }; + + davix = callPackage ../tools/networking/davix { }; + + cantata = libsForQt5.callPackage ../applications/audio/cantata { }; + + 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 { }; + + 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 { }; + + isolyzer = callPackage ../tools/cd-dvd/isolyzer { }; + + isomd5sum = callPackage ../tools/cd-dvd/isomd5sum { }; + + mdf2iso = callPackage ../tools/cd-dvd/mdf2iso { }; + + nrg2iso = callPackage ../tools/cd-dvd/nrg2iso { }; + + libceph = ceph.lib; + inherit (callPackages ../tools/filesystems/ceph { + boost = boost16x.override { enablePython = true; python = python38; }; + }) + ceph + ceph-client; + ceph-dev = ceph; + + inherit (callPackages ../tools/security/certmgr { }) + certmgr certmgr-selfsigned; + + cfdg = callPackage ../tools/graphics/cfdg { }; + + checkinstall = callPackage ../tools/package-management/checkinstall { }; + + 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 { }; + + cipherscan = callPackage ../tools/security/cipherscan { + openssl = if stdenv.hostPlatform.system == "x86_64-linux" + then openssl-chacha + else openssl; + }; + + cjdns = callPackage ../tools/networking/cjdns { }; + + 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 ]; + }; + + clementineUnfree = clementine.unfree; + + mellowplayer = libsForQt514.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_20_09_0; + + inherit (callPackage ../applications/networking/remote/citrix-workspace { }) + citrix_workspace_19_6_0 + citrix_workspace_19_8_0 + citrix_workspace_19_10_0 + citrix_workspace_19_12_0 + citrix_workspace_20_04_0 + citrix_workspace_20_06_0 + citrix_workspace_20_09_0 + ; + + citra = libsForQt5.callPackage ../misc/emulators/citra { }; + + cmigemo = callPackage ../tools/text/cmigemo { }; + + cmst = libsForQt5.callPackage ../tools/networking/cmst { }; + + cmt = callPackage ../applications/audio/cmt {}; + + codimd = callPackage ../servers/web-apps/codimd { + nodejs = nodejs-12_x; + }; + + colord = callPackage ../tools/misc/colord { }; + + colord-gtk = callPackage ../tools/misc/colord-gtk { }; + + colordiff = callPackage ../tools/text/colordiff { }; + + concurrencykit = callPackage ../development/libraries/concurrencykit { }; + + 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-0; # not compatible with >= 0.4.0 yet + jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + + collectd-data = callPackage ../tools/system/collectd/data.nix { }; + + colormake = callPackage ../development/tools/build-managers/colormake { }; + + cpuminer = callPackage ../tools/misc/cpuminer { }; + + cpuminer-multi = callPackage ../tools/misc/cpuminer-multi { }; + + cryptpad = callPackage ../servers/web-apps/cryptpad { }; + + ethash = callPackage ../development/libraries/ethash { }; + + ethminer = callPackage ../tools/misc/ethminer { }; + + cuetools = callPackage ../tools/cd-dvd/cuetools { }; + + u3-tool = callPackage ../tools/filesystems/u3-tool { }; + + unifdef = callPackage ../development/tools/misc/unifdef { }; + + unionfs-fuse = callPackage ../tools/filesystems/unionfs-fuse { }; + + usb-modeswitch = callPackage ../development/tools/misc/usb-modeswitch { }; + usb-modeswitch-data = callPackage ../development/tools/misc/usb-modeswitch/data.nix { }; + + anthy = callPackage ../tools/inputmethods/anthy { }; + + evdevremapkeys = callPackage ../tools/inputmethods/evdevremapkeys { }; + + gebaar-libinput = callPackage ../tools/inputmethods/gebaar-libinput { }; + + libpinyin = callPackage ../development/libraries/libpinyin { }; + + libskk = callPackage ../development/libraries/libskk { + inherit (gnome3) 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; + }; + + skktools = callPackage ../tools/inputmethods/skk/skktools { }; + skk-dicts = callPackage ../tools/inputmethods/skk/skk-dicts { }; + + libkkc-data = callPackage ../data/misc/libkkc-data { + inherit (pythonPackages) marisa; + }; + + 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 { }; + + m17n = callPackage ../tools/inputmethods/ibus-engines/ibus-m17n { }; + + mozc = callPackage ../tools/inputmethods/ibus-engines/ibus-mozc { + python = python2; + inherit (python2Packages) gyp; + protobuf = pkgs.protobuf3_8.overrideDerivation (oldAttrs: { stdenv = clangStdenv; }); + }; + + 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 { }; + + interception-tools = callPackage ../tools/inputmethods/interception-tools { }; + interception-tools-plugins = { + caps2esc = callPackage ../tools/inputmethods/interception-tools/caps2esc.nix { }; + }; + + age = callPackage ../tools/security/age { }; + + brotli = callPackage ../tools/compression/brotli { }; + + biosdevname = callPackage ../tools/networking/biosdevname { }; + + code-browser-qt = libsForQt5.callPackage ../applications/editors/code-browser { withQt = true; + }; + code-browser-gtk = callPackage ../applications/editors/code-browser { withGtk = true; + qtbase = qt5.qtbase; + }; + + c14 = callPackage ../applications/networking/c14 { }; + + certstrap = callPackage ../tools/security/certstrap { }; + + cfssl = callPackage ../tools/security/cfssl { }; + + chafa = callPackage ../tools/misc/chafa { }; + + checkbashisms = callPackage ../development/tools/misc/checkbashisms { }; + + 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 { }; + + cocoapods = callPackage ../development/mobile/cocoapods { }; + + cocoapods-beta = lowPrio (callPackage ../development/mobile/cocoapods { beta = true; }); + + codebraid = callPackage ../tools/misc/codebraid { }; + + compass = callPackage ../development/tools/compass { }; + + conda = callPackage ../tools/package-management/conda { }; + + console-bridge = callPackage ../development/libraries/console-bridge { }; + + convmv = callPackage ../tools/misc/convmv { }; + + convoy = callPackage ../tools/filesystems/convoy { }; + + cpcfs = callPackage ../tools/filesystems/cpcfs { }; + + cool-retro-term = libsForQt5.callPackage ../applications/misc/cool-retro-term { }; + + 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 { }; + + crackxls = callPackage ../tools/security/crackxls { }; + + 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_6 + cudatoolkit_6_5 + cudatoolkit_7 + cudatoolkit_7_5 + cudatoolkit_8 + cudatoolkit_9 + cudatoolkit_9_0 + cudatoolkit_9_1 + cudatoolkit_9_2 + cudatoolkit_10 + cudatoolkit_10_0 + cudatoolkit_10_1 + cudatoolkit_10_2 + cudatoolkit_11 + cudatoolkit_11_0; + + cudatoolkit = cudatoolkit_10; + + cudnnPackages = callPackages ../development/libraries/science/math/cudnn { }; + inherit (cudnnPackages) + cudnn_cudatoolkit_7 + cudnn_cudatoolkit_7_5 + cudnn6_cudatoolkit_8 + cudnn_cudatoolkit_8 + cudnn_cudatoolkit_9 + cudnn_cudatoolkit_9_0 + cudnn_cudatoolkit_9_1 + cudnn_cudatoolkit_9_2 + cudnn_cudatoolkit_10 + cudnn_cudatoolkit_10_0 + cudnn_cudatoolkit_10_1 + cudnn_cudatoolkit_10_2 + cudnn_cudatoolkit_11 + cudnn_cudatoolkit_11_0; + + cudnn = cudnn_cudatoolkit_10; + + curlFull = curl.override { + idnSupport = true; + ldapSupport = true; + gssSupport = true; + brotliSupport = true; + }; + + curl = 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 { }; + + cutter = callPackage ../tools/networking/cutter { }; + + cwebbin = callPackage ../development/tools/misc/cwebbin { }; + + 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 { }; + + 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 { }; + + dbench = callPackage ../development/tools/misc/dbench { }; + + dclxvi = callPackage ../development/libraries/dclxvi { }; + + dconf2nix = callPackage ../development/tools/haskell/dconf2nix { }; + + dcraw = callPackage ../tools/graphics/dcraw { }; + + dcfldd = callPackage ../tools/system/dcfldd { }; + + debianutils = callPackage ../tools/misc/debianutils { }; + + debian-devscripts = callPackage ../tools/misc/debian-devscripts { }; + + debootstrap = callPackage ../tools/misc/debootstrap { }; + + deer = callPackage ../shells/zsh/zsh-deer { }; + + deno = callPackage ../development/web/deno { + inherit (darwin.apple_sdk.frameworks) Security CoreServices; + }; + + 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/2 { + pythonPackages = python3Packages; + libtorrentRasterbar = libtorrentRasterbar.override { python = python3; }; + }; + deluge-1_x = callPackage ../applications/networking/p2p/deluge/1 { + pythonPackages = python2Packages; + libtorrentRasterbar = libtorrentRasterbar-1_1_x; + }; + 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 { }; + + dnsproxy = callPackage ../tools/networking/dnsproxy { }; + + dnsperf = callPackage ../tools/networking/dnsperf { }; + + dnsrecon = callPackage ../tools/security/dnsrecon { }; + + dnstop = callPackage ../tools/networking/dnstop { }; + + 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 { }; + + diffoscope = callPackage ../tools/misc/diffoscope { + inherit (androidenv.androidPkgs_9_0) build-tools; + jdk = jdk8; + }; + + diffr = callPackage ../tools/text/diffr { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + diffstat = callPackage ../tools/text/diffstat { }; + + diffutils = callPackage ../tools/text/diffutils { }; + + dir2opus = callPackage ../tools/audio/dir2opus { + inherit (pythonPackages) mutagen python wrapPython; + }; + + picotts = callPackage ../tools/audio/picotts { }; + + wgetpaste = callPackage ../tools/text/wgetpaste { }; + + dirmngr = callPackage ../tools/security/dirmngr { }; + + 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 { }; + + 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 { }; + + docbookrx = callPackage ../tools/typesetting/docbookrx { }; + + docear = callPackage ../applications/office/docear { }; + + dockbarx = callPackage ../applications/misc/dockbarx { }; + + dog = callPackage ../tools/system/dog { }; + + dosfstools = callPackage ../tools/filesystems/dosfstools { }; + + dotnetfx35 = callPackage ../development/libraries/dotnetfx35 { }; + + dotnetfx40 = callPackage ../development/libraries/dotnetfx40 { }; + + dolphinEmu = callPackage ../misc/emulators/dolphin-emu { }; + dolphinEmuMaster = qt5.callPackage ../misc/emulators/dolphin-emu/master.nix { + inherit (darwin.apple_sdk.frameworks) CoreBluetooth ForceFeedback IOKit OpenGL; + }; + + domoticz = callPackage ../servers/domoticz { }; + + doomseeker = qt5.callPackage ../applications/misc/doomseeker { }; + + doom-bcc = callPackage ../games/zdoom/bcc-git.nix { }; + + 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 {}; + + drill = callPackage ../tools/networking/drill { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + drone = callPackage ../development/tools/continuous-integration/drone { }; + + drone-cli = callPackage ../development/tools/continuous-integration/drone-cli { }; + + dropbear = callPackage ../tools/networking/dropbear { }; + + dsview = libsForQt514.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 { }; + + 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 { + pythonPackages = python3Packages; + }; + + 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 { }; + + edid-decode = callPackage ../tools/misc/edid-decode { }; + + edid-generator = callPackage ../tools/misc/edid-generator { }; + + 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 { }; + + epubcheck = callPackage ../tools/text/epubcheck { }; + + luckybackup = libsForQt5.callPackage ../tools/backup/luckybackup { + ssh = openssh; + }; + + kramdown-asciidoc = callPackage ../tools/typesetting/kramdown-asciidoc { }; + + magic-vlsi = callPackage ../applications/science/electronics/magic-vlsi { }; + + mcrcon = callPackage ../tools/networking/mcrcon {}; + + mozwire = callPackage ../tools/networking/mozwire { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + rage = callPackage ../tools/security/rage { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + rar2fs = callPackage ../tools/filesystems/rar2fs { }; + + s-tar = callPackage ../tools/archivers/s-tar {}; + + sonota = callPackage ../tools/misc/sonota { }; + + sonobuoy = callPackage ../applications/networking/cluster/sonobuoy { }; + + strawberry = libsForQt514.callPackage ../applications/audio/strawberry { }; + + 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; + }; + + tsm-client = callPackage ../tools/backup/tsm-client { jdk8 = null; }; + tsm-client-withGui = callPackage ../tools/backup/tsm-client { }; + + trac = pythonPackages.callPackage ../tools/misc/trac { }; + + 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 { }; + + uudeview = callPackage ../tools/misc/uudeview { }; + + uutils-coreutils = callPackage ../tools/misc/uutils-coreutils { + inherit (pythonPackages) sphinx; + inherit (darwin.apple_sdk.frameworks) Security; + }; + + volctl = callPackage ../tools/audio/volctl { }; + + vorta = python3Packages.callPackage ../applications/backup/vorta { }; + + utahfs = callPackage ../applications/networking/utahfs { }; + + wallutils = callPackage ../tools/graphics/wallutils { }; + + wayland-utils = callPackage ../tools/wayland/wayland-utils { }; + + wev = callPackage ../tools/misc/wev { }; + + wl-clipboard = callPackage ../tools/misc/wl-clipboard { }; + + wob = callPackage ../tools/misc/wob { }; + + wtype = callPackage ../tools/wayland/wtype { }; + + wrangler = callPackage ../development/tools/wrangler { }; + + xkcdpass = with pythonPackages; toPythonApplication xkcdpass; + + 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 { }; + + 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 { }; + + 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.3"; + elk7Version = "7.5.1"; + + elasticsearch6 = callPackage ../servers/search/elasticsearch/6.x.nix { + utillinux = utillinuxMinimal; + 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; + utillinux = utillinuxMinimal; + jre_headless = jre8_headless; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + elasticsearch7 = callPackage ../servers/search/elasticsearch/7.x.nix { + utillinux = utillinuxMinimal; + jre_headless = jre8_headless; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + elasticsearch7-oss = callPackage ../servers/search/elasticsearch/7.x.nix { + enableUnfree = false; + utillinux = utillinuxMinimal; + jre_headless = jre8_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-oss; + }; + + 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 { }; + + emv = callPackage ../tools/misc/emv { }; + + enblend-enfuse = callPackage ../tools/graphics/enblend-enfuse { }; + + endlessh = callPackage ../servers/endlessh { }; + + 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 { }; + + eot_utilities = callPackage ../tools/misc/eot-utilities { }; + + eplot = callPackage ../tools/graphics/eplot { }; + + epstool = callPackage ../tools/graphics/epstool { }; + + epsxe = callPackage ../misc/emulators/epsxe { }; + + escrotum = callPackage ../tools/graphics/escrotum { + inherit (pythonPackages) buildPythonApplication pygtk numpy; + }; + + etcher = callPackage ../tools/misc/etcher { }; + + ethtool = callPackage ../tools/misc/ethtool { }; + + ettercap = callPackage ../applications/networking/sniffers/ettercap { }; + + euca2ools = callPackage ../tools/virtualization/euca2ools { }; + + eventstat = callPackage ../os-specific/linux/eventstat { }; + + evtest = callPackage ../applications/misc/evtest { }; + + evtest-qt = libsForQt5.callPackage ../applications/misc/evtest-qt { }; + + eva = callPackage ../tools/misc/eva { }; + + exa = callPackage ../tools/misc/exa { }; + + 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 { }; + + 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 { }; + + 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 { }; + + 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 (oldAttrs: { 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 { }; + + 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 {}; + + ferm = callPackage ../tools/networking/ferm { }; + + ffsend = callPackage ../tools/misc/ffsend { }; + + fgallery = callPackage ../tools/graphics/fgallery { }; + + flannel = callPackage ../tools/networking/flannel { }; + + flare = callPackage ../games/flare { + inherit (darwin.apple_sdk.frameworks) Cocoa; + }; + + flashbench = callPackage ../os-specific/linux/flashbench { }; + + flatpak = callPackage ../development/libraries/flatpak { }; + + flatpak-builder = callPackage ../development/tools/flatpak-builder { }; + + fltrdr = callPackage ../tools/misc/fltrdr { + icu = icu63; + }; + + fluent-bit = callPackage ../tools/misc/fluent-bit { + stdenv = gccStdenv; + }; + + 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 ../misc/emulators/firebird-emu { }; + + flamerobin = callPackage ../applications/misc/flamerobin { }; + + flashtool = pkgsi686Linux.callPackage ../development/mobile/flashtool { + inherit (androidenv.androidPkgs_9_0) platform-tools; + }; + + flashrom = callPackage ../tools/misc/flashrom { }; + + flent = python3Packages.callPackage ../applications/networking/flent { }; + + flpsed = callPackage ../applications/editors/flpsed { }; + + fluentd = callPackage ../tools/misc/fluentd { }; + + flvstreamer = callPackage ../tools/networking/flvstreamer { }; + + hmetis = pkgsi686Linux.callPackage ../applications/science/math/hmetis { }; + + libbsd = callPackage ../development/libraries/libbsd { }; + + libbladeRF = callPackage ../development/libraries/libbladeRF { }; + + lp_solve = callPackage ../applications/science/math/lp_solve { }; + + lprof = callPackage ../tools/graphics/lprof { }; + + 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 { }; + + 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 { }; + + flips = callPackage ../tools/compression/flips { }; + + flvtool2 = callPackage ../tools/video/flvtool2 { }; + + fmbt = callPackage ../development/tools/fmbt { + python = python2; + }; + + 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 {}; + + 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 { }; + + fprot = callPackage ../tools/security/fprot { }; + + fprintd = callPackage ../tools/security/fprintd { }; + + ferdi = callPackage ../applications/networking/instant-messengers/ferdi { + mkFranzDerivation = callPackage ../applications/networking/instant-messengers/franz/generic.nix { }; + }; + + franz = callPackage ../applications/networking/instant-messengers/franz { + mkFranzDerivation = callPackage ../applications/networking/instant-messengers/franz/generic.nix { }; + }; + + freedroidrpg = callPackage ../games/freedroidrpg { }; + + 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 { }; + + freqtweak = callPackage ../applications/audio/freqtweak { + wxGTK = wxGTK31-gtk2; + }; + + frescobaldi = python3Packages.callPackage ../misc/frescobaldi {}; + + 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; + }; + + ftop = callPackage ../os-specific/linux/ftop { }; + + fsarchiver = callPackage ../tools/archivers/fsarchiver { }; + + fsfs = callPackage ../tools/filesystems/fsfs { }; + + fstl = qt5.callPackage ../applications/graphics/fstl { }; + + fswebcam = callPackage ../os-specific/linux/fswebcam { }; + + 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 { }; + + exfat = callPackage ../tools/filesystems/exfat { }; + + dos2unix = callPackage ../tools/text/dos2unix { }; + + uni2ascii = callPackage ../tools/text/uni2ascii { }; + + galculator = callPackage ../applications/misc/galculator { + gtk = gtk3; + }; + + galen = callPackage ../development/tools/galen {}; + + gallery-dl = callPackage ../applications/misc/gallery-dl { }; + + gandi-cli = callPackage ../tools/networking/gandi-cli { }; + + gandom-fonts = callPackage ../data/fonts/gandom-fonts { }; + + garmin-plugin = callPackage ../applications/misc/garmin-plugin {}; + + garmintools = callPackage ../development/libraries/garmintools {}; + + 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 = appendToName "interactive" + (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 { }; + + 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 { }; + + geonkick = callPackage ../applications/audio/geonkick {}; + + gerrit = callPackage ../applications/version-management/gerrit { }; + + geteltorito = callPackage ../tools/misc/geteltorito { }; + + getmail = callPackage ../tools/networking/getmail { }; + + getopt = callPackage ../tools/misc/getopt { }; + + gexiv2 = callPackage ../development/libraries/gexiv2 { }; + + gftp = callPackage ../tools/networking/gftp { }; + + gfbgraph = callPackage ../development/libraries/gfbgraph { }; + + ggobi = callPackage ../tools/graphics/ggobi { }; + + gibo = callPackage ../tools/misc/gibo { }; + + gifsicle = callPackage ../tools/graphics/gifsicle { }; + + gifski = callPackage ../tools/graphics/gifski { }; + + 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-crecord = callPackage ../applications/version-management/git-crecord { }; + + 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-series = callPackage ../development/tools/git-series { }; + + git-sizer = callPackage ../applications/version-management/git-sizer { }; + + git-up = callPackage ../applications/version-management/git-up { + pythonPackages = python3Packages; + }; + + gitfs = callPackage ../tools/filesystems/gitfs { }; + + gitinspector = callPackage ../applications/version-management/gitinspector { }; + + 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-workhorse = callPackage ../applications/version-management/gitlab/gitlab-workhorse { }; + + gitaly = callPackage ../applications/version-management/gitlab/gitaly { }; + + gitstats = callPackage ../applications/version-management/gitstats { }; + + gogs = callPackage ../applications/version-management/gogs { }; + + git-latexdiff = callPackage ../tools/typesetting/git-latexdiff { }; + + gitea = callPackage ../applications/version-management/gitea { }; + + gl2ps = callPackage ../development/libraries/gl2ps { }; + + 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; + }; + + gmvault = callPackage ../tools/networking/gmvault { }; + + gnash = callPackage ../misc/gnash { }; + + gnirehtet = callPackage ../tools/networking/gnirehtet { }; + + gnome-builder = callPackage ../applications/editors/gnome-builder { }; + + gnome-keysign = callPackage ../tools/security/gnome-keysign { }; + + gnome-passwordsafe = callPackage ../applications/misc/gnome-passwordsafe { }; + + gnome-podcasts = callPackage ../applications/audio/gnome-podcasts { }; + + gnome-photos = callPackage ../applications/graphics/gnome-photos { + gegl = gegl_0_4; + }; + + gnokii = callPackage ../tools/misc/gnokii { }; + + gnuapl = callPackage ../development/interpreters/gnu-apl { }; + + 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 + gnupg22 = callPackage ../tools/security/gnupg/22.nix { + guiSupport = stdenv.isDarwin; + pinentry = if stdenv.isDarwin then pinentry_mac else pinentry-gtk2; + }; + gnupg = gnupg22; + + 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 { }; + + gnuvd = callPackage ../tools/misc/gnuvd { }; + + goaccess = callPackage ../tools/misc/goaccess { }; + + gocryptfs = callPackage ../tools/filesystems/gocryptfs { }; + + godot = callPackage ../development/tools/godot {}; + + 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 { }; + + 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 { }; + google-cloud-sdk-gce = google-cloud-sdk.override { with-gce = true; }; + + google-fonts = callPackage ../data/fonts/google-fonts { }; + + google-clasp = callPackage ../development/misc/google-clasp { }; + + google-compute-engine = python2.pkgs.google-compute-engine; + + google-compute-engine-oslogin = callPackage ../tools/virtualization/google-compute-engine-oslogin { }; + + google-music-scripts = callPackage ../tools/audio/google-music-scripts { }; + + google-cloud-cpp = callPackage ../development/libraries/google-cloud-cpp { }; + + gdown = with python3Packages; toPythonApplication gdown; + + gopro = callPackage ../tools/video/gopro { }; + + goreplay = callPackage ../tools/networking/goreplay { }; + + gource = callPackage ../applications/version-management/gource { }; + + govc = callPackage ../tools/virtualization/govc { }; + + gpart = callPackage ../tools/filesystems/gpart { }; + + gparted = callPackage ../tools/misc/gparted { }; + + ldmtool = callPackage ../tools/misc/ldmtool { }; + + gpodder = callPackage ../applications/audio/gpodder { }; + + gpp = callPackage ../development/tools/gpp { }; + + gpredict = callPackage ../applications/science/astronomy/gpredict { }; + + 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 { + xorg = null; + libdevil = libdevil-nox; + }; + + /* Readded by Michael Raskin. There are programs in the wild + * that do want 2.32 but not 2.0 or 2.36. Please give a day's notice for + * objections before removal. The feature is libgraph. + */ + graphviz_2_32 = (callPackage ../tools/graphics/graphviz/2.32.nix { + inherit (darwin.apple_sdk.frameworks) ApplicationServices; + }).overrideAttrs(x: { configureFlags = x.configureFlags ++ ["--with-cgraph=no"];}); + + grin = callPackage ../tools/text/grin { }; + + ripgrep = callPackage ../tools/text/ripgrep { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + ripgrep-all = callPackage ../tools/text/ripgrep-all { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + 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 { }; + + grub = pkgsi686Linux.callPackage ../tools/misc/grub ({ + stdenv = overrideCC stdenv buildPackages.pkgsi686Linux.gcc6; + } // (config.grub or {})); + + 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 { }; + + 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; + }; + + 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 { }; + + gssdp = callPackage ../development/libraries/gssdp { }; + + gt5 = callPackage ../tools/system/gt5 { }; + + gtest = callPackage ../development/libraries/gtest { }; + gmock = gtest; # TODO: move to aliases.nix + + gbenchmark = callPackage ../development/libraries/gbenchmark {}; + + gtkdatabox = callPackage ../development/libraries/gtkdatabox {}; + + gtklick = callPackage ../applications/audio/gtklick {}; + + gtdialog = callPackage ../development/libraries/gtdialog {}; + + gtkd = callPackage ../development/libraries/gtkd { }; + + gtkgnutella = callPackage ../tools/networking/p2p/gtk-gnutella { }; + + gtkperf = callPackage ../development/tools/misc/gtkperf { }; + + 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 {}; + + gvpe = callPackage ../tools/networking/gvpe { + openssl = openssl_1_0_2; + }; + + gvolicon = callPackage ../tools/audio/gvolicon {}; + + 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 { }; + + pigz = callPackage ../tools/compression/pigz { }; + + pixz = callPackage ../tools/compression/pixz { }; + + plplot = callPackage ../development/libraries/plplot { }; + + 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 { + stdenv = if stdenv.cc.isClang then llvmPackages_6.stdenv else stdenv; + }; + + 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-slinger = callPackage ../tools/security/hash-slinger { }; + + haskell-language-server = callPackage ../development/tools/haskell/haskell-language-server/withWrapper.nix { }; + + hasmail = callPackage ../applications/networking/mailreaders/hasmail { }; + + hal-flash = callPackage ../os-specific/linux/hal-flash { }; + + hal-hardware-analyzer = libsForQt514.callPackage ../applications/science/electronics/hal-hardware-analyzer { }; + + half = callPackage ../development/libraries/half { }; + + halibut = callPackage ../tools/typesetting/halibut { }; + + halide = callPackage ../development/compilers/halide { }; + + ham = pkgs.perlPackages.ham; + + hardinfo = callPackage ../tools/system/hardinfo { }; + + 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 { + szip = null; + }; + + hdf5 = callPackage ../tools/misc/hdf5 { + gfortran = null; + szip = null; + mpi = null; + }; + + hdf5-mpi = appendToName "mpi" (hdf5.override { + szip = null; + mpi = pkgs.openmpi; + }); + + hdf5-cpp = appendToName "cpp" (hdf5.override { + cpp = true; + }); + + hdf5-fortran = appendToName "fortran" (hdf5.override { + inherit gfortran; + }); + + hdf5-threadsafe = appendToName "threadsafe" (hdf5.overrideAttrs (oldAttrs: { + # Threadsafe hdf5 + # However, hdf5 hl (High Level) library is not considered stable + # with thread safety and should be disabled. + configureFlags = oldAttrs.configureFlags ++ ["--enable-threadsafe" "--disable-hl" ]; + })); + + hdfview = callPackage ../tools/misc/hdfview { + javac = jdk8; # TODO: https://github.com/NixOS/nixpkgs/pull/89731 + }; + + hdf_java = callPackage ../tools/misc/hdfjava { + javac = jdk8; # TODO: https://github.com/NixOS/nixpkgs/pull/89731 + }; + + hecate = callPackage ../applications/editors/hecate { }; + + heaptrack = libsForQt514.callPackage ../development/tools/profiling/heaptrack {}; + + heimdall = libsForQt5.callPackage ../tools/misc/heimdall { }; + + heimdall-gui = heimdall.override { enableGUI = true; }; + + 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 { }; + + hfsprogs = callPackage ../tools/filesystems/hfsprogs { }; + + highlight = callPackage ../tools/text/highlight ({ + lua = lua5; + }); + + holochain-go = callPackage ../servers/holochain-go { }; + + homesick = callPackage ../tools/misc/homesick { }; + + honcho = callPackage ../tools/system/honcho { }; + + horst = callPackage ../tools/networking/horst { }; + + host = bind.host; + + hotpatch = callPackage ../development/libraries/hotpatch { }; + + hotspot = libsForQt5.callPackage ../development/tools/analysis/hotspot { }; + + hping = callPackage ../tools/networking/hping { }; + + html-proofer = callPackage ../tools/misc/html-proofer { }; + + htpdate = callPackage ../tools/networking/htpdate { }; + + http-prompt = callPackage ../tools/networking/http-prompt { }; + + http-getter = callPackage ../applications/networking/flent/http-getter.nix { }; + + httpie = callPackage ../tools/networking/httpie { }; + + httping = callPackage ../tools/networking/httping {}; + + httplz = callPackage ../tools/networking/httplz { }; + + httpfs2 = callPackage ../tools/filesystems/httpfs { }; + + httpstat = callPackage ../tools/networking/httpstat { }; + + httptunnel = callPackage ../tools/networking/httptunnel { }; + + 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 { }; + + i-score = libsForQt514.callPackage ../applications/audio/i-score { }; + + iasl = callPackage ../development/compilers/iasl { }; + + iannix = libsForQt514.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 { }; + + icepeak = haskell.lib.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 { }; + + iftop = callPackage ../tools/networking/iftop { }; + + ifuse = callPackage ../tools/filesystems/ifuse { }; + ideviceinstaller = callPackage ../tools/misc/ideviceinstaller { }; + idevicerestore = callPackage ../tools/misc/idevicerestore { }; + + inherit (callPackages ../tools/filesystems/irods rec { + stdenv = llvmPackages.libcxxStdenv; + libcxx = llvmPackages.libcxx; + boost = boost160.override { inherit stdenv; }; + avro-cpp_llvm = avro-cpp.override { inherit stdenv boost; }; + }) + irods + irods-icommands; + + ihaskell = callPackage ../development/tools/haskell/ihaskell/wrapper.nix { + inherit (haskellPackages) ghcWithPackages; + + jupyter = python3.withPackages (ps: [ ps.jupyter ps.notebook ]); + + packages = config.ihaskell.packages or (self: []); + }; + + iruby = callPackage ../applications/editors/jupyter-kernels/iruby { }; + + imapproxy = callPackage ../tools/networking/imapproxy { + openssl = openssl_1_0_2; + }; + + imapsync = callPackage ../tools/networking/imapsync { }; + + imgur-screenshot = callPackage ../tools/graphics/imgur-screenshot { }; + + imgurbash2 = callPackage ../tools/graphics/imgurbash2 { }; + + inadyn = callPackage ../tools/networking/inadyn { }; + + inboxer = callPackage ../applications/networking/mailreaders/inboxer { }; + + incron = callPackage ../tools/system/incron { }; + + industrializer = callPackage ../applications/audio/industrializer { }; + + inetutils = callPackage ../tools/networking/inetutils { }; + + inform6 = callPackage ../development/compilers/inform6 { }; + + inform7 = callPackage ../development/compilers/inform7 { }; + + infamousPlugins = callPackage ../applications/audio/infamousPlugins { }; + + innoextract = callPackage ../tools/archivers/innoextract { }; + + input-utils = callPackage ../os-specific/linux/input-utils { }; + + 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 { }; + + invoice2data = callPackage ../tools/text/invoice2data { }; + + inxi = callPackage ../tools/system/inxi { }; + + iodine = callPackage ../tools/networking/iodine { }; + + ioping = callPackage ../tools/system/ioping { }; + + iops = callPackage ../tools/system/iops { }; + + ior = callPackage ../tools/system/ior { }; + + iouyap = callPackage ../tools/networking/iouyap { }; + + 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 { }; + ipfs-migrator = callPackage ../applications/networking/ipfs-migrator { }; + ipfs-cluster = callPackage ../applications/networking/ipfs-cluster { + buildGoModule = buildGo114Module; + }; + + ipget = callPackage ../applications/networking/ipget { }; + + 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 {}; + + 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 { }; + + ispike = callPackage ../development/libraries/science/robotics/ispike { }; + + isync = callPackage ../tools/networking/isync { }; + + itm-tools = callPackage ../development/tools/misc/itm-tools { }; + + 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 { }; + + jazzy = callPackage ../development/tools/jazzy { }; + + jc = with python3Packages; toPythonApplication jc; + + jd = callPackage ../development/tools/jd { }; + + jd-gui = callPackage ../tools/security/jd-gui { }; + + jdiskreport = callPackage ../tools/misc/jdiskreport { }; + + jekyll = callPackage ../applications/misc/jekyll { }; + + 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 { }; + + jmespath = callPackage ../development/tools/jmespath { }; + + jmtpfs = callPackage ../tools/filesystems/jmtpfs { }; + + jnettop = callPackage ../tools/networking/jnettop { }; + + 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 { }; + + jo = callPackage ../development/tools/jo { }; + + jrnl = callPackage ../applications/misc/jrnl { }; + + jsawk = callPackage ../tools/text/jsawk { }; + + jscoverage = callPackage ../development/tools/misc/jscoverage { }; + + jsduck = callPackage ../development/tools/jsduck { }; + + jtc = callPackage ../development/tools/jtc { }; + + jumpapp = callPackage ../tools/X11/jumpapp {}; + + 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 = callPackage ../applications/editors/kakoune/wrapper.nix { }; + kakounePlugins = callPackage ../applications/editors/kakoune/plugins { }; + kakoune-unwrapped = callPackage ../applications/editors/kakoune { }; + kakoune = wrapKakoune kakoune-unwrapped { }; + + kak-lsp = callPackage ../tools/misc/kak-lsp { }; + + 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 { }; + + keeperrl = callPackage ../games/keeperrl { }; + + kexectools = callPackage ../os-specific/linux/kexectools { }; + + keepkey_agent = with python3Packages; toPythonApplication keepkey_agent; + + kexpand = callPackage ../development/tools/kexpand { }; + + 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 { }; + + 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 { }; + kibana7-oss = callPackage ../development/tools/misc/kibana/7.x.nix { + enableUnfree = false; + }; + kibana = kibana6; + kibana-oss = kibana6-oss; + + kibi = callPackage ../applications/editors/kibi { }; + + kismet = callPackage ../applications/networking/sniffers/kismet { }; + + klick = callPackage ../applications/audio/klick { }; + + klystrack = callPackage ../applications/audio/klystrack { }; + + knockknock = callPackage ../tools/security/knockknock { }; + + kore = callPackage ../development/web/kore { }; + + krakenx = callPackage ../tools/system/krakenx { }; + + partition-manager = libsForQt514.callPackage ../tools/misc/partition-manager { }; + + kpcli = callPackage ../tools/security/kpcli { }; + + krename = libsForQt514.callPackage ../applications/misc/krename { }; + + krunner-pass = libsForQt5.callPackage ../tools/security/krunner-pass { }; + + kronometer = libsForQt514.callPackage ../tools/misc/kronometer { }; + + krop = callPackage ../applications/graphics/krop { }; + + kdiff3 = libsForQt514.callPackage ../tools/text/kdiff3 { }; + + kube-router = callPackage ../applications/networking/cluster/kube-router { }; + + kwalletcli = libsForQt5.callPackage ../tools/security/kwalletcli { }; + + peruse = libsForQt514.callPackage ../tools/misc/peruse { }; + + ksmoothdock = libsForQt514.callPackage ../applications/misc/ksmoothdock { }; + + kstars = libsForQt514.callPackage ../applications/science/astronomy/kstars { }; + + kytea = callPackage ../tools/text/kytea { }; + + k6 = callPackage ../development/tools/k6 { }; + + lalezar-fonts = callPackage ../data/fonts/lalezar-fonts { }; + + ldc = callPackage ../development/compilers/ldc { }; + + lbreakout2 = callPackage ../games/lbreakout2 { }; + + lefthook = gitAndTools.lefthook; + + lego = callPackage ../tools/admin/lego { }; + + leocad = callPackage ../applications/graphics/leocad { }; + + less = callPackage ../tools/misc/less { }; + + lf = callPackage ../tools/misc/lf {}; + + lhasa = callPackage ../tools/compression/lhasa {}; + + libcpuid = callPackage ../tools/misc/libcpuid { }; + + libcsptr = callPackage ../development/libraries/libcsptr { }; + + libscrypt = callPackage ../development/libraries/libscrypt { }; + + libcloudproviders = callPackage ../development/libraries/libcloudproviders { }; + + libcoap = callPackage ../applications/networking/libcoap {}; + + libcryptui = callPackage ../development/libraries/libcryptui { }; + + 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; + }; + + 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 { }; + logstash6-oss = callPackage ../tools/misc/logstash/6.x.nix { + enableUnfree = false; + }; + logstash7 = callPackage ../tools/misc/logstash/7.x.nix { }; + logstash7-oss = callPackage ../tools/misc/logstash/7.x.nix { + enableUnfree = false; + }; + logstash = logstash6; + + logstash-contrib = callPackage ../tools/misc/logstash/contrib.nix { }; + + lolcat = callPackage ../tools/misc/lolcat { }; + + lottieconverter = callPackage ../tools/misc/lottieconverter { }; + + 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 { }; + + kdbg = libsForQt5.callPackage ../development/tools/misc/kdbg { }; + + kippo = callPackage ../servers/kippo { }; + + kristall = libsForQt5.callPackage ../applications/networking/browsers/kristall { }; + + kzipmix = pkgsi686Linux.callPackage ../tools/compression/kzipmix { }; + + ma1sd = callPackage ../servers/ma1sd { }; + + mailcatcher = callPackage ../development/web/mailcatcher { }; + + makebootfat = callPackage ../tools/misc/makebootfat { }; + + martin = callPackage ../servers/martin { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + /* 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-appservice-slack = callPackage ../servers/matrix-synapse/matrix-appservice-slack {}; + + matrix-appservice-discord = callPackage ../servers/matrix-appservice-discord { }; + + mautrix-telegram = recurseIntoAttrs (callPackage ../servers/mautrix-telegram { }); + + mautrix-whatsapp = callPackage ../servers/mautrix-whatsapp { }; + + mcfly = callPackage ../tools/misc/mcfly { }; + + mdbook = callPackage ../tools/text/mdbook { + inherit (darwin.apple_sdk.frameworks) CoreServices; + }; + + mdcat = callPackage ../tools/text/mdcat { + inherit (darwin.apple_sdk.frameworks) Security; + inherit (pythonPackages) ansi2html; + }; + + medfile = callPackage ../development/libraries/medfile { }; + + meilisearch = callPackage ../servers/search/meilisearch { + inherit (darwin.apple_sdk.frameworks) IOKit Security; + }; + + memtester = callPackage ../tools/system/memtester { }; + + mesa-demos = callPackage ../tools/graphics/mesa-demos { }; + + mhonarc = perlPackages.MHonArc; + + minergate = callPackage ../applications/misc/minergate { }; + + minergate-cli = callPackage ../applications/misc/minergate-cli { }; + + minica = callPackage ../tools/security/minica { }; + + minidlna = callPackage ../tools/networking/minidlna { }; + + minisign = callPackage ../tools/security/minisign { }; + + ministat = callPackage ../tools/misc/ministat { }; + + mmv = callPackage ../tools/misc/mmv { }; + + most = callPackage ../tools/misc/most { }; + + motion = callPackage ../applications/video/motion { }; + + mtail = callPackage ../servers/monitoring/mtail { }; + + multitail = callPackage ../tools/misc/multitail { }; + + mxt-app = callPackage ../misc/mxt-app { }; + + mxisd = callPackage ../servers/mxisd { }; + + nagstamon = callPackage ../tools/misc/nagstamon { + pythonPackages = python3Packages; + }; + + nbench = callPackage ../tools/misc/nbench { }; + + 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 { }; + + next = callPackage ../applications/networking/browsers/next { }; + + 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 { }; + + nodejs = hiPrio nodejs-12_x; + + nodejs-slim = nodejs-slim-12_x; + + + nodejs-10_x = callPackage ../development/web/nodejs/v10.nix { }; + nodejs-slim-10_x = callPackage ../development/web/nodejs/v10.nix { + enableNpm = false; + }; + 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; + }; + + # Update this when adding the newest nodejs major version! + nodejs_latest = nodejs-14_x; + nodejs-slim_latest = nodejs-slim-14_x; + + nodePackages_latest = dontRecurseIntoAttrs (callPackage ../development/node-packages/default.nix { + nodejs = pkgs.nodejs_latest; + }); + + nodePackages = dontRecurseIntoAttrs (callPackage ../development/node-packages/default.nix { + nodejs = pkgs.nodejs; + }); + + now-cli = callPackage ../development/web/now-cli {}; + + np2kai = callPackage ../misc/emulators/np2kai { }; + + file-rename = callPackage ../tools/filesystems/file-rename { }; + + kea = callPackage ../tools/networking/kea { }; + + keysmith = libsForQt5.callPackage ../tools/security/keysmith { }; + + ispell = callPackage ../tools/text/ispell {}; + + jumanpp = callPackage ../tools/text/jumanpp {}; + + jump = callPackage ../tools/system/jump {}; + + kindlegen = callPackage ../tools/typesetting/kindlegen { }; + + latex2html = callPackage ../tools/misc/latex2html { }; + + latexrun = callPackage ../tools/typesetting/tex/latexrun { }; + + lcdf-typetools = callPackage ../tools/misc/lcdf-typetools { }; + + ldapvi = callPackage ../tools/misc/ldapvi { }; + + ldns = callPackage ../development/libraries/ldns { }; + + leafpad = callPackage ../applications/editors/leafpad { }; + + leatherman = callPackage ../development/libraries/leatherman { }; + + ledmon = callPackage ../tools/system/ledmon { }; + + leela = callPackage ../tools/graphics/leela { }; + + lftp = callPackage ../tools/networking/lftp { }; + + libck = callPackage ../development/libraries/libck { }; + + 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 { }; + + libgumath = callPackage ../development/libraries/libgumath { }; + + libinsane = callPackage ../development/libraries/libinsane { }; + + libipfix = callPackage ../development/libraries/libipfix { }; + + libircclient = callPackage ../development/libraries/libircclient { }; + + libisds = callPackage ../development/libraries/libisds { }; + + libite = callPackage ../development/libraries/libite { }; + + liblangtag = callPackage ../development/libraries/liblangtag { + inherit (gnome3) 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 { }; + + libshout = callPackage ../development/libraries/libshout { }; + + libqb = callPackage ../development/libraries/libqb { }; + + libqmi = callPackage ../development/libraries/libqmi { }; + + libmbim = callPackage ../development/libraries/libmbim { }; + + libmongo-client = callPackage ../development/libraries/libmongo-client { }; + + libmesode = callPackage ../development/libraries/libmesode {}; + + libnabo = callPackage ../development/libraries/libnabo { }; + + libngspice = callPackage ../development/libraries/libngspice { }; + + libpointmatcher = callPackage ../development/libraries/libpointmatcher { }; + + libportal = callPackage ../development/libraries/libportal { }; + + libmicrodns = callPackage ../development/libraries/libmicrodns { }; + + libnids = callPackage ../tools/networking/libnids { }; + + libtorrent = callPackage ../tools/networking/p2p/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 { }; + + libzmf = callPackage ../development/libraries/libzmf {}; + + libreswan = callPackage ../tools/networking/libreswan { }; + + librest = callPackage ../development/libraries/librest { }; + + inherit (callPackages ../development/libraries/libwebsockets { }) + libwebsockets_3_1 + libwebsockets_3_2 + libwebsockets_4_0; + libwebsockets = libwebsockets_3_2; + + licensee = callPackage ../tools/package-management/licensee { }; + + lidarr = callPackage ../servers/lidarr { }; + + limesuite = callPackage ../applications/radio/limesuite { }; + + limesurvey = callPackage ../servers/limesurvey { }; + + linuxquota = callPackage ../tools/misc/linuxquota { }; + + localtime = callPackage ../tools/system/localtime { }; + + logcheck = callPackage ../tools/system/logcheck { }; + + 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 { }; + + ltris = callPackage ../games/ltris { }; + + lv = callPackage ../tools/text/lv { }; + + lxc = callPackage ../os-specific/linux/lxc { }; + lxcfs = callPackage ../os-specific/linux/lxcfs { }; + lxd = callPackage ../tools/admin/lxd { }; + + lzfse = callPackage ../tools/compression/lzfse { }; + + lzham = callPackage ../tools/compression/lzham { }; + + lzip = callPackage ../tools/compression/lzip { }; + + luxcorerender = callPackage ../tools/graphics/luxcorerender { qt5 = qt514; }; + + xz = callPackage ../tools/compression/xz { }; + lzma = xz; # TODO: move to aliases.nix + + lz4 = callPackage ../tools/compression/lz4 { }; + + lzbench = callPackage ../tools/compression/lzbench { }; + + lzop = callPackage ../tools/compression/lzop { }; + + macchanger = callPackage ../os-specific/linux/macchanger { }; + + madlang = haskell.lib.justStaticExecutables haskellPackages.madlang; + + 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 + ); + + mailsend = callPackage ../tools/networking/mailsend { }; + + mailpile = callPackage ../applications/networking/mailreaders/mailpile { }; + + mailutils = callPackage ../tools/networking/mailutils { + guile = guile_2_0; # compilation fails with guile 2.2 + 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 { }; + + manix = callPackage ../tools/nix/manix {}; + + marktext = callPackage ../applications/misc/marktext { }; + + 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 { }; + + mcabber = callPackage ../applications/networking/instant-messengers/mcabber { }; + + mcron = callPackage ../tools/system/mcron { + guile = guile_1_8; + }; + + mdbtools = callPackage ../tools/misc/mdbtools { }; + + mdk = callPackage ../development/tools/mdk { }; + + mdp = callPackage ../applications/misc/mdp { }; + + mednafen = callPackage ../misc/emulators/mednafen { }; + + mednafen-server = callPackage ../misc/emulators/mednafen/server.nix { }; + + mednaffe = callPackage ../misc/emulators/mednaffe { + gtk2 = null; + }; + + megacli = callPackage ../tools/misc/megacli { }; + + megatools = callPackage ../tools/networking/megatools { }; + + memo = callPackage ../applications/misc/memo { }; + + mencal = callPackage ../applications/misc/mencal { } ; + + metamorphose2 = callPackage ../applications/misc/metamorphose2 { }; + + metar = callPackage ../applications/misc/metar { }; + + mfcuk = callPackage ../tools/security/mfcuk { }; + + mfoc = callPackage ../tools/security/mfoc { }; + + mgba = libsForQt5.callPackage ../misc/emulators/mgba { }; + + microcom = callPackage ../applications/misc/microcom { }; + + 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 { }; + + minetime = callPackage ../applications/office/minetime { }; + + minio-client = callPackage ../tools/networking/minio-client { }; + + 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 = nodePackages.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 { }; + + modemmanager = callPackage ../tools/networking/modem-manager {}; + + modem-manager-gui = callPackage ../applications/networking/modem-manager-gui {}; + + modsecurity_standalone = callPackage ../tools/security/modsecurity { }; + + 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; + }; + + 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 { }; + + metasploit = callPackage ../tools/security/metasploit { }; + + ms-sys = callPackage ../tools/misc/ms-sys { }; + + mtdutils = callPackage ../tools/filesystems/mtdutils { }; + + mtools = callPackage ../tools/filesystems/mtools { }; + + mtr = callPackage ../tools/networking/mtr {}; + + mtr-gui = callPackage ../tools/networking/mtr { withGtk = true; }; + + mtx = callPackage ../tools/backup/mtx {}; + + mt-st = callPackage ../tools/backup/mt-st {}; + + 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 { }; + + munt = libsForQt5.callPackage ../applications/audio/munt { }; + + mutagen = callPackage ../tools/misc/mutagen { }; + + mycli = callPackage ../tools/admin/mycli { }; + + mycrypto = callPackage ../applications/blockchains/mycrypto { }; + + mydumper = callPackage ../tools/backup/mydumper { }; + + 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 { }; + + neofetch = callPackage ../tools/misc/neofetch { }; + + nerdfonts = callPackage ../data/fonts/nerdfonts { }; + + nestopia = callPackage ../misc/emulators/nestopia { }; + + netatalk = callPackage ../tools/filesystems/netatalk { }; + + netcdf = callPackage ../development/libraries/netcdf { }; + + netcdf-mpi = appendToName "mpi" (netcdf.override { + hdf5 = hdf5-mpi; + }); + + netcdfcxx4 = callPackage ../development/libraries/netcdf-cxx4 { }; + + netcdffortran = callPackage ../development/libraries/netcdf-fortran { }; + + 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 {}; + + netcat = libressl.nc; + + netcat-gnu = callPackage ../tools/networking/netcat { }; + + nethogs = callPackage ../tools/networking/nethogs { }; + + netkittftp = callPackage ../tools/networking/netkit/tftp { }; + + netlify-cli = nodePackages.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; + }; + + # stripped down, needed by steam + networkmanager098 = callPackage ../tools/networking/network-manager/0.9.8 { }; + + networkmanager = callPackage ../tools/networking/network-manager { }; + + networkmanager-iodine = callPackage ../tools/networking/network-manager/iodine { }; + + networkmanager-openvpn = callPackage ../tools/networking/network-manager/openvpn { }; + + networkmanager-l2tp = callPackage ../tools/networking/network-manager/l2tp { }; + + networkmanager-vpnc = callPackage ../tools/networking/network-manager/vpnc { }; + + networkmanager-openconnect = callPackage ../tools/networking/network-manager/openconnect { }; + + networkmanager-fortisslvpn = callPackage ../tools/networking/network-manager/fortisslvpn { }; + + networkmanager_strongswan = callPackage ../tools/networking/network-manager/strongswan { }; + + networkmanagerapplet = callPackage ../tools/networking/network-manager/applet { }; + + libnma = callPackage ../tools/networking/network-manager/libnma { }; + + networkmanager_dmenu = callPackage ../tools/networking/network-manager/dmenu { }; + + nm-tray = libsForQt5.callPackage ../tools/networking/network-manager/tray.nix { }; + + newsboat = callPackage ../applications/networking/feedreaders/newsboat { + inherit (darwin.apple_sdk.frameworks) Security Foundation; + }; + + grocy = callPackage ../servers/grocy { }; + + inherit (callPackage ../servers/nextcloud {}) + nextcloud17 nextcloud18 nextcloud19 nextcloud20; + + nextcloud-client = libsForQt514.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.justStaticExecutables (haskell.lib.generateOptparseApplicativeCompletion "neuron" haskellPackages.neuron); + + ngrok = ngrok-2; + + ngrok-2 = callPackage ../tools/networking/ngrok-2 { }; + + ngrok-1 = callPackage ../tools/networking/ngrok-1 { }; + + noice = callPackage ../applications/misc/noice { }; + + noip = callPackage ../tools/networking/noip { }; + + nomad = nomad_0_11; + # 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. + nomad_0_11 = callPackage ../applications/networking/cluster/nomad/0.11.nix { + buildGoPackage = buildGo114Package; + }; + nomad_0_12 = callPackage ../applications/networking/cluster/nomad/0.12.nix { + buildGoPackage = buildGo114Package; + }; + + notable = callPackage ../applications/misc/notable { }; + + nvchecker = with python3Packages; toPythonApplication nvchecker; + + 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-imagine = python3Packages.callPackage ../tools/misc/pandoc-imagine { }; + + pandoc-plantuml-filter = python3Packages.callPackage ../tools/misc/pandoc-plantuml-filter { }; + + pasystray = callPackage ../tools/audio/pasystray { }; + + phash = callPackage ../development/libraries/phash { }; + + pnmixer = callPackage ../tools/audio/pnmixer { }; + + pro-office-calculator = libsForQt5.callPackage ../games/pro-office-calculator { }; + + pulsemixer = callPackage ../tools/audio/pulsemixer { }; + + pwsafe = callPackage ../applications/misc/pwsafe { }; + + niff = callPackage ../tools/package-management/niff { }; + + nifskope = libsForQt5.callPackage ../tools/graphics/nifskope { }; + + nilfs-utils = callPackage ../tools/filesystems/nilfs-utils {}; + + nimmm = callPackage ../applications/misc/nimmm { }; + + 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 {}; + + npth = callPackage ../development/libraries/npth {}; + + nmap = callPackage ../tools/security/nmap { }; + + nmap-graphical = nmap.override { + graphicalSupport = true; + }; + + nmapsi4 = libsForQt514.callPackage ../tools/security/nmap/qt.nix { }; + + nnn = callPackage ../applications/misc/nnn { }; + + + 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 { }; + + # 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 { + libcap = if stdenv.isLinux then libcap else null; + }; + + numdiff = callPackage ../tools/text/numdiff { }; + + numlockx = callPackage ../tools/X11/numlockx { }; + + nuttcp = callPackage ../tools/networking/nuttcp { }; + + nssmdns = callPackage ../tools/networking/nss-mdns { }; + + nwdiag = with python3Packages; toPythonApplication nwdiag; + + nxpmicro-mfgtools = callPackage ../development/tools/misc/nxpmicro-mfgtools { }; + + nyancat = callPackage ../tools/misc/nyancat { }; + + nylon = callPackage ../tools/networking/nylon { }; + + nym = callPackage ../applications/networking/nym { }; + + nzbget = callPackage ../tools/networking/nzbget { }; + + oathToolkit = callPackage ../tools/security/oath-toolkit { }; + + obex_data_server = callPackage ../tools/bluetooth/obex-data-server { }; + + obexd = callPackage ../tools/bluetooth/obexd { }; + + obfs4 = callPackage ../tools/networking/obfs4 { }; + + oci-image-tool = callPackage ../tools/misc/oci-image-tool { }; + + ocproxy = callPackage ../tools/networking/ocproxy { }; + + ocserv = callPackage ../tools/networking/ocserv { }; + + opencorsairlink = callPackage ../tools/misc/opencorsairlink { }; + + openfortivpn = callPackage ../tools/networking/openfortivpn { }; + + 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/default.nix { }; + + 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; + }; + + 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 { }; + + openapi-generator-cli = callPackage ../tools/networking/openapi-generator-cli { }; + openapi-generator-cli-unstable = callPackage ../tools/networking/openapi-generator-cli/unstable.nix { }; + + openbazaar = callPackage ../applications/networking/openbazaar { }; + openbazaar-client = callPackage ../applications/networking/openbazaar/client.nix { }; + + 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 {}; + + opendkim = callPackage ../development/libraries/opendkim { }; + + opendylan = callPackage ../development/compilers/opendylan { + opendylan-bootstrap = opendylan_bin; + }; + + 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 { }; + + 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 { }; + + opensc = callPackage ../tools/security/opensc { + inherit (darwin.apple_sdk.frameworks) Carbon PCSC; + }; + + opensm = callPackage ../tools/networking/opensm { }; + + openssh = + callPackage ../tools/networking/openssh { + hpnSupport = false; + etcDir = "/etc/ssh"; + pam = if stdenv.isLinux then pam else null; + }; + + openssh_hpn = pkgs.appendToName "with-hpn" (openssh.override { + hpnSupport = true; + }); + + openssh_gssapi = pkgs.appendToName "with-gssapi" (openssh.override { + withGssapiPatches = true; + }); + + opensp = callPackage ../tools/text/sgml/opensp { }; + + opentracker = callPackage ../applications/networking/p2p/opentracker { }; + + opentsdb = callPackage ../tools/misc/opentsdb {}; + + openvpn = callPackage ../tools/networking/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 { }; + + update-dotdee = with python3Packages; toPythonApplication update-dotdee; + + 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 { }; + + opentracing-cpp = callPackage ../development/libraries/opentracing-cpp { }; + + openvswitch = callPackage ../os-specific/linux/openvswitch { }; + + openvswitch-lts = callPackage ../os-specific/linux/openvswitch/lts.nix { }; + + optipng = callPackage ../tools/graphics/optipng { + libpng = libpng12; + }; + + olsrd = callPackage ../tools/networking/olsrd { }; + + opl3bankeditor = libsForQt5.callPackage ../tools/audio/opl3bankeditor { }; + + opn2bankeditor = callPackage ../tools/audio/opl3bankeditor/opn2bankeditor.nix { }; + + orangefs = callPackage ../tools/filesystems/orangefs { }; + + os-prober = callPackage ../tools/misc/os-prober {}; + + 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 { }; + + otpw = callPackage ../os-specific/linux/otpw { }; + + overcommit = callPackage ../development/tools/overcommit { }; + + overmind = callPackage ../applications/misc/overmind { }; + + owncloud-client = libsForQt514.callPackage ../applications/networking/owncloud-client { }; + + 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 { }; + + packagekit-qt = libsForQt5.callPackage ../tools/package-management/packagekit/qt.nix { }; + + 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 { }; + + pagmo2 = callPackage ../development/libraries/pagmo2 { }; + + pakcs = callPackage ../development/compilers/pakcs { }; + + pal = callPackage ../tools/misc/pal { }; + + pandoc = callPackage ../development/tools/pandoc { }; + + pamtester = callPackage ../tools/security/pamtester { }; + + paperless = callPackage ../applications/office/paperless { }; + + paperwork = callPackage ../applications/office/paperwork { }; + + papertrail = callPackage ../tools/text/papertrail { }; + + 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 { }; + + patchutils = callPackage ../tools/text/patchutils { }; + + patchutils_0_3_3 = callPackage ../tools/text/patchutils/0.3.3.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 { }; + + pitivi = callPackage ../applications/video/pitivi { }; + + pulumi-bin = callPackage ../tools/admin/pulumi { }; + + p0f = callPackage ../tools/security/p0f { }; + + pngout = callPackage ../tools/graphics/pngout { }; + + ipsecTools = callPackage ../os-specific/linux/ipsec-tools { + flex = flex_2_5_35; + openssl = openssl_1_0_2; + }; + + patch = gnupatch; + + patchage = callPackage ../applications/audio/patchage { }; + + pcapfix = callPackage ../tools/networking/pcapfix { }; + + pbzip2 = callPackage ../tools/compression/pbzip2 { }; + + pciutils = callPackage ../tools/system/pciutils { }; + + pcsclite = callPackage ../tools/security/pcsclite { + inherit (darwin.apple_sdk.frameworks) IOKit; + }; + + pcsctools = callPackage ../tools/security/pcsctools { }; + + pcsc-cyberjack = callPackage ../tools/security/pcsc-cyberjack { }; + + 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 { }; + + pdf2htmlEX = callPackage ../tools/typesetting/pdf2htmlEX { }; + + pdf2odt = callPackage ../tools/typesetting/pdf2odt { }; + + pdf-redact-tools = callPackage ../tools/graphics/pdfredacttools { }; + + pdfcrack = callPackage ../tools/security/pdfcrack { }; + + pdfsandwich = callPackage ../tools/typesetting/pdfsandwich { }; + + pdftag = callPackage ../tools/graphics/pdftag { }; + + pdf2svg = callPackage ../tools/graphics/pdf2svg { }; + + fmodex = callPackage ../games/zandronum/fmod.nix { }; + + pdfminer = with python3Packages; toPythonApplication pdfminer; + + pdfmod = callPackage ../applications/misc/pdfmod { }; + + pdf-quench = callPackage ../applications/misc/pdf-quench { }; + + jbig2enc = callPackage ../tools/graphics/jbig2enc { }; + + pdfarranger = callPackage ../applications/misc/pdfarranger { }; + + pdfread = callPackage ../tools/graphics/pdfread { + inherit (pythonPackages) pillow; + }; + + briss = callPackage ../tools/graphics/briss { }; + + brickd = callPackage ../servers/brickd { }; + + bully = callPackage ../tools/networking/bully { }; + + pcapc = callPackage ../tools/networking/pcapc { }; + + pdnsd = callPackage ../tools/networking/pdnsd { }; + + peco = callPackage ../tools/text/peco { }; + + 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 { }; + + pdsh = callPackage ../tools/networking/pdsh { + rsh = true; # enable internal rsh implementation + ssh = openssh; + }; + + pfetch = callPackage ../tools/misc/pfetch { }; + + pfstools = callPackage ../tools/graphics/pfstools { }; + + philter = callPackage ../tools/networking/philter { }; + + phodav = callPackage ../tools/networking/phodav { }; + + pinentry = libsForQt5.callPackage ../tools/security/pinentry { + libcap = if stdenv.isDarwin then null else libcap; + }; + + pinentry-curses = (stdenv.lib.getOutput "curses" pinentry); + pinentry-emacs = (stdenv.lib.getOutput "emacs" pinentry); + pinentry-gtk2 = (stdenv.lib.getOutput "gtk2" pinentry); + pinentry-qt = (stdenv.lib.getOutput "qt" pinentry); + pinentry-gnome = (stdenv.lib.getOutput "gnome3" pinentry); + + pinentry_mac = callPackage ../tools/security/pinentry/mac.nix { + inherit (darwin.apple_sdk.frameworks) Cocoa; + xcbuildHook = xcbuild6Hook; + }; + + pingtcp = callPackage ../tools/networking/pingtcp { }; + + pinnwand = callPackage ../servers/pinnwand { }; + + 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 {}; + + pk2cmd = callPackage ../tools/misc/pk2cmd { }; + + plantuml = callPackage ../tools/misc/plantuml { + # Graphviz 2.39 and 2.40 are discouraged by the PlantUML project, see + # http://plantuml.com/faq (heading: "Which version of Graphviz should I use ?") + graphviz = graphviz_2_32; + }; + + plan9port = callPackage ../tools/system/plan9port { }; + + platformioPackages = dontRecurseIntoAttrs (callPackage ../development/arduino/platformio { }); + platformio = platformioPackages.platformio-chrootenv; + + platinum-searcher = callPackage ../tools/text/platinum-searcher { }; + + playbar2 = libsForQt5.callPackage ../applications/audio/playbar2 { }; + + plex = callPackage ../servers/plex { }; + plexRaw = callPackage ../servers/plex/raw.nix { }; + + tab = callPackage ../tools/text/tab { }; + + tautulli = callPackage ../servers/tautulli { python = python2; }; + + 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 { }; + + pngtoico = callPackage ../tools/graphics/pngtoico { + libpng = libpng12; + }; + + pngpp = callPackage ../development/libraries/png++ { }; + + pngquant = callPackage ../tools/graphics/pngquant { }; + + podiff = callPackage ../tools/text/podiff { }; + + podman = if stdenv.isDarwin then + callPackage ../applications/virtualization/podman { } + else + callPackage ../applications/virtualization/podman/wrapper.nix { }; + podman-unwrapped = callPackage ../applications/virtualization/podman { }; + + podman-compose = python3Packages.callPackage ../applications/virtualization/podman-compose {}; + + pod2mdoc = callPackage ../tools/misc/pod2mdoc { }; + + poedit = callPackage ../tools/text/poedit { }; + + polipo = callPackage ../servers/polipo { }; + + polkit_gnome = callPackage ../tools/security/polkit-gnome { }; + + poly2tri-c = callPackage ../development/libraries/poly2tri-c { }; + + polysh = callPackage ../tools/networking/polysh { }; + + 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 { }; + + 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 = gitAndTools.pre-commit; + + pretty-simple = callPackage ../development/tools/pretty-simple { }; + + prettyping = callPackage ../tools/networking/prettyping { }; + + 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; + + proxychains = callPackage ../tools/networking/proxychains { }; + + proxytunnel = callPackage ../tools/misc/proxytunnel { + openssl = openssl_1_0_2; + }; + + pws = callPackage ../tools/misc/pws { }; + + cntlm = callPackage ../tools/networking/cntlm { }; + + pastebinit = callPackage ../tools/misc/pastebinit { }; + + pmacct = callPackage ../tools/networking/pmacct { }; + + pmix = callPackage ../development/libraries/pmix { }; + + polygraph = callPackage ../tools/networking/polygraph { }; + + 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 {}; + + 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 { }; + + pycangjie = pythonPackages.pycangjie; + + pydb = callPackage ../development/tools/pydb { }; + + pydf = callPackage ../applications/misc/pydf { }; + + pympress = callPackage ../applications/office/pympress { }; + + pythonIRClib = pythonPackages.pythonIRClib; + + pyditz = callPackage ../applications/misc/pyditz { + pythonPackages = python27Packages; + }; + + pytrainer = callPackage ../applications/misc/pytrainer { }; + + pywal = with python3Packages; toPythonApplication pywal; + + rbw = callPackage ../tools/security/rbw { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + remarshal = callPackage ../development/tools/remarshal { }; + + rig = callPackage ../tools/misc/rig { + stdenv = gccStdenv; + }; + + rocket = libsForQt5.callPackage ../tools/graphics/rocket { }; + + rtaudio = callPackage ../development/libraries/audio/rtaudio { }; + + rtmidi = callPackage ../development/libraries/audio/rtmidi { }; + + openmpi = callPackage ../development/libraries/openmpi { }; + + ucx = callPackage ../development/libraries/ucx {}; + + openmodelica = callPackage ../applications/science/misc/openmodelica { + jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + + qarte = libsForQt5.callPackage ../applications/video/qarte { }; + + qlcplus = libsForQt512.callPackage ../applications/misc/qlcplus { }; + + qnial = callPackage ../development/interpreters/qnial { }; + + ocz-ssd-guru = callPackage ../tools/misc/ocz-ssd-guru { }; + + 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 { } ; + + qgrep = callPackage ../tools/text/qgrep { + inherit (darwin.apple_sdk.frameworks) CoreServices CoreFoundation; + }; + + qhull = callPackage ../development/libraries/qhull { }; + + qjoypad = callPackage ../tools/misc/qjoypad { }; + + qosmic = libsForQt5.callPackage ../applications/graphics/qosmic { }; + + qownnotes = libsForQt514.callPackage ../applications/office/qownnotes { }; + + qpdf = callPackage ../development/libraries/qpdf { }; + + qprint = callPackage ../tools/text/qprint { }; + + qscintilla = callPackage ../development/libraries/qscintilla { }; + + qshowdiff = callPackage ../tools/text/qshowdiff { }; + + qr-filetransfer = callPackage ../tools/networking/qr-filetransfer { }; + + qtikz = libsForQt514.callPackage ../applications/graphics/ktikz { }; + + quickjs = callPackage ../development/interpreters/quickjs { }; + + quickserve = callPackage ../tools/networking/quickserve { }; + + quicktun = callPackage ../tools/networking/quicktun { }; + + quilt = callPackage ../development/tools/quilt { }; + + quota = if stdenv.isLinux then linuxquota else unixtools.quota; + + 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 = pythonPackages.rainbowstream; + + rambox = callPackage ../applications/networking/instant-messengers/rambox { }; + + rambox-pro = callPackage ../applications/networking/instant-messengers/rambox/pro.nix { }; + + ranger = callPackage ../applications/misc/ranger { }; + + rarcrack = callPackage ../tools/security/rarcrack { }; + + rarian = callPackage ../development/libraries/rarian { }; + + ratools = callPackage ../tools/networking/ratools { }; + + rawdog = callPackage ../applications/networking/feedreaders/rawdog { }; + + rc = callPackage ../shells/rc { }; + + rdbtools = callPackage ../development/tools/rdbtools { python = python3; }; + + rdma-core = callPackage ../os-specific/linux/rdma-core { }; + + + real_time_config_quick_scan = callPackage ../applications/audio/real_time_config_quick_scan { }; + + react-native-debugger = callPackage ../development/tools/react-native-debugger { }; + + read-edid = callPackage ../os-specific/linux/read-edid { }; + + redir = callPackage ../tools/networking/redir { }; + + # failed to build websocket-driver gem with ruby 2.6, so sticking to 2.5 for now + redmine = callPackage ../applications/version-management/redmine { ruby = pkgs.ruby_2_5; }; + + redsocks = callPackage ../tools/networking/redsocks { }; + + rep = callPackage ../development/tools/rep { }; + + reredirect = callPackage ../tools/misc/reredirect { }; + + retext = libsForQt5.callPackage ../applications/editors/retext { }; + + 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 { }; + + 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 { }; + + reposurgeon = callPackage ../applications/version-management/reposurgeon { }; + + reptyr = callPackage ../os-specific/linux/reptyr {}; + + rescuetime = libsForQt5.callPackage ../applications/misc/rescuetime { }; + + reuse = callPackage ../tools/package-management/reuse { }; + + 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 (pythonPackages) sphinx; + }; + + rng-tools = callPackage ../tools/security/rng-tools { }; + + rnnoise = callPackage ../development/libraries/rnnoise { }; + + rnnoise-plugin = callPackage ../development/libraries/rnnoise-plugin {}; + + 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 { + inherit (darwin) libiconv; + }; + + rsnapshot = callPackage ../tools/backup/rsnapshot { }; + + rlwrap = callPackage ../tools/misc/rlwrap { }; + + rmtrash = callPackage ../tools/misc/rmtrash { }; + + 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 { }; + + rpiboot-unstable = callPackage ../development/misc/rpiboot/unstable.nix { }; + + rpm = callPackage ../tools/package-management/rpm { + python = python3; + }; + + rpm-ostree = callPackage ../tools/misc/rpm-ostree { + gperf = gperf_3_0; + }; + + rpmextract = callPackage ../tools/archivers/rpmextract { }; + + rrdtool = callPackage ../tools/misc/rrdtool { }; + + rshijack = callPackage ../tools/networking/rshijack { }; + + rsibreak = libsForQt514.callPackage ../applications/misc/rsibreak { }; + + rss2email = callPackage ../applications/networking/feedreaders/rss2email { + pythonPackages = python3Packages; + }; + + rsstail = callPackage ../applications/networking/feedreaders/rsstail { }; + + rtorrent = callPackage ../tools/networking/p2p/rtorrent { }; + + rubber = callPackage ../tools/typesetting/rubber { }; + + rubocop = callPackage ../development/tools/rubocop { }; + + runelite = callPackage ../games/runelite { }; + + runningx = callPackage ../tools/X11/runningx { }; + + rund = callPackage ../development/tools/rund { }; + + runzip = callPackage ../tools/archivers/runzip { }; + + ruplacer = callPackage ../tools/text/ruplacer { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + rustscan = callPackage ../tools/security/rustscan { }; + + 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 { }; + + s4cmd = callPackage ../tools/networking/s4cmd { }; + + s3gof3r = callPackage ../tools/networking/s3gof3r { }; + + s6-dns = skawarePackages.s6-dns; + + s6-linux-utils = skawarePackages.s6-linux-utils; + + s6-networking = skawarePackages.s6-networking; + + s6-portable-utils = skawarePackages.s6-portable-utils; + + 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 {}; + + samplicator = callPackage ../tools/networking/samplicator { }; + + sandboxfs = callPackage ../tools/filesystems/sandboxfs { }; + + sasquatch = callPackage ../tools/filesystems/sasquatch { }; + + sasview = callPackage ../applications/science/misc/sasview {}; + + scallion = callPackage ../tools/security/scallion { }; + + scanbd = callPackage ../tools/graphics/scanbd { }; + + scdoc = callPackage ../tools/typesetting/scdoc { }; + + scream-receivers = callPackage ../misc/scream-receivers { + pulseSupport = config.pulseaudio or false; + }; + + 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 = callPackage ../applications/graphics/screencloud { + quazip = quazip_qt4; + }; + + screenkey = callPackage ../applications/video/screenkey { }; + + quazip_qt4 = libsForQt5.quazip.override { + qtbase = qt4; + }; + + 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 { }; + + sdcv = callPackage ../applications/misc/sdcv { }; + + sdl-jstest = callPackage ../tools/misc/sdl-jstest { }; + + skim = callPackage ../tools/misc/skim { }; + + 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; + }; + + sewer = callPackage ../tools/admin/sewer { }; + + screenfetch = callPackage ../tools/misc/screenfetch { }; + + sg3_utils = callPackage ../tools/system/sg3_utils { }; + + sha1collisiondetection = callPackage ../tools/security/sha1collisiondetection { }; + + shadowsocks-libev = callPackage ../tools/networking/shadowsocks-libev { }; + + 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) Security; + }; + + shadowsocks-v2ray-plugin = callPackage ../tools/networking/shadowsocks-v2ray-plugin { }; + + sharutils = callPackage ../tools/archivers/sharutils { }; + + shelldap = callPackage ../tools/misc/shelldap { }; + + schema2ldif = callPackage ../tools/text/schema2ldif { }; + + 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; + + shellinabox = callPackage ../servers/shellinabox { + openssl = openssl_1_0_2; + }; + + 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 { }; + + sigil = libsForQt514.callPackage ../applications/editors/sigil { }; + + 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; + + signify = callPackage ../tools/security/signify { }; + + # aka., pgp-tools + signing-party = callPackage ../tools/security/signing-party { }; + + 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 { }; + + 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 {}; + + skippy-xd = callPackage ../tools/X11/skippy-xd {}; + + sks = callPackage ../servers/sks { inherit (ocaml-ng.ocamlPackages_4_02) ocaml camlp4; }; + + skydns = callPackage ../servers/skydns { }; + + sipcalc = callPackage ../tools/networking/sipcalc { }; + + skribilo = callPackage ../tools/typesetting/skribilo { + tex = texlive.combined.scheme-small; + }; + + sleuthkit = callPackage ../tools/system/sleuthkit {}; + + sleepyhead = libsForQt512.callPackage ../applications/misc/sleepyhead {}; + + slirp4netns = callPackage ../tools/networking/slirp4netns/default.nix { }; + + slsnif = callPackage ../tools/misc/slsnif { }; + + slstatus = callPackage ../applications/misc/slstatus { + conf = config.slstatus.conf or null; + }; + + sm64ex = callPackage ../games/sm64ex { }; + + 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 {}; + + smu = callPackage ../tools/text/smu { }; + + smugline = python3Packages.smugline; + + sn0int = callPackage ../tools/security/sn0int { }; + + snabb = callPackage ../tools/networking/snabb { } ; + + snapcast = callPackage ../applications/audio/snapcast { }; + + sng = callPackage ../tools/graphics/sng { + libpng = libpng12; + }; + + 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 { }; + + 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 { }; + + 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; + }; + + solr = callPackage ../servers/search/solr { }; + solr_7 = solr; + solr_8 = solr; + + solvespace = callPackage ../applications/graphics/solvespace { }; + + sonarr = callPackage ../servers/sonarr { }; + + sonata = callPackage ../applications/audio/sonata { }; + + soundkonverter = kdeApplications.callPackage ../applications/audio/soundkonverter {}; + + 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 { }; + + stdman = callPackage ../data/documentation/stdman { }; + + steck = callPackage ../servers/pinnwand/steck.nix { }; + + stenc = callPackage ../tools/backup/stenc { }; + + stm32loader = with python3Packages; toPythonApplication stm32loader; + + stubby = callPackage ../tools/networking/stubby { }; + + syntex = callPackage ../tools/graphics/syntex {}; + + sl = callPackage ../tools/misc/sl { stdenv = gccStdenv; }; + + socat = callPackage ../tools/networking/socat { }; + + socat2pre = lowPrio (callPackage ../tools/networking/socat/2.x.nix { }); + + solaar = callPackage ../applications/misc/solaar {}; + + sourceHighlight = callPackage ../tools/text/source-highlight { }; + + spacebar = callPackage ../os-specific/darwin/spacebar { + inherit (darwin.apple_sdk.frameworks) + Carbon Cocoa ScriptingBridge; + }; + + spaceFM = callPackage ../applications/misc/spacefm { }; + + speech-denoiser = callPackage ../applications/audio/speech-denoiser {}; + + splot = haskell.lib.justStaticExecutables haskellPackages.splot; + + 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-to-vtt-cl = callPackage ../tools/cd-dvd/srt-to-vtt-cl { }; + + 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 {}; + + strip-nondeterminism = perlPackages.strip-nondeterminism; + + structure-synth = callPackage ../tools/graphics/structure-synth { }; + + su-exec = callPackage ../tools/security/su-exec {}; + + subberthehut = callPackage ../tools/misc/subberthehut { }; + + 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 { }; + + supertux-editor = callPackage ../applications/editors/supertux-editor { }; + + svgbob = callPackage ../tools/graphics/svgbob { }; + + svgcleaner = callPackage ../tools/graphics/svgcleaner { }; + + 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 { + openssl = openssl_1_0_2.override { + enableSSL2 = true; + enableSSL3 = true; + }; + }; + + 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 { }; + + stress = callPackage ../tools/system/stress { }; + + stress-ng = callPackage ../tools/system/stress-ng { }; + + stoken = callPackage ../tools/security/stoken (config.stoken or {}); + + storeBackup = callPackage ../tools/backup/store-backup { }; + + stow = callPackage ../tools/misc/stow { }; + + stun = callPackage ../tools/networking/stun { }; + + stunnel = callPackage ../tools/networking/stunnel { }; + + stutter = haskell.lib.overrideCabal (haskell.lib.justStaticExecutables haskellPackages.stutter) (drv: { + preCheck = "export PATH=dist/build/stutter:$PATH"; + }); + + strongswan = callPackage ../tools/networking/strongswan { }; + strongswanTNC = strongswan.override { enableTNC = true; }; + strongswanNM = strongswan.override { enableNetworkManager = true; }; + + stylish-haskell = haskell.lib.justStaticExecutables haskellPackages.stylish-haskell; + + su = shadow.su; + + subsonic = callPackage ../servers/misc/subsonic { }; + + subfinder = callPackage ../tools/networking/subfinder { }; + + surfraw = callPackage ../tools/networking/surfraw { }; + + swagger-codegen = callPackage ../tools/networking/swagger-codegen { }; + + swec = callPackage ../tools/networking/swec { }; + + svnfs = callPackage ../tools/filesystems/svnfs { }; + + 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 { + libxml2 = libxml2Python; + }; + + systembus-notify = callPackage ../applications/misc/systembus-notify { }; + + stricat = callPackage ../tools/security/stricat { }; + + staruml = callPackage ../tools/misc/staruml { inherit (gnome2) GConf; libgcrypt = libgcrypt_1_5; }; + + stone-phaser = callPackage ../applications/audio/stone-phaser { }; + + systrayhelper = callPackage ../tools/misc/systrayhelper {}; + + Sylk = callPackage ../applications/networking/Sylk {}; + + privoxy = callPackage ../tools/networking/privoxy { + w3m = w3m-batch; + }; + + swaks = callPackage ../tools/networking/swaks { }; + + swiften = callPackage ../development/libraries/swiften { }; + + t = callPackage ../tools/misc/t { }; + + tabnine = callPackage ../development/tools/tabnine { }; + + t1utils = callPackage ../tools/misc/t1utils { }; + + talkfilters = callPackage ../misc/talkfilters {}; + + znapzend = callPackage ../tools/backup/znapzend { }; + + targetcli = callPackage ../os-specific/linux/targetcli { }; + + tarsnap = callPackage ../tools/backup/tarsnap { }; + + tarsnapper = callPackage ../tools/backup/tarsnapper { }; + + tartube = callPackage ../applications/video/tartube { }; + + tayga = callPackage ../tools/networking/tayga { }; + + tcpcrypt = callPackage ../tools/security/tcpcrypt { }; + + tcptraceroute = callPackage ../tools/networking/tcptraceroute { }; + + tboot = callPackage ../tools/security/tboot { }; + + tcpdump = callPackage ../tools/networking/tcpdump { }; + + tcpflow = callPackage ../tools/networking/tcpflow { }; + + tcpkali = callPackage ../applications/networking/tcpkali { }; + + tcpreplay = callPackage ../tools/networking/tcpreplay { }; + + tdns-cli = callPackage ../tools/networking/tdns-cli { }; + + ted = callPackage ../tools/typesetting/ted { }; + + teamviewer = libsForQt514.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; + }; + + termius = callPackage ../applications/networking/termius { }; + + termplay = callPackage ../tools/misc/termplay { }; + + 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 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 { }; + + texworks = libsForQt514.callPackage ../applications/editors/texworks { }; + + thc-hydra = callPackage ../tools/security/thc-hydra { }; + + thc-ipv6 = callPackage ../tools/security/thc-ipv6 { }; + + theharvester = callPackage ../tools/security/theharvester { }; + + inherit (nodePackages) thelounge; + + thefuck = python3Packages.callPackage ../tools/misc/thefuck { }; + + thin-provisioning-tools = callPackage ../tools/misc/thin-provisioning-tools { }; + + thinkpad-scripts = python3.pkgs.callPackage ../tools/misc/thinkpad-scripts { }; + + tiled = libsForQt5.callPackage ../applications/editors/tiled { }; + + tiledb = callPackage ../development/libraries/tiledb { }; + + tilem = callPackage ../misc/emulators/tilem { }; + + timemachine = callPackage ../applications/audio/timemachine { }; + + timelapse-deflicker = callPackage ../applications/graphics/timelapse-deflicker { }; + + timetrap = callPackage ../applications/office/timetrap { }; + + timetable = callPackage ../applications/office/timetable { }; + + 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 { }; + + tilix = callPackage ../applications/misc/tilix { }; + + tinc_pre = callPackage ../tools/networking/tinc/pre.nix {}; + + tinycbor = callPackage ../development/libraries/tinycbor { }; + + tiny8086 = callPackage ../applications/virtualization/8086tiny { }; + + tinyemu = callPackage ../applications/virtualization/tinyemu { }; + + tinyfecvpn = callPackage ../tools/networking/tinyfecvpn {}; + + tinyprog = callPackage ../development/tools/misc/tinyprog { }; + + tinyproxy = callPackage ../tools/networking/tinyproxy {}; + + tio = callPackage ../tools/misc/tio { }; + + 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 { }; + + tmux = callPackage ../tools/misc/tmux { }; + + tmux-cssh = callPackage ../tools/misc/tmux-cssh { }; + + tmuxp = callPackage ../tools/misc/tmuxp { }; + + tmuxinator = callPackage ../tools/misc/tmuxinator { }; + + 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 { }; + + toml2nix = (callPackage ../tools/toml2nix { }).toml2nix { }; + + topgrade = callPackage ../tools/misc/topgrade { + inherit (darwin.apple_sdk.frameworks) Foundation; + }; + + tor = callPackage ../tools/security/tor { }; + + tor-arm = callPackage ../tools/security/tor/tor-arm.nix { }; + + tor-browser-bundle-bin = callPackage ../applications/networking/browsers/tor-browser-bundle-bin { }; + + touchegg = callPackage ../tools/inputmethods/touchegg { }; + + 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 {}; + + trezord = callPackage ../servers/trezord { }; + + trezor_agent = with python3Packages; toPythonApplication trezor_agent; + + tthsum = callPackage ../applications/misc/tthsum { }; + + 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 { }; + + transifex-client = python3.pkgs.callPackage ../tools/text/transifex-client { }; + + translate-shell = callPackage ../applications/misc/translate-shell { }; + + trash-cli = callPackage ../tools/misc/trash-cli { }; + + trebleshot = libsForQt5.callPackage ../applications/networking/trebleshot { }; + + 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; + + omapd = callPackage ../tools/security/omapd { }; + + ttf2pt1 = callPackage ../tools/misc/ttf2pt1 { }; + + ttfautohint = libsForQt5.callPackage ../tools/misc/ttfautohint { }; + ttfautohint-nox = ttfautohint.override { enableGUI = false; }; + + tty-clock = callPackage ../tools/misc/tty-clock { }; + + ttyplot = callPackage ../tools/misc/ttyplot { }; + + ttyrec = callPackage ../tools/misc/ttyrec { }; + + ttygif = callPackage ../tools/misc/ttygif { }; + + ttylog = callPackage ../tools/misc/ttylog { }; + + ipbt = callPackage ../tools/misc/ipbt { }; + + 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 { }; + + oysttyer = callPackage ../applications/networking/instant-messengers/oysttyer { }; + + twilight = callPackage ../tools/graphics/twilight { + libX11 = xorg.libX11; + }; + + twitterBootstrap = callPackage ../development/web/twitter-bootstrap {}; + + txr = callPackage ../tools/misc/txr { stdenv = clangStdenv; }; + + txt2man = callPackage ../tools/misc/txt2man { }; + + txt2tags = callPackage ../tools/text/txt2tags { }; + + txtw = callPackage ../tools/misc/txtw { }; + + tydra = callPackage ../tools/misc/tydra { }; + + u9fs = callPackage ../servers/u9fs { }; + + ua = callPackage ../tools/networking/ua { }; + + ubidump = python3Packages.callPackage ../tools/filesystems/ubidump { }; + + ubridge = callPackage ../tools/networking/ubridge { }; + + 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 { }; + + ufraw = callPackage ../applications/graphics/ufraw { + stdenv = gcc6Stdenv; # doesn't build with gcc7 + }; + + 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 { }; + + umlet = callPackage ../tools/misc/umlet { }; + + unetbootin = callPackage ../tools/cd-dvd/unetbootin { }; + + unfs3 = callPackage ../servers/unfs3 { }; + + unoconv = callPackage ../tools/text/unoconv { }; + + unrtf = callPackage ../tools/text/unrtf { }; + + unrpa = with python3Packages; toPythonApplication unrpa; + + untex = callPackage ../tools/text/untex { }; + + untrunc = callPackage ../tools/video/untrunc { }; + + untrunc-anthwlock = callPackage ../tools/video/untrunc-anthwlock { }; + + up = callPackage ../tools/misc/up { }; + + 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 {}; + + ursadb = callPackage ../servers/ursadb {}; + + usbmuxd = callPackage ../tools/misc/usbmuxd {}; + + usync = callPackage ../applications/misc/usync { }; + + uwsgi = callPackage ../servers/uwsgi { }; + + v2ray = callPackage ../tools/networking/v2ray { }; + + vacuum = callPackage ../applications/networking/instant-messengers/vacuum {}; + + vampire = callPackage ../applications/science/logic/vampire {}; + + variety = callPackage ../applications/misc/variety {}; + + vdmfec = callPackage ../applications/backup/vdmfec {}; + + vk-messenger = callPackage ../applications/networking/instant-messengers/vk-messenger {}; + + volatility = callPackage ../tools/security/volatility { }; + + 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 { }; + + verilator = callPackage ../applications/science/electronics/verilator {}; + + verilog = callPackage ../applications/science/electronics/verilog {}; + + 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; + }; + + viking = callPackage ../applications/misc/viking { + inherit (gnome2) scrollkeeper; + }; + + 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 { }; + + vnc2flv = callPackage ../tools/video/vnc2flv {}; + + vncrec = callPackage ../tools/video/vncrec { }; + + vo-amrwbenc = callPackage ../development/libraries/vo-amrwbenc { }; + + 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 { }; + + 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; + }; + + openconnect_pa = callPackage ../tools/networking/openconnect_pa { + openssl = null; + }; + + openconnect = openconnect_gnutls; + + openconnect_openssl = callPackage ../tools/networking/openconnect { + gnutls = null; + }; + + openconnect_gnutls = callPackage ../tools/networking/openconnect { + openssl = null; + }; + + ding-libs = callPackage ../tools/misc/ding-libs { }; + + sssd = callPackage ../os-specific/linux/sssd { + inherit (perlPackages) Po4a; + inherit (python27Packages) ldap; + }; + + vtun = callPackage ../tools/networking/vtun { + openssl = openssl_1_0_2; + }; + + waifu2x-converter-cpp = callPackage ../tools/graphics/waifu2x-converter-cpp { }; + + wakatime = pythonPackages.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; + }; + + watchman = callPackage ../development/tools/watchman { + inherit (darwin.apple_sdk.frameworks) CoreServices; + }; + + 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; + }; + + welkin = callPackage ../tools/graphics/welkin {}; + + wf-recorder = callPackage ../applications/video/wf-recorder { }; + + whipper = callPackage ../applications/audio/whipper { }; + + whois = callPackage ../tools/networking/whois { }; + + wifite2 = callPackage ../tools/networking/wifite2 { }; + + wimboot = callPackage ../tools/misc/wimboot { }; + + wireguard-tools = callPackage ../tools/networking/wireguard-tools { }; + + 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.justStaticExecutables + (haskellPackages.callPackage ../tools/networking/wstunnel {}); + + wolfebin = callPackage ../tools/networking/wolfebin { + python = python2; + }; + + xautoclick = callPackage ../applications/misc/xautoclick {}; + + xl2tpd = callPackage ../tools/networking/xl2tpd { }; + + xe = callPackage ../tools/system/xe { }; + + testdisk = libsForQt5.callPackage ../tools/system/testdisk { }; + + testdisk-qt = testdisk.override { enableQt = true; }; + + textql = callPackage ../development/tools/textql { }; + + 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; + }; + + 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 { + fontDirectories = [ xorg.fontadobe75dpi xorg.fontmiscmisc xorg.fontcursormisc xorg.fontbhlucidatypewriter75dpi ]; + }; + + tightvnc = callPackage ../tools/admin/tightvnc { + fontDirectories = [ xorg.fontadobe75dpi xorg.fontmiscmisc xorg.fontcursormisc + xorg.fontbhlucidatypewriter75dpi ]; + }; + + time = callPackage ../tools/misc/time { }; + + tweet-hs = haskell.lib.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 { }; + + tre = callPackage ../development/libraries/tre { }; + + ts = callPackage ../tools/system/ts { }; + + transfig = callPackage ../tools/graphics/transfig { + libpng = libpng12; + }; + + ttmkfdir = callPackage ../tools/misc/ttmkfdir { }; + + ttwatch = callPackage ../tools/misc/ttwatch { }; + + udunits = callPackage ../development/libraries/udunits { }; + + uemacs = callPackage ../applications/editors/uemacs { }; + + uftp = callPackage ../servers/uftp {}; + + uhttpmock = callPackage ../development/libraries/uhttpmock { }; + + uim = callPackage ../tools/inputmethods/uim { }; + + uhub = callPackage ../servers/uhub { }; + + unclutter = callPackage ../tools/misc/unclutter { }; + + unclutter-xfixes = callPackage ../tools/misc/unclutter-xfixes { }; + + unbound = callPackage ../tools/networking/unbound { }; + + units = callPackage ../tools/misc/units { + enableCurrenciesUpdater = true; + pythonPackages = python3Packages; + }; + + unittest-cpp = callPackage ../development/libraries/unittest-cpp { }; + + unrar = callPackage ../tools/archivers/unrar { }; + + xar = callPackage ../tools/compression/xar { }; + + xarchive = callPackage ../tools/archivers/xarchive { }; + + xarchiver = callPackage ../tools/archivers/xarchiver { }; + + xbanish = callPackage ../tools/X11/xbanish { }; + + xbill = callPackage ../games/xbill { }; + + xbrightness = callPackage ../tools/X11/xbrightness { }; + + xkbvalidate = callPackage ../tools/X11/xkbvalidate { }; + + 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 { }; + + xcruiser = callPackage ../applications/misc/xcruiser { }; + + xwallpaper = callPackage ../tools/X11/xwallpaper { }; + + 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 { stdenv = clangStdenv; }; + + unarj = callPackage ../tools/archivers/unarj { }; + + 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 { }; + + urlwatch = callPackage ../tools/networking/urlwatch { }; + + valum = callPackage ../development/web/valum { }; + + inherit (callPackages ../servers/varnish { }) + varnish60 varnish62 varnish63; + inherit (callPackages ../servers/varnish/packages.nix { }) + varnish60Packages + varnish62Packages + varnish63Packages; + + varnishPackages = varnish63Packages; + varnish = varnishPackages.varnish; + + hitch = callPackage ../servers/hitch { }; + + venus = callPackage ../tools/misc/venus { + python = python27; + }; + + veracrypt = callPackage ../applications/misc/veracrypt { + wxGTK = wxGTK30; + }; + + vlan = callPackage ../tools/networking/vlan { }; + + vmtouch = callPackage ../tools/misc/vmtouch { }; + + vncdo = callPackage ../tools/admin/vncdo { }; + + volumeicon = callPackage ../tools/audio/volumeicon { }; + + waf = callPackage ../development/tools/build-managers/waf { python = python3; }; + wafHook = callPackage ../development/tools/build-managers/wafHook { }; + + wagyu = callPackage ../tools/misc/wagyu { }; + + 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; + }; + + wg-bond = callPackage ../applications/networking/wg-bond { }; + + which = callPackage ../tools/system/which { }; + + whsniff = callPackage ../applications/networking/sniffers/whsniff { }; + + wiiuse = callPackage ../development/libraries/wiiuse { }; + + woeusb = callPackage ../tools/misc/woeusb { }; + + chase = callPackage ../tools/system/chase { }; + + wicd = callPackage ../tools/networking/wicd { }; + + 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 { }; + + 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; + }; + + clipnotify = callPackage ../tools/misc/clipnotify { }; + + x3270 = callPackage ../applications/misc/x3270 { }; + + 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; + + xmage = callPackage ../games/xmage { }; + + xml2 = callPackage ../tools/text/xml/xml2 { }; + + 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; + }; + + xmpppy = pythonPackages.xmpppy; + + 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 { }; + + yaft = callPackage ../applications/misc/yaft { }; + + yarn = callPackage ../development/tools/yarn { }; + + yarn2nix-moretea = callPackage ../development/tools/yarn2nix-moretea/yarn2nix { }; + + inherit (yarn2nix-moretea) + yarn2nix + mkYarnPackage + mkYarnModules + fixup_yarn_lock; + + yasr = callPackage ../applications/audio/yasr { }; + + yank = callPackage ../tools/misc/yank { }; + + yamllint = with python3Packages; toPythonApplication yamllint; + + yaml-merge = callPackage ../tools/text/yaml-merge { }; + + yeshup = callPackage ../tools/system/yeshup { }; + + 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 { }; + + 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 { }; + + zdelta = callPackage ../tools/compression/zdelta { }; + + zenith = callPackage ../tools/system/zenith { + inherit (darwin.apple_sdk.frameworks) IOKit; + }; + + zerotierone = callPackage ../tools/networking/zerotierone { }; + + zerofree = callPackage ../tools/filesystems/zerofree { }; + + 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 { }; + + zimreader = callPackage ../tools/text/zimreader { }; + + 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 { }; + + zsh-autoenv = callPackage ../tools/misc/zsh-autoenv { }; + + zsh-bd = callPackage ../shells/zsh/zsh-bd { }; + + zsh-git-prompt = callPackage ../shells/zsh/zsh-git-prompt { }; + + zsh-history = callPackage ../shells/zsh/zsh-history { }; + + 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-fast-syntax-highlighting = callPackage ../shells/zsh/zsh-fast-syntax-highlighting { }; + + 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-you-should-use = callPackage ../shells/zsh/zsh-you-should-use { }; + + zssh = callPackage ../tools/networking/zssh { }; + + zstd = callPackage ../tools/compression/zstd { + cmake = buildPackages.cmake.override { + libarchive = buildPackages.libarchive.override { zstd = null; }; + }; + }; + + zsync = callPackage ../tools/compression/zsync { }; + + zxing = callPackage ../tools/graphics/zxing {}; + + zmap = callPackage ../tools/security/zmap { }; + + + ### SHELLS + + runtimeShell = "${runtimeShellPackage}${runtimeShellPackage.shellPath}"; + runtimeShellPackage = bash; + + any-nix-shell = callPackage ../shells/any-nix-shell { }; + + bash = lowPrio (callPackage ../shells/bash/4.4.nix { }); + bash_5 = lowPrio (callPackage ../shells/bash/5.0.nix { }); + bashInteractive_5 = lowPrio (callPackage ../shells/bash/5.0.nix { + interactive = true; + withDocs = true; + }); + + # WARNING: this attribute is used by nix-shell so it shouldn't be removed/renamed + bashInteractive = callPackage ../shells/bash/4.4.nix { + interactive = true; + withDocs = true; + }; + + bash-completion = callPackage ../shells/bash/bash-completion { }; + + gradle-completion = callPackage ../shells/zsh/gradle-completion { }; + + nix-bash-completions = callPackage ../shells/bash/nix-bash-completions { }; + + dash = callPackage ../shells/dash { }; + + dasht = callPackage ../tools/misc/dasht { }; + + dashing = callPackage ../tools/misc/dashing { }; + + es = callPackage ../shells/es { }; + + fish = callPackage ../shells/fish { }; + + fish-foreign-env = callPackage ../shells/fish/fish-foreign-env { }; + + ion = callPackage ../shells/ion { }; + + jush = callPackage ../shells/jush { }; + + ksh = callPackage ../shells/ksh { }; + + liquidprompt = callPackage ../shells/liquidprompt { }; + + mksh = callPackage ../shells/mksh { }; + + oh = callPackage ../shells/oh { }; + + oil = callPackage ../shells/oil { }; + + pash = callPackage ../shells/pash { }; + + 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 { }; + + grml-zsh-config = callPackage ../shells/zsh/grml-zsh-config { }; + + powerline = with python3Packages; toPythonApplication powerline; + + ### DEVELOPMENT / COMPILERS + + 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-13-packages-linux = import ../development/compilers/adoptopenjdk-bin/jdk13-linux.nix; + adoptopenjdk-bin-13-packages-darwin = import ../development/compilers/adoptopenjdk-bin/jdk13-darwin.nix; + + 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; + adoptopenjdk-bin-11-packages-darwin = import ../development/compilers/adoptopenjdk-bin/jdk11-darwin.nix; + + 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; + adoptopenjdk-bin-8-packages-darwin = import ../development/compilers/adoptopenjdk-bin/jdk8-darwin.nix; + + 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 { }; + + aliceml = callPackage ../development/compilers/aliceml { }; + + arachne-pnr = callPackage ../development/compilers/arachne-pnr { }; + + asn1c = callPackage ../development/compilers/asn1c { }; + + aspectj = callPackage ../development/compilers/aspectj { }; + + ats = callPackage ../development/compilers/ats { }; + ats2 = callPackage ../development/compilers/ats2 { }; + + avra = callPackage ../development/compilers/avra { }; + + avian = callPackage ../development/compilers/avian { + inherit (darwin.apple_sdk.frameworks) CoreServices Foundation; + jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + + bigloo = callPackage ../development/compilers/bigloo { }; + + binaryen = callPackage ../development/compilers/binaryen { }; + + bluespec = callPackage ../development/compilers/bluespec { }; + + ciao = callPackage ../development/compilers/ciao { }; + + colm = callPackage ../development/compilers/colm { }; + + colmap = libsForQt514.callPackage ../applications/science/misc/colmap { }; + colmapWithCuda = colmap.override { cudaSupport = true; }; + + chickenPackages_4 = callPackage ../development/compilers/chicken/4 { }; + chickenPackages_5 = callPackage ../development/compilers/chicken/5 { }; + chickenPackages = chickenPackages_5; + + inherit (chickenPackages) + fetchegg + eggDerivation + chicken + egg2nix; + + 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-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; + clang-manpages = llvmPackages.clang-manpages; + + clang-sierraHack = clang.override { + name = "clang-wrapper-with-reexport-hack"; + bintools = darwin.binutils.override { + useMacosReexportHack = true; + }; + }; + + 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 { }; + + #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 { }; + + compcert = callPackage ../development/compilers/compcert {}; + + 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 + '' + stdenv.lib.optionalString (stdenv.targetPlatform.isLinux && !(stdenv.targetPlatform.useLLVM or false)) '' + echo "--gcc-toolchain=${gccForLibs}" >> $out/nix-support/cc-cflags + ''; + }; + + copper = callPackage ../development/compilers/copper {}; + + inherit (callPackages ../development/compilers/crystal { + inherit (llvmPackages_10) stdenv clang llvm; + }) + crystal_0_31 + crystal_0_32 + crystal_0_33 + crystal_0_34 + crystal + crystal2nix; + + icr = callPackage ../development/tools/icr { }; + + scry = callPackage ../development/tools/scry {}; + + dasm = callPackage ../development/compilers/dasm/default.nix { }; + + dbmate = callPackage ../development/tools/database/dbmate { }; + + devpi-client = python3Packages.callPackage ../development/tools/devpi-client {}; + + devpi-server = callPackage ../development/tools/devpi-server {}; + + dotty = callPackage ../development/compilers/scala/dotty.nix { jre = jre8;}; + + drumstick = callPackage ../development/libraries/drumstick { }; + + 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.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 { }; + + flyctl = callPackage ../development/web/flyctl { }; + + flutterPackages = + recurseIntoAttrs (callPackage ../development/compilers/flutter { }); + flutter = flutterPackages.stable; + + fpc = callPackage ../development/compilers/fpc { }; + + 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 + + gccFun = callPackage (if (with stdenv.targetPlatform; isVc4 || libc == "relibc") + then ../development/compilers/gcc/6 + else ../development/compilers/gcc/9); + gcc = if (with stdenv.targetPlatform; isVc4 || libc == "relibc") + then gcc6 else gcc9; + + gcc-unwrapped = gcc.cc; + + gccStdenv = if stdenv.cc.isGNU then stdenv else stdenv.override { + allowedRequisites = null; + cc = gcc; + # 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; + + 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; + })); + + crossLibcStdenv = overrideCC stdenv + (if stdenv.hostPlatform.useLLVM or false + then buildPackages.llvmPackages_8.lldClangNoLibc + else buildPackages.gccCrossStageStatic); + + # 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 = + if stdenv.targetPlatform.libc == "msvcrt" then targetPackages.windows.mingw_w64_headers + else if stdenv.targetPlatform.libc == "libSystem" then darwin.xcode + else if stdenv.targetPlatform.libc == "nblibc" then netbsd.headers + else null; + binutils1 = wrapBintoolsWith { + bintools = binutils-unwrapped; + libc = libcCross1; + }; + in wrapCCWith { + cc = gccFun { + # copy-pasted + inherit noSysDirs; + # PGO seems to speed up compilation by gcc by ~10%, see #445 discussion + profiledCompiler = with stdenv; (!isDarwin && (isi686 || isx86_64)); + isl = if !stdenv.isDarwin then isl_0_17 else null; + + # just for stage static + crossStageStatic = true; + langCC = false; + libcCross = libcCross1; + targetPackages.stdenv.cc.bintools = binutils1; + enableShared = false; + }; + bintools = binutils1; + libc = libcCross1; + extraPackages = []; + }; + + gcc48 = lowPrio (wrapCC (callPackage ../development/compilers/gcc/4.8 { + inherit noSysDirs; + + # PGO seems to speed up compilation by gcc by ~10%, see #445 discussion + profiledCompiler = with stdenv; (!isSunOS && !isDarwin && (isi686 || isx86_64)); + + 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; + + # PGO seems to speed up compilation by gcc by ~10%, see #445 discussion + profiledCompiler = with stdenv; (!isDarwin && (isi686 || isx86_64)); + + 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; + + # PGO seems to speed up compilation by gcc by ~10%, see #445 discussion + profiledCompiler = with stdenv; (!isDarwin && (isi686 || isx86_64)); + + 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 null + else if stdenv.targetPlatform.isRedox + then isl_0_17 + else isl_0_14; + })); + + gcc7 = lowPrio (wrapCC (callPackage ../development/compilers/gcc/7 { + inherit noSysDirs; + + # PGO seems to speed up compilation by gcc by ~10%, see #445 discussion + profiledCompiler = with stdenv; (!isDarwin && (isi686 || isx86_64)); + + 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_17 else null; + })); + + gcc8 = lowPrio (wrapCC (callPackage ../development/compilers/gcc/8 { + inherit noSysDirs; + + # PGO seems to speed up compilation by gcc by ~10%, see #445 discussion + profiledCompiler = with stdenv; (!isDarwin && (isi686 || isx86_64)); + + 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_17 else null; + })); + + gcc9 = lowPrio (wrapCC (callPackage ../development/compilers/gcc/9 { + inherit noSysDirs; + + # PGO seems to speed up compilation by gcc by ~10%, see #445 discussion + profiledCompiler = with stdenv; (!isDarwin && (isi686 || isx86_64)); + + enableLTO = !stdenv.isi686; + + 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_17 else null; + })); + + gcc10 = lowPrio (wrapCC (callPackage ../development/compilers/gcc/10 { + inherit noSysDirs; + + # PGO seems to speed up compilation by gcc by ~10%, see #445 discussion + profiledCompiler = with stdenv; (!isDarwin && (isi686 || isx86_64)); + + enableLTO = !stdenv.isi686; + + 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_17 else null; + })); + + gcc_latest = gcc10; + + gfortran = 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; + }); + + libgccjit = gcc9.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 pkgconfig perl; + inherit (gnome2) libart_lgpl; + }); + + gnat = gnat9; + + gnat6 = wrapCC (gcc6.cc.override { + name = "gnat"; + langC = true; + langCC = false; + langAda = true; + profiledCompiler = false; + inherit gnatboot; + }); + + gnat9 = wrapCC (gcc9.cc.override { + name = "gnat"; + langC = true; + langCC = false; + langAda = true; + profiledCompiler = false; + gnatboot = gnat6; + }); + + gnat10 = wrapCC (gcc10.cc.override { + name = "gnat"; + langC = true; + langCC = false; + langAda = true; + profiledCompiler = false; + gnatboot = gnat6; + }); + + 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 = gcc-arm-embedded-9; + + 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.ghc884; + + inherit (haskellPackages) ghc; + + cabal-install = haskell.lib.justStaticExecutables haskellPackages.cabal-install; + + stack = haskell.lib.justStaticExecutables haskellPackages.stack; + hlint = haskell.lib.justStaticExecutables haskellPackages.hlint; + + # We use a version built with an older compiler because of https://github.com/pikajude/stylish-cabal/issues/12. + stylish-cabal = haskell.lib.justStaticExecutables haskell.packages.ghc865.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; + + spago = callPackage ../development/tools/purescript/spago { }; + + pulp = nodePackages.pulp; + + pscid = nodePackages.pscid; + + remarkable-toolchain = callPackage ../development/tools/misc/remarkable/remarkable-toolchain { }; + + 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 { + ocamlPackages = ocaml-ng.ocamlPackages_4_05; + }) haxe_3_2 haxe_3_4; + haxe = haxe_3_4; + 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 { }; + + fsharp41 = callPackage ../development/compilers/fsharp41 { mono = mono6; }; + + fstar = callPackage ../development/compilers/fstar { + ocamlPackages = ocaml-ng.ocamlPackages_4_07; + }; + + dotnetPackages = recurseIntoAttrs (callPackage ./dotnet-packages.nix {}); + + glslang = callPackage ../development/compilers/glslang { }; + + go_bootstrap = if stdenv.isAarch64 then + srcOnly { + name = "go-1.8-linux-arm64-bootstrap"; + src = fetchurl { + url = "https://cache.xor.us/go-1.8-linux-arm64-bootstrap.tar.xz"; + sha256 = "0sk6g03x9gbxk2k1djnrgy8rzw1zc5f6ssw0hbxk6kjr85lpmld6"; + }; + } + else + callPackage ../development/compilers/go/1.4.nix { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + go_1_14 = callPackage ../development/compilers/go/1.14.nix ({ + inherit (darwin.apple_sdk.frameworks) Security Foundation; + } // lib.optionalAttrs stdenv.isAarch64 { + stdenv = gcc8Stdenv; + buildPackages = buildPackages // { stdenv = gcc8Stdenv; }; + }); + + go_1_15 = callPackage ../development/compilers/go/1.15.nix ({ + inherit (darwin.apple_sdk.frameworks) Security Foundation; + } // lib.optionalAttrs stdenv.isAarch64 { + stdenv = gcc8Stdenv; + buildPackages = buildPackages // { stdenv = gcc8Stdenv; }; + }); + + go = go_1_15; + + go-repo-root = callPackage ../development/tools/go-repo-root { }; + + go-junit-report = callPackage ../development/tools/go-junit-report { }; + + gogetdoc = callPackage ../development/tools/gogetdoc { }; + + gox = callPackage ../development/tools/gox { }; + + gprolog = callPackage ../development/compilers/gprolog { }; + + 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 { }; + + 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 (emacsPackages.melpaStablePackages) irony; + }; + + hugs = callPackage ../development/interpreters/hugs { }; + + openjfx11 = callPackage ../development/compilers/openjdk/openjfx/11.nix { }; + + openjfx14 = callPackage ../development/compilers/openjdk/openjfx/14.nix { }; + + openjdk8-bootstrap = + if adoptopenjdk-hotspot-bin-8.meta.available then + adoptopenjdk-hotspot-bin-8 + else + callPackage ../development/compilers/openjdk/bootstrap.nix { version = "8"; }; + + /* legacy jdk for use as needed by older apps */ + openjdk8 = + if stdenv.isDarwin then + callPackage ../development/compilers/openjdk/darwin/8.nix { } + else + callPackage ../development/compilers/openjdk/8.nix { + inherit (gnome2) GConf gnome_vfs; + }; + + openjdk8_headless = + if stdenv.isDarwin || stdenv.isAarch64 then + openjdk8 + else + openjdk8.override { headless = true; }; + + jdk8 = openjdk8; + jdk8_headless = openjdk8_headless; + jre8 = openjdk8.jre; + jre8_headless = openjdk8_headless.jre; + + openjdk11-bootstrap = + if adoptopenjdk-hotspot-bin-11.meta.available then + adoptopenjdk-hotspot-bin-11 + else + callPackage ../development/compilers/openjdk/bootstrap.nix { version = "10"; }; + + /* currently maintained LTS JDK */ + openjdk11 = + if stdenv.isDarwin then + callPackage ../development/compilers/openjdk/darwin/11.nix { } + else + callPackage ../development/compilers/openjdk/11.nix { + openjfx = openjfx11; + inherit (gnome2) GConf gnome_vfs; + }; + + openjdk11_headless = + if stdenv.isDarwin then + openjdk11 + else + openjdk11.override { headless = true; }; + + openjdk14-bootstrap = + if adoptopenjdk-hotspot-bin-13.meta.available then + adoptopenjdk-hotspot-bin-13 + else + /* adoptopenjdk not available for i686, so fall back to our old builds of 12 & 13 for bootstrapping */ + callPackage ../development/compilers/openjdk/13.nix { + openjfx = openjfx11; /* need this despite next line :-( */ + enableJavaFX = false; + headless = true; + inherit (gnome2) GConf gnome_vfs; + openjdk13-bootstrap = callPackage ../development/compilers/openjdk/12.nix { + openjfx = openjfx11; /* need this despite next line :-( */ + enableJavaFX = false; + headless = true; + inherit (gnome2) GConf gnome_vfs; + }; + }; + + jdk11 = openjdk11; + jdk11_headless = openjdk11_headless; + + /* Latest JDK */ + openjdk14 = + if stdenv.isDarwin then + callPackage ../development/compilers/openjdk/darwin { } + else + callPackage ../development/compilers/openjdk { + openjfx = openjfx14; + inherit (gnome2) GConf gnome_vfs; + }; + + openjdk14_headless = + if stdenv.isDarwin then + openjdk14 + else + openjdk14.override { headless = true; }; + + jdk14 = openjdk14; + jdk14_headless = openjdk14_headless; + + /* default JDK */ + + jdk = jdk14; + # jdk14 lacks a jre output. See https://github.com/NixOS/nixpkgs/issues/79490 + jre = jdk14; + jre_headless = jdk14_headless; + + openjdk = openjdk14; + openjdk_headless = openjdk14_headless; + + inherit (callPackages ../development/compilers/graalvm { + gcc = if stdenv.targetPlatform.isDarwin then gcc8 else gcc; + inherit (darwin.apple_sdk.frameworks) + CoreFoundation Foundation JavaNativeFoundation + JavaVM JavaRuntimeSupport Cocoa; + inherit (darwin) libiconv libobjc libresolv; + }) mx jvmci8 graalvm8; + + inherit (callPackages ../development/compilers/graalvm/enterprise-edition.nix { }) + graalvm8-ee + graalvm11-ee; + + openshot-qt = let + # Cannot use a newer Qt (5.15) version because it requires qtwebkit + # and our qtwebkit fails to build with 5.15. 01bcfd3579219d60e5d07df309a000f96b2b658b + pkgs_ = pkgs.extend(_: prev: { + pythonInterpreters = prev.pythonInterpreters.override(oldAttrs: { + pkgs = oldAttrs.pkgs.extend(_: _: { + qt5 = pkgs.qt514; + libsForQt5 = pkgs.libsForQt514; + }); + }); + }); + in pkgs_.libsForQt514.callPackage ../applications/video/openshot-qt { }; + + openspin = callPackage ../development/compilers/openspin { }; + + oraclejdk = pkgs.jdkdistro true false; + + oraclejdk8 = pkgs.oraclejdk8distro true false; + + oraclejre = lowPrio (pkgs.jdkdistro false false); + + oraclejre8 = lowPrio (pkgs.oraclejdk8distro false false); + + jrePlugin = jre8Plugin; + + jre8Plugin = lowPrio (pkgs.oraclejdk8distro false true); + + jdkdistro = oraclejdk8distro; + + oraclejdk8distro = installjdk: pluginSupport: + (if pluginSupport then appendToName "with-plugin" else x: x) + (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 { }; + + julia_07 = callPackage ../development/compilers/julia/0.7.nix { + gmp = gmp6; + inherit (darwin.apple_sdk.frameworks) CoreServices ApplicationServices; + }; + + julia_10 = callPackage ../development/compilers/julia/1.0.nix { + gmp = gmp6; + inherit (darwin.apple_sdk.frameworks) CoreServices ApplicationServices; + }; + + julia_11 = callPackage ../development/compilers/julia/1.1.nix { + gmp = gmp6; + inherit (darwin.apple_sdk.frameworks) CoreServices ApplicationServices; + }; + + julia_13 = callPackage ../development/compilers/julia/1.3.nix { + gmp = gmp6; + inherit (darwin.apple_sdk.frameworks) CoreServices ApplicationServices; + }; + + julia_1 = julia_10; + julia = julia_1; + + jwasm = callPackage ../development/compilers/jwasm { }; + + knightos-kcc = callPackage ../development/tools/knightos/kcc { }; + + knightos-kimg = callPackage ../development/tools/knightos/kimg { + asciidoc = asciidoc-full; + imagemagick = imagemagick7Big; + }; + + knightos-kpack = callPackage ../development/tools/knightos/kpack { }; + + knightos-mkrom = callPackage ../development/tools/knightos/mkrom { + asciidoc = asciidoc-full; + }; + + knightos-patchrom = callPackage ../development/tools/knightos/patchrom { }; + + knightos-mktiupgrade = callPackage ../development/tools/knightos/mktiupgrade { + asciidoc = asciidoc-full; + }; + + knightos-scas = callPackage ../development/tools/knightos/scas { }; + + knightos-z80e = callPackage ../development/tools/knightos/z80e { }; + + kotlin = callPackage ../development/compilers/kotlin { }; + + 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; + + 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; + + llvm = llvmPackages.llvm; + llvm-manpages = llvmPackages.llvm-manpages; + + 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 = recurseIntoAttrs llvmPackages_7; + + llvmPackages_5 = callPackage ../development/compilers/llvm/5 { + inherit (stdenvAdapters) overrideCC; + buildLlvmTools = buildPackages.llvmPackages_5.tools; + targetLlvmLibraries = targetPackages.llvmPackages_5.libraries; + }; + + llvmPackages_6 = callPackage ../development/compilers/llvm/6 { + inherit (stdenvAdapters) overrideCC; + buildLlvmTools = buildPackages.llvmPackages_6.tools; + targetLlvmLibraries = targetPackages.llvmPackages_6.libraries; + }; + + llvmPackages_7 = callPackage ../development/compilers/llvm/7 { + inherit (stdenvAdapters) overrideCC; + buildLlvmTools = buildPackages.llvmPackages_7.tools; + targetLlvmLibraries = targetPackages.llvmPackages_7.libraries; + }; + + llvmPackages_8 = callPackage ../development/compilers/llvm/8 { + inherit (stdenvAdapters) overrideCC; + buildLlvmTools = buildPackages.llvmPackages_8.tools; + targetLlvmLibraries = targetPackages.llvmPackages_8.libraries; + }; + + llvmPackages_9 = callPackage ../development/compilers/llvm/9 { + inherit (stdenvAdapters) overrideCC; + buildLlvmTools = buildPackages.llvmPackages_9.tools; + targetLlvmLibraries = targetPackages.llvmPackages_9.libraries; + }; + + llvmPackages_10 = callPackage ../development/compilers/llvm/10 { + inherit (stdenvAdapters) overrideCC; + buildLlvmTools = buildPackages.llvmPackages_10.tools; + targetLlvmLibraries = targetPackages.llvmPackages_10.libraries; + }; + + llvmPackages_11 = callPackage ../development/compilers/llvm/11 ({ + inherit (stdenvAdapters) overrideCC; + buildLlvmTools = buildPackages.llvmPackages_11.tools; + targetLlvmLibraries = targetPackages.llvmPackages_11.libraries; + } // stdenv.lib.optionalAttrs (stdenv.hostPlatform.isi686 && buildPackages.stdenv.cc.isGNU) { + stdenv = gcc7Stdenv; + }); + + llvmPackages_latest = llvmPackages_10; + + llvmPackages_rocm = callPackage ../development/compilers/llvm/rocm { }; + + lorri = callPackage ../tools/misc/lorri { + inherit (darwin.apple_sdk.frameworks) CoreServices Security; + }; + + manticore = callPackage ../development/compilers/manticore { }; + + 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; }; + texinfo = texinfo5; + xlibsWrapper = null; + }; + + mitschemeX11 = mitscheme.override { + texLive = texlive.combine { inherit (texlive) scheme-small; }; + texinfo = texinfo5; + 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 = mono5; + + 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 { }; + + msbuild = callPackage ../development/tools/build-managers/msbuild { mono = mono6; }; + + 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 { }; + + nim = callPackage ../development/compilers/nim { }; + nim-unwrapped = nim.unwrapped; + + nrpl = callPackage ../development/tools/nrpl { }; + + neko = callPackage ../development/compilers/neko { }; + + nextpnr = libsForQt514.callPackage ../development/compilers/nextpnr { + 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_15_0; + + 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_02; + }; + + 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; + }; + + open-watcom-bin = callPackage ../development/compilers/open-watcom-bin { }; + + 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 = clangStdenv; + }; + + pony-corral = callPackage ../development/compilers/ponyc/pony-corral.nix { }; + pony-stable = callPackage ../development/compilers/ponyc/pony-stable.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 { + inherit (llvmPackages_rocm) clang; + }; + + rocm-cmake = callPackage ../development/tools/build-managers/rocm-cmake { }; + + rocm-comgr = callPackage ../development/libraries/rocm-comgr { + inherit (llvmPackages_rocm) clang lld llvm; + device-libs = rocm-device-libs; + }; + + 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; + }; + + # Python >= 3.8 still gives a bunch of warnings. + rocm-smi = python37.pkgs.callPackage ../tools/system/rocm-smi { }; + + rocm-thunk = callPackage ../development/libraries/rocm-thunk { }; + + rtags = callPackage ../development/tools/rtags { + inherit (darwin) apple_sdk; + }; + + # Because rustc-1.46.0 enables static PIE by default for + # `x86_64-unknown-linux-musl` this release will suffer from: + # + # https://github.com/NixOS/nixpkgs/issues/94228 + # + # So this commit doesn't remove the 1.45.2 release. + rust_1_45 = callPackage ../development/compilers/rust/1_45.nix { + inherit (darwin.apple_sdk.frameworks) CoreFoundation Security; + llvmPackages = llvmPackages_10; + }; + rust_1_46 = callPackage ../development/compilers/rust/1_46.nix { + inherit (darwin.apple_sdk.frameworks) CoreFoundation Security; + llvmPackages = llvmPackages_10; + }; + rust = rust_1_46; + + rustPackages_1_45 = rust_1_45.packages.stable; + rustPackages_1_46 = rust_1_46.packages.stable; + rustPackages = rustPackages_1_46; + + 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 { }; + buildRustCrateTests = recurseIntoAttrs (callPackage ../build-support/rust/build-rust-crate/test { }); + 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-audit = callPackage ../tools/package-management/cargo-audit { + inherit (darwin.apple_sdk.frameworks) Security; + }; + cargo-c = callPackage ../development/tools/rust/cargo-c { + inherit (darwin.apple_sdk.frameworks) CoreFoundation 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-outdated = callPackage ../tools/package-management/cargo-outdated {}; + cargo-release = callPackage ../tools/package-management/cargo-release { + inherit (darwin.apple_sdk.frameworks) Security; + }; + cargo-tarpaulin = callPackage ../development/tools/analysis/cargo-tarpaulin { }; + 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-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; + }; + cargo-deny = callPackage ../development/tools/rust/cargo-deny { + inherit (darwin.apple_sdk.frameworks) Security; + }; + cargo-embed = callPackage ../development/tools/rust/cargo-embed { }; + cargo-expand = callPackage ../development/tools/rust/cargo-expand { }; + cargo-flash = callPackage ../development/tools/rust/cargo-flash { }; + 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-make = callPackage ../development/tools/rust/cargo-make { + inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration; + }; + cargo-raze = callPackage ../development/tools/rust/cargo-raze { + 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-udeps = callPackage ../development/tools/rust/cargo-udeps { + inherit (darwin.apple_sdk.frameworks) CoreServices Security; + }; + cargo-watch = callPackage ../development/tools/rust/cargo-watch { + inherit (darwin.apple_sdk.frameworks) CoreServices; + }; + cargo-xbuild = callPackage ../development/tools/rust/cargo-xbuild { }; + cargo-generate = callPackage ../development/tools/rust/cargo-generate { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + maturin = callPackage ../development/tools/rust/maturin { }; + inherit (rustPackages) rls; + rustfmt = rustPackages.rustfmt; + rustracer = callPackage ../development/tools/rust/racer { + inherit (darwin.apple_sdk.frameworks) Security; + }; + rustracerd = callPackage ../development/tools/rust/racerd { + inherit (darwin.apple_sdk.frameworks) Security; + }; + inherit (callPackage ../development/tools/rust/rust-analyzer { }) + rust-analyzer-unwrapped rust-analyzer; + rust-bindgen = callPackage ../development/tools/rust/bindgen { }; + rust-cbindgen = callPackage ../development/tools/rust/cbindgen { + inherit (darwin.apple_sdk.frameworks) Security; + }; + rustup = callPackage ../development/tools/rust/rustup { + inherit (darwin.apple_sdk.frameworks) CoreServices Security; + }; + + sagittarius-scheme = callPackage ../development/compilers/sagittarius-scheme {}; + + sbclBootstrap = callPackage ../development/compilers/sbcl/bootstrap.nix {}; + sbcl_2_0_2 = callPackage ../development/compilers/sbcl {}; + sbcl = callPackage ../development/compilers/sbcl/2.0.0.nix {}; + + scala_2_10 = callPackage ../development/compilers/scala/2.10.nix { }; + scala_2_11 = callPackage ../development/compilers/scala/2.11.nix { }; + scala_2_12 = callPackage ../development/compilers/scala/2.12.nix { jre = jre8; }; + scala_2_13 = callPackage ../development/compilers/scala/2.13.nix { jre = jre8; }; + scala = scala_2_13; + + 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 { }; + + sdcc = callPackage ../development/compilers/sdcc { + gputils = null; + }; + + serialdv = callPackage ../development/libraries/serialdv { }; + + serpent = callPackage ../development/compilers/serpent { }; + + shmig = callPackage ../development/tools/database/shmig { }; + + smlnjBootstrap = callPackage ../development/compilers/smlnj/bootstrap.nix { }; + smlnj = callPackage ../development/compilers/smlnj { }; + + solc = callPackage ../development/compilers/solc { }; + + souffle = callPackage ../development/compilers/souffle { }; + + spirv-llvm-translator = callPackage ../development/compilers/spirv-llvm-translator { }; + + sqldeveloper = callPackage ../development/tools/database/sqldeveloper { + jdk = oraclejdk; + }; + + squeak = callPackage ../development/compilers/squeak { }; + + squirrel-sql = callPackage ../development/tools/database/squirrel-sql { + drivers = [ 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 { }; + + 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_6; + lua = lua5_1; + }; + + teyjus = callPackage ../development/compilers/teyjus ( + with ocaml-ng.ocamlPackages_4_02; { + inherit ocaml; + omake = omake_rc1; + }); + + thrust = callPackage ../development/tools/thrust { + gconf = pkgs.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 { }; + + urn = callPackage ../development/compilers/urn { }; + + urweb = callPackage ../development/compilers/urweb { }; + + vlang = callPackage ../development/compilers/vlang { }; + + vala-lint = callPackage ../development/tools/vala-lint { }; + + inherit (callPackage ../development/compilers/vala { }) + vala_0_36 + vala_0_40 + vala_0_44 + vala_0_46 + vala_0_48 + vala; + + 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. + bintools ? if stdenv.targetPlatform.isDarwin then darwin.binutils else binutils + , 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 ? stdenv.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; + } // 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 { }; + + 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 { }; + + chibi = callPackage ../development/interpreters/chibi { }; + + ceptre = callPackage ../development/interpreters/ceptre { }; + + clips = callPackage ../development/interpreters/clips { }; + + clisp = callPackage ../development/interpreters/clisp { }; + clisp-tip = callPackage ../development/interpreters/clisp/hg.nix { }; + + clojure = callPackage ../development/interpreters/clojure { }; + + clojure-lsp = callPackage ../development/tools/misc/clojure-lsp { }; + + clooj = callPackage ../development/interpreters/clojure/clooj.nix { }; + + dhall = haskell.lib.justStaticExecutables haskellPackages.dhall; + + dhall-nix = haskell.lib.justStaticExecutables haskellPackages.dhall-nix; + + dhall-bash = haskell.lib.justStaticExecutables haskellPackages.dhall-bash; + + dhall-json = haskell.lib.justStaticExecutables haskellPackages.dhall-json; + + dhall-lsp-server = haskell.lib.justStaticExecutables haskellPackages.dhall-lsp-server; + + dhall-text = haskell.lib.justStaticExecutables haskellPackages.dhall-text; + + dhallPackages = callPackages ./dhall-packages.nix { }; + + duktape = callPackage ../development/interpreters/duktape { }; + + evcxr = callPackage ../development/interpreters/evcxr { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + beam = callPackage ./beam-packages.nix { }; + + inherit (beam.interpreters) + erlang erlangR23 erlangR22 erlangR21 erlangR20 erlangR19 erlangR18 + erlang_odbc erlang_javac erlang_odbc_javac erlang_nox erlang_basho_R16B02 + elixir elixir_1_10 elixir_1_9 elixir_1_8 elixir_1_7; + + inherit (beam.packages.erlang) + rebar rebar3 + fetchHex beamPackages + relxExe; + + inherit (beam.packages.erlangR19) cuter lfe_1_2; + + inherit (beam.packages.erlangR21) lfe lfe_1_3; + + groovy = callPackage ../development/interpreters/groovy { }; + + 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 { }; + + guile = guile_2_2; + + inherit (callPackages ../applications/networking/cluster/hadoop { + jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }) + hadoop_2_7 + hadoop_2_8 + hadoop_2_9 + hadoop_3_0 + hadoop_3_1; + hadoop = hadoop_2_7; + + io = callPackage ../development/interpreters/io { }; + + j = callPackage ../development/interpreters/j {}; + + janet = callPackage ../development/interpreters/janet {}; + + 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 { }; + + kona = callPackage ../development/interpreters/kona {}; + + lolcode = callPackage ../development/interpreters/lolcode { }; + + love_0_7 = callPackage ../development/interpreters/love/0.7.nix { lua=lua5_1; }; + love_0_8 = callPackage ../development/interpreters/love/0.8.nix { lua=lua5_1; }; + love_0_9 = callPackage ../development/interpreters/love/0.9.nix { }; + love_0_10 = callPackage ../development/interpreters/love/0.10.nix { }; + love_11 = callPackage ../development/interpreters/love/11.1.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 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 + + lush2 = callPackage ../development/interpreters/lush {}; + + maude = callPackage ../development/interpreters/maude { + stdenv = if stdenv.cc.isClang then llvmPackages_5.stdenv else stdenv; + }; + + me_cleaner = pythonPackages.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 { }; + + nix-exec = callPackage ../development/interpreters/nix-exec { + git = gitMinimal; + }; + + octave = callPackage ../development/interpreters/octave { + python = python3; + mkDerivation = stdenv.mkDerivation; + jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + octave-jit = callPackage ../development/interpreters/octave { + python = python3; + enableJIT = true; + mkDerivation = stdenv.mkDerivation; + jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + octaveFull = libsForQt5.callPackage ../development/interpreters/octave { + python = python3; + enableQt = true; + overridePlatforms = ["x86_64-linux" "x86_64-darwin"]; + jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + + ocropus = callPackage ../applications/misc/ocropus { }; + + pachyderm = callPackage ../applications/networking/cluster/pachyderm { }; + + php = php74; + + phpPackages = php74Packages; + php73Packages = recurseIntoAttrs php73.packages; + php74Packages = recurseIntoAttrs php74.packages; + + phpExtensions = php74Extensions; + php73Extensions = recurseIntoAttrs php73.extensions; + php74Extensions = recurseIntoAttrs php74.extensions; + + inherit (callPackage ../development/interpreters/php { + stdenv = if stdenv.cc.isClang then llvmPackages_6.stdenv else stdenv; + }) php74 php73; + + 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 + python = python2; + python2 = python27; + python3 = python38; + pypy = pypy2; + pypy2 = pypy27; + pypy3 = pypy36; + + # Python interpreter that is build with all modules, including tkinter. + # These are for compatibility and should not be used inside Nixpkgs. + pythonFull = python.override { + self = pythonFull; + x11Support = true; + }; + python2Full = python2.override { + self = python2Full; + x11Support = true; + }; + python27Full = python27.override { + self = python27Full; + x11Support = true; + }; + python3Full = python3.override { + self = python3Full; + bluezSupport = true; + x11Support = true; + }; + python36Full = python36.override { + self = python36Full; + bluezSupport = true; + x11Support = true; + }; + python37Full = python37.override { + self = python37Full; + bluezSupport = true; + x11Support = true; + }; + python38Full = python38.override { + self = python38Full; + bluezSupport = true; + x11Support = true; + }; + python39Full = python39.override { + self = python39Full; + bluezSupport = true; + x11Support = true; + }; + + # pythonPackages further below, but assigned here because they need to be in sync + pythonPackages = python.pkgs; + python2Packages = python2.pkgs; + python3Packages = python3.pkgs; + + pythonInterpreters = callPackage ./../development/interpreters/python { + # Overrides that apply to all Python interpreters and their packages + # Generally, this should be avoided. + pkgs = pkgs.extend (final: _: { + }); + }; + inherit (pythonInterpreters) python27 python36 python37 python38 python39 python3Minimal pypy27 pypy36; + + # Python package sets. + python27Packages = lib.hiPrioSet (recurseIntoAttrs python27.pkgs); + python36Packages = python36.pkgs; + python37Packages = recurseIntoAttrs python37.pkgs; + python38Packages = recurseIntoAttrs python38.pkgs; + python39Packages = python39.pkgs; + pypyPackages = pypy.pkgs; + pypy2Packages = pypy2.pkgs; + pypy27Packages = pypy27.pkgs; + pypy3Packages = pypy3.pkgs; + + pythonManylinuxPackages = callPackage ./../development/interpreters/python/manylinux { }; + + 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 { }; + + python2nix = callPackage ../tools/package-management/python2nix { }; + + pythonDocs = recurseIntoAttrs (callPackage ../development/interpreters/python/cpython/docs {}); + + pypi2nix = callPackage ../development/tools/pypi2nix {}; + + 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/default.nix 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; + }; + + pipenv = callPackage ../development/tools/pipenv {}; + + pipewire = callPackage ../development/libraries/pipewire {}; + pipewire_0_2 = callPackage ../development/libraries/pipewire/0.2.nix {}; + + pyradio = callPackage ../applications/radio/pyradio {}; + + pyrex = pyrex095; + + pyrex095 = callPackage ../development/interpreters/pyrex/0.9.5.nix { }; + + pyrex096 = callPackage ../development/interpreters/pyrex/0.9.6.nix { }; + + 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-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 { }; + + regextester = callPackage ../applications/misc/regextester { }; + + regina = callPackage ../development/interpreters/regina { }; + + inherit (ocamlPackages) reason; + + renpy = callPackage ../development/interpreters/renpy { }; + + 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 { }; + 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 = callPackage ../development/ruby-modules/solargraph { }; + + inherit (callPackage ../development/interpreters/ruby { + inherit (darwin) libiconv libobjc libunwind; + inherit (darwin.apple_sdk.frameworks) Foundation; + bison = buildPackages.bison_3_5; + }) + ruby_2_5 + ruby_2_6 + ruby_2_7; + + rubyMinimal = ruby.override { + # gem support is minimal overhead + rubygemsSupport = true; + useRailsExpress = false; + zlibSupport = false; + opensslSupport = false; + gdbmSupport = false; + cursesSupport = false; + docSupport = false; + yamlSupport = false; + fiddleSupport = false; + }; + + ruby = ruby_2_6; + rubyPackages = rubyPackages_2_6; + + rubyPackages_2_5 = recurseIntoAttrs ruby_2_5.gems; + rubyPackages_2_6 = recurseIntoAttrs ruby_2_6.gems; + rubyPackages_2_7 = recurseIntoAttrs ruby_2_7.gems; + + mruby = callPackage ../development/compilers/mruby { }; + + scsh = callPackage ../development/interpreters/scsh { }; + + scheme48 = callPackage ../development/interpreters/scheme48 { }; + + self = pkgsi686Linux.callPackage ../development/interpreters/self { }; + + spark = callPackage ../applications/networking/cluster/spark { }; + + sparkleshare = callPackage ../applications/version-management/sparkleshare { }; + + spidermonkey_1_8_5 = callPackage ../development/interpreters/spidermonkey/1.8.5.nix { }; + spidermonkey_38 = callPackage ../development/interpreters/spidermonkey/38.nix ({ + inherit (darwin) libobjc; + } // (stdenv.lib.optionalAttrs (stdenv.hostPlatform.isi686 && stdenv.cc.isGNU) { + stdenv = gcc6Stdenv; # with gcc-7: undefined reference to `__divmoddi4' + })); + spidermonkey_60 = callPackage ../development/interpreters/spidermonkey/60.nix { }; + spidermonkey_68 = callPackage ../development/interpreters/spidermonkey/68.nix { }; + spidermonkey_78 = callPackage ../development/interpreters/spidermonkey/78.nix { }; + + ssm-agent = callPackage ../applications/networking/cluster/ssm-agent { }; + ssm-session-manager-plugin = callPackage ../applications/networking/cluster/ssm-session-manager-plugin { }; + + supercollider = libsForQt514.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 { }; + + wasm = ocamlPackages.wasm; + + proglodyte-wasm = callPackage ../development/interpreters/proglodyte-wasm { }; + + + ### 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/misc/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-cairo = callPackage ../development/guile-modules/guile-cairo { }; + + guile-fibers = callPackage ../development/guile-modules/guile-fibers { }; + + guile-gnome = callPackage ../development/guile-modules/guile-gnome { + gconf = gnome2.GConf; + guile = guile_2_0; + inherit (gnome2) gnome_vfs libglade libgnome libgnomecanvas libgnomeui; + }; + + 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-xcb = callPackage ../development/guile-modules/guile-xcb { + guile = guile_2_0; + }; + + inav = callPackage ../development/misc/stm32/inav { + gcc-arm-embedded = pkgsCross.arm-embedded.buildPackages.gcc; + binutils-arm-embedded = pkgsCross.arm-embedded.buildPackages.binutils; + }; + + 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; + }; + + mspdebug = callPackage ../development/misc/msp430/mspdebug.nix { }; + + vc4-newlib = callPackage ../development/misc/vc4/newlib.nix {}; + resim = callPackage ../misc/emulators/resim {}; + + rappel = callPackage ../development/misc/rappel/default.nix { }; + + 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 { }; + + srandrd = callPackage ../tools/X11/srandrd { }; + + srecord = callPackage ../development/tools/misc/srecord { }; + + srelay = callPackage ../tools/networking/srelay { }; + + xidel = callPackage ../tools/text/xidel { }; + + + ### DEVELOPMENT / TOOLS + + abi-compliance-checker = callPackage ../development/tools/misc/abi-compliance-checker { }; + + abi-dumper = callPackage ../development/tools/misc/abi-dumper { }; + + adtool = callPackage ../tools/admin/adtool { }; + + inherit (callPackage ../development/tools/alloy { + jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }) + alloy4 + alloy5 + alloy; + + ameba = callPackage ../development/tools/ameba { }; + + augeas = callPackage ../tools/system/augeas { }; + + inherit (callPackage ../tools/admin/ansible { }) + ansible + ansible_2_8 + ansible_2_9 + ansible_2_10; + + ansible-lint = with python3.pkgs; toPythonApplication ansible-lint; + + antlr = 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_7 = callPackage ../development/tools/parsing/antlr/4.7.nix { + jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + antlr4 = antlr4_7; + + 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_5; + apacheKafka_0_9 = callPackage ../servers/apache-kafka { majorVersion = "0.9"; }; + apacheKafka_0_10 = callPackage ../servers/apache-kafka { majorVersion = "0.10"; }; + apacheKafka_0_11 = callPackage ../servers/apache-kafka { majorVersion = "0.11"; }; + apacheKafka_1_0 = callPackage ../servers/apache-kafka { majorVersion = "1.0"; }; + apacheKafka_1_1 = callPackage ../servers/apache-kafka { majorVersion = "1.1"; }; + apacheKafka_2_0 = callPackage ../servers/apache-kafka { majorVersion = "2.0"; }; + apacheKafka_2_1 = callPackage ../servers/apache-kafka { majorVersion = "2.1"; }; + apacheKafka_2_2 = callPackage ../servers/apache-kafka { majorVersion = "2.2"; }; + apacheKafka_2_3 = callPackage ../servers/apache-kafka { majorVersion = "2.3"; }; + apacheKafka_2_4 = callPackage ../servers/apache-kafka { majorVersion = "2.4"; }; + apacheKafka_2_5 = callPackage ../servers/apache-kafka { majorVersion = "2.5"; }; + + kt = callPackage ../tools/misc/kt {}; + + argbash = callPackage ../development/tools/misc/argbash {}; + + arpa2cm = callPackage ../development/tools/build-managers/arpa2cm { }; + + asn2quickder = python2Packages.callPackage ../development/tools/asn2quickder {}; + + astyle = callPackage ../development/tools/misc/astyle { }; + + awf = callPackage ../development/tools/misc/awf { }; + + aws-adfs = with python3Packages; toPythonApplication aws-adfs; + + inherit (callPackages ../development/tools/electron { }) + electron electron_3 electron_4 electron_5 electron_6 electron_7 electron_8 electron_9 electron_10; + + autobuild = callPackage ../development/tools/misc/autobuild { }; + + autoconf = callPackage ../development/tools/misc/autoconf { }; + + 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 { }; + + 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/tools/misc/avrdude { }; + + 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 = jdk8_headless; + buildJdkName = "jdk8"; + runJdk = jdk11_headless; + stdenv = if stdenv.cc.isClang then llvmPackages_6.stdenv else stdenv; + bazel_self = bazel_3; + }; + + 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 { }; + + buildBazelPackage = callPackage ../build-support/build-bazel-package { }; + + bear = callPackage ../development/tools/build-managers/bear { }; + + bin_replace_string = callPackage ../development/tools/misc/bin_replace_string { }; + + bingrep = callPackage ../development/tools/analysis/bingrep { }; + + binutils-unwrapped = callPackage ../development/tools/misc/binutils { + # 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; + }; + }); + + bison = callPackage ../development/tools/parsing/bison { }; + yacc = bison; # TODO: move to aliases.nix + + # Ruby fails to build with current bison + bison_3_5 = pkgs.bison.overrideAttrs (oldAttrs: rec { + version = "3.5.4"; + src = fetchurl { + url = "mirror://gnu/${oldAttrs.pname}/${oldAttrs.pname}-${version}.tar.gz"; + sha256 = "0a2cbrqh7mgx2dwf5qm10v68iakv1i0dqh9di4x5aqxsz96ibpf0"; + }; + }); + + black = with python3Packages; toPythonApplication black; + + blackfire = callPackage ../development/tools/misc/blackfire { }; + + black-macchiato = with python3Packages; toPythonApplication black-macchiato; + + blackmagic = callPackage ../development/tools/misc/blackmagic { }; + + bloaty = callPackage ../development/tools/bloaty { }; + + bloop = callPackage ../development/tools/build-managers/bloop { }; + + bossa = callPackage ../development/tools/misc/bossa { + wxGTK = wxGTK30; + }; + + buck = callPackage ../development/tools/build-managers/buck { + jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + + buildkite-agent = buildkite-agent3; + buildkite-agent2 = throw "pkgs.buildkite-agent2 has been discontinued. Please use pkgs.buildkite-agent (v3.x)"; + buildkite-agent3 = callPackage ../development/tools/continuous-integration/buildkite-agent { }; + + buildkite-cli = callPackage ../development/tools/continuous-integration/buildkite-cli { }; + + libbpf = callPackage ../os-specific/linux/libbpf { }; + + bpftool = callPackage ../os-specific/linux/bpftool { }; + + 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/tools/misc/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 ? stdenv.cc }: + cc.override { cc = ccache.links { + inherit extraConfig; + unwrappedCC = cc.cc; + }; }) {}; + ccacheStdenv = lowPrio (overrideCC stdenv buildPackages.ccacheWrapper); + + 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 { }; + + checkstyle = callPackage ../development/tools/analysis/checkstyle { }; + + chromedriver = callPackage ../development/tools/selenium/chromedriver { gconf = gnome2.GConf; }; + + 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 ../development/tools/cloudfoundry-cli { }; + + 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; + + 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 { }; + + ctmg = callPackage ../tools/security/ctmg { }; + + cmake_2_8 = callPackage ../development/tools/build-managers/cmake/2.8.nix { }; + + cmake = libsForQt5.callPackage ../development/tools/build-managers/cmake { }; + + cmakeCurses = cmake.override { useNcurses = true; }; + + cmakeWithGui = cmakeCurses.override { withQt5 = true; }; + cmakeWithQt4Gui = cmakeCurses.override { useQt4 = true; }; + + cmake-format = python3Packages.callPackage ../development/tools/cmake-format { }; + + cmake-language-server = python3Packages.callPackage ../development/tools/cmake-language-server { + inherit (pkgs) cmake; + }; + + # Does not actually depend on Qt 5 + inherit (kdeFrameworks) extra-cmake-modules; + + coccinelle = callPackage ../development/tools/misc/coccinelle { + ocamlPackages = ocaml-ng.ocamlPackages_4_05; + }; + + 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_8; + stdenv = llvmPackages_8.stdenv; + }; + + credstash = with python3Packages; toPythonApplication credstash; + + creduce = callPackage ../development/tools/misc/creduce { + inherit (llvmPackages_7) llvm clang-unwrapped; + }; + + cscope = callPackage ../development/tools/misc/cscope { }; + + csmith = callPackage ../development/tools/misc/csmith { }; + + csslint = callPackage ../development/web/csslint { }; + + 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 = + # with gcc-7: undefined reference to `__divmoddi4' + if stdenv.targetPlatform.isi686 + then gcc6.cc + else 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 { }; + # old version: + libsigrok-0-3-0 = libsigrok.override { + version = "0.3.0"; + sha256 = "0l3h7zvn3w4c1b9dgvl3hirc4aj1csfkgbk87jkpl7bgl03nk4j3"; + }; + + libsigrokdecode = callPackage ../development/tools/libsigrokdecode { }; + + # 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 { }; + + 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/tools/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 = callPackage ../development/tools/build-managers/doit { }; + + dolt = callPackage ../servers/sql/dolt { }; + + dot2tex = with python3.pkgs; toPythonApplication dot2tex; + + doxygen = callPackage ../development/tools/documentation/doxygen { + qt4 = null; + inherit (darwin.apple_sdk.frameworks) CoreServices; + }; + + doxygen_gui = lowPrio (doxygen.override { inherit qt4; }); + + 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 { }; + + easypdkprog = callPackage ../development/tools/misc/easypdkprog { }; + + editorconfig-checker = callPackage ../development/tools/misc/editorconfig-checker { }; + + editorconfig-core-c = callPackage ../development/tools/misc/editorconfig-core-c { }; + + eggdbus = callPackage ../development/tools/misc/eggdbus { }; + + effitask = callPackage ../applications/misc/effitask { }; + + egypt = callPackage ../development/tools/analysis/egypt { }; + + 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 { }; + + 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 { }; + + eztrace = callPackage ../development/tools/profiling/EZTrace { }; + + ezquake = callPackage ../games/ezquake { }; + + findbugs = callPackage ../development/tools/analysis/findbugs { }; + + findnewest = callPackage ../development/tools/misc/findnewest { }; + + flootty = callPackage ../development/tools/flootty { }; + + fffuu = haskell.lib.justStaticExecutables (haskellPackages.callPackage ../tools/misc/fffuu { }); + + flow = callPackage ../development/tools/analysis/flow { + ocamlPackages = ocaml-ng.ocamlPackages_4_07; + inherit (darwin.apple_sdk.frameworks) CoreServices; + }; + + fly = callPackage ../development/tools/continuous-integration/fly { }; + + foreman = callPackage ../tools/system/foreman { }; + goreman = callPackage ../tools/system/goreman { }; + + 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; + }; + + fujprog = callPackage ../development/tools/misc/fujprog { + inherit (darwin.apple_sdk.frameworks) IOKit; + }; + + funnelweb = callPackage ../development/tools/literate-programming/funnelweb { }; + + 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 + }; + + fedpkg = pythonPackages.callPackage ../development/tools/fedpkg { }; + + 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; + }; + + github-release = callPackage ../development/tools/github/github-release { }; + + global = callPackage ../development/tools/misc/global { }; + + 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-hexgl = callPackage ../games/gnome-hexgl {}; + + gnome-usage = callPackage ../applications/misc/gnome-usage {}; + + gnome-latex = callPackage ../applications/editors/gnome-latex/default.nix { }; + + 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 { }; + + gputils = callPackage ../development/tools/misc/gputils { }; + + gradleGen = callPackage ../development/tools/build-managers/gradle { + java = jdk8; # TODO: upgrade https://github.com/NixOS/nixpkgs/pull/89731 + }; + gradle = res.gradleGen.gradle_latest; + gradle_4_10 = res.gradleGen.gradle_4_10; + gradle_4 = gradle_4_10; + gradle_5 = res.gradleGen.gradle_5_6; + gradle_6 = res.gradleGen.gradle_6_6; + + 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 { }; + + 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.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 { }; + + 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/tools/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; + }; + + include-what-you-use = callPackage ../development/tools/analysis/include-what-you-use { + llvmPackages = llvmPackages_10; + }; + + indent = callPackage ../development/tools/misc/indent { }; + + ino = callPackage ../development/arduino/ino { }; + + 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 { }; + + jamomacore = callPackage ../development/libraries/audio/jamomacore { }; + + jbake = callPackage ../development/tools/jbake { }; + + 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 { }; + + julius = callPackage ../games/julius { }; + + augustus = callPackage ../games/augustus { }; + + kafkacat = callPackage ../development/tools/kafkacat { }; + + kati = callPackage ../development/tools/build-managers/kati { }; + + 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 { }; + + kube-aws = callPackage ../development/tools/kube-aws { }; + + kubectx = callPackage ../development/tools/kubectx { }; + + kube-prompt = callPackage ../development/tools/kube-prompt { }; + + kubeprompt = callPackage ../development/tools/kubeprompt { }; + + 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 { }; + + ktlint = callPackage ../development/tools/ktlint { }; + + kythe = callPackage ../development/tools/kythe { }; + + lazygit = callPackage ../development/tools/lazygit { }; + + laminar = callPackage ../development/tools/continuous-integration/laminar { }; + + Literate = callPackage ../development/tools/literate-programming/Literate {}; + + 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 {}; + + 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 { }; + + lttv = callPackage ../development/tools/misc/lttv { }; + + massif-visualizer = libsForQt514.callPackage ../development/tools/analysis/massif-visualizer { }; + + maven = maven3; + maven3 = callPackage ../development/tools/build-managers/apache-maven { + jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + + mavproxy = python3Packages.callPackage ../applications/science/robotics/mavproxy { }; + + go-md2man = callPackage ../development/tools/misc/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 { + inherit (dotnetPackages) Nuget; + }; + + minify = callPackage ../development/web/minify { }; + + minizinc = callPackage ../development/tools/minizinc { }; + minizincide = qt514.callPackage ../development/tools/minizinc/ide.nix { }; + + mk = callPackage ../development/tools/build-managers/mk { }; + + mkcert = callPackage ../development/tools/misc/mkcert { }; + + mkdocs = callPackage ../development/tools/documentation/mkdocs { }; + + mockgen = callPackage ../development/tools/mockgen { }; + + modd = callPackage ../development/tools/modd { }; + + msgpack-tools = callPackage ../development/tools/msgpack-tools { }; + + msgpuck = callPackage ../development/libraries/msgpuck { }; + + msitools = callPackage ../development/tools/misc/msitools { }; + + haskell-ci = haskell.lib.justStaticExecutables haskellPackages.haskell-ci; + + 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 { }; + + gn = callPackage ../development/tools/build-managers/gn { }; + + 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 { }; + + nwjs = callPackage ../development/tools/nwjs { + gconf = pkgs.gnome2.GConf; + }; + + nwjs-sdk = callPackage ../development/tools/nwjs { + gconf = pkgs.gnome2.GConf; + 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 = pkgs.gnome2.GConf; + }; + + # NOTE: Override and set icon-lang = null 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; }; + + nrfutil = callPackage ../development/tools/misc/nrfutil { }; + + obelisk = callPackage ../development/tools/ocaml/obelisk { }; + + obuild = callPackage ../development/tools/ocaml/obuild { }; + + omake = callPackage ../development/tools/ocaml/omake { }; + + omniorb = callPackage ../development/tools/omniorb { }; + + opengrok = callPackage ../development/tools/misc/opengrok { }; + + openocd = callPackage ../development/tools/misc/openocd { }; + + oprofile = callPackage ../development/tools/profiling/oprofile { + libiberty_static = libiberty.override { staticBuild = true; }; + }; + + pahole = callPackage ../development/tools/misc/pahole {}; + + panopticon = callPackage ../development/tools/analysis/panopticon {}; + + pants = callPackage ../development/tools/build-managers/pants {}; + + 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 { }; + + peg = callPackage ../development/tools/parsing/peg { }; + + pgcli = pkgs.python3Packages.pgcli; + + phantomjs = callPackage ../development/tools/phantomjs { }; + + phantomjs2 = libsForQt514.callPackage ../development/tools/phantomjs2 { }; + + 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"; + }; + + pkg-config-unwrapped = callPackage ../development/tools/misc/pkg-config { }; + pkg-config = callPackage ../build-support/pkg-config-wrapper { + pkg-config = pkg-config-unwrapped; + }; + pkgconfig = pkg-config; # added 2018-02-02 + + pkg-configUpstream = lowPrio (pkg-config.override (old: { + pkg-config = old.pkg-config.override { + vanilla = true; + }; + })); + pkgconfigUpstream = pkg-configUpstream; # added 2018-02-02 + + inherit (nodePackages) postcss-cli; + + postiats-utilities = callPackage ../development/tools/postiats-utilities {}; + + postman = callPackage ../development/web/postman {}; + + pprof = callPackage ../development/tools/profiling/pprof { }; + + 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; + + procodile = callPackage ../tools/system/procodile { }; + + pry = callPackage ../development/tools/pry { }; + + pup = callPackage ../development/tools/pup { }; + + puppet-lint = callPackage ../development/tools/puppet/puppet-lint { }; + + pyrseas = callPackage ../development/tools/database/pyrseas { }; + + qtcreator = libsForQt514.callPackage ../development/tools/qtcreator { }; + + qxmledit = libsForQt5.callPackage ../applications/editors/qxmledit {} ; + + r10k = callPackage ../tools/system/r10k { }; + + inherit (callPackages ../development/tools/analysis/radare2 ({ + inherit (gnome2) vte; + lua = lua5; + } // (config.radare or {}))) radare2 r2-for-cutter; + + radare2-cutter = libsForQt514.callPackage ../development/tools/analysis/radare2/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 { }; + + reno = callPackage ../development/tools/reno { }; + + re2c = callPackage ../development/tools/parsing/re2c { }; + + remake = callPackage ../development/tools/build-managers/remake { }; + + 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 { }; + + 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. + + samurai = callPackage ../development/tools/build-managers/samurai { }; + + saleae-logic = callPackage ../development/tools/misc/saleae-logic { }; + + sauce-connect = callPackage ../development/tools/sauce-connect { }; + + scaff = callPackage ../development/tools/scaff { }; + + 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 { }; + + sconsPackages = dontRecurseIntoAttrs (callPackage ../development/tools/build-managers/scons { }); + scons = sconsPackages.scons_latest; + + mill = callPackage ../development/tools/build-managers/mill { }; + + 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 { }; + + scc = callPackage ../development/tools/misc/scc { }; + + scss-lint = callPackage ../development/tools/scss-lint { }; + + shadowenv = callPackage ../tools/misc/shadowenv { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + shake = haskell.lib.justStaticExecutables haskellPackages.shake; + + shallot = callPackage ../tools/misc/shallot { }; + + shards = callPackage ../development/tools/build-managers/shards { }; + + shellcheck = callPackage ../development/tools/shellcheck {}; + + schemaspy = callPackage ../development/tools/database/schemaspy { }; + + 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 {}; + + sqlcheck = callPackage ../development/tools/database/sqlcheck { }; + + sqlitebrowser = libsForQt5.callPackage ../development/tools/database/sqlitebrowser { }; + + sqlite-web = callPackage ../development/tools/database/sqlite-web { }; + + sqlmap = with python3Packages; toPythonApplication sqlmap; + + sselp = callPackage ../tools/X11/sselp{ }; + + stm32cubemx = callPackage ../development/tools/misc/stm32cubemx { }; + + stm32flash = callPackage ../development/tools/misc/stm32flash { }; + + strace = callPackage ../development/tools/misc/strace { }; + + 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 { }; + + 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; + + swfmill = callPackage ../tools/video/swfmill { }; + + swftools = callPackage ../tools/video/swftools { + stdenv = gccStdenv; + }; + + tcptrack = callPackage ../development/tools/misc/tcptrack { }; + + teensyduino = arduino-core.override { withGui = true; withTeensyduino = true; }; + + teensy-loader-cli = callPackage ../development/tools/misc/teensy-loader-cli { }; + + 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 { }; + + 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 = callPackage ../development/tools/misc/texinfo/6.7.nix { }; + texinfo = texinfo6; + texinfoInteractive = appendToName "interactive" ( + 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; + }; + + tflint = callPackage ../development/tools/analysis/tflint { }; + + tfsec = callPackage ../development/tools/analysis/tfsec { }; + + todoist = callPackage ../applications/misc/todoist { }; + + todoist-electron = callPackage ../applications/misc/todoist-electron { }; + + todolist = callPackage ../applications/misc/todolist { }; + + travis = callPackage ../development/tools/misc/travis { }; + + tree-sitter = callPackage ../development/tools/parsing/tree-sitter { }; + + trellis = callPackage ../development/tools/trellis { }; + + ttyd = callPackage ../servers/ttyd { }; + + tweak = callPackage ../applications/editors/tweak { }; + + tychus = callPackage ../development/tools/tychus { + inherit (darwin.apple_sdk.frameworks) CoreFoundation; + }; + + udis86 = callPackage ../development/tools/udis86 { }; + + uefi-firmware-parser = callPackage ../development/tools/analysis/uefi-firmware-parser { }; + + uhd = callPackage ../applications/radio/uhd { }; + + uisp = callPackage ../development/tools/misc/uisp { }; + + uncrustify = callPackage ../development/tools/misc/uncrustify { }; + + universal-ctags = callPackage ../development/tools/misc/universal-ctags { }; + + vagrant = callPackage ../development/tools/vagrant {}; + + bashdb = callPackage ../development/tools/misc/bashdb { }; + + gdb = callPackage ../development/tools/misc/gdb { + guile = null; + readline = readline80; + }; + + 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 { + python3Packages = python37Packages; + }; + + vtable-dumper = callPackage ../development/tools/misc/vtable-dumper { }; + + 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/tools/misc/xc3sprog { }; + + 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; + + yaml2json = callPackage ../development/tools/yaml2json { }; + + ycmd = callPackage ../development/tools/misc/ycmd { + inherit (darwin.apple_sdk.frameworks) Cocoa; + python = python3; + # currently broken + rustracerd = null; + }; + + yodl = callPackage ../development/tools/misc/yodl { }; + + yq = python3.pkgs.toPythonApplication python3.pkgs.yq; + + yq-go = callPackage ../development/tools/yq-go { }; + + winpdb = callPackage ../development/tools/winpdb { }; + + grabserial = callPackage ../development/tools/grabserial { }; + + mypy = with python3Packages; toPythonApplication mypy; + + nsis = callPackage ../development/tools/nsis { }; + + ### DEVELOPMENT / LIBRARIES + + a52dec = callPackage ../development/libraries/a52dec { }; + + aalib = callPackage ../development/libraries/aalib { }; + + abseil-cpp = callPackage ../development/libraries/abseil-cpp { }; + + 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 { }; + + 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 { }; + + anttweakbar = callPackage ../development/libraries/AntTweakBar { }; + + appstream = callPackage ../development/libraries/appstream { }; + + appstream-glib = callPackage ../development/libraries/appstream-glib { }; + + apr = callPackage ../development/libraries/apr { }; + + aprutil = callPackage ../development/libraries/apr-util { + db = if stdenv.isFreeBSD then db4 else db; + # XXX: only the db_185 interface was available through + # apr with db58 on freebsd (nov 2015), for unknown reasons + }; + + 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 ({ + } // stdenv.lib.optionalAttrs (stdenv.hostPlatform.isi686 && stdenv.cc.isGNU) { + stdenv = overrideCC stdenv buildPackages.gcc6; # hidden symbol `__divmoddi4' + }); + + assimp = callPackage ../development/libraries/assimp { }; + + asio_1_10 = callPackage ../development/libraries/asio/1.10.nix { }; + asio = callPackage ../development/libraries/asio/default.nix { }; + + 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; }; + }; + + attica = callPackage ../development/libraries/attica { }; + + 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-common = callPackage ../development/libraries/aws-c-common { }; + + aws-c-event-stream = callPackage ../development/libraries/aws-c-event-stream { }; + + aws-checksums = callPackage ../development/libraries/aws-checksums { }; + + 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 { }; + + bcg729 = callPackage ../development/libraries/bcg729 { }; + + bctoolbox = callPackage ../development/libraries/bctoolbox { }; + + beecrypt = callPackage ../development/libraries/beecrypt { }; + + belcard = callPackage ../development/libraries/belcard { }; + + belr = callPackage ../development/libraries/belr { }; + + beignet = callPackage ../development/libraries/beignet { + inherit (llvmPackages_6) llvm clang-unwrapped; + }; + + belle-sip = callPackage ../development/libraries/belle-sip { + stdenv = gcc8Stdenv; + jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + + libbfd = callPackage ../development/libraries/libbfd { }; + + libopcodes = callPackage ../development/libraries/libopcodes { }; + + bicpl = callPackage ../development/libraries/science/biology/bicpl { }; + + bicgl = callPackage ../development/libraries/science/biology/bicgl { }; + + # TODO(@Ericson2314): Build bionic libc from source + bionic = assert stdenv.hostPlatform.useAndroidPrebuilt; + pkgs."androidndkPkgs_${stdenv.hostPlatform.ndkVer}".libraries; + + bobcat = callPackage ../development/libraries/bobcat { }; + + boehmgc = callPackage ../development/libraries/boehm-gc { }; + boehmgc_766 = callPackage ../development/libraries/boehm-gc/7.6.6.nix { }; + + boolstuff = callPackage ../development/libraries/boolstuff { }; + + boost155 = callPackage ../development/libraries/boost/1.55.nix { }; + boost159 = callPackage ../development/libraries/boost/1.59.nix { }; + boost15x = boost159; + boost160 = callPackage ../development/libraries/boost/1.60.nix { }; + boost165 = callPackage ../development/libraries/boost/1.65.nix { }; + boost166 = callPackage ../development/libraries/boost/1.66.nix { }; + boost167 = callPackage ../development/libraries/boost/1.67.nix { }; + boost168 = callPackage ../development/libraries/boost/1.68.nix { }; + boost169 = callPackage ../development/libraries/boost/1.69.nix { }; + boost16x = boost169; + boost170 = callPackage ../development/libraries/boost/1.70.nix { }; + boost171 = callPackage ../development/libraries/boost/1.71.nix { }; + boost172 = callPackage ../development/libraries/boost/1.72.nix { }; + boost17x = boost172; + boost = boost16x; + + boost_process = callPackage ../development/libraries/boost-process { }; + + botan = callPackage ../development/libraries/botan { openssl = openssl_1_0_2; }; + botan2 = callPackage ../development/libraries/botan/2.0.nix { }; + + box2d = callPackage ../development/libraries/box2d { }; + + boxfort = callPackage ../development/libraries/boxfort { }; + + buddy = callPackage ../development/libraries/buddy { }; + + 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.justStaticExecutables haskellPackages.cachix; + + hercules-ci-agent = callPackage ../development/tools/continuous-integration/hercules-ci-agent { }; + + niv = haskellPackages.niv.bin; + + ormolu = haskellPackages.ormolu.bin; + + capnproto = callPackage ../development/libraries/capnproto { }; + + captive-browser = callPackage ../applications/networking/browsers/captive-browser { }; + + ndn-cxx = callPackage ../development/libraries/ndn-cxx { }; + + cddlib = callPackage ../development/libraries/cddlib {}; + + cdk = callPackage ../development/libraries/cdk {}; + + cdo = callPackage ../development/libraries/cdo { }; + + cimg = callPackage ../development/libraries/cimg { }; + + 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 { }; + + 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 { }; + + 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 { }; + + ctl = callPackage ../development/libraries/ctl { }; + + ctpp2 = callPackage ../development/libraries/ctpp2 { }; + + ctpl = callPackage ../development/libraries/ctpl { }; + + 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 {}; + + 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 { }; + + 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 { }; + + cxxtest = callPackage ../development/libraries/cxxtest { }; + + cypress = callPackage ../development/web/cypress { }; + + cyrus_sasl = callPackage ../development/libraries/cyrus-sasl { + kerberos = if stdenv.isFreeBSD then libheimdal else kerberos; + }; + + # 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 }: + callPackage ../development/libraries/dbus/make-dbus-conf.nix { + inherit suidHelper serviceDirectories; + }; + + dee = callPackage ../development/libraries/dee { }; + + 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 { }; + + 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 { }; + + 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; + }; + + dssi = callPackage ../development/libraries/dssi {}; + + duckdb = callPackage ../development/libraries/duckdb {}; + + 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 {}; + + 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; + }; + + enchant1 = callPackage ../development/libraries/enchant/1.x.nix { }; + + enchant2 = callPackage ../development/libraries/enchant/2.x.nix { }; + enchant = enchant2; + + enet = callPackage ../development/libraries/enet { }; + + epoxy = callPackage ../development/libraries/epoxy {}; + + libesmtp = callPackage ../development/libraries/libesmtp { }; + + 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 = callPackage ../development/compilers/factor-lang { + inherit (pkgs.gnome2) gtkglext; + }; + + far2l = callPackage ../applications/misc/far2l { + stdenv = if stdenv.cc.isClang then llvmPackages.stdenv else stdenv; + }; + + 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; + }; + + fcgi = callPackage ../development/libraries/fcgi { }; + + ffcast = callPackage ../tools/X11/ffcast { }; + + fflas-ffpack = callPackage ../development/libraries/fflas-ffpack { }; + + forge = callPackage ../development/libraries/forge { }; + + linbox = callPackage ../development/libraries/linbox { }; + + ffmpeg_2_8 = callPackage ../development/libraries/ffmpeg/2.8.nix { + inherit (darwin.apple_sdk.frameworks) Cocoa; + }; + 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; + }; + + # Aliases + ffmpeg_2 = ffmpeg_2_8; + ffmpeg_3 = ffmpeg_3_4; + # Please make sure this is updated to the latest version on the next major + # update to ffmpeg + ffmpeg = ffmpeg_4; + + ffmpeg-full = callPackage ../development/libraries/ffmpeg-full { + # The following need to be fixed on Darwin + frei0r = if stdenv.isDarwin then null else frei0r; + game-music-emu = if stdenv.isDarwin then null else game-music-emu; + libjack2 = if stdenv.isDarwin then null else libjack2; + libmodplug = if stdenv.isDarwin then null else libmodplug; + openal = if stdenv.isDarwin then null else openal; + libmfx = if stdenv.isDarwin then null else intel-media-sdk; + libpulseaudio = if stdenv.isDarwin then null else libpulseaudio; + rav1e = null; + samba = if stdenv.isDarwin then null else samba; + vid-stab = if stdenv.isDarwin then null else vid-stab; + x265 = if stdenv.isDarwin then null else x265; + xavs = if stdenv.isDarwin then null else xavs; + 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 {}; + + 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) Cocoa AGL GLUT; + }; + fltk14 = callPackage ../development/libraries/fltk/1.4.nix { + inherit (darwin.apple_sdk.frameworks) Cocoa AGL GLUT; + }; + fltk = res.fltk13; + + flyway = callPackage ../development/tools/flyway { }; + + fmt = callPackage ../development/libraries/fmt/default.nix { }; + + 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/cfitsio { }; + + fontconfig = callPackage ../development/libraries/fontconfig { }; + + 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; + }; + + 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 { }; + + gamin = callPackage ../development/libraries/gamin { }; + fam = gamin; # added 2018-04-25 + + ganv = callPackage ../development/libraries/ganv { }; + + 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) OpenGL; + }; + + gegl_0_4 = callPackage ../development/libraries/gegl/4.0.nix { + inherit (darwin.apple_sdk.frameworks) OpenCL; + }; + + gensio = callPackage ../development/libraries/gensio {}; + + geoclue2 = callPackage ../development/libraries/geoclue {}; + + 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 { }; + + getdns = callPackage ../development/libraries/getdns { }; + + 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; + }; + + gdal_1_11 = callPackage ../development/libraries/gdal/gdal-1_11.nix { }; + + gdal_2 = callPackage ../development/libraries/gdal/2.4.0.nix { }; + + gdcm = callPackage ../development/libraries/gdcm { }; + + ggz_base_libs = callPackage ../development/libraries/ggz_base_libs {}; + + giblib = callPackage ../development/libraries/giblib { }; + + 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 {}; + + ghp-import = callPackage ../development/tools/ghp-import { }; + + ghcid = haskellPackages.ghcid.bin; + + icon-lang = callPackage ../development/interpreters/icon-lang { }; + + libgit2 = callPackage ../development/libraries/git2 { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + libgit2_0_27 = libgit2.overrideAttrs (oldAttrs: rec { + version = "0.27.10"; + src = fetchFromGitHub { + owner = "libgit2"; + repo = "libgit2"; + rev = "v${version}"; + sha256 = "09jz2fzv0zl5058s0g1cpnw87a2rgg8wnjwlygi18i2n9nn6m0ad"; + }; + }); + + libgit2-glib = callPackage ../development/libraries/libgit2-glib { }; + + glbinding = callPackage ../development/libraries/glbinding { }; + + gle = callPackage ../development/libraries/gle { }; + + glew = callPackage ../development/libraries/glew { }; + glew110 = callPackage ../development/libraries/glew/1.10.nix { + inherit (darwin.apple_sdk.frameworks) AGL; + }; + + glfw = glfw3; + 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 { }; + + # 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 = crossLibcStdenv; + }; + + muslCross = musl.override { + stdenv = crossLibcStdenv; + }; + + # 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" then targetPackages.newlibCross or newlibCross + else if name == "musl" then targetPackages.muslCross or muslCross + else if name == "msvcrt" then targetPackages.windows.mingw_w64 or windows.mingw_w64 + else if stdenv.targetPlatform.useiOSPrebuilt then targetPackages.darwin.iosSdkPkgs.libraries or darwin.iosSdkPkgs.libraries + else if name == "libSystem" then targetPackages.darwin.xcode + else if name == "nblibc" then targetPackages.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, using glibc + glibcLocales = if stdenv.hostPlatform.libc == "glibc" 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 { + libpng = libpng12; + giflib = giflib_4_1; + ocamlPackages = ocaml-ng.ocamlPackages_4_01_0; + }; + + 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 {}; + + 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 { }; + goocanvasmm2 = callPackage ../development/libraries/goocanvasmm { }; + + gflags = callPackage ../development/libraries/gflags { }; + + gperftools = callPackage ../development/libraries/gperftools { }; + + grab-site = callPackage ../tools/backup/grab-site { }; + + grib-api = callPackage ../development/libraries/grib-api { }; + + 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 { libav = pkgs.ffmpeg; }; + inherit (darwin.apple_sdk.frameworks) CoreServices; + }); + + gusb = callPackage ../development/libraries/gusb { }; + + qt-mobility = callPackage ../development/libraries/qt-mobility {}; + + + qtstyleplugin-kvantum-qt4 = callPackage ../development/libraries/qtstyleplugin-kvantum-qt4 { }; + + 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/default.nix { + inherit (darwin.apple_sdk.frameworks) Security; + utillinux = utillinuxMinimal; # break the cyclic dependency + }; + + 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 {}; + + gpgstats = callPackage ../tools/security/gpgstats { }; + + 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 { }; + + glib-networking = callPackage ../development/libraries/glib-networking {}; + + glib-testing = callPackage ../development/libraries/glib-testing { }; + + glirc = haskell.lib.justStaticExecutables haskellPackages.glirc; + + gom = callPackage ../development/libraries/gom { }; + + ace = callPackage ../development/libraries/ace { }; + + atk = callPackage ../development/libraries/atk { }; + + atkmm = callPackage ../development/libraries/atkmm { }; + + pixman = callPackage ../development/libraries/pixman { }; + + cairo = callPackage ../development/libraries/cairo { }; + + cairomm = callPackage ../development/libraries/cairomm { }; + + 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; + }; + + 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-sharp = callPackage ../development/libraries/gnome-sharp { }; + + 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"; + }; + + gtk3 = callPackage ../development/libraries/gtk/3.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 { }; + + 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 { + inherit (gnome2) libglade libgtkhtml gtkhtml + libgnomecanvas libgnomeui libgnomeprint + libgnomeprintui GConf; + }; + + gtk-sharp-3_0 = callPackage ../development/libraries/gtk-sharp/3.0.nix { + inherit (gnome2) libglade libgtkhtml gtkhtml + libgnomecanvas libgnomeui libgnomeprint + libgnomeprintui GConf; + }; + + 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 { }; + + 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 { }; + + gwenhywfar = callPackage ../development/libraries/aqbanking/gwenhywfar.nix { }; + + hamlib = callPackage ../development/libraries/hamlib { }; + + heimdal = callPackage ../development/libraries/kerberos/heimdal.nix { + inherit (darwin.apple_sdk.frameworks) CoreFoundation Security SystemConfiguration; + }; + 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 {}; + + herqq = libsForQt514.callPackage ../development/libraries/herqq { }; + + hidapi = callPackage ../development/libraries/hidapi { }; + + highfive = callPackage ../development/libraries/highfive { }; + + highfive-mpi = appendToName "mpi" (highfive.override { + hdf5 = hdf5-mpi; + }); + + hiredis = callPackage ../development/libraries/hiredis { }; + + hiredis-vip = callPackage ../development/libraries/hiredis-vip { }; + + hivex = callPackage ../development/libraries/hivex { }; + + hound = callPackage ../development/tools/misc/hound { }; + + hpx = callPackage ../development/libraries/hpx { }; + + 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 { }; + + 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-migration hydra-unstable; + + hydra-flakes = throw '' + Flakes support has been merged into Hydra's master. Please use + `pkgs.hydra-unstable` now. + ''; + + 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; }; + } // + (stdenv.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; }; + } // (stdenv.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; }; + } // (stdenv.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; }; + } // (stdenv.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; }; + } // (stdenv.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; }; + } // (stdenv.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; }; + } // (stdenv.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; }; + } // (stdenv.lib.optionalAttrs (stdenv.hostPlatform.isi686 && stdenv.cc.isGNU) { + stdenv = gcc6Stdenv; # with gcc-7: undefined reference to `__divmoddi4' + })); + + icu = icu67; + + id3lib = callPackage ../development/libraries/id3lib { }; + + ilbc = callPackage ../development/libraries/ilbc { }; + + ilixi = callPackage ../development/libraries/ilixi { }; + + ilmbase = callPackage ../development/libraries/ilmbase { }; + + 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 { }; + + indilib = callPackage ../development/libraries/indilib { }; + + 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 { + stdenv = llvmPackages_10.stdenv; + llvmPackages = llvmPackages_10; + }; + + isso = callPackage ../servers/isso { }; + + 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 { }; + + jbig2dec = callPackage ../development/libraries/jbig2dec { }; + + jcal = callPackage ../development/libraries/jcal { }; + + jbigkit = callPackage ../development/libraries/jbigkit { }; + + jemalloc = callPackage ../development/libraries/jemalloc { }; + + jemalloc450 = callPackage ../development/libraries/jemalloc/jemalloc450.nix { }; + + jose = callPackage ../development/libraries/jose { }; + + jshon = callPackage ../development/tools/parsing/jshon { }; + + json2hcl = callPackage ../development/tools/json2hcl { }; + + json-glib = callPackage ../development/libraries/json-glib { }; + + json_c = callPackage ../development/libraries/json-c { }; + + jsoncpp = callPackage ../development/libraries/jsoncpp { }; + + jsonnet = callPackage ../development/compilers/jsonnet { }; + + 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 { }; + + kdeFrameworks = + let + mkFrameworks = import ../development/libraries/kde-frameworks; + attrs = { + libsForQt5 = libsForQt514; + inherit lib fetchurl; + }; + in + recurseIntoAttrs (makeOverridable mkFrameworks attrs); + + keybinder = callPackage ../development/libraries/keybinder { + automake = automake111x; + lua = lua5_1; + }; + + keybinder3 = callPackage ../development/libraries/keybinder3 { + automake = automake111x; + }; + + kf5gpgmepp = libsForQt5.callPackage ../development/libraries/kf5gpgmepp { }; + + krb5 = callPackage ../development/libraries/kerberos/krb5.nix { + inherit (buildPackages.darwin) bootstrap_cmds; + }; + krb5Full = krb5; + libkrb5 = krb5.override { type = "lib"; }; + kerberos = libkrb5; # TODO: move to aliases.nix + + 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 { }; + + 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 { }; + + levmar = callPackage ../development/libraries/levmar { }; + + leptonica = callPackage ../development/libraries/leptonica { }; + + lib3ds = callPackage ../development/libraries/lib3ds { }; + + lib3mf = callPackage ../development/libraries/lib3mf { }; + + 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 { }; + + 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 { }; + + libarchive = callPackage ../development/libraries/libarchive { }; + + 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 { }; + + 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_4_07) bap ocaml findlib ctypes; + }; + + libbass = (callPackage ../development/libraries/audio/libbass { }).bass; + libbass_fx = (callPackage ../development/libraries/audio/libbass { }).bass_fx; + + 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 { }; + + libcanberra = callPackage ../development/libraries/libcanberra { + inherit (darwin.apple_sdk.frameworks) CoreServices; + }; + libcanberra-gtk2 = pkgs.libcanberra.override { + gtk = gtk2-x11; + }; + libcanberra-gtk3 = pkgs.libcanberra.override { + gtk = gtk3-x11; + }; + + libcanberra_kde = if (config.kde_runtime.libcanberraWithoutGTK or true) + then pkgs.libcanberra + else pkgs.libcanberra-gtk2; + + libcbor = callPackage ../development/libraries/libcbor { }; + + libcec = callPackage ../development/libraries/libcec { + libraspberrypi = null; + }; + + libcec_platform = callPackage ../development/libraries/libcec/platform.nix { }; + + libcef = callPackage ../development/libraries/libcef { inherit (gnome2) GConf; }; + + libcello = callPackage ../development/libraries/libcello {}; + + libcerf = callPackage ../development/libraries/libcerf {}; + + 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 { }; + + libco-canonical = callPackage ../development/libraries/libco-canonical { }; + + 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 { }; + + 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 { }; + + 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 { }; + + libdevil = callPackage ../development/libraries/libdevil { + inherit (darwin.apple_sdk.frameworks) OpenGL; + }; + + libdevil-nox = libdevil.override { + libX11 = null; + libGL = null; + }; + + 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 { }; + + libdnet = callPackage ../development/libraries/libdnet { }; + + 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 { }; + + 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 { }; + + 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 { }; + + libfpx = callPackage ../development/libraries/libfpx { }; + + libgadu = callPackage ../development/libraries/libgadu { }; + + libgda = callPackage ../development/libraries/libgda { }; + + 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 { }; + + libgnome-keyring = callPackage ../development/libraries/libgnome-keyring { }; + libgnome-keyring3 = gnome3.libgnome-keyring; + + libgnomekbd = callPackage ../development/libraries/libgnomekbd { }; + + libglvnd = callPackage ../development/libraries/libglvnd { }; + + libgnurl = callPackage ../development/libraries/libgnurl { }; + + libgringotts = callPackage ../development/libraries/libgringotts { }; + + libgroove = callPackage ../development/libraries/libgroove { }; + + libgrss = callPackage ../development/libraries/libgrss { }; + + libgweather = callPackage ../development/libraries/libgweather { }; + + libgxps = callPackage ../development/libraries/libgxps { }; + + libiio = callPackage ../development/libraries/libiio { }; + + libinjection = callPackage ../development/libraries/libinjection { }; + + libnats-c = callPackage ../development/libraries/libnats-c { + openssl = openssl_1_0_2; + }; + + liburing = callPackage ../development/libraries/liburing { }; + + librseq = callPackage ../development/libraries/librseq { }; + + libseccomp = callPackage ../development/libraries/libseccomp { }; + + libsecret = callPackage ../development/libraries/libsecret { }; + + 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 { }; + + liblaxjson = callPackage ../development/libraries/liblaxjson { }; + + liblo = callPackage ../development/libraries/liblo { }; + + liblscp = callPackage ../development/libraries/liblscp { }; + + libe-book = callPackage ../development/libraries/libe-book {}; + + libechonest = callPackage ../development/libraries/libechonest { }; + + 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 {}; + + libextractor = callPackage ../development/libraries/libextractor { + libmpeg2 = mpeg2dec; + }; + + libexttextcat = callPackage ../development/libraries/libexttextcat {}; + + libf2c = callPackage ../development/libraries/libf2c {}; + + libfabric = callPackage ../os-specific/linux/libfabric {}; + + libfive = libsForQt5.callPackage ../development/libraries/libfive { }; + + libfixposix = callPackage ../development/libraries/libfixposix {}; + + libffcall = callPackage ../development/libraries/libffcall { }; + + libffi = callPackage ../development/libraries/libffi { }; + + 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; + }; + + libgksu = callPackage ../development/libraries/libgksu { }; + + libgpgerror = callPackage ../development/libraries/libgpg-error { }; + + # https://github.com/gpg/libgpg-error/blob/70058cd9f944d620764e57c838209afae8a58c78/README#L118-L140 + libgpgerror-gen-posix-lock-obj = libgpgerror.override { + genPosixLockObjOnly = true; + }; + + libgphoto2 = callPackage ../development/libraries/libgphoto2 { }; + + libgpiod = callPackage ../development/libraries/libgpiod { }; + + libgpod = callPackage ../development/libraries/libgpod { }; + + libgssglue = callPackage ../development/libraries/libgssglue { }; + + libgudev = callPackage ../development/libraries/libgudev { }; + + libguestfs-appliance = callPackage ../development/libraries/libguestfs/appliance.nix {}; + libguestfs = callPackage ../development/libraries/libguestfs { }; + libguestfs-with-appliance = libguestfs.override { appliance = libguestfs-appliance; }; + + + 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 { }; + + 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 { }; + + liblqr1 = callPackage ../development/libraries/liblqr-1 { }; + + liblockfile = callPackage ../development/libraries/liblockfile { }; + + liblogging = callPackage ../development/libraries/liblogging { }; + + liblognorm = callPackage ../development/libraries/liblognorm { }; + + libltc = callPackage ../development/libraries/libltc { }; + + 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 {}; + + 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 { }; + + 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 (builtins.parseDrvName libc.name) name version; + libcDev = lib.getDev libc; + in runCommand "${name}-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 {}; + + 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 { }; + + libkate = callPackage ../development/libraries/libkate { }; + + libkml = callPackage ../development/libraries/libkml { }; + + libksba = callPackage ../development/libraries/libksba { }; + + libksi = callPackage ../development/libraries/libksi { }; + + liblinear = callPackage ../development/libraries/liblinear { }; + + libmad = callPackage ../development/libraries/libmad { }; + + 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 { + 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 = callPackage ../development/libraries/libmicrohttpd { }; + + libmikmod = callPackage ../development/libraries/libmikmod { + inherit (darwin.apple_sdk.frameworks) CoreAudio; + }; + + libmilter = callPackage ../development/libraries/libmilter { }; + + libminc = callPackage ../development/libraries/libminc { }; + + libmirage = callPackage ../misc/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 { }; + + 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/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 { }; + + libopus = callPackage ../development/libraries/libopus { }; + + libopusenc = callPackage ../development/libraries/libopusenc { }; + + libosinfo = callPackage ../development/libraries/libosinfo { + inherit (gnome3) libsoup; + }; + + libosip = callPackage ../development/libraries/osip {}; + + libosmium = callPackage ../development/libraries/libosmium { }; + + libosmocore = callPackage ../applications/misc/libosmocore { }; + + libosmpbf = callPackage ../development/libraries/libosmpbf {}; + + 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 { }; + + libpipeline = callPackage ../development/libraries/libpipeline { }; + + libpgf = callPackage ../development/libraries/libpgf { }; + + libphonenumber = callPackage ../development/libraries/libphonenumber { }; + + libplacebo = callPackage ../development/libraries/libplacebo { }; + + libpng = callPackage ../development/libraries/libpng { }; + libpng_apng = libpng.override { apngSupport = true; }; + libpng12 = callPackage ../development/libraries/libpng/12.nix { }; + + libpaper = callPackage ../development/libraries/libpaper { }; + + libpfm = callPackage ../development/libraries/libpfm { }; + + libpqxx = callPackage ../development/libraries/libpqxx { }; + + 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 { }; + + libpwquality = callPackage ../development/libraries/libpwquality { }; + + libqalculate = callPackage ../development/libraries/libqalculate { }; + + libqt5pas = libsForQt5.callPackage ../development/compilers/fpc/libqt5pas.nix { }; + + libroxml = callPackage ../development/libraries/libroxml { }; + + librsvg = callPackage ../development/libraries/librsvg { }; + + librsync = callPackage ../development/libraries/librsync { }; + + librsync_0_9 = callPackage ../development/libraries/librsync/0.9.nix { }; + + libs3 = callPackage ../development/libraries/libs3 { }; + + libsearpc = callPackage ../development/libraries/libsearpc { }; + + libsigcxx = callPackage ../development/libraries/libsigcxx { }; + + libsigcxx12 = callPackage ../development/libraries/libsigcxx/1.2.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 { }; + + libspectrum = callPackage ../development/libraries/libspectrum { }; + + libspiro = callPackage ../development/libraries/libspiro {}; + + libssh = callPackage ../development/libraries/libssh { }; + + libssh2 = callPackage ../development/libraries/libssh2 { }; + + libstartup_notification = callPackage ../development/libraries/startup-notification { }; + + libstemmer = callPackage ../development/libraries/libstemmer { }; + + libstroke = callPackage ../development/libraries/libstroke { }; + + libstrophe = callPackage ../development/libraries/libstrophe { }; + + 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 { }; + + libtheora = callPackage ../development/libraries/libtheora { }; + + libthreadar = callPackage ../development/libraries/libthreadar { }; + + libtiff = callPackage ../development/libraries/libtiff { }; + + libtiger = callPackage ../development/libraries/libtiger { }; + + libtommath = callPackage ../development/libraries/libtommath { }; + + libtomcrypt = callPackage ../development/libraries/libtomcrypt { }; + + libtorrentRasterbar-1_2_x = callPackage ../development/libraries/libtorrent-rasterbar/1.2 { }; + + libtorrentRasterbar-1_1_x = callPackage ../development/libraries/libtorrent-rasterbar/1.1 { }; + + libtorrentRasterbar = libtorrentRasterbar-1_2_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; + + libtap = callPackage ../development/libraries/libtap { }; + + libtgvoip = callPackage ../development/libraries/libtgvoip { }; + + 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 { }; + + 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_4_1 = callPackage ../development/libraries/giflib/4.1.nix { }; + giflib = callPackage ../development/libraries/giflib { }; + + libunarr = callPackage ../development/libraries/libunarr { }; + + libungif = callPackage ../development/libraries/giflib/libungif.nix { }; + + 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 { }; + + 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; + }; + + libusbmuxd = callPackage ../development/libraries/libusbmuxd { }; + + libutempter = callPackage ../development/libraries/libutempter { }; + + libunwind = if stdenv.isDarwin + then darwin.libunwind + else callPackage ../development/libraries/libunwind { }; + + libuv = callPackage ../development/libraries/libuv { + inherit (darwin.apple_sdk.frameworks) ApplicationServices CoreServices; + }; + + 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; }; + + 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 { }; + libvirt_5_9_0 = callPackage ../development/libraries/libvirt/5.9.0.nix { }; + + libvirt-glib = callPackage ../development/libraries/libvirt-glib { }; + + libvisio = callPackage ../development/libraries/libvisio { }; + + libvisual = callPackage ../development/libraries/libvisual { }; + + libvmaf = callPackage ../development/libraries/libvmaf { }; + + libvncserver = callPackage ../development/libraries/libvncserver {}; + + 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 { }; + + libwebcam = callPackage ../os-specific/linux/libwebcam { }; + + libwebp = callPackage ../development/libraries/libwebp { }; + + libwmf = callPackage ../development/libraries/libwmf { }; + + libwnck = libwnck2; + libwnck2 = callPackage ../development/libraries/libwnck { }; + libwnck3 = callPackage ../development/libraries/libwnck/3.x.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 {}; + + 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 { }; + + libxmi = callPackage ../development/libraries/libxmi { }; + + libxml2 = callPackage ../development/libraries/libxml2 { + python = python3; + }; + + 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 = if stdenv.isDarwin then python2 else python3; + }; + + libxsmm = callPackage ../development/libraries/libxsmm { }; + + libixp_hg = callPackage ../development/libraries/libixp-hg { }; + + libyaml = callPackage ../development/libraries/libyaml { }; + + libyamlcpp = callPackage ../development/libraries/libyaml-cpp { }; + + rang = callPackage ../development/libraries/rang { }; + + libyamlcpp_0_3 = pkgs.libyamlcpp.overrideAttrs (oldAttrs: { + src = pkgs.fetchurl { + url = "https://github.com/jbeder/yaml-cpp/archive/release-0.3.0.tar.gz"; + sha256 = "12aszqw6svwlnb6nzhsbqhz3c7vnd5ahd0k6xlj05w8lm83hx3db"; + }; + }); + + libykclient = callPackage ../development/libraries/libykclient { }; + + libykneomgr = callPackage ../development/libraries/libykneomgr { }; + + libytnef = callPackage ../development/libraries/libytnef { }; + + libyubikey = callPackage ../development/libraries/libyubikey { }; + + 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 { }; + + 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 { }; + + lzo = callPackage ../development/libraries/lzo { }; + + opencl-clang = callPackage ../development/libraries/opencl-clang { }; + + mapnik = callPackage ../development/libraries/mapnik { }; + + marisa = callPackage ../development/libraries/marisa {}; + + matio = callPackage ../development/libraries/matio { }; + + matterhorn = haskell.lib.justStaticExecutables haskellPackages.matterhorn; + + mbedtls = callPackage ../development/libraries/mbedtls { }; + + mdds = callPackage ../development/libraries/mdds { }; + + mediastreamer = callPackage ../development/libraries/mediastreamer { }; + + mediastreamer-openh264 = callPackage ../development/libraries/mediastreamer/msopenh264.nix { }; + + 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_9; + 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 { }; + + micropython = callPackage ../development/interpreters/micropython { }; + + MIDIVisualizer = callPackage ../applications/audio/midi-visualizer { }; + + mimalloc = callPackage ../development/libraries/mimalloc { }; + + minizip = callPackage ../development/libraries/minizip { }; + + mkvtoolnix = libsForQt5.callPackage ../applications/video/mkvtoolnix { }; + + mkvtoolnix-cli = callPackage ../applications/video/mkvtoolnix { + withGUI = false; + }; + + mlt = callPackage ../development/libraries/mlt { }; + + mlv-app = libsForQt5.callPackage ../applications/video/mlv-app { }; + + mono-addins = callPackage ../development/libraries/mono-addins { }; + + 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 {}; + + msgpack = callPackage ../development/libraries/msgpack { }; + + msilbc = callPackage ../development/libraries/msilbc { }; + + mp4v2 = callPackage ../development/libraries/mp4v2 { }; + + libmpc = callPackage ../development/libraries/libmpc { }; + + mpich = callPackage ../development/libraries/mpich { }; + + 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 { }; + + mumlib = callPackage ../development/libraries/mumlib { }; + + muparser = callPackage ../development/libraries/muparser { + inherit (darwin.stubs) setfile; + }; + + muparserx = callPackage ../development/libraries/muparserx { }; + + mutest = callPackage ../development/libraries/mutest { }; + + mygpoclient = pythonPackages.mygpoclient; + + mygui = callPackage ../development/libraries/mygui { + ogre = ogre1_9; + }; + + mysocketw = callPackage ../development/libraries/mysocketw { + openssl = openssl_1_0_2; + }; + + mythes = callPackage ../development/libraries/mythes { }; + + nanoflann = callPackage ../development/libraries/nanoflann { }; + + nanomsg = callPackage ../development/libraries/nanomsg { }; + + ndpi = callPackage ../development/libraries/ndpi { }; + + nifticlib = callPackage ../development/libraries/science/biology/nifticlib { }; + + notify-sharp = callPackage ../development/libraries/notify-sharp { }; + + 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 { }; + + neon_0_29 = callPackage ../development/libraries/neon/0.29.nix { + openssl = openssl_1_0_2; + }; + + nettle = callPackage ../development/libraries/nettle { }; + + newman = callPackage ../development/web/newman {}; + + newt = callPackage ../development/libraries/newt { }; + + nghttp2 = callPackage ../development/libraries/nghttp2 { }; + libnghttp2 = nghttp2.lib; + + nix-plugins = callPackage ../development/libraries/nix-plugins {}; + + nika-fonts = callPackage ../data/fonts/nika-fonts { }; + + 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 { }); + nss_3_44 = lowPrio (callPackage ../development/libraries/nss/3.44.nix { }); + 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 { }; + + nuspell = callPackage ../development/libraries/nuspell { }; + nuspellWithDicts = dicts: callPackage ../development/libraries/nuspell/wrapper.nix { inherit dicts; }; + + nv-codec-headers = callPackage ../development/libraries/nv-codec-headers { }; + + nvidia-docker = callPackage ../applications/virtualization/nvidia-docker { }; + + nvidia-texture-tools = callPackage ../development/libraries/nvidia-texture-tools { }; + + 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 { }; + + openalSoft = callPackage ../development/libraries/openal-soft { + inherit (darwin.apple_sdk.frameworks) CoreServices AudioUnit AudioToolbox; + }; + openal = openalSoft; + + openbabel = callPackage ../development/libraries/openbabel { }; + + opencascade = callPackage ../development/libraries/opencascade { + inherit (darwin.apple_sdk.frameworks) OpenCL Cocoa; + }; + opencascade-occt = callPackage ../development/libraries/opencascade-occt { }; + opencascade-occt730 = callPackage ../development/libraries/opencascade-occt/7.3.nix { }; + + 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; + }; + + opencv3 = callPackage ../development/libraries/opencv/3.x.nix { + inherit (darwin.apple_sdk.frameworks) AVFoundation Cocoa VideoDecodeAcceleration; + }; + + opencv3WithoutCuda = opencv3.override { + enableCuda = false; + }; + + opencv4 = callPackage ../development/libraries/opencv/4.x.nix { + inherit (darwin.apple_sdk.frameworks) AVFoundation Cocoa VideoDecodeAcceleration CoreMedia MediaToolbox; + }; + + opencv = opencv4; + + openexr = callPackage ../development/libraries/openexr { }; + + openexrid-unstable = callPackage ../development/libraries/openexrid-unstable { }; + + openldap = callPackage ../development/libraries/openldap { }; + + opencolorio = callPackage ../development/libraries/opencolorio { }; + + opendmarc = callPackage ../development/libraries/opendmarc { }; + + ois = callPackage ../development/libraries/ois { + inherit (darwin.apple_sdk.frameworks) Cocoa IOKit Kernel; + }; + + openh264 = callPackage ../development/libraries/openh264 { }; + + openjpeg_1 = callPackage ../development/libraries/openjpeg/1.x.nix { }; + openjpeg_2 = callPackage ../development/libraries/openjpeg/2.x.nix { }; + openjpeg = openjpeg_2; + + openpa = callPackage ../development/libraries/openpa { }; + + opensaml-cpp = callPackage ../development/libraries/opensaml-cpp { }; + + openscenegraph = callPackage ../development/libraries/openscenegraph { }; + + openslp = callPackage ../development/libraries/openslp {}; + + openvdb = callPackage ../development/libraries/openvdb {}; + + inherit (callPackages ../development/libraries/libressl { }) + libressl_3_0 + libressl_3_1; + + # 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_1; + + boringssl = callPackage ../development/libraries/boringssl { }; + + wolfssl = callPackage ../development/libraries/wolfssl { }; + + openssl = + if stdenv.hostPlatform.isMinGW # Work around broken cross build + then openssl_1_0_2 + else openssl_1_1; + + inherit (callPackages ../development/libraries/openssl { }) + openssl_1_0_2 + openssl_1_1; + + openssl-chacha = callPackage ../development/libraries/openssl/chacha.nix { }; + + opensubdiv = callPackage ../development/libraries/opensubdiv { }; + + open-wbo = callPackage ../applications/science/logic/open-wbo {}; + + openwsman = callPackage ../development/libraries/openwsman {}; + + ortp = callPackage ../development/libraries/ortp { }; + + openhmd = callPackage ../development/libraries/openhmd { }; + + openrct2 = callPackage ../games/openrct2 { }; + + 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 { }; + + pangoxsl = callPackage ../development/libraries/pangoxsl { }; + + 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 {} ; + + inherit (callPackage ../development/libraries/physfs { }) + physfs_2 + physfs; + + pipelight = callPackage ../tools/misc/pipelight { + stdenv = stdenv_32bit; + wine-staging = pkgsi686Linux.wine-staging; + }; + + pkcs11helper = callPackage ../development/libraries/pkcs11helper { }; + + pkgdiff = callPackage ../tools/misc/pkgdiff { }; + + plib = callPackage ../development/libraries/plib { }; + + pocketsphinx = callPackage ../development/libraries/pocketsphinx { }; + + poco = callPackage ../development/libraries/poco { }; + + podofo = callPackage ../development/libraries/podofo { lua5 = lua5_1; }; + + polkit = callPackage ../development/libraries/polkit { }; + + polkit_qt4 = callPackage ../development/libraries/polkit-qt-1/qt-4.nix { }; + + 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 (oldAttrs: { + src = fetchurl { + url = "http://www.portaudio.com/archives/pa_stable_v19_20140130.tgz"; + sha256 = "0mwddk4qzybaf85wqfhxqlf0c5im9il8z03rd4n127k8y2jj9q4g"; + }; + }); + + portmidi = callPackage ../development/libraries/portmidi {}; + + primesieve = callPackage ../development/libraries/science/math/primesieve { }; + + prison = callPackage ../development/libraries/prison { }; + + proj = callPackage ../development/libraries/proj { }; + + proj_5 = callPackage ../development/libraries/proj/5.2.nix { }; + + proj-datumgrid = callPackage ../development/libraries/proj-datumgrid { }; + + proselint = callPackage ../tools/text/proselint { + inherit (python3Packages) + buildPythonApplication click future six; + }; + + prospector = callPackage ../development/tools/prospector { + python = python37; + }; + + protobuf = protobuf3_13; + + 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 = callPackage ../development/libraries/flatbuffers { }; + + nanopb = callPackage ../development/libraries/nanopb { }; + + gnupth = callPackage ../development/libraries/pth { }; + pth = if stdenv.hostPlatform.isMusl then npth else gnupth; + + pstreams = callPackage ../development/libraries/pstreams {}; + + pugixml = callPackage ../development/libraries/pugixml { }; + + pybind11 = pythonPackages.pybind11; + + python-qt = callPackage ../development/libraries/python-qt { + python = python27; + inherit (qt514) qmake qttools qtwebengine qtxmlpatterns; + }; + + pyotherside = libsForQt5.callPackage ../development/libraries/pyotherside {}; + + 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 = libsForQt514.callPackage ../applications/misc/qolibri { }; + + qt3 = callPackage ../development/libraries/qt-3 { + libpng = libpng12; + }; + + qt4 = qt48; + + qt48 = callPackage ../development/libraries/qt-4.x/4.8 { + # GNOME dependencies are not used unless gtkStyle == true + inherit (pkgs.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 (pkgs.darwin) libobjc; + inherit (pkgs.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 = appendToName "full" (qt48.override { + docs = true; + demos = true; + examples = true; + developerBuild = true; + }); + + qt512 = recurseIntoAttrs (makeOverridable + (import ../development/libraries/qt-5/5.12) { + inherit newScope; + inherit stdenv fetchurl fetchpatch fetchFromGitHub makeSetupHook makeWrapper; + inherit bison; + inherit cups; + inherit dconf; + inherit harfbuzz; + inherit libGL; + inherit perl; + inherit gtk3; + inherit (gst_all_1) gstreamer gst-plugins-base; + inherit llvmPackages_5; + }); + + libsForQt512 = recurseIntoAttrs (lib.makeScope qt512.newScope mkLibsForQt5); + + qt514 = recurseIntoAttrs (makeOverridable + (import ../development/libraries/qt-5/5.14) { + inherit newScope; + inherit stdenv fetchurl fetchpatch fetchFromGitHub makeSetupHook makeWrapper; + inherit bison; + inherit cups; + inherit dconf; + inherit harfbuzz; + inherit libGL; + inherit perl; + inherit gtk3; + inherit (gst_all_1) gstreamer gst-plugins-base; + inherit llvmPackages_5; + }); + + qt515 = recurseIntoAttrs (makeOverridable + (import ../development/libraries/qt-5/5.15) { + inherit newScope; + inherit stdenv fetchurl fetchpatch fetchFromGitHub makeSetupHook makeWrapper; + inherit bison; + inherit cups; + inherit dconf; + inherit harfbuzz; + inherit libGL; + inherit perl; + inherit gtk3; + inherit (gst_all_1) gstreamer gst-plugins-base; + inherit llvmPackages_5; + }); + + libsForQt514 = recurseIntoAttrs (lib.makeScope qt514.newScope mkLibsForQt5); + + libsForQt515 = recurseIntoAttrs (lib.makeScope qt515.newScope mkLibsForQt5); + + # 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; + + qt5ct = libsForQt5.callPackage ../tools/misc/qt5ct { }; + + mkLibsForQt5 = self: with self; { + + ### KDE FRAMEWORKS + + inherit (kdeFrameworks.override { libsForQt5 = self; }) + attica baloo bluez-qt kactivities kactivities-stats + karchive kauth kbookmarks kcmutils kcalendarcore kcodecs kcompletion kconfig + kconfigwidgets kcoreaddons kcrash kdav kdbusaddons kdeclarative kdelibs4support + kdesignerplugin kdnssd kemoticons kfilemetadata kglobalaccel kguiaddons + khtml ki18n kiconthemes kidletime kimageformats kio kitemmodels kitemviews + kjobwidgets kjs kjsembed kmediaplayer knewstuff knotifications + knotifyconfig kpackage kparts kpeople kplotting kpty kross krunner + kservice ktexteditor ktextwidgets kunitconversion kwallet kwayland + kwidgetsaddons kwindowsystem kxmlgui kxmlrpcclient modemmanager-qt + networkmanager-qt plasma-framework prison qqc2-desktop-style solid sonnet + syntax-highlighting syndication threadweaver kirigami2 kholidays kpurpose + kcontacts kquickcharts kdoctools kapidox; + + ### KDE PLASMA 5 + + inherit (plasma5.override { libsForQt5 = self; }) + kdecoration khotkeys libkscreen libksysguard; + + ### KDE APPLICATIONS + + inherit (kdeApplications.override { libsForQt5 = self; }) + libkdcraw libkexiv2 libkipi libkomparediff2 libksane; + + ### LIBRARIES + + accounts-qt = callPackage ../development/libraries/accounts-qt { }; + + alkimia = callPackage ../development/libraries/alkimia { }; + + appstream-qt = callPackage ../development/libraries/appstream/qt.nix { }; + + dxflib = callPackage ../development/libraries/dxflib {}; + + fcitx-qt5 = callPackage ../tools/inputmethods/fcitx/fcitx-qt5.nix { }; + + qgpgme = callPackage ../development/libraries/gpgme { }; + + grantlee = callPackage ../development/libraries/grantlee/5 { }; + + kdb = callPackage ../development/libraries/kdb { }; + + kdiagram = callPackage ../development/libraries/kdiagram { }; + + kdsoap = callPackage ../development/libraries/kdsoap { }; + + kproperty = callPackage ../development/libraries/kproperty { }; + + kpeoplevcard = callPackage ../development/libraries/kpeoplevcard { }; + + kreport = callPackage ../development/libraries/kreport { }; + + ldutils = callPackage ../development/libraries/ldutils { }; + + libcommuni = callPackage ../development/libraries/libcommuni { }; + + libdbusmenu = callPackage ../development/libraries/libdbusmenu-qt/qt-5.5.nix { }; + + libkeyfinder = callPackage ../development/libraries/libkeyfinder { }; + + libktorrent = callPackage ../development/libraries/libktorrent { }; + + liblastfm = callPackage ../development/libraries/liblastfm { }; + + libopenshot = callPackage ../applications/video/openshot-qt/libopenshot.nix { }; + + libopenshot-audio = callPackage ../applications/video/openshot-qt/libopenshot-audio.nix { }; + + libqglviewer = callPackage ../development/libraries/libqglviewer { + inherit (darwin.apple_sdk.frameworks) AGL; + }; + + libqtav = callPackage ../development/libraries/libqtav { }; + + kpmcore = callPackage ../development/libraries/kpmcore { }; + + 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/qt-5.nix { }; + + poppler = callPackage ../development/libraries/poppler { + lcms = lcms2; + qt5Support = true; + suffix = "qt5"; + }; + + pulseaudio-qt = callPackage ../development/libraries/pulseaudio-qt { }; + + qca-qt5 = callPackage ../development/libraries/qca-qt5 { }; + + qmltermwidget = callPackage ../development/libraries/qmltermwidget { + inherit (darwin.apple_sdk.libs) utmp; + }; + + qmlbox2d = callPackage ../development/libraries/qmlbox2d { }; + + qoauth = callPackage ../development/libraries/qoauth { }; + + qscintilla = callPackage ../development/libraries/qscintilla { + withQt5 = true; + }; + + qtutilities = callPackage ../development/libraries/qtutilities { }; + + qtinstaller = callPackage ../development/libraries/qtinstaller { }; + + qtkeychain = callPackage ../development/libraries/qtkeychain { + withQt5 = true; + }; + + 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 { }; + + }; + + qtEnv = qt5.env; + qt5Full = qt5.full; + + qtkeychain = callPackage ../development/libraries/qtkeychain { }; + + qtscriptgenerator = callPackage ../development/libraries/qtscriptgenerator { }; + + quesoglc = callPackage ../development/libraries/quesoglc { }; + + quickder = callPackage ../development/libraries/quickder {}; + + quicksynergy = callPackage ../applications/misc/quicksynergy { }; + + 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 { }; + + readline = readline6; + readline6 = readline63; + + readline5 = callPackage ../development/libraries/readline/5.x.nix { }; + + readline62 = callPackage ../development/libraries/readline/6.2.nix { }; + + readline63 = callPackage ../development/libraries/readline/6.3.nix { }; + + readline70 = callPackage ../development/libraries/readline/7.0.nix { }; + + readline80 = callPackage ../development/libraries/readline/8.0.nix { }; + + readosm = callPackage ../development/libraries/readosm { }; + + kissfft = callPackage ../development/libraries/kissfft { }; + + lambdabot = callPackage ../development/tools/haskell/lambdabot { + haskellLib = haskell.lib; + }; + + lambda-mod-zsh-theme = callPackage ../shells/zsh/lambda-mod-zsh-theme { }; + + leksah = throw ("To use leksah, refer to the instructions in " + + "https://github.com/leksah/leksah."); + + 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 = libsForQt514.callPackage ../development/libraries/qgnomeplatform { }; + + randomx = callPackage ../development/libraries/randomx { }; + + redkite = callPackage ../development/libraries/redkite { }; + + resolv_wrapper = callPackage ../development/libraries/resolv_wrapper { }; + + 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; }; + + rotate-backups = with python3Packages; toPythonApplication rotate-backups; + + rote = callPackage ../development/libraries/rote { }; + + ronn = callPackage ../development/tools/ronn { }; + + rshell = python3.pkgs.callPackage ../development/tools/rshell { }; + + rttr = callPackage ../development/libraries/rttr { }; + + rubberband = callPackage ../development/libraries/rubberband { }; + + /* 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 { }; + + SDL = callPackage ../development/libraries/SDL ({ + inherit (darwin.apple_sdk.frameworks) OpenGL CoreAudio CoreServices AudioUnit Kernel Cocoa; + } // 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 { }; + + sdnotify-wrapper = skawarePackages.sdnotify-wrapper; + + 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 {}; + + shhmsg = callPackage ../development/libraries/shhmsg { }; + + shhopt = callPackage ../development/libraries/shhopt { }; + + graphite2 = callPackage ../development/libraries/silgraphite/graphite2.nix {}; + + 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 { }; + + sfml = callPackage ../development/libraries/sfml { + inherit (darwin.apple_sdk.frameworks) IOKit Foundation AppKit OpenAL; + }; + csfml = callPackage ../development/libraries/csfml { }; + + shapelib = callPackage ../development/libraries/shapelib { }; + + shibboleth-sp = callPackage ../development/libraries/shibboleth-sp { }; + + skaffold = callPackage ../development/tools/skaffold { }; + + skalibs = skawarePackages.skalibs; + + skawarePackages = recurseIntoAttrs rec { + cleanPackaging = callPackage ../build-support/skaware/clean-packaging.nix { }; + buildPackage = callPackage ../build-support/skaware/build-skaware-package.nix { + inherit cleanPackaging; + }; + + skalibs = callPackage ../development/libraries/skalibs { }; + execline = callPackage ../tools/misc/execline { }; + + s6 = callPackage ../tools/system/s6 { }; + s6-dns = callPackage ../tools/networking/s6-dns { }; + 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 { }; + + 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 { }; + + soapyairspy = callPackage ../applications/radio/soapyairspy { }; + + soapybladerf = callPackage ../applications/radio/soapybladerf { }; + + soapyhackrf = callPackage ../applications/radio/soapyhackrf { }; + + soapysdr = callPackage ../applications/radio/soapysdr { }; + + soapyremote = callPackage ../applications/radio/soapyremote { }; + + soapysdr-with-plugins = callPackage ../applications/radio/soapysdr { + extraPackages = [ + limesuite + soapyairspy + soapybladerf + soapyhackrf + soapyremote + soapyrtlsdr + soapyuhd + ]; + }; + + soapyrtlsdr = callPackage ../applications/radio/soapyrtlsdr { }; + + soapyuhd = callPackage ../applications/radio/soapyuhd { }; + + socket_wrapper = callPackage ../development/libraries/socket_wrapper { }; + + sofia_sip = callPackage ../development/libraries/sofia-sip { }; + + soil = callPackage ../development/libraries/soil { }; + + sonic = callPackage ../development/libraries/sonic { }; + + sope = callPackage ../development/libraries/sope { }; + + soprano = callPackage ../development/libraries/soprano { }; + + sord = callPackage ../development/libraries/sord {}; + + soundtouch = callPackage ../development/libraries/soundtouch {}; + + spandsp = callPackage ../development/libraries/spandsp {}; + + 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; + }; + + 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 { }; + + 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 { + libpcap = if stdenv.isLinux then libpcap else null; + }; + + stb = callPackage ../development/libraries/stb { }; + + stxxl = callPackage ../development/libraries/stxxl { parallel = true; }; + + 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 { }; + + sqlite-interactive = appendToName "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 = pkgs.fetchFromGitHub { + owner = "CanonicalLtd"; + repo = "sqlite"; + rev = "version-${version}"; + sha256 = "1aw1naa5y25ial251f74h039pgcz92p4b3994jvfzqpjlz06qwvw"; + }; + nativeBuildInputs = [ pkgs.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 = lowPrio (callPackage ../development/libraries/sqlcipher { + readline = null; + ncurses = null; + }); + + standardnotes = callPackage ../applications/editors/standardnotes { }; + + stfl = callPackage ../development/libraries/stfl { }; + + stlink = callPackage ../development/tools/misc/stlink { }; + + steghide = callPackage ../tools/security/steghide {}; + + stlport = callPackage ../development/libraries/stlport { }; + + streamlink = callPackage ../applications/video/streamlink { pythonPackages = python3Packages; }; + streamlink-twitch-gui-bin = callPackage ../applications/video/streamlink-twitch-gui/bin.nix {}; + + subdl = callPackage ../applications/video/subdl { }; + + subtitleeditor = callPackage ../applications/video/subtitleeditor { enchant = enchant1; }; + + 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; + }; + + sundials_2 = callPackage ../development/libraries/sundials/2.x.nix { + python = python3; + }; + + sutils = callPackage ../tools/misc/sutils { }; + + svrcore = callPackage ../development/libraries/svrcore { }; + + svxlink = libsForQt5.callPackage ../applications/radio/svxlink { }; + + swiftclient = python3.pkgs.callPackage ../tools/admin/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; + }; + + taglib = callPackage ../development/libraries/taglib { }; + + taglib_extras = callPackage ../development/libraries/taglib-extras { }; + + taglib-sharp = callPackage ../development/libraries/taglib-sharp { }; + + talloc = callPackage ../development/libraries/talloc { + python = buildPackages.python3; + }; + + tclap = callPackage ../development/libraries/tclap {}; + + tcllib = callPackage ../development/libraries/tcllib { }; + + tcltls = callPackage ../development/libraries/tcltls { + openssl = openssl_1_0_2; + }; + + 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 { + inherit (pythonPackages) twisted; + }; + + thrift-0_10 = callPackage ../development/libraries/thrift/0.10.nix { + inherit (pythonPackages) twisted; + }; + + 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; }; + + 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 { }; + + tremor = callPackage ../development/libraries/tremor { }; + + 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 { }; + + usbredir = callPackage ../development/libraries/usbredir { }; + + uthash = callPackage ../development/libraries/uthash { }; + + 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_5_x = callPackage ../development/libraries/v8/5_x.nix ({ + inherit (python2Packages) python gyp; + icu = icu58; # v8-5.4.232 fails against icu4c-59.1 + } // lib.optionalAttrs stdenv.isLinux { + # doesn't build with gcc7 + stdenv = gcc6Stdenv; + }); + + v8_6_x = v8; + v8 = callPackage ../development/libraries/v8 { + inherit (python2Packages) python; + } // lib.optionalAttrs stdenv.isLinux { + # doesn't build with gcc7 + stdenv = gcc6Stdenv; + }; + + 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 { }; + + 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 { }; + + 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 = callPackage ../development/libraries/vtk { + 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_7 = callPackage ../development/libraries/vtk/7.x.nix { + stdenv = if stdenv.isDarwin then stdenv else gcc8Stdenv; + 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 = libsForQt514.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; + }; + + vulkan-headers = callPackage ../development/libraries/vulkan-headers { }; + vulkan-loader = callPackage ../development/libraries/vulkan-loader { }; + vulkan-tools = callPackage ../tools/graphics/vulkan-tools { }; + vulkan-validation-layers = callPackage ../development/tools/vulkan-validation-layers { }; + + vtkWithQt5 = vtk.override { qtLib = qt514; }; + + vxl = callPackage ../development/libraries/vxl { + libpng = libpng12; + stdenv = gcc6Stdenv; # upstream code incompatible with gcc7 + }; + + wally-cli = callPackage ../development/tools/wally-cli { }; + + wavpack = callPackage ../development/libraries/wavpack { }; + + wayland = callPackage ../development/libraries/wayland { }; + + wayland-protocols = callPackage ../development/libraries/wayland/protocols.nix { }; + + waylandpp = callPackage ../development/libraries/waylandpp { }; + + wcslib = callPackage ../development/libraries/wcslib { }; + + webkitgtk = callPackage ../development/libraries/webkitgtk { + harfbuzz = harfbuzzFull; + inherit (gst_all_1) gst-plugins-base gst-plugins-bad; + }; + + websocketpp = callPackage ../development/libraries/websocket++ { }; + + webrtc-audio-processing = callPackage ../development/libraries/webrtc-audio-processing { }; + + wildmidi = callPackage ../development/libraries/wildmidi { }; + + wiredtiger = callPackage ../development/libraries/wiredtiger { }; + + wt = wt4; + inherit (callPackages ../development/libraries/wt {}) + 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 { + inherit (darwin.apple_sdk.frameworks) AGL Cocoa Kernel; + inherit (darwin.stubs) setfile rez derez; + }; + + wxSVG = callPackage ../development/libraries/wxSVG { + wxGTK = wxGTK30; + }; + + 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 { }; + + xineLib = 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 + ]; + }; + + 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 { }; + + 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 { }; + + ydotool = callPackage ../tools/wayland/ydotool { }; + + 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 { + pythonPackages = python3Packages; + }; + + yubikey-neo-manager = callPackage ../tools/misc/yubikey-neo-manager { }; + + yubikey-personalization = callPackage ../tools/misc/yubikey-personalization { }; + + yubikey-personalization-gui = libsForQt5.callPackage ../tools/misc/yubikey-personalization-gui { }; + + yubikey-agent = callPackage ../tools/security/yubikey-agent { }; + + zchunk = callPackage ../development/libraries/zchunk { }; + + zeitgeist = callPackage ../development/libraries/zeitgeist { }; + + zlib = callPackage ../development/libraries/zlib { }; + + 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/default.nix {}; + + zmqpp = callPackage ../development/libraries/zmqpp { }; + + zig = callPackage ../development/compilers/zig { + llvmPackages = llvmPackages_10; + }; + + 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 { }; + + 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 / JAVA + + commonsBcel = callPackage ../development/libraries/java/commons/bcel { }; + + commonsBsf = callPackage ../development/libraries/java/commons/bsf { }; + + commonsCompress = callPackage ../development/libraries/java/commons/compress { }; + + 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 { }; + + gwtdragdrop = callPackage ../development/libraries/java/gwt-dragdrop { }; + + gwtwidgets = callPackage ../development/libraries/java/gwt-widgets { }; + + 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 { }; + + junit = callPackage ../development/libraries/java/junit { antBuild = releaseTools.antBuild; }; + + junixsocket = callPackage ../development/libraries/java/junixsocket { }; + + lombok = callPackage ../development/libraries/java/lombok { }; + + lucene = callPackage ../development/libraries/java/lucene { }; + + lucenepp = callPackage ../development/libraries/lucene++ { + boost = boost155; + }; + + 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 + + buildGo114Package = callPackage ../development/go-packages/generic { + go = buildPackages.go_1_14; + }; + buildGo115Package = callPackage ../development/go-packages/generic { + go = buildPackages.go_1_15; + }; + + buildGoPackage = buildGo115Package; + + buildGo114Module = callPackage ../development/go-modules/generic { + go = buildPackages.go_1_14; + }; + buildGo115Module = callPackage ../development/go-modules/generic { + go = buildPackages.go_1_15; + }; + + buildGoModule = buildGo115Module; + + 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_asdf_3_1 // + lispPackagesFor ((wrapLisp sbcl).override { asdf = asdf_3_1; })); + + quicklispPackagesFor = clwrapper: callPackage ../development/lisp-modules/quicklisp-to-nix.nix { + inherit clwrapper; + }; + quicklispPackagesClisp = dontRecurseIntoAttrs (quicklispPackagesFor (wrapLisp clisp)); + quicklispPackagesSBCL = dontRecurseIntoAttrs (quicklispPackagesFor (wrapLisp sbcl)); + quicklispPackages = quicklispPackagesSBCL; + quicklispPackages_asdf_3_1 = quicklispPackagesFor + ((wrapLisp sbcl).override { asdf = asdf_3_1; }); + + ### DEVELOPMENT / PERL MODULES + + perlInterpreters = callPackages ../development/interpreters/perl {}; + inherit (perlInterpreters) perl530 perl532 perldevel; + + perl530Packages = recurseIntoAttrs perl530.pkgs; + perl532Packages = recurseIntoAttrs perl532.pkgs; + perldevelPackages = perldevel.pkgs; + + perl = perl532; + perlPackages = perl532Packages; + + ack = perlPackages.ack; + + perlcritic = perlPackages.PerlCritic; + + sqitchPg = callPackage ../development/tools/misc/sqitch { + name = "sqitch-pg"; + databaseModule = perlPackages.DBDPg; + sqitchModule = perlPackages.AppSqitch; + }; + + ### 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 = []; + }; + + rPackages = dontRecurseIntoAttrs (callPackage ../development/r-modules { + overrides = (config.rPackageOverrides or (p: {})) pkgs; + }); + + ### SERVERS + + _389-ds-base = callPackage ../servers/ldap/389 { + kerberos = libkrb5; + }; + + adguardhome = callPackage ../servers/adguardhome {}; + + apacheHttpd_2_4 = callPackage ../servers/http/apache-httpd/2.4.nix { }; + apacheHttpd = pkgs.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_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 = callPackage ../servers/http/apache-modules/mod_evasive { }; + + 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; }; + + php = pkgs.php.override { inherit apacheHttpd; }; + + subversion = pkgs.subversion.override { httpServer = true; inherit apacheHttpd; }; + }; + + apacheHttpdPackages_2_4 = dontRecurseIntoAttrs (apacheHttpdPackagesFor pkgs.apacheHttpd_2_4 pkgs.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 = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + + apache-jena-fuseki = callPackage ../servers/nosql/apache-jena/fuseki-binary.nix { + java = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + + apcupsd = callPackage ../servers/apcupsd { }; + + inherit (callPackages ../servers/asterisk { }) + asterisk asterisk-stable asterisk-lts + asterisk_13 asterisk_16 asterisk_17; + + asterisk-module-sccp = callPackage ../servers/asterisk/sccp { }; + + sabnzbd = callPackage ../servers/sabnzbd { }; + + bftpd = callPackage ../servers/ftp/bftpd {}; + + bind = callPackage ../servers/dns/bind { }; + dnsutils = bind.dnsutils; + + inherit (callPackages ../servers/bird { }) + bird bird6 bird2; + + bosun = callPackage ../servers/monitoring/bosun { }; + + cayley = callPackage ../servers/cayley { }; + + charybdis = callPackage ../servers/irc/charybdis { }; + + clamsmtp = callPackage ../servers/mail/clamsmtp { }; + + clickhouse = callPackage ../servers/clickhouse { + # clickhouse doesn't build on llvm8. + inherit (llvmPackages_9) clang-unwrapped lld lldClang llvm; + }; + + couchdb = callPackage ../servers/http/couchdb { + sphinx = python27Packages.sphinx; + erlang = erlangR19; + }; + + couchdb2 = callPackage ../servers/http/couchdb/2.0.0.nix { + erlang = erlangR21; + }; + + couchdb3 = callPackage ../servers/http/couchdb/3.nix { + erlang = erlangR22; + }; + + couchpotato = callPackage ../servers/couchpotato {}; + + dex-oidc = callPackage ../servers/dex { }; + + dex2jar = callPackage ../development/tools/java/dex2jar { }; + + doh-proxy = callPackage ../servers/dns/doh-proxy { + python3Packages = python36Packages; + }; + + 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; }; + + 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 { }; + + etcd = callPackage ../servers/etcd { }; + etcd_3_4 = callPackage ../servers/etcd/3.4.nix { }; + + ejabberd = callPackage ../servers/xmpp/ejabberd { }; + + exhibitor = callPackage ../servers/exhibitor { }; + + hyp = callPackage ../servers/http/hyp { }; + + prosody = callPackage ../servers/xmpp/prosody { + # _compat can probably be removed on next minor version after 0.10.0 + lua5 = lua5_2_compat; + withExtraLibs = [ luaPackages.luadbi-sqlite3 ]; + inherit (lua52Packages) luasocket luasec luaexpat luafilesystem luabitop luaevent luadbi; + }; + + biboumi = callPackage ../servers/xmpp/biboumi { }; + + elasticmq = callPackage ../servers/elasticmq { + jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + + 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 { }; + + felix = callPackage ../servers/felix { }; + + felix_remoteshell = callPackage ../servers/felix/remoteshell.nix { }; + + fingerd_bsd = callPackage ../servers/fingerd/bsd-fingerd { }; + + firebird = callPackage ../servers/firebird { icu = null; /*stdenv = gcc5Stdenv;*/ }; + firebirdSuper = firebird.override { icu = icu58; superServer = true; /*stdenv = gcc5Stdenv;*/ }; + + frab = callPackage ../servers/web-apps/frab { }; + + freepops = callPackage ../servers/mail/freepops { }; + + 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 { }; + + grafana-loki = callPackage ../servers/monitoring/loki { + buildGoPackage = buildGo114Package; + }; + + grafana_reporter = callPackage ../servers/monitoring/grafana-reporter { }; + + gerbera = callPackage ../servers/gerbera { }; + + gobetween = callPackage ../servers/gobetween { }; + + h2o = callPackage ../servers/http/h2o { }; + + haka = callPackage ../tools/security/haka { }; + + hashi-ui = callPackage ../servers/hashi-ui {}; + + hasura-graphql-engine = haskell.lib.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 { }; + + https-dns-proxy = callPackage ../servers/dns/https-dns-proxy { }; + + hydron = callPackage ../servers/hydron { }; + + 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 { }; + }; + + imgproxy = callPackage ../servers/imgproxy { }; + + ircdHybrid = callPackage ../servers/irc/ircd-hybrid { }; + + jboss = callPackage ../servers/http/jboss { }; + + jboss_mysql_jdbc = callPackage ../servers/http/jboss/jdbc/mysql { }; + + jetty = callPackage ../servers/http/jetty { }; + + jicofo = callPackage ../servers/jicofo { }; + + jitsi-meet = callPackage ../servers/web-apps/jitsi-meet { }; + + 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 { }; + + lighttpd = callPackage ../servers/http/lighttpd { }; + + livepeer = callPackage ../servers/livepeer { }; + + lwan = callPackage ../servers/http/lwan { }; + + labelImg = callPackage ../applications/science/machine-learning/labelimg { }; + + mailman = callPackage ../servers/mail/mailman/wrapped.nix { }; + + mailman-rss = callPackage ../development/python-modules/mailman-rss { }; + + mailman-web = with python3.pkgs; toPythonApplication mailman-web; + + 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 { }; + + mediatomb = callPackage ../servers/mediatomb { }; + + memcached = callPackage ../servers/memcached {}; + + meteor = callPackage ../servers/meteor { }; + + micronaut = callPackage ../development/tools/micronaut {}; + + minio = callPackage ../servers/minio { }; + + # Backwards compatibility. + mod_dnssd = pkgs.apacheHttpdPackages.mod_dnssd; + mod_fastcgi = pkgs.apacheHttpdPackages.mod_fastcgi; + mod_python = pkgs.apacheHttpdPackages.mod_python; + mod_wsgi = pkgs.apacheHttpdPackages.mod_wsgi; + mod_ca = pkgs.apacheHttpdPackages.mod_ca; + mod_crl = pkgs.apacheHttpdPackages.mod_crl; + mod_csr = pkgs.apacheHttpdPackages.mod_csr; + mod_ocsp = pkgs.apacheHttpdPackages.mod_ocsp; + mod_scep = pkgs.apacheHttpdPackages.mod_scep; + mod_spkac = pkgs.apacheHttpdPackages.mod_spkac; + mod_pkcs12 = pkgs.apacheHttpdPackages.mod_pkcs12; + mod_timestamp = pkgs.apacheHttpdPackages.mod_timestamp; + + inherit (callPackages ../servers/mpd { }) + mpd mpd-small mpdWithFeatures; + + mpd_clientlib = callPackage ../servers/mpd/clientlib.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 { }; + + mumsi = callPackage ../servers/mumsi { }; + + myserver = callPackage ../servers/http/myserver { }; + + nas = callPackage ../servers/nas { }; + + nats-streaming-server = callPackage ../servers/nats-streaming-server { }; + + neard = callPackage ../servers/neard { }; + + unit = callPackage ../servers/http/unit { }; + + ncdns = callPackage ../servers/dns/ncdns { + buildGoPackage = buildGo114Package; + }; + + nginx = nginxStable; + + nginxStable = callPackage ../servers/http/nginx/stable.nix { + withPerl = false; + # We don't use `with` statement here on purpose! + # See https://github.com/NixOS/nixpkgs/pull/10474/files#r42369334 + modules = [ nginxModules.rtmp nginxModules.dav nginxModules.moreheaders ]; + }; + + nginxMainline = callPackage ../servers/http/nginx/mainline.nix { + withPerl = false; + # We don't use `with` statement here on purpose! + # See https://github.com/NixOS/nixpkgs/pull/10474/files#r42369334 + modules = [ nginxModules.dav nginxModules.moreheaders ]; + }; + + nginxModules = 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 {}; + + nsd = callPackage ../servers/dns/nsd (config.nsd or {}); + + nsq = callPackage ../servers/nsq { }; + + oauth2_proxy = callPackage ../servers/oauth2_proxy { }; + + openbgpd = callPackage ../servers/openbgpd { }; + + openafs = callPackage ../servers/openafs/1.6 { tsmbac = null; ncurses = null; }; + openafs_1_8 = callPackage ../servers/openafs/1.8 { tsmbac = null; ncurses = null; }; + + openresty = callPackage ../servers/http/openresty { + withPerl = false; + }; + + opensmtpd = callPackage ../servers/mail/opensmtpd { }; + opensmtpd-extras = callPackage ../servers/mail/opensmtpd/extras.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 { }; + + popa3d = callPackage ../servers/mail/popa3d { }; + + postfix = callPackage ../servers/mail/postfix { }; + + 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 { }; + + postgrey = callPackage ../servers/mail/postgrey { }; + + pshs = callPackage ../servers/http/pshs { }; + + sympa = callPackage ../servers/mail/sympa { }; + + system-sendmail = lowPrio (callPackage ../servers/mail/system-sendmail { }); + + # PulseAudio daemons + + pulseaudio = callPackage ../servers/pulseaudio { + inherit (darwin.apple_sdk.frameworks) CoreServices AudioUnit Cocoa; + }; + + 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; + + pulseeffects = callPackage ../applications/audio/pulseeffects { + boost = boost172; + }; + + tomcat_connectors = callPackage ../servers/http/apache-modules/tomcat-connectors { }; + + tomcat-native = callPackage ../servers/http/tomcat/tomcat-native.nix { }; + + pg_tileserv = callPackage ../servers/pg_tileserv { }; + + pies = callPackage ../servers/pies { }; + + rpcbind = callPackage ../servers/rpcbind { }; + + rpcsvc-proto = callPackage ../tools/misc/rpcsvc-proto { }; + + libmysqlclient = libmysqlclient_3_1; + libmysqlclient_3_1 = mariadb-connector-c_3_1; + mariadb-connector-c = mariadb-connector-c_3_1; + mariadb-connector-c_3_1 = callPackage ../servers/sql/mariadb/connector-c/3_1.nix { }; + + mariadb-galera = callPackage ../servers/sql/mariadb/galera { + asio = asio_1_10; + }; + + mariadb = callPackage ../servers/sql/mariadb { + # As per mariadb's cmake, "static jemalloc_pic.a can only be used up to jemalloc 4". + # https://jira.mariadb.org/browse/MDEV-15034 + jemalloc450 = jemalloc450.override ({ disableInitExecTls = true; }); + inherit (darwin) cctools; + inherit (pkgs.darwin.apple_sdk.frameworks) CoreServices; + }; + mysql = mariadb; # TODO: move to aliases.nix + + 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; + }; + + riak-cs = callPackage ../servers/nosql/riak-cs/2.1.1.nix { + inherit (darwin.apple_sdk.frameworks) Carbon Cocoa; + erlang = erlang_basho_R16B02; + }; + + stanchion = callPackage ../servers/nosql/riak-cs/stanchion.nix { + inherit (darwin.apple_sdk.frameworks) Carbon Cocoa; + erlang = erlang_basho_R16B02; + }; + + influxdb = callPackage ../servers/nosql/influxdb { }; + + 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; + inherit (darwin.apple_sdk.frameworks) CoreServices; + boost = boost169; # Configure checks for specific version. + protobuf = protobuf3_7; + }; + + mysql_jdbc = callPackage ../servers/sql/mysql/jdbc { }; + + mssql_jdbc = callPackage ../servers/sql/mssql/jdbc { }; + + azuredatastudio = callPackage ../applications/misc/azuredatastudio { }; + + miniflux = callPackage ../servers/miniflux { }; + + nagios = callPackage ../servers/monitoring/nagios { }; + + munin = callPackage ../servers/monitoring/munin { }; + + 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 { }; + + pynagsystemd = callPackage ../servers/monitoring/nagios/plugins/pynagsystemd.nix { }; + + neo4j = callPackage ../servers/nosql/neo4j { }; + + 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_4_25 = callPackage ../servers/softether/4.25.nix { openssl = openssl_1_0_2; }; + softether_4_29 = callPackage ../servers/softether/4.29.nix { }; + softether = softether_4_29; + + qboot = pkgsi686Linux.callPackage ../applications/virtualization/qboot { }; + + OVMF = callPackage ../applications/virtualization/OVMF { }; + OVMF-CSM = OVMF.override { csmSupport = true; }; + OVMF-secureBoot = OVMF.override { secureBoot = 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.nix { }; + + 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_9_5 + postgresql_9_6 + postgresql_10 + postgresql_11 + postgresql_12 + postgresql_13 + ; + postgresql = postgresql_11.override { this = postgresql; }; + postgresqlPackages = recurseIntoAttrs postgresql.pkgs; + postgresql11Packages = pkgs.postgresqlPackages; + + postgresql_jdbc = callPackage ../development/java-modules/postgresql_jdbc { }; + + prom2json = callPackage ../servers/monitoring/prometheus/prom2json.nix { }; + prometheus = callPackage ../servers/monitoring/prometheus { + buildGoPackage = buildGo114Package; + go = go_1_14; + }; + prometheus-alertmanager = callPackage ../servers/monitoring/prometheus/alertmanager.nix { }; + prometheus-apcupsd-exporter = callPackage ../servers/monitoring/prometheus/apcupsd-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-blackbox-exporter = callPackage ../servers/monitoring/prometheus/blackbox-exporter.nix { }; + prometheus-collectd-exporter = callPackage ../servers/monitoring/prometheus/collectd-exporter.nix { }; + prometheus-cups-exporter = callPackage ../servers/monitoring/prometheus/cups-exporter.nix { }; + prometheus-consul-exporter = callPackage ../servers/monitoring/prometheus/consul-exporter.nix { }; + prometheus-dnsmasq-exporter = callPackage ../servers/monitoring/prometheus/dnsmasq-exporter.nix { }; + prometheus-dovecot-exporter = callPackage ../servers/monitoring/prometheus/dovecot-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-json-exporter = callPackage ../servers/monitoring/prometheus/json-exporter.nix { }; + prometheus-keylight-exporter = callPackage ../servers/monitoring/prometheus/keylight-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-openvpn-exporter = callPackage ../servers/monitoring/prometheus/openvpn-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-redis-exporter = callPackage ../servers/monitoring/prometheus/redis-exporter.nix { }; + prometheus-rabbitmq-exporter = callPackage ../servers/monitoring/prometheus/rabbitmq-exporter.nix { }; + prometheus-snmp-exporter = callPackage ../servers/monitoring/prometheus/snmp-exporter.nix { }; + prometheus-tor-exporter = callPackage ../servers/monitoring/prometheus/tor-exporter.nix { }; + prometheus-statsd-exporter = callPackage ../servers/monitoring/prometheus/statsd-exporter.nix { }; + prometheus-surfboard-exporter = callPackage ../servers/monitoring/prometheus/surfboard-exporter.nix { }; + prometheus-unifi-exporter = callPackage ../servers/monitoring/prometheus/unifi-exporter { }; + prometheus-varnish-exporter = callPackage ../servers/monitoring/prometheus/varnish-exporter.nix { }; + prometheus-jmx-httpserver = callPackage ../servers/monitoring/prometheus/jmx-httpserver.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 { + pythonPackages = python3Packages; + }; + + 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 { }; + + pyIRCt = callPackage ../servers/xmpp/pyIRCt {}; + + pyMAILt = callPackage ../servers/xmpp/pyMAILt {}; + + pypolicyd-spf = python3.pkgs.callPackage ../servers/mail/pypolicyd-spf { }; + + qpid-cpp = callPackage ../servers/amqp/qpid-cpp { + boost = boost155; + inherit (pythonPackages) buildPythonPackage qpid-python; + }; + + qremotecontrol-server = callPackage ../servers/misc/qremotecontrol-server { }; + + quagga = callPackage ../servers/quagga { }; + + rabbitmq-server = callPackage ../servers/amqp/rabbitmq-server { + inherit (darwin.apple_sdk.frameworks) AppKit Carbon Cocoa; + elixir = elixir_1_8; + erlang = erlang_nox; + }; + + radicale1 = callPackage ../servers/radicale/1.x.nix { }; + radicale2 = callPackage ../servers/radicale/2.x.nix { }; + radicale3 = callPackage ../servers/radicale/3.x.nix { }; + + radicale = radicale3; + + rake = callPackage ../development/tools/build-managers/rake { }; + + redis = callPackage ../servers/nosql/redis { }; + + redstore = callPackage ../servers/http/redstore { }; + + 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 = boost171; + }; + + rippled-validator-keys-tool = callPackage ../servers/rippled/validator-keys-tool.nix { + boost = boost167.override { + enableStatic = true; + }; + }; + + 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 { + rpcgen = netbsd.rpcgen; + python = python3; + }; + + samba = samba4; + + samba4Full = lowPrio (samba4.override { + enableLDAP = true; + enablePrinting = true; + enableMDNS = true; + enableDomainController = true; + enableRegedit = true; + enableCephFS = !pkgs.stdenv.hostPlatform.isAarch64; + enableGlusterFS = true; + }); + + sambaFull = samba4Full; + + sampler = callPackage ../applications/misc/sampler { }; + + 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 + }; + + sickbeard = callPackage ../servers/sickbeard { }; + + sickgear = callPackage ../servers/sickbeard/sickgear.nix { }; + + sickrage = callPackage ../servers/sickbeard/sickrage.nix { }; + + sipwitch = callPackage ../servers/sip/sipwitch { }; + + slimserver = callPackage ../servers/slimserver { }; + + smcroute = callPackage ../servers/smcroute { }; + + sogo = callPackage ../servers/web-apps/sogo { }; + + spawn_fcgi = callPackage ../servers/http/spawn-fcgi { }; + + spring-boot-cli = callPackage ../development/tools/spring-boot-cli { }; + + squid = callPackage ../servers/squid { }; + + sslh = callPackage ../servers/sslh { }; + + thttpd = callPackage ../servers/http/thttpd { }; + + storm = callPackage ../servers/computing/storm { }; + + slurm = callPackage ../servers/computing/slurm { gtk2 = null; }; + + slurm-spank-x11 = callPackage ../servers/computing/slurm-spank-x11 { }; + + systemd-journal2gelf = callPackage ../tools/system/systemd-journal2gelf { }; + + syncserver = callPackage ../servers/syncserver { }; + + tailscale = callPackage ../servers/tailscale { }; + + thanos = callPackage ../servers/monitoring/thanos { }; + + inherit (callPackages ../servers/http/tomcat { }) + tomcat7 + tomcat8 + tomcat9; + + tomcat_mysql_jdbc = callPackage ../servers/http/tomcat/jdbc/mysql { }; + + torque = callPackage ../servers/computing/torque { }; + + tt-rss = callPackage ../servers/tt-rss { }; + tt-rss-plugin-ff-instagram = callPackage ../servers/tt-rss/plugin-ff-instagram { }; + tt-rss-plugin-tumblr-gdpr = callPackage ../servers/tt-rss/plugin-tumblr-gdpr { }; + 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 { }; + + shaarli-material = callPackage ../servers/web-apps/shaarli/material-theme.nix { }; + + 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 + unifiStable; + unifi = unifiStable; + + urserver = callPackage ../servers/urserver { }; + + victoriametrics = callPackage ../servers/nosql/victoriametrics { }; + + virtlyst = libsForQt5.callPackage ../servers/web-apps/virtlyst { }; + + virtuoso6 = callPackage ../servers/sql/virtuoso/6.x.nix { + openssl = openssl_1_0_2; + }; + + virtuoso7 = callPackage ../servers/sql/virtuoso/7.x.nix { + openssl = openssl_1_0_2; + }; + + virtuoso = virtuoso6; + + vsftpd = callPackage ../servers/ftp/vsftpd { }; + + wallabag = callPackage ../servers/web-apps/wallabag { }; + + webmetro = callPackage ../servers/webmetro { }; + + webhook = callPackage ../servers/http/webhook { }; + + winstone = throw "Winstone is not supported anymore. Alternatives are Jetty or Tomcat."; + + xinetd = callPackage ../servers/xinetd { }; + + zookeeper = callPackage ../servers/zookeeper { + jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + + 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 = erlangR18; + }; + + youtrack = callPackage ../servers/jetbrains/youtrack.nix { }; + + zabbixFor = version: rec { + agent = (callPackages ../servers/monitoring/zabbix/agent.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"); + zabbix30 = dontRecurseIntoAttrs (zabbixFor "v30"); + + 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 { }; + + alsa-firmware = callPackage ../os-specific/linux/alsa-firmware { }; + + alsaLib = callPackage ../os-specific/linux/alsa-lib { }; + + alsaPlugins = callPackage ../os-specific/linux/alsa-plugins { }; + + alsaPluginWrapper = callPackage ../os-specific/linux/alsa-plugins/wrapper.nix { }; + + alsaUtils = callPackage ../os-specific/linux/alsa-utils { }; + alsaOss = callPackage ../os-specific/linux/alsa-oss { }; + alsaTools = callPackage ../os-specific/linux/alsa-tools { }; + + alsa-ucm-conf = callPackage ../os-specific/linux/alsa-ucm-conf { }; + + alsa-topology-conf = callPackage ../os-specific/linux/alsa-topology-conf { }; + + inherit (callPackage ../misc/arm-trusted-firmware {}) + buildArmTrustedFirmware + armTrustedFirmwareTools + armTrustedFirmwareAllwinner + 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 { python = python3; }) + libapparmor apparmor-utils apparmor-bin-utils apparmor-parser apparmor-pam + apparmor-profiles apparmor-kernel-patches; + + 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 { }; + + blktrace = callPackage ../os-specific/linux/blktrace { }; + + bluez5 = callPackage ../os-specific/linux/bluez { }; + + 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 { }; + + 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 { }; + + 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 { }; + + cpuset = callPackage ../os-specific/linux/cpuset { }; + + criu = callPackage ../os-specific/linux/criu { }; + + cryptsetup = callPackage ../os-specific/linux/cryptsetup { }; + + cramfsprogs = callPackage ../os-specific/linux/cramfsprogs { }; + + cramfsswap = callPackage ../os-specific/linux/cramfsswap { }; + + crda = callPackage ../os-specific/linux/crda { }; + + # 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 { }; + + # unstable until the first 1.x release + fscrypt-experimental = callPackage ../os-specific/linux/fscrypt { }; + fscryptctl-experimental = callPackage ../os-specific/linux/fscryptctl { }; + + fwupd = callPackage ../os-specific/linux/firmware/fwupd { }; + + firmware-manager = callPackage ../os-specific/linux/firmware/firmware-manager { }; + + 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 utillinuxMinimal + else null; + + light = callPackage ../os-specific/linux/light { }; + + lightum = callPackage ../os-specific/linux/lightum { }; + + ebtables = callPackage ../os-specific/linux/ebtables { }; + + 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 (pkgs.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 { + utillinux = utillinuxMinimal; + }); + fuse = lowPrio 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 {}; + + gomp = callPackage ../applications/version-management/gomp { }; + + gomplate = callPackage ../development/tools/gomplate {}; + + gpm = callPackage ../servers/gpm { + ncurses = null; # Keep curses disabled for lack of value + }; + + gpm-ncurses = gpm.override { inherit ncurses; }; + + gpu-switch = callPackage ../os-specific/linux/gpu-switch { }; + + gradm = callPackage ../os-specific/linux/gradm { }; + + 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; + }; + + 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 { + openssl = openssl_1_0_2; + }; + + intel2200BGFirmware = callPackage ../os-specific/linux/firmware/intel2200BGFirmware { }; + + 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 { }; + + iproute = 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 and tftpd.8.gz) + + iptables = iptables-legacy; + iptables-legacy = callPackage ../os-specific/linux/iptables { }; + iptables-nftables-compat = callPackage ../os-specific/linux/iptables { nftablesCompat = true; }; + + 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 { }; + + jujuutils = callPackage ../os-specific/linux/jujuutils { }; + + kbd = callPackage ../os-specific/linux/kbd { }; + + kbdKeymaps = callPackage ../os-specific/linux/kbd/keymaps.nix { }; + + kbdlight = callPackage ../os-specific/linux/kbdlight { }; + + 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 { }; + + lieer = callPackage ../applications/networking/lieer {}; + + linuxConsoleTools = callPackage ../os-specific/linux/consoletools { }; + + openelec-dvb-firmware = callPackage ../os-specific/linux/firmware/openelec-dvb-firmware { }; + + openiscsi = callPackage ../os-specific/linux/open-iscsi { }; + + openisns = callPackage ../os-specific/linux/open-isns { }; + + osxfuse = callPackage ../os-specific/darwin/osxfuse { }; + + osxsnarf = callPackage ../os-specific/darwin/osxsnarf { }; + + power-calibrate = callPackage ../os-specific/linux/power-calibrate { }; + + powerstat = callPackage ../os-specific/linux/powerstat { }; + + smemstat = callPackage ../os-specific/linux/smemstat { }; + + tgt = callPackage ../tools/networking/tgt { }; + + # -- Linux kernel expressions ------------------------------------------------ + + lkl = callPackage ../applications/virtualization/lkl { }; + + inherit (callPackages ../os-specific/linux/kernel-headers { }) + linuxHeaders; + + kernelPatches = callPackage ../os-specific/linux/kernel/patches.nix { }; + + klibc = callPackage ../os-specific/linux/klibc { }; + + klibcShrunk = lowPrio (callPackage ../os-specific/linux/klibc/shrunk.nix { }); + + linux_mptcp = linux_mptcp_95; + + linux_mptcp_94 = callPackage ../os-specific/linux/kernel/linux-mptcp-94.nix { + kernelPatches = + [ kernelPatches.bridge_stp_helper + kernelPatches.request_key_helper + kernelPatches.cpu-cgroup-v2."4.11" + kernelPatches.modinst_arg_list_too_long + ] + ++ lib.optionals ((stdenv.hostPlatform.platform.kernelArch or null) == "mips") + [ kernelPatches.mips_fpureg_emu + kernelPatches.mips_fpu_sigill + kernelPatches.mips_ext3_n32 + ]; + }; + + 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 = callPackage ../os-specific/linux/kernel/linux-4.4.nix { + kernelPatches = + [ kernelPatches.bridge_stp_helper + kernelPatches.request_key_helper_updated + kernelPatches.cpu-cgroup-v2."4.4" + kernelPatches.modinst_arg_list_too_long + ]; + }; + + 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 + kernelPatches.export_kernel_fpu_functions."4.14" + ]; + }; + + 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 + kernelPatches.export_kernel_fpu_functions."4.14" + ]; + }; + + linux_5_4 = callPackage ../os-specific/linux/kernel/linux-5.4.nix { + kernelPatches = [ + kernelPatches.bridge_stp_helper + kernelPatches.request_key_helper + kernelPatches.export_kernel_fpu_functions."5.3" + ]; + }; + + linux-rt_5_4 = callPackage ../os-specific/linux/kernel/linux-rt-5.4.nix { + kernelPatches = [ + kernelPatches.bridge_stp_helper + kernelPatches.request_key_helper + kernelPatches.export_kernel_fpu_functions."5.3" + ]; + }; + + linux-rt_5_6 = callPackage ../os-specific/linux/kernel/linux-rt-5.6.nix { + kernelPatches = [ + kernelPatches.bridge_stp_helper + kernelPatches.request_key_helper + kernelPatches.export_kernel_fpu_functions."5.3" + ]; + }; + + linux_5_8 = callPackage ../os-specific/linux/kernel/linux-5.8.nix { + kernelPatches = [ + kernelPatches.bridge_stp_helper + kernelPatches.request_key_helper + kernelPatches.export_kernel_fpu_functions."5.3" + ]; + }; + + linux_5_9 = callPackage ../os-specific/linux/kernel/linux-5.9.nix { + kernelPatches = [ + kernelPatches.bridge_stp_helper + kernelPatches.request_key_helper + kernelPatches.export_kernel_fpu_functions."5.3" + ]; + }; + + linux_testing = callPackage ../os-specific/linux/kernel/linux-testing.nix { + kernelPatches = [ + kernelPatches.bridge_stp_helper + kernelPatches.request_key_helper + ]; + }; + + linux_testing_bcachefs = callPackage ../os-specific/linux/kernel/linux-testing-bcachefs.nix { + kernelPatches = + [ kernelPatches.bridge_stp_helper + kernelPatches.request_key_helper + ]; + }; + + 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 + kernelPatches.export_kernel_fpu_functions."5.3" + ]; + }; + + /* 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. */ + + linuxPackagesFor = kernel: lib.makeExtensible (self: with self; { + callPackage = newScope self; + + inherit kernel; + inherit (kernel) stdenv; # in particular, use the same compiler by default + + # Obsolete aliases (these packages do not depend on the kernel). + inherit (pkgs) odp-dpdk pktgen; # added 2018-05 + + acpi_call = callPackage ../os-specific/linux/acpi-call {}; + + amdgpu-pro = callPackage ../os-specific/linux/amdgpu-pro { }; + + anbox = callPackage ../os-specific/linux/anbox/kmod.nix { }; + + batman_adv = callPackage ../os-specific/linux/batman-adv {}; + + bcc = callPackage ../os-specific/linux/bcc { + python = python3; + }; + + bpftrace = callPackage ../os-specific/linux/bpftrace { }; + + bbswitch = callPackage ../os-specific/linux/bbswitch {}; + + ati_drivers_x11 = callPackage ../os-specific/linux/ati-drivers { }; + + 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 { }; + + digimend = callPackage ../os-specific/linux/digimend { }; + + dpdk = callPackage ../os-specific/linux/dpdk { }; + + exfat-nofuse = callPackage ../os-specific/linux/exfat { }; + + evdi = callPackage ../os-specific/linux/evdi { }; + + fwts-efi-runtime = callPackage ../os-specific/linux/fwts/module.nix { }; + + hyperv-daemons = callPackage ../os-specific/linux/hyperv-daemons { }; + + e1000e = if stdenv.lib.versionOlder kernel.version "4.10" then callPackage ../os-specific/linux/e1000e {} else null; + + intel-speed-select = if stdenv.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-wmi-sensors = callPackage ../os-specific/linux/asus-wmi-sensors {}; + + ena = callPackage ../os-specific/linux/ena {}; + + 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 { }; + + nvidiabl = callPackage ../os-specific/linux/nvidiabl { }; + + nvidiaPackages = dontRecurseIntoAttrs (callPackage ../os-specific/linux/nvidia-x11 { }); + + nvidia_x11_legacy304 = nvidiaPackages.legacy_304; + nvidia_x11_legacy340 = nvidiaPackages.legacy_340; + nvidia_x11_legacy390 = nvidiaPackages.legacy_390; + 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 { }; + + rtl8192eu = callPackage ../os-specific/linux/rtl8192eu { }; + + 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 { }; + + rtlwifi_new = callPackage ../os-specific/linux/rtlwifi_new { }; + + openafs = callPackage ../servers/openafs/1.6/module.nix { }; + openafs_1_8 = callPackage ../servers/openafs/1.8/module.nix { }; + + facetimehd = callPackage ../os-specific/linux/facetimehd { }; + + tuxedo-keyboard = callPackage ../os-specific/linux/tuxedo-keyboard { }; + + jool = callPackage ../os-specific/linux/jool { }; + + 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 stdenv.lib.versionAtLeast kernel.version "5.4" then callPackage ../os-specific/linux/oci-seccomp-bpf-hook { } else null; + + perf = callPackage ../os-specific/linux/kernel/perf.nix { }; + + phc-intel = if stdenv.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 stdenv.lib.versionOlder kernel.version "4.15" then callPackage ../os-specific/linux/prl-tools { } else null; + + sch_cake = callPackage ../os-specific/linux/sch_cake { }; + + 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-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 { }; + + vhba = callPackage ../misc/emulators/cdemu/vhba.nix { }; + + virtualbox = callPackage ../os-specific/linux/virtualbox { + virtualbox = pkgs.virtualboxHardened; + }; + + virtualboxGuestAdditions = callPackage ../applications/virtualization/virtualbox/guest-additions { + virtualbox = pkgs.virtualboxHardened; + }; + + 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 { }; + + xpadneo = callPackage ../os-specific/linux/xpadneo { }; + + zenpower = callPackage ../os-specific/linux/zenpower { }; + + inherit (callPackages ../os-specific/linux/zfs { + configFile = "kernel"; + inherit kernel; + }) zfsStable zfsUnstable; + + zfs = zfsStable; + + can-isotp = callPackage ../os-specific/linux/can-isotp { }; + }); + + # The current default kernel / kernel modules. + linuxPackages = linuxPackages_5_4; + linux = linuxPackages.kernel; + + # Update this when adding the newest kernel major version! + # And update linux_latest_for_hardened below if the patches are already available + linuxPackages_latest = linuxPackages_5_9; + linux_latest = linuxPackages_latest.kernel; + + # Realtime kernel packages. + linuxPackages-rt_5_4 = linuxPackagesFor pkgs.linux-rt_5_4; + linuxPackages-rt = linuxPackages-rt_5_4; + linux-rt = linuxPackages-rt.kernel; + linuxPackages-rt_5_6 = linuxPackagesFor pkgs.linux-rt_5_6; + linuxPackages-rt_latest = linuxPackages-rt_5_6; + linux-rt_latest = linuxPackages-rt_latest.kernel; + + linuxPackages_mptcp = linuxPackagesFor pkgs.linux_mptcp; + linuxPackages_rpi1 = linuxPackagesFor pkgs.linux_rpi1; + linuxPackages_rpi2 = linuxPackagesFor pkgs.linux_rpi2; + linuxPackages_rpi3 = linuxPackagesFor pkgs.linux_rpi3; + linuxPackages_rpi4 = linuxPackagesFor pkgs.linux_rpi4; + # Build kernel modules for some of the kernels. + linuxPackages_4_4 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_4_4); + linuxPackages_4_9 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_4_9); + linuxPackages_4_14 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_4_14); + linuxPackages_4_19 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_4_19); + linuxPackages_5_4 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_5_4); + linuxPackages_5_8 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_5_8); + linuxPackages_5_9 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_5_9); + + # When adding to the list above: + # - Update linuxPackages_latest to the latest version + # - Update the rev in ../os-specific/linux/kernel/linux-libre.nix to the latest one. + + # Intentionally lacks recurseIntoAttrs, as -rc kernels will quite likely break out-of-tree modules and cause failed Hydra builds. + linuxPackages_testing = linuxPackagesFor pkgs.linux_testing; + + linuxPackages_custom = { version, src, configfile, allowImportFromDerivation ? true }: + recurseIntoAttrs (linuxPackagesFor (pkgs.linuxManualConfig { + inherit version src configfile stdenv allowImportFromDerivation; + })); + + # This serves as a test for linuxPackages_custom + linuxPackages_custom_tinyconfig_kernel = let + base = pkgs.linuxPackages.kernel; + tinyLinuxPackages = pkgs.linuxPackages_custom { + inherit (base) version src; + allowImportFromDerivation = false; + configfile = pkgs.linuxConfig { + makeTarget = "tinyconfig"; + src = base.src; + }; + }; + in tinyLinuxPackages.kernel; + + # Build a kernel with bcachefs module + linuxPackages_testing_bcachefs = recurseIntoAttrs (linuxPackagesFor pkgs.linux_testing_bcachefs); + + # Build a kernel for Xen dom0 + linuxPackages_xen_dom0 = recurseIntoAttrs (linuxPackagesFor (pkgs.linux.override { features.xen_dom0=true; })); + + linuxPackages_latest_xen_dom0 = recurseIntoAttrs (linuxPackagesFor (pkgs.linux_latest.override { features.xen_dom0=true; })); + + # Hardened Linux + hardenedLinuxPackagesFor = kernel': overrides: + let # Note: We use this hack since the hardened patches can lag behind and we don't want to delay updates: + linux_latest_for_hardened = pkgs.linux_5_8; + kernel = (if kernel' == pkgs.linux_latest then linux_latest_for_hardened else kernel').override overrides; + in linuxPackagesFor (kernel.override { + structuredExtraConfig = import ../os-specific/linux/kernel/hardened/config.nix { + inherit stdenv; + inherit (kernel) version; + }; + kernelPatches = kernel.kernelPatches ++ [ + kernelPatches.tag_hardened + kernelPatches.hardened.${kernel.meta.branch} + ]; + modDirVersionArg = kernel.modDirVersion + "-hardened"; + }); + + linuxPackages_hardened = recurseIntoAttrs (hardenedLinuxPackagesFor pkgs.linux { }); + linux_hardened = linuxPackages_hardened.kernel; + + linuxPackages_latest_hardened = recurseIntoAttrs (hardenedLinuxPackagesFor pkgs.linux_latest { }); + linux_latest_hardened = linuxPackages_latest_hardened.kernel; + + linuxPackages_xen_dom0_hardened = recurseIntoAttrs (hardenedLinuxPackagesFor pkgs.linux { features.xen_dom0=true; }); + + linuxPackages_latest_xen_dom0_hardened = recurseIntoAttrs (hardenedLinuxPackagesFor pkgs.linux_latest { features.xen_dom0=true; }); + + # Hardkernel (Odroid) kernels. + linuxPackages_hardkernel_4_14 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_hardkernel_4_14); + linuxPackages_hardkernel_latest = linuxPackages_hardkernel_4_14; + linux_hardkernel_latest = linuxPackages_hardkernel_latest.kernel; + + # GNU Linux-libre kernels + linuxPackages-libre = recurseIntoAttrs (linuxPackagesFor linux-libre); + linux-libre = callPackage ../os-specific/linux/kernel/linux-libre.nix {}; + linuxPackages_latest-libre = recurseIntoAttrs (linuxPackagesFor linux_latest-libre); + linux_latest-libre = linux-libre.override { linux = linux_latest; }; + + # zen-kernel + linuxPackages_zen = recurseIntoAttrs (linuxPackagesFor pkgs.linux_zen); + + # A function to build a manually-configured kernel + linuxManualConfig = makeOverridable (callPackage ../os-specific/linux/kernel/manual-config.nix {}); + + # 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 ]; + buildPhase = '' + set -x + make \ + ARCH=${stdenv.hostPlatform.kernelArch} \ + HOSTCC=${buildPackages.stdenv.cc.targetPrefix}gcc \ + ${makeTarget} + ''; + installPhase = '' + cp .config $out + ''; + }; + + buildLinux = attrs: callPackage ../os-specific/linux/kernel/generic.nix attrs; + + cryptodev = linuxPackages_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 { + python = python37; + }; + + 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 { }; + + lm_sensors = callPackage ../os-specific/linux/lm-sensors { }; + + lockdep = callPackage ../os-specific/linux/lockdep { }; + + lsiutil = callPackage ../os-specific/linux/lsiutil { }; + + 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 = callPackage ../os-specific/linux/lvm2 { + # 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 = udev.override { cryptsetup = null; }; + }; + lvm2_dmeventd = callPackage ../os-specific/linux/lvm2 { + enableDmeventd = true; + enableCmdlib = true; + }; + + mbelib = callPackage ../development/libraries/audio/mbelib { }; + + mbpfan = callPackage ../os-specific/linux/mbpfan { }; + + mdadm = mdadm4; + mdadm4 = callPackage ../os-specific/linux/mdadm { }; + + 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 { }; + + 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 { }; + + system76-firmware = callPackage ../os-specific/linux/firmware/system76-firmware { }; + + open-vm-tools = callPackage ../applications/virtualization/open-vm-tools { }; + open-vm-tools-headless = open-vm-tools.override { withX = false; }; + + 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-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 { }; + + gotools = callPackage ../development/tools/gotools { }; + + gotop = callPackage ../tools/system/gotop { }; + + go-migrate = callPackage ../development/tools/go-migrate { }; + + gomodifytags = callPackage ../development/tools/gomodifytags { }; + + go-langserver = callPackage ../development/tools/go-langserver { }; + + gopls = callPackage ../development/tools/gopls { }; + + 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 { }; + + gogoclient = callPackage ../os-specific/linux/gogoclient { + openssl = openssl_1_0_2; + }; + + linux-pam = callPackage ../os-specific/linux/pam { }; + + nss_ldap = callPackage ../os-specific/linux/nss_ldap { }; + + odp-dpdk = callPackage ../os-specific/linux/odp-dpdk { }; + + odroid-xu3-bootloader = callPackage ../tools/misc/odroid-xu3-bootloader { }; + + ofp = callPackage ../os-specific/linux/ofp { }; + + ofono = callPackage ../tools/networking/ofono { }; + + 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 { }; + + 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 { }; + + 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; }); + + # 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_8 = lowPrio (qemu.override { hostCpuOnly = true; xenSupport = true; xen = xen_4_8-slim; }); + qemu_xen_4_8-light = lowPrio (qemu.override { hostCpuOnly = true; xenSupport = true; xen = xen_4_8-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; }); + + firmwareLinuxNonfree = callPackage ../os-specific/linux/firmware/firmware-linux-nonfree { }; + + radeontools = callPackage ../os-specific/linux/radeontools { }; + + radeontop = callPackage ../os-specific/linux/radeontop { }; + + raspberrypifw = callPackage ../os-specific/linux/firmware/raspberrypi {}; + raspberrypiWirelessFirmware = callPackage ../os-specific/linux/firmware/raspberrypi-wireless { }; + + raspberrypi-tools = callPackage ../os-specific/linux/firmware/raspberrypi/tools.nix {}; + + regionset = callPackage ../os-specific/linux/regionset { }; + + rfkill_udev = callPackage ../os-specific/linux/rfkill/udev.nix { }; + + riscv-pk = callPackage ../misc/riscv-pk { }; + + roccat-tools = callPackage ../os-specific/linux/roccat-tools { }; + + 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 { }; + + rtlwifi_new-firmware = callPackage ../os-specific/linux/firmware/rtlwifi_new-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 = libsForQt512.callPackage ../applications/radio/sdrangel { }; + + sepolgen = callPackage ../os-specific/linux/sepolgen { }; + + setools = callPackage ../os-specific/linux/setools { }; + + seturgent = callPackage ../os-specific/linux/seturgent { }; + + 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; + }; # pkgs.sysdig is a client, for a driver look at linuxPackagesFor + + sysfsutils = callPackage ../os-specific/linux/sysfsutils { }; + + sysprof = callPackage ../development/tools/profiling/sysprof { }; + + 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 + utillinux = utillinuxMinimal; + # provide a super minimal gnupg used for systemd-machined + gnupg = callPackage ../tools/security/gnupg/22.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; + }; + }; + + udev = systemd; # TODO: move to aliases.nix + + 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 { }; + + 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 { }; + + tunctl = callPackage ../os-specific/linux/tunctl { }; + + twa = callPackage ../tools/networking/twa { }; + + # Upstream U-Boots: + inherit (callPackage ../misc/uboot {}) + buildUBoot + ubootTools + ubootA20OlinuxinoLime + ubootBananaPi + ubootBananaPim3 + ubootBananaPim64 + ubootAmx335xEVM + ubootClearfog + ubootGuruplug + ubootJetsonTK1 + ubootNovena + ubootOdroidC2 + ubootOdroidXU3 + ubootOrangePiPc + ubootOrangePiZeroPlus2H5 + ubootPcduino3Nano + ubootPine64 + ubootPine64LTS + ubootPinebook + ubootPinebookPro + ubootQemuAarch64 + ubootQemuArm + ubootRaspberryPi + ubootRaspberryPi2 + ubootRaspberryPi3_32bit + ubootRaspberryPi3_64bit + ubootRaspberryPiZero + ubootRock64 + ubootRockPro64 + ubootROCPCRK3399 + ubootSheevaplug + ubootSopine + ubootUtilite + ubootWandboard + ; + + uclibc = callPackage ../os-specific/linux/uclibc { }; + + uclibcCross = callPackage ../os-specific/linux/uclibc { + stdenv = crossLibcStdenv; + }; + + eudev = callPackage ../os-specific/linux/eudev { utillinux = utillinuxMinimal; }; + + 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 { }; + + 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 { }; + + usermount = callPackage ../os-specific/linux/usermount { }; + + utillinux = if stdenv.isLinux then callPackage ../os-specific/linux/util-linux { } + else unixtools.utillinux; + + utillinuxCurses = utillinux; + + utillinuxMinimal = if stdenv.isLinux then appendToName "minimal" (utillinux.override { + minimal = true; + ncurses = null; + perl = null; + systemd = null; + }) else utillinux; + + v4l-utils = qt5.callPackage ../os-specific/linux/v4l-utils { }; + + 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_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 { }; + + 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 { }; + + 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 { }; + + inherit (kdeFrameworks) breeze-icons; + + 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 { }; + + cde-gtk-theme = callPackage ../data/themes/cdetheme { }; + + charis-sil = callPackage ../data/fonts/charis-sil { }; + + cherry = callPackage ../data/fonts/cherry { inherit (xorg) fonttosfnt mkfontdir; }; + + 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 {}; + + coreclr = callPackage ../development/compilers/coreclr { }; + + corefonts = callPackage ../data/fonts/corefonts { }; + + 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 { }; + + 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; + }; + + 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 { }; + + 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 { }; + + 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; + + 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 { }; + + greybird = callPackage ../data/themes/greybird { }; + + 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 { }; + + hetzner-kube = callPackage ../applications/networking/cluster/hetzner-kube { }; + + hicolor-icon-theme = callPackage ../data/icons/hicolor-icon-theme { }; + + 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 { }; + + 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 { }; + + kanji-stroke-order-font = callPackage ../data/fonts/kanji-stroke-order-font {}; + + kawkab-mono-font = callPackage ../data/fonts/kawkab-mono {}; + + kde2-decoration = libsForQt514.callPackage ../data/themes/kde2 { }; + + kochi-substitute = callPackage ../data/fonts/kochi-substitute {}; + + kochi-substitute-naga10 = callPackage ../data/fonts/kochi-substitute-naga10 {}; + + kopia = callPackage ../tools/backup/kopia { }; + + koreader = callPackage ../applications/misc/koreader {}; + + 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 { }; + + line-awesome = callPackage ../data/fonts/line-awesome { }; + + lmmath = callPackage ../data/fonts/lmmath {}; + + lmodern = callPackage ../data/fonts/lmodern { }; + + lobster-two = callPackage ../data/fonts/lobster-two {}; + + 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 { }; + + maia-icon-theme = 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 { }; + + 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 { }; + + material-design-icons = callPackage ../data/fonts/material-design-icons { }; + + material-icons = callPackage ../data/fonts/material-icons { }; + + meslo-lg = callPackage ../data/fonts/meslo-lg {}; + + 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 { }; + + 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 { }; + + nordic = callPackage ../data/themes/nordic { }; + + nordic-polar = callPackage ../data/themes/nordic-polar { }; + + inherit (callPackages ../data/fonts/noto-fonts {}) + noto-fonts noto-fonts-cjk noto-fonts-emoji noto-fonts-emoji-blob-bin noto-fonts-extra; + + 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 { }; + + orbitron = callPackage ../data/fonts/orbitron { }; + + orion = callPackage ../data/themes/orion {}; + + overpass = callPackage ../data/fonts/overpass { }; + + oxygenfonts = callPackage ../data/fonts/oxygenfonts { }; + + inherit (kdeFrameworks) oxygen-icons5; + + 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 { }; + + papirus-maia-icon-theme = callPackage ../data/icons/papirus-maia-icon-theme { }; + + papis = with python3Packages; toPythonApplication papis; + + 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 { }; + + 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 { }; + + posix_man_pages = callPackage ../data/documentation/man-pages-posix { }; + + powerline-fonts = callPackage ../data/fonts/powerline-fonts { }; + + 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 { }; + + qogir-icon-theme = callPackage ../data/icons/qogir-icon-theme { }; + + qogir-theme = callPackage ../data/themes/qogir { }; + + qtcurve = libsForQt514.callPackage ../data/themes/qtcurve {}; + + redhat-official-fonts = callPackage ../data/fonts/redhat-official { }; + + route159 = callPackage ../data/fonts/route159 { }; + + sampradaya = callPackage ../data/fonts/sampradaya { }; + + sarasa-gothic = callPackage ../data/fonts/sarasa-gothic { }; + + scheme-manpages = callPackage ../data/documentation/scheme-manpages { }; + + scowl = callPackage ../data/misc/scowl { }; + + seshat = callPackage ../data/fonts/seshat { }; + + shaderc = callPackage ../development/compilers/shaderc { }; + + shades-of-gray-theme = callPackage ../data/themes/shades-of-gray { }; + + skeu = callPackage ../data/themes/skeu { }; + + sweet = callPackage ../data/themes/sweet { }; + + mime-types = callPackage ../data/misc/mime-types { }; + + shared-mime-info = callPackage ../data/misc/shared-mime-info { }; + + shared_desktop_ontologies = callPackage ../data/misc/shared-desktop-ontologies { }; + + scheherazade = 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 { }; + + 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; + }; + + 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 { }; + + qgo = libsForQt5.callPackage ../games/qgo { }; + + qmc2 = libsForQt514.callPackage ../misc/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 { }; + + 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-ui = callPackage ../data/fonts/inter-ui { }; + inter = callPackage ../data/fonts/inter { }; + + 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-pro = callPackage ../data/fonts/source-sans-pro { }; + + 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; + + 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 { }; + + 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) fonttosfnt mkfontscale; }; + + terminus_font_ttf = callPackage ../data/fonts/terminus-font-ttf { }; + + terminus-nerdfont = nerdfonts.override { + fonts = [ "Terminus" ]; + }; + + termtekst = callPackage ../misc/emulators/termtekst { }; + + tex-gyre = callPackages ../data/fonts/tex-gyre { }; + + tex-gyre-math = callPackages ../data/fonts/tex-gyre-math { }; + + theme-vertex = callPackage ../data/themes/vertex { }; + + 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 {}; + + twemoji-color-font = callPackage ../data/fonts/twemoji-color-font { + inherit (nodePackages) svgo; + }; + + 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; }; + + + ultimate-oldschool-pc-font-pack = callPackage ../data/fonts/ultimate-oldschool-pc-font-pack { }; + + undefined-medium = callPackage ../data/fonts/undefined-medium { }; + + 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 {}; + + vistafonts = callPackage ../data/fonts/vista-fonts { }; + + vistafonts-chs = callPackage ../data/fonts/vista-fonts-chs { }; + + weather-icons = callPackage ../data/fonts/weather-icons { }; + + 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 {}; + + zafiro-icons = callPackage ../data/icons/zafiro-icons { }; + + zeal = libsForQt514.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 dateutil + requests requests_toolbelt sqlalchemy fusepy; + }; + + adobe-reader = pkgsi686Linux.callPackage ../applications/misc/adobe-reader { }; + + masterpdfeditor = libsForQt5.callPackage ../applications/misc/masterpdfeditor { }; + + 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 {}; + + alchemy = callPackage ../applications/graphics/alchemy { }; + + alock = callPackage ../misc/screensavers/alock { }; + + inherit (python3Packages) alot; + + alpine = callPackage ../applications/networking/mailreaders/alpine { + tcl = tcl-8_5; + }; + + msgviewer = callPackage ../applications/networking/mailreaders/msgviewer { }; + + amarok = libsForQt514.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 { }; + + amsn = callPackage ../applications/networking/instant-messengers/amsn { }; + + 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 {}; + + ao = libfive; + + apache-directory-studio = callPackage ../applications/networking/apache-directory-studio {}; + + apngasm = callPackage ../applications/graphics/apngasm {}; + apngasm_2 = callPackage ../applications/graphics/apngasm/2.nix {}; + + appeditor = callPackage ../applications/misc/appeditor { }; + + apostrophe = callPackage ../applications/editors/apostrophe { + pythonPackages = python3Packages; + }; + + aqemu = libsForQt5.callPackage ../applications/virtualization/aqemu { }; + + ardour = callPackage ../applications/audio/ardour { }; + + ardour_5 = lowPrio (callPackage ../applications/audio/ardour/5.nix { }); + + arelle = with python3Packages; toPythonApplication arelle; + + argo = callPackage ../applications/networking/cluster/argo { }; + + argocd = callPackage ../applications/networking/cluster/argocd { }; + + ario = callPackage ../applications/audio/ario { }; + + arion = callPackage ../applications/virtualization/arion { }; + + asuka = callPackage ../applications/networking/browsers/asuka { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + 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; }; + + astroid = callPackage ../applications/networking/mailreaders/astroid { }; + + aucatctl = callPackage ../applications/audio/aucatctl { }; + + audacious = libsForQt5.callPackage ../applications/audio/audacious { }; + audaciousQt5 = audacious; + + audacity = callPackage ../applications/audio/audacity { }; + + audio-recorder = callPackage ../applications/audio/audio-recorder { }; + + autokey = callPackage ../applications/office/autokey { }; + + autotalent = callPackage ../applications/audio/autotalent { }; + + autotrace = callPackage ../applications/graphics/autotrace {}; + + av-98 = callPackage ../applications/networking/browsers/av-98 { }; + + avocode = callPackage ../applications/graphics/avocode {}; + + azpainter = callPackage ../applications/graphics/azpainter { }; + + bambootracker = libsForQt5.callPackage ../applications/audio/bambootracker { }; + + cadence = let + # Use Qt 5.14 consistently + pkgs_ = pkgs.extend(_: prev: { + pythonInterpreters = prev.pythonInterpreters.override(oldAttrs: { + pkgs = oldAttrs.pkgs.extend(_: _: { + qt5 = pkgs.qt514; + libsForQt5 = pkgs.libsForQt514; + }); + }); + }); + in pkgs_.libsForQt514.callPackage ../applications/audio/cadence { }; + + cheesecutter = callPackage ../applications/audio/cheesecutter { }; + + milkytracker = callPackage ../applications/audio/milkytracker { }; + + schismtracker = callPackage ../applications/audio/schismtracker { }; + + jnetmap = callPackage ../applications/networking/jnetmap {}; + + libbitcoin = callPackage ../tools/misc/libbitcoin/libbitcoin.nix { + secp256k1 = secp256k1.override { enableECDH = true; }; + }; + + libbitcoin-protocol = callPackage ../tools/misc/libbitcoin/libbitcoin-protocol.nix { }; + libbitcoin-client = callPackage ../tools/misc/libbitcoin/libbitcoin-client.nix { }; + libbitcoin-network = callPackage ../tools/misc/libbitcoin/libbitcoin-network.nix { }; + libbitcoin-explorer = callPackage ../tools/misc/libbitcoin/libbitcoin-explorer.nix { }; + + + aumix = callPackage ../applications/audio/aumix { + gtkGUI = false; + }; + + autopanosiftc = callPackage ../applications/graphics/autopanosiftc { }; + + aesop = callPackage ../applications/office/aesop { }; + + AusweisApp2 = libsForQt5.callPackage ../applications/misc/ausweisapp2 { }; + + avidemux = libsForQt5.callPackage ../applications/video/avidemux { }; + + avrdudess = callPackage ../applications/misc/avrdudess { }; + + avxsynth = callPackage ../applications/video/avxsynth { + libjpeg = libjpeg_original; # error: 'JCOPYRIGHT_SHORT' was not declared in this scope + }; + + 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 (gnome3) baobab; + + backintime-common = callPackage ../applications/networking/sync/backintime/common.nix { }; + + backintime-qt4 = callPackage ../applications/networking/sync/backintime/qt4.nix { }; + + backintime = backintime-qt4; + + balsa = callPackage ../applications/networking/mailreaders/balsa { }; + + bandwidth = callPackage ../tools/misc/bandwidth { }; + + 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 { }; + + bevelbar = callPackage ../applications/window-managers/bevelbar { }; + + bibletime = libsForQt514.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 (gnome3) zenity; + libxkbcommon = libxkbcommon_7; + }; + bitwig-studio2 = callPackage ../applications/audio/bitwig-studio/bitwig-studio2.nix { + inherit (pkgs) bitwig-studio1; + }; + bitwig-studio3 = callPackage ../applications/audio/bitwig-studio/bitwig-studio3.nix { + inherit (pkgs) bitwig-studio1; + }; + bitwig-studio = bitwig-studio3; + + 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; + }; + + blogc = callPackage ../applications/misc/blogc { }; + + bluefish = callPackage ../applications/editors/bluefish { + gtk = gtk3; + }; + + bluej = callPackage ../applications/editors/bluej/default.nix { + jdk = jetbrains.jdk; + }; + + bluejeans-gui = callPackage ../applications/networking/instant-messengers/bluejeans { }; + + blugon = callPackage ../applications/misc/blugon { }; + + bombono = callPackage ../applications/video/bombono {}; + + bomi = libsForQt5.callPackage ../applications/video/bomi { + ffmpeg = ffmpeg_2; + }; + + bonzomatic = callPackage ../applications/editors/bonzomatic { }; + + brackets = callPackage ../applications/editors/brackets { gconf = gnome2.GConf; }; + + 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 { }; + + bs1770gain = callPackage ../applications/audio/bs1770gain { }; + + 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 { }; + + cage = callPackage ../applications/window-managers/cage { }; + + calf = callPackage ../applications/audio/calf { + inherit (gnome2) libglade; + }; + + calcurse = callPackage ../applications/misc/calcurse { }; + + calculix = callPackage ../applications/science/math/calculix {}; + + calibre-py2 = libsForQt5.callPackage ../applications/misc/calibre { pythonPackages = python2Packages; }; + + calibre-py3 = libsForQt5.callPackage ../applications/misc/calibre { pythonPackages = python3Packages; }; + + calibre = calibre-py3; + + calligra = libsForQt514.callPackage ../applications/office/calligra { + inherit (kdeApplications) akonadi-calendar akonadi-contacts; + openjpeg = openjpeg_1; + poppler = 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 { }; + + carla = libsForQt5.callPackage ../applications/audio/carla { }; + + castor = callPackage ../applications/networking/browsers/castor { }; + + 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; + }; + + centerim = callPackage ../applications/networking/instant-messengers/centerim { }; + + cgit = callPackage ../applications/version-management/git-and-tools/cgit { + inherit (python3Packages) python wrapPython pygments markdown; + }; + + chirp = callPackage ../applications/radio/chirp { }; + + browsh = callPackage ../applications/networking/browsers/browsh { }; + + brotab = callPackage ../tools/misc/brotab { + python = python3; + }; + + bookworm = callPackage ../applications/office/bookworm { }; + + 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 { }; + + claws-mail = callPackage ../applications/networking/mailreaders/claws-mail { + inherit (xorg) libSM; + }; + claws-mail-gtk3 = callPackage ../applications/networking/mailreaders/claws-mail/gtk3.nix { + 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 = libsForQt514.callPackage ../applications/video/clipgrab { }; + + clipmenu = callPackage ../applications/misc/clipmenu { }; + + clipit = callPackage ../applications/misc/clipit { }; + + cloud-print-connector = callPackage ../servers/cloud-print-connector { }; + + cloud-hypervisor = callPackage ../applications/virtualization/cloud-hypervisor { }; + + clp = callPackage ../applications/science/math/clp { }; + + cmatrix = callPackage ../applications/misc/cmatrix { }; + + cmus = callPackage ../applications/audio/cmus { + inherit (darwin.apple_sdk.frameworks) CoreAudio; + libjack = libjack2; + ffmpeg = ffmpeg_2; + }; + + cmusfm = callPackage ../applications/audio/cmusfm { }; + + cni = callPackage ../applications/networking/cluster/cni {}; + cni-plugins = callPackage ../applications/networking/cluster/cni/plugins.nix {}; + + cntr = callPackage ../applications/virtualization/cntr { }; + + communi = libsForQt514.callPackage ../applications/networking/irc/communi { }; + + confclerk = callPackage ../applications/misc/confclerk { }; + + copyq = libsForQt514.callPackage ../applications/misc/copyq { }; + + coriander = callPackage ../applications/video/coriander { + inherit (gnome2) libgnomeui GConf; + }; + + csa = callPackage ../applications/audio/csa { }; + + csound = callPackage ../applications/audio/csound { + fluidsynth = fluidsynth_1; + }; + + csound-manual = callPackage ../applications/audio/csound/csound-manual { + python = python27; + pygments = python27Packages.pygments; + }; + + csound-qt = libsForQt514.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 { }; + + 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 {}; + + cq-editor = libsForQt5.callPackage ../applications/graphics/cq-editor { + python3Packages = python37Packages; + }; + + cpp_ethereum = callPackage ../applications/misc/cpp-ethereum { }; + + 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 = libsForQt514.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.overrideCabal (haskell.lib.justStaticExecutables haskellPackages.darcs) (drv: { + configureFlags = (stdenv.lib.remove "-flibrary" drv.configureFlags or []) ++ ["-f-library"]; + }); + + darktable = callPackage ../applications/graphics/darktable { + lua = lua5_3; + 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 = python27; + 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 { }; + }; + + deadbeef-with-plugins = callPackage ../applications/audio/deadbeef/wrapper.nix { + plugins = []; + }; + + dfasma = libsForQt5.callPackage ../applications/audio/dfasma { }; + + dfilemanager = libsForQt514.callPackage ../applications/misc/dfilemanager { }; + + dia = callPackage ../applications/graphics/dia { + inherit (pkgs.gnome2) libart_lgpl libgnomeui; + }; + + direwolf = callPackage ../applications/radio/direwolf { }; + + 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 = pkgs.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 (callPackage ../tools/graphics/dmtx-utils) { + }; + + inherit (callPackage ../applications/virtualization/docker {}) + docker_18_09 + docker_19_03; + + docker = docker_19_03; + docker-edge = docker_19_03; + + 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 { }; + + 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 = libsForQt514.callPackage ../applications/graphics/drawpile { }; + drawpile-server-headless = libsForQt514.callPackage ../applications/graphics/drawpile { + buildClient = false; + buildServerGui = false; + }; + + droopy = python37Packages.callPackage ../applications/networking/droopy { }; + + drumgizmo = callPackage ../applications/audio/drumgizmo { }; + + dunst = callPackage ../applications/misc/dunst { }; + + du-dust = callPackage ../tools/misc/dust { }; + + devede = callPackage ../applications/video/devede { }; + + denemo = callPackage ../applications/audio/denemo { }; + + dvb_apps = callPackage ../applications/video/dvb-apps { }; + + 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; + }; + + dwm = callPackage ../applications/window-managers/dwm { + patches = config.dwm.patches or []; + }; + + dwm-git = callPackage ../applications/window-managers/dwm/git.nix { + patches = config.dwm.patches or []; + conf = config.dwm.conf or null; + }; + + dwm-status = callPackage ../applications/window-managers/dwm/dwm-status.nix { }; + + dynamips = callPackage ../applications/virtualization/dynamips { }; + + evilwm = callPackage ../applications/window-managers/evilwm { + patches = config.evilwm.patches or []; + }; + + dzen2 = callPackage ../applications/window-managers/dzen2 { }; + + eaglemode = callPackage ../applications/misc/eaglemode { }; + + echoip = callPackage ../servers/echoip { }; + + eclipses = recurseIntoAttrs (callPackage ../applications/editors/eclipse { + jdk = jdk11; + }); + + ecs-agent = callPackage ../applications/virtualization/ecs-agent { }; + + ed = callPackage ../applications/editors/ed { }; + + edbrowse = callPackage ../applications/editors/edbrowse { }; + + ekho = callPackage ../applications/audio/ekho { }; + + electron-cash = libsForQt5.callPackage ../applications/misc/electron-cash { }; + + electrum = libsForQt5.callPackage ../applications/misc/electrum { }; + + electrum-dash = callPackage ../applications/misc/electrum/dash.nix { }; + + electrum-ltc = libsForQt5.callPackage ../applications/misc/electrum/ltc.nix { }; + + elementary-planner = callPackage ../applications/office/elementary-planner { }; + + elinks = callPackage ../applications/networking/browsers/elinks { }; + + elvis = callPackage ../applications/editors/elvis { }; + + emacs = emacs27; + emacsPackages = emacs27Packages; + emacs-nox = emacs27-nox; + emacsWithPackages = emacsPackages.emacsWithPackages; + + emacs27 = callPackage ../applications/editors/emacs/27.nix { + # use override to enable additional features + libXaw = xorg.libXaw; + Xaw3d = null; + gconf = null; + alsaLib = null; + imagemagick = null; + acl = null; + gpm = null; + inherit (darwin.apple_sdk.frameworks) AppKit GSS ImageIO; + }; + + emacs27-nox = lowPrio (appendToName "nox" (emacs27.override { + withX = false; + withNS = false; + withGTK2 = false; + withGTK3 = false; + })); + + emacs26 = callPackage ../applications/editors/emacs/26.nix { + # use override to enable additional features + libXaw = xorg.libXaw; + Xaw3d = null; + gconf = null; + alsaLib = null; + imagemagick = null; + acl = null; + gpm = null; + inherit (darwin.apple_sdk.frameworks) AppKit GSS ImageIO; + }; + + emacs26-nox = lowPrio (appendToName "nox" (emacs26.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 newScope stdenv pkgs; + inherit fetchFromGitHub fetchurl; + inherit emacs texinfo makeWrapper runCommand writeText; + inherit (xorg) lndir; + + trivialBuild = callPackage ../build-support/emacs/trivial.nix { + inherit emacs; + }; + + melpaBuild = callPackage ../build-support/emacs/melpa.nix { + inherit emacs; + }; + + external = { + inherit (haskellPackages) + ghc-mod structured-haskell-mode Agda hindent; + inherit + autoconf automake editorconfig-core-c git libffi libpng pkgconfig + poppler rtags w3m zlib substituteAll rustPlatform cmake llvmPackages + libtool zeromq openssl; + }; + }; + + emacs26Packages = dontRecurseIntoAttrs (emacsPackagesFor emacs26); + emacs27Packages = dontRecurseIntoAttrs (emacsPackagesFor emacs27); + emacs26WithPackages = emacs26Packages.emacsWithPackages; + emacs27WithPackages = emacs27Packages.emacsWithPackages; + + inherit (gnome3) empathy; + + enhanced-ctorrent = callPackage ../applications/networking/enhanced-ctorrent { }; + + envelope = callPackage ../applications/office/envelope { }; + + eolie = callPackage ../applications/networking/browsers/eolie { }; + + epdfview = callPackage ../applications/misc/epdfview { }; + + epeg = callPackage ../applications/graphics/epeg { }; + + epgstation = callPackage ../applications/video/epgstation { }; + + inherit (gnome3) epiphany; + + ephemeral = callPackage ../applications/networking/browsers/ephemeral { }; + + epic5 = callPackage ../applications/networking/irc/epic5 { }; + + epr = callPackage ../applications/misc/epr { }; + + eq10q = callPackage ../applications/audio/eq10q { }; + + errbot = callPackage ../applications/networking/errbot { + python = python3; + }; + + espeak-classic = callPackage ../applications/audio/espeak { }; + + espeak-ng = callPackage ../applications/audio/espeak-ng { }; + espeak = res.espeak-ng; + + espeakedit = callPackage ../applications/audio/espeak/edit.nix { }; + + esniper = callPackage ../applications/networking/esniper { }; + + eterm = callPackage ../applications/misc/eterm { }; + + eteroj.lv2 = libsForQt5.callPackage ../applications/audio/eteroj.lv2 { }; + + etesync-dav = callPackage ../applications/misc/etesync-dav {}; + + etherape = callPackage ../applications/networking/sniffers/etherape { }; + + evilvte = callPackage ../applications/misc/evilvte (config.evilvte or {}); + + evilpixie = libsForQt514.callPackage ../applications/graphics/evilpixie { }; + + exercism = callPackage ../applications/misc/exercism { }; + + go-motion = callPackage ../development/tools/go-motion { }; + + gpg-mdp = callPackage ../applications/misc/gpg-mdp { }; + + gspeech = callPackage ../applications/audio/gspeech { }; + + icesl = callPackage ../applications/misc/icesl { }; + + keepassx = callPackage ../applications/misc/keepassx { }; + keepassx2 = callPackage ../applications/misc/keepassx/2.0.nix { }; + keepassxc = libsForQt5.callPackage ../applications/misc/keepassx/community.nix { }; + + inherit (gnome3) evince; + evolution-data-server = gnome3.evolution-data-server; + evolution-ews = callPackage ../applications/networking/mailreaders/evolution/evolution-ews { }; + + keepass = callPackage ../applications/misc/keepass { }; + + 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-otpkeyprov = callPackage ../applications/misc/keepass-plugins/otpkeyprov { }; + + exrdisplay = callPackage ../applications/graphics/exrdisplay { }; + + exrtools = callPackage ../applications/graphics/exrtools { }; + + 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 { }; + + 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 { }; + + flink = callPackage ../applications/networking/cluster/flink { }; + flink_1_5 = flink.override { version = "1.5"; }; + + 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; + }; + fluidsynth_1 = fluidsynth.override { version = "1"; }; + + fmit = libsForQt5.callPackage ../applications/audio/fmit { }; + + fmsynth = callPackage ../applications/audio/fmsynth { }; + + focuswriter = libsForQt5.callPackage ../applications/editors/focuswriter { }; + + fondo = callPackage ../applications/graphics/fondo { }; + + font-manager = callPackage ../applications/misc/font-manager { }; + + fontpreview = callPackage ../applications/misc/fontpreview { }; + + foo-yc20 = callPackage ../applications/audio/foo-yc20 { }; + + foot = callPackage ../applications/misc/foot { }; + + fossil = callPackage ../applications/version-management/fossil { }; + + freebayes = callPackage ../applications/science/biology/freebayes { }; + + freewheeling = callPackage ../applications/audio/freewheeling { }; + + fritzing = libsForQt514.callPackage ../applications/science/electronics/fritzing { }; + + fsv = callPackage ../applications/misc/fsv { }; + + ft2-clone = callPackage ../applications/audio/ft2-clone { }; + + fvwm = callPackage ../applications/window-managers/fvwm { }; + + ganttproject-bin = callPackage ../applications/misc/ganttproject-bin { }; + + 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 { }; + + genxword = callPackage ../applications/misc/genxword { }; + + geoipupdate = callPackage ../applications/misc/geoipupdate/default.nix { }; + + ghostwriter = libsForQt514.callPackage ../applications/editors/ghostwriter { }; + + gitweb = callPackage ../applications/version-management/git-and-tools/gitweb { }; + + gksu = callPackage ../applications/misc/gksu { }; + + gnss-sdr = callPackage ../applications/radio/gnss-sdr { boost=boost166; }; + + gnuradio = callPackage ../applications/radio/gnuradio { + inherit (python2Packages) cheetah lxml Mako matplotlib numpy python pyopengl pyqt4 scipy wxPython pygtk; + inherit (darwin.apple_sdk.frameworks) CoreAudio; + fftw = fftwFloat; + qwt = qwt6_qt4; + }; + + gnuradio-with-packages = callPackage ../applications/radio/gnuradio/wrapper.nix { + inherit (python2Packages) python; + extraPackages = [ gr-nacl gr-osmosdr gr-ais gr-rds ] + ++ lib.optionals stdenv.isLinux [ gr-gsm gr-limesdr ]; + }; + + grandorgue = callPackage ../applications/audio/grandorgue { }; + + gr-nacl = callPackage ../applications/radio/gnuradio/nacl.nix { }; + + gr-gsm = callPackage ../applications/radio/gnuradio/gsm.nix { }; + + gr-ais = callPackage ../applications/radio/gnuradio/ais.nix { }; + + gr-limesdr = callPackage ../applications/radio/gnuradio/limesdr.nix { }; + + gr-rds = callPackage ../applications/radio/gnuradio/rds.nix { }; + + gr-osmosdr = callPackage ../applications/radio/gnuradio/osmosdr.nix { }; + + goldendict = libsForQt514.callPackage ../applications/misc/goldendict { + inherit (darwin) libiconv; + }; + + gomuks = callPackage ../applications/networking/instant-messengers/gomuks { }; + + inherit (ocamlPackages) google-drive-ocamlfuse; + + google-musicmanager = callPackage ../applications/audio/google-musicmanager { + inherit (qt514) qtbase qtwebkit; + # Downgrade to 1.34 to get libidn.so.11 + libidn = (libidn.overrideAttrs (oldAttrs: { + src = fetchurl { + url = "mirror://gnu/libidn/libidn-1.34.tar.gz"; + sha256 = "0g3fzypp0xjcgr90c5cyj57apx1cmy0c6y9lvw2qdcigbyby469p"; + }; + })).out; + }; + + 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 = libsForQt514.callPackage ../applications/radio/gqrx { }; + + 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 { + inherit (gnome2) libgnome libgnomeui vte; + }; + + gsimplecal = callPackage ../applications/misc/gsimplecal { }; + + gthumb = callPackage ../applications/graphics/gthumb { }; + + gtimelog = pythonPackages.gtimelog; + + inherit (gnome3) gucharmap; + + guitarix = callPackage ../applications/audio/guitarix { + fftw = fftwSinglePrec; + }; + + gjay = callPackage ../applications/audio/gjay { }; + + photivo = callPackage ../applications/graphics/photivo { }; + + rhythmbox = callPackage ../applications/audio/rhythmbox { }; + + gradio = callPackage ../applications/audio/gradio { }; + + puddletag = 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; + }; + wireshark-qt = wireshark; + + # The GTK UI is deprecated by upstream. You probably want the QT version. + wireshark-gtk = throw "wireshark-gtk is not supported anymore. Use wireshark-qt or wireshark-cli instead."; + wireshark-cli = wireshark.override { withQt = false; }; + + sngrep = callPackage ../applications/networking/sniffers/sngrep {}; + + termshark = callPackage ../tools/networking/termshark { }; + + fbida = callPackage ../applications/graphics/fbida { }; + + fdupes = callPackage ../tools/misc/fdupes { }; + + feh = callPackage ../applications/graphics/feh { }; + + filezilla = callPackage ../applications/networking/ftp/filezilla { }; + + firefoxPackages = recurseIntoAttrs (callPackage ../applications/networking/browsers/firefox/packages.nix { + callPackage = pkgs.newScope { + inherit (rustPackages) cargo rustc; + libpng = libpng_apng; + python = python2; + gnused = gnused_422; + inherit (darwin.apple_sdk.frameworks) CoreMedia ExceptionHandling + Kerberos AVFoundation MediaToolbox + CoreLocation Foundation AddressBook; + inherit (darwin) libobjc; + }; + }); + + firefox-unwrapped = firefoxPackages.firefox; + firefox-esr-78-unwrapped = firefoxPackages.firefox-esr-78; + firefox = wrapFirefox firefox-unwrapped { }; + firefox-wayland = wrapFirefox firefox-unwrapped { forceWayland = true; }; + firefox-esr-78 = wrapFirefox firefox-esr-78-unwrapped { }; + firefox-esr = firefox-esr-78; + + firefox-bin-unwrapped = callPackage ../applications/networking/browsers/firefox-bin { + channel = "release"; + generated = import ../applications/networking/browsers/firefox-bin/release_sources.nix; + }; + + firefox-bin = wrapFirefox firefox-bin-unwrapped { + browserName = "firefox"; + pname = "firefox-bin"; + desktopName = "Firefox"; + }; + + firefox-beta-bin-unwrapped = firefox-bin-unwrapped.override { + channel = "beta"; + generated = import ../applications/networking/browsers/firefox-bin/beta_sources.nix; + }; + + firefox-beta-bin = res.wrapFirefox firefox-beta-bin-unwrapped { + browserName = "firefox"; + pname = "firefox-beta-bin"; + desktopName = "Firefox Beta"; + }; + + firefox-devedition-bin-unwrapped = callPackage ../applications/networking/browsers/firefox-bin { + channel = "devedition"; + generated = import ../applications/networking/browsers/firefox-bin/devedition_sources.nix; + }; + + firefox-devedition-bin = res.wrapFirefox firefox-devedition-bin-unwrapped { + browserName = "firefox"; + nameSuffix = "-devedition"; + pname = "firefox-devedition-bin"; + desktopName = "Firefox DevEdition"; + }; + + flac = callPackage ../applications/audio/flac { }; + + redoflacs = callPackage ../applications/audio/redoflacs { }; + + flameshot = libsForQt514.callPackage ../tools/misc/flameshot { }; + + flashplayer = callPackage ../applications/networking/browsers/mozilla-plugins/flashplayer (config.flashplayer or {}); + + flashplayer-standalone = callPackage ../applications/networking/browsers/mozilla-plugins/flashplayer/standalone.nix (config.flashplayer or {}); + + flashplayer-standalone-debugger = flashplayer-standalone.override { + debug = true; + }; + + fluxbox = callPackage ../applications/window-managers/fluxbox { }; + + fme = callPackage ../applications/misc/fme { + inherit (gnome2) libglademm; + }; + + fomp = callPackage ../applications/audio/fomp { }; + + formatter = callPackage ../applications/misc/formatter { }; + + foxtrotgps = callPackage ../applications/misc/foxtrotgps { }; + + fractal = callPackage ../applications/networking/instant-messengers/fractal { }; + + freecad = libsForQt5.callPackage ../applications/graphics/freecad { + mpi = openmpi; + }; + freecadStable = libsForQt5.callPackage ../applications/graphics/freecad/stable.nix { + mpi = openmpi; + opencascade-occt = opencascade-occt730; + python3Packages = python37Packages; + }; + + 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 {}; + + 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 libpulseaudio; + 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 { }; + + havoc = callPackage ../applications/misc/havoc { }; + + 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 { + gegl = gegl_0_4; + 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 {}); + + girara = callPackage ../applications/misc/girara { + gtk = gtk3; + }; + + gitAndTools = recurseIntoAttrs (callPackage ../applications/version-management/git-and-tools {}); + + inherit (gitAndTools) git gitFull gitSVN git-cola git-doc svn2git git-radar git-secret git-secrets transcrypt git-crypt ghq; + + gitMinimal = 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 = callPackage ../applications/version-management/git-review { }; + + github-cli = gitAndTools.gh; + + gitolite = callPackage ../applications/version-management/gitolite { }; + + gitoxide = callPackage ../applications/version-management/gitoxide { }; + + inherit (gnome3) gitg; + + gmrun = callPackage ../applications/misc/gmrun {}; + + gnucash = callPackage ../applications/office/gnucash { }; + + goffice = callPackage ../development/libraries/goffice { }; + + jetbrains = (recurseIntoAttrs (callPackages ../applications/editors/jetbrains { + jdk = jetbrains.jdk; + }) // { + jdk = callPackage ../development/compilers/jetbrains-jdk { }; + }); + + libquvi = callPackage ../applications/video/quvi/library.nix { }; + + librespot = callPackage ../applications/audio/librespot { + withALSA = stdenv.isLinux; + withPulseAudio = config.pulseaudio or stdenv.isLinux; + withPortAudio = stdenv.isDarwin; + }; + + linssid = libsForQt5.callPackage ../applications/networking/linssid { }; + + lollypop = callPackage ../applications/audio/lollypop { }; + + m32edit = callPackage ../applications/audio/midas/m32edit.nix {}; + + manim = python37Packages.callPackage ../applications/video/manim { + opencv = python37Packages.opencv3; + }; + + manuskript = libsForQt5.callPackage ../applications/editors/manuskript { }; + + manul = callPackage ../development/tools/manul { }; + + mindforger = libsForQt514.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 {}; + + gitit = callPackage ../applications/misc/gitit {}; + + gkrellm = callPackage ../applications/misc/gkrellm { + inherit (darwin) IOKit; + }; + + glow = callPackage ../applications/editors/glow { }; + + glowing-bear = callPackage ../applications/networking/irc/glowing-bear { }; + + gmtk = callPackage ../development/libraries/gmtk { }; + + gmu = callPackage ../applications/audio/gmu { }; + + 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 { }; + + gobby5 = 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 { }; + + jbidwatcher = callPackage ../applications/misc/jbidwatcher { + java = if stdenv.isLinux then jre else jdk; + }; + + 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 (gnome3) gnome-autoar; + }; + + gollum = callPackage ../applications/misc/gollum { }; + + gonic = callPackage ../servers/gonic { }; + + googleearth = callPackage ../applications/misc/googleearth { }; + + google-chrome = callPackage ../applications/networking/browsers/google-chrome { gconf = gnome2.GConf; }; + + 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 = libsForQt514.callPackage ../applications/misc/gpsbabel { + inherit (darwin) IOKit; + }; + + gpsbabel-gui = libsForQt514.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 { }; + + guake = callPackage ../applications/misc/guake { }; + + guardian-agent = callPackage ../tools/networking/guardian-agent { }; + + guitone = callPackage ../applications/version-management/guitone { + graphviz = graphviz_2_32; + }; + + gv = callPackage ../applications/misc/gv { }; + + gvisor = callPackage ../applications/virtualization/gvisor { + go = go_1_14; + }; + + 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 { }; + + hackrf = callPackage ../applications/radio/hackrf { }; + + hacksaw = callPackage ../tools/misc/hacksaw {}; + + hakuneko = callPackage ../tools/misc/hakuneko { }; + + hamster = callPackage ../applications/misc/hamster { }; + + hashit = callPackage ../tools/misc/hashit { }; + + hactool = callPackage ../tools/compression/hactool { }; + + hdhomerun-config-gui = callPackage ../applications/video/hdhomerun-config-gui { }; + + heimer = libsForQt5.callPackage ../applications/misc/heimer { }; + + hello = callPackage ../applications/misc/hello { }; + hello-unfree = callPackage ../applications/misc/hello-unfree { }; + + helmholtz = callPackage ../applications/audio/pd-plugins/helmholtz { }; + + heme = callPackage ../applications/editors/heme { }; + + herbstluftwm = callPackage ../applications/window-managers/herbstluftwm { + asciidoc = asciidoc-full; + }; + + hercules = callPackage ../applications/virtualization/hercules { }; + + hexchat = callPackage ../applications/networking/irc/hexchat { }; + + hexcurse = callPackage ../applications/editors/hexcurse { }; + + hexdino = callPackage ../applications/editors/hexdino { }; + + hexedit = callPackage ../applications/editors/hexedit { }; + + hipchat = callPackage ../applications/networking/instant-messengers/hipchat { }; + + hledger = haskell.lib.justStaticExecutables haskellPackages.hledger; + hledger-iadd = haskell.lib.justStaticExecutables haskellPackages.hledger-iadd; + hledger-interest = haskell.lib.justStaticExecutables haskellPackages.hledger-interest; + hledger-ui = haskell.lib.justStaticExecutables haskellPackages.hledger-ui; + hledger-web = haskell.lib.justStaticExecutables haskellPackages.hledger-web; + + homebank = callPackage ../applications/office/homebank { + gtk = gtk3; + }; + + hovercraft = python3Packages.callPackage ../applications/misc/hovercraft { }; + + howl = callPackage ../applications/editors/howl { }; + + hpcg = callPackage ../tools/misc/hpcg/default.nix { }; + + hpl = callPackage ../tools/misc/hpl { mpi = openmpi; }; + + hpmyroom = libsForQt5.callPackage ../applications/networking/hpmyroom { }; + + ht = callPackage ../applications/editors/ht { }; + + hubstaff = callPackage ../applications/misc/hubstaff { }; + + hue-cli = callPackage ../tools/networking/hue-cli { }; + + inherit (nodePackages) hueadm; + + hugin = callPackage ../applications/graphics/hugin { + wxGTK = wxGTK30; + }; + + hugo = callPackage ../applications/misc/hugo { }; + + hydrogen = qt5.callPackage ../applications/audio/hydrogen { }; + hydrogen_0 = callPackage ../applications/audio/hydrogen/0.nix { }; # Old stable, has GMKit. + + hydroxide = callPackage ../applications/networking/hydroxide { }; + + hyper = callPackage ../applications/misc/hyper { }; + + 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 { }; + + jackline = callPackage ../applications/networking/instant-messengers/jackline { + ocamlPackages = ocaml-ng.ocamlPackages_4_08; + }; + + leftwm = callPackage ../applications/window-managers/leftwm { }; + + lwm = callPackage ../applications/window-managers/lwm { }; + + musikcube = callPackage ../applications/audio/musikcube {}; + + pinboard-notes-backup = haskell.lib.overrideCabal + (haskell.lib.generateOptparseApplicativeCompletion "pnbackup" + haskellPackages.pinboard-notes-backup) + (drv: { + postInstall = '' + install -D man/pnbackup.1 $out/share/man/man1/pnbackup.1 + '' + (drv.postInstall or ""); + }); + + 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 { }; + + smos = callPackage ../applications/misc/smos { }; + + spectrwm = callPackage ../applications/window-managers/spectrwm { }; + + spectral = qt5.callPackage ../applications/networking/instant-messengers/spectral { }; + + spotifyd = callPackage ../applications/audio/spotifyd { + withALSA = stdenv.isLinux; + withPulseAudio = config.pulseaudio or stdenv.isLinux; + withPortAudio = stdenv.isDarwin; + }; + + super-productivity = callPackage ../applications/networking/super-productivity { }; + + wlr-randr = callPackage ../tools/misc/wlr-randr { }; + + wlroots = callPackage ../development/libraries/wlroots { }; + + 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 { }; + 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 { }; + + waybar = callPackage ../applications/misc/waybar { }; + + hikari = callPackage ../applications/window-managers/hikari { }; + + i3 = callPackage ../applications/window-managers/i3 { + xcb-util-cursor = if stdenv.isDarwin then xcb-util-cursor-HEAD else xcb-util-cursor; + }; + + i3-gaps = callPackage ../applications/window-managers/i3/gaps.nix { }; + + i3-easyfocus = callPackage ../applications/window-managers/i3/easyfocus.nix { }; + + i3-layout-manager = callPackage ../applications/window-managers/i3/layout-manager.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-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) xrdb; + }; + + i3minator = callPackage ../tools/misc/i3minator { }; + + 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 { }; + + i3-wk-switch = callPackage ../applications/window-managers/i3/wk-switch.nix { }; + + windowchef = callPackage ../applications/window-managers/windowchef/default.nix { }; + + wmfocus = callPackage ../applications/window-managers/i3/wmfocus.nix { }; + + wmfs = callPackage ../applications/window-managers/wmfs/default.nix { }; + + i810switch = callPackage ../os-specific/linux/i810switch { }; + + icewm = callPackage ../applications/window-managers/icewm {}; + + id3v2 = callPackage ../applications/audio/id3v2 { }; + + ifenslave = callPackage ../os-specific/linux/ifenslave { }; + + ii = callPackage ../applications/networking/irc/ii { + stdenv = gccStdenv; + }; + + ike = callPackage ../applications/networking/ike { }; + + ikiwiki = callPackage ../applications/misc/ikiwiki { + inherit (perlPackages.override { pkgs = pkgs // { imagemagick = imagemagickBig;}; }) PerlMagick; + }; + + iksemel = callPackage ../development/libraries/iksemel { }; + + imag = callPackage ../applications/misc/imag { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + imagej = callPackage ../applications/graphics/imagej { }; + + imagemagick_light = 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; + libpng = null; + librsvg = null; + libtiff = null; + libxml2 = null; + openjpeg = null; + libwebp = null; + libheif = null; + libde265 = null; + }; + + imagemagick = callPackage ../applications/graphics/ImageMagick { + inherit (darwin.apple_sdk.frameworks) ApplicationServices; + ghostscript = null; + }; + + imagemagickBig = imagemagick.override { inherit ghostscript; }; + + imagemagick7_light = lowPrio (imagemagick7.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; + librsvg = null; + libtiff = null; + libxml2 = null; + openjpeg = null; + libwebp = null; + libheif = null; + }); + + imagemagick7 = lowPrio (imagemagick7Big.override { + ghostscript = null; + }); + + imagemagick7Big = lowPrio (callPackage ../applications/graphics/ImageMagick/7.0.nix { + inherit (darwin.apple_sdk.frameworks) ApplicationServices; + }); + + inherit (nodePackages) imapnotify; + + img2pdf = with python3Packages; toPythonApplication img2pdf; + + imgcat = callPackage ../applications/graphics/imgcat { }; + + imgp = python3Packages.callPackage ../applications/graphics/imgp { }; + + # Impressive, formerly known as "KeyJNote". + impressive = callPackage ../applications/office/impressive { }; + + 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 = libsForQt514.callPackage ../applications/radio/inspectrum { }; + + 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 { }; + + 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 = callPackage ../applications/audio/jackmix { }; + jackmix_jack1 = jackmix.override { jack = jack1; }; + + 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 { }; + + jdupes = callPackage ../tools/misc/jdupes { }; + + 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 { }; + + k3d = callPackage ../applications/graphics/k3d { + inherit (pkgs.gnome2) gtkglext; + stdenv = gcc6Stdenv; + boost = boost155.override { + enablePython = true; + stdenv = gcc6Stdenv; + buildPackages = buildPackages // { + stdenv = gcc6Stdenv; + }; + }; + }; + + k3s = callPackage ../applications/networking/cluster/k3s {}; + + k9copy = libsForQt514.callPackage ../applications/video/k9copy {}; + + kail = callPackage ../tools/networking/kail { }; + + kanboard = callPackage ../applications/misc/kanboard { }; + + kanshi = callPackage ../tools/misc/kanshi { }; + + kapitonov-plugins-pack = callPackage ../applications/audio/kapitonov-plugins-pack { }; + + kapow = libsForQt5.callPackage ../applications/misc/kapow { }; + + kdeApplications = + let + mkApplications = import ../applications/kde; + attrs = { + libsForQt5 = libsForQt514; + inherit lib fetchurl; + inherit okteta; + }; + in + recurseIntoAttrs (makeOverridable mkApplications attrs); + + inherit (kdeApplications) + akonadi akregator ark + bomber bovo + dolphin dragon + elisa + ffmpegthumbs filelight + granatier gwenview + k3b + kaddressbook kalzium kapptemplate kapman kate katomic + kblackbox kblocks kbounce + kcachegrind kcalc kcharselect kcolorchooser + kdenlive kdf kdialog kdiamond + keditbookmarks + kfind kfloppy + kget kgpg + khelpcenter + kig kigo killbots kitinerary + kleopatra klettres klines + kmag kmail kmines kmix kmplot + knavalbattle knetwalk knights + kollision kolourpaint kompare konsole kontact korganizer + kpkpass + krdc kreversi krfb + kshisen ksquares ksystemlog + kteatime ktimer ktouch kturtle + kwalletmanager kwave + marble minuet + okular + picmi + spectacle + yakuake; + + okteta = libsForQt5.callPackage ../applications/editors/okteta { }; + + k4dirstat = libsForQt5.callPackage ../applications/misc/k4dirstat { }; + + kdeconnect = libsForQt5.callPackage ../applications/misc/kdeconnect { }; + + inherit (kdeFrameworks) kdesu; + + kdevelop-pg-qt = libsForQt514.callPackage ../applications/editors/kdevelop5/kdevelop-pg-qt.nix { }; + + kdevelop-unwrapped = libsForQt514.callPackage ../applications/editors/kdevelop5/kdevelop.nix { + llvmPackages = llvmPackages_10; + }; + + kdev-php = libsForQt514.callPackage ../applications/editors/kdevelop5/kdev-php.nix { }; + kdev-python = libsForQt514.callPackage ../applications/editors/kdevelop5/kdev-python.nix { + python = python3; + }; + + kdevelop = libsForQt5.callPackage ../applications/editors/kdevelop5/wrapper.nix { }; + + keepnote = callPackage ../applications/office/keepnote { }; + + kega-fusion = pkgsi686Linux.callPackage ../misc/emulators/kega-fusion { }; + + kepubify = callPackage ../tools/misc/kepubify { }; + + kermit = callPackage ../tools/misc/kermit { }; + + kexi = libsForQt514.callPackage ../applications/office/kexi { }; + + khronos = callPackage ../applications/office/khronos { }; + + keyfinder = libsForQt5.callPackage ../applications/audio/keyfinder { }; + + keyfinder-cli = libsForQt5.callPackage ../applications/audio/keyfinder-cli { }; + + kgraphviewer = libsForQt514.callPackage ../applications/graphics/kgraphviewer { }; + + khal = callPackage ../applications/misc/khal { }; + + khard = callPackage ../applications/misc/khard { }; + + kid3 = libsForQt5.callPackage ../applications/audio/kid3 { }; + + kile = libsForQt514.callPackage ../applications/editors/kile { }; + + kino = callPackage ../applications/video/kino { + inherit (gnome2) libglade; + ffmpeg = ffmpeg_2; + }; + + kitty = callPackage ../applications/misc/kitty { + harfbuzz = harfbuzz.override { withCoreText = stdenv.isDarwin; }; + inherit (darwin.apple_sdk.frameworks) Cocoa CoreGraphics Foundation IOKit Kernel OpenGL; + }; + + kiwix = callPackage ../applications/misc/kiwix { }; + + klayout = libsForQt5.callPackage ../applications/misc/klayout { }; + + kmetronome = libsForQt5.callPackage ../applications/audio/kmetronome { }; + + kmplayer = libsForQt5.callPackage ../applications/video/kmplayer { }; + + kmymoney = libsForQt5.callPackage ../applications/office/kmymoney { + inherit (kdeApplications) kidentitymanagement; + inherit (kdeFrameworks) kdewebkit; + }; + + kodestudio = callPackage ../applications/editors/kodestudio { }; + + kondo = callPackage ../applications/misc/kondo { }; + + konversation = libsForQt514.callPackage ../applications/networking/irc/konversation { }; + + kotatogram-desktop = libsForQt514.callPackage ../applications/networking/instant-messengers/telegram/kotatogram-desktop { }; + + kpt = callPackage ../applications/networking/cluster/kpt { }; + + krita = libsForQt5.callPackage ../applications/graphics/krita { + openjpeg = openjpeg_1; + }; + + krusader = libsForQt514.callPackage ../applications/misc/krusader { }; + + ksuperkey = callPackage ../tools/X11/ksuperkey { }; + + ktimetracker = libsForQt5.callPackage ../applications/office/ktimetracker { }; + + ktorrent = libsForQt514.callPackage ../applications/networking/p2p/ktorrent { }; + + kubecfg = callPackage ../applications/networking/cluster/kubecfg { }; + + kubeval = callPackage ../applications/networking/cluster/kubeval { }; + + kubeval-schema = callPackage ../applications/networking/cluster/kubeval/schema.nix { }; + + kubernetes = callPackage ../applications/networking/cluster/kubernetes { }; + + kubeseal = callPackage ../applications/networking/cluster/kubeseal { }; + + kubernix = callPackage ../applications/networking/cluster/kubernix { }; + + kubectl = callPackage ../applications/networking/cluster/kubectl { }; + + kubeless = callPackage ../applications/networking/cluster/kubeless { }; + + kubelogin = callPackage ../applications/networking/cluster/kubelogin { }; + + k9s = callPackage ../applications/networking/cluster/k9s { }; + + popeye = callPackage ../applications/networking/cluster/popeye { }; + + fluxctl = callPackage ../applications/networking/cluster/fluxctl { }; + + linkerd = callPackage ../applications/networking/cluster/linkerd { }; + + kubernetes-helm = callPackage ../applications/networking/cluster/helm { }; + + kubetail = callPackage ../applications/networking/cluster/kubetail { } ; + + kupfer = callPackage ../applications/misc/kupfer { + # using python36 as there appears to be a waf issue with python37 + # see https://github.com/NixOS/nixpkgs/issues/60498 + python3Packages = python36Packages; + }; + + kvirc = libsForQt514.callPackage ../applications/networking/irc/kvirc { }; + + lame = callPackage ../development/libraries/lame { }; + + 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 { }; + + lastfmsubmitd = callPackage ../applications/audio/lastfmsubmitd { }; + + lbdb = callPackage ../tools/misc/lbdb { abook = null; gnupg = null; goobook = null; khard = null; mu = null; }; + + 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 = gitAndTools.legit; + + leo-editor = libsForQt5.callPackage ../applications/editors/leo-editor { }; + + libowfat = callPackage ../development/libraries/libowfat { }; + + librecad = libsForQt514.callPackage ../applications/misc/librecad { }; + + libreoffice = hiPrio libreoffice-still; + libreoffice-unwrapped = libreoffice.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 = libsForQt514.callPackage ../applications/office/libreoffice + (libreoffice-args // { + kdeIntegration = true; + variant = "fresh"; + jdk = jdk11; + }); + }); + + libreoffice-fresh = lowPrio (callPackage ../applications/office/libreoffice/wrapper.nix { + libreoffice = callPackage ../applications/office/libreoffice + (libreoffice-args // { + variant = "fresh"; + jdk = jdk11; + }); + }); + libreoffice-fresh-unwrapped = libreoffice-fresh.libreoffice; + + libreoffice-still = lowPrio (callPackage ../applications/office/libreoffice/wrapper.nix { + libreoffice = callPackage ../applications/office/libreoffice + (libreoffice-args // { + icu = icu64; + variant = "still"; + jdk = jdk8; + }); + }); + libreoffice-still-unwrapped = libreoffice-still.libreoffice; + + libvmi = callPackage ../development/libraries/libvmi { }; + + lifelines = callPackage ../applications/misc/lifelines { }; + + liferea = callPackage ../applications/networking/newsreaders/liferea { }; + + lightworks = callPackage ../applications/video/lightworks { + portaudio = portaudio2014; + }; + + lingot = callPackage ../applications/audio/lingot { }; + + linuxband = callPackage ../applications/audio/linuxband { }; + + 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 { }; + + lightburn = libsForQt5.callPackage ../applications/graphics/lightburn { }; + + lighthouse = callPackage ../applications/misc/lighthouse { }; + + lighttable = callPackage ../applications/editors/lighttable {}; + + libdsk = callPackage ../misc/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; + }; + + loxodo = callPackage ../applications/misc/loxodo { }; + + lsd2dsl = libsForQt514.callPackage ../applications/misc/lsd2dsl { }; + + lrzsz = callPackage ../tools/misc/lrzsz { }; + + lsp-plugins = callPackage ../applications/audio/lsp-plugins { }; + + luminanceHDR = libsForQt514.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; + }; + + jftui = callPackage ../applications/video/jftui { }; + + lilyterm = callPackage ../applications/misc/lilyterm { + inherit (gnome2) vte; + gtk = gtk2; + flavour = "stable"; + }; + + lilyterm-git = lilyterm.override { + flavour = "git"; + }; + + lime = callPackage ../development/libraries/lime { }; + + luakit = callPackage ../applications/networking/browsers/luakit { + inherit (luajitPackages) luafilesystem; + }; + + looking-glass-client = callPackage ../applications/virtualization/looking-glass-client { }; + + ltc-tools = callPackage ../applications/audio/ltc-tools { }; + + lumail = callPackage ../applications/networking/mailreaders/lumail { + lua = lua5_1; + }; + + luppp = callPackage ../applications/audio/luppp { }; + + lutris-unwrapped = python3.pkgs.callPackage ../applications/misc/lutris { + inherit (gnome3) 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 { }; + + lynx = callPackage ../applications/networking/browsers/lynx { }; + + lyrebird = callPackage ../applications/audio/lyrebird { }; + + lyx = libsForQt5.callPackage ../applications/misc/lyx { }; + + mac = callPackage ../development/libraries/mac { }; + + macdylibbundler = callPackage ../development/tools/misc/macdylibbundler { }; + + magic-wormhole = with python3Packages; toPythonApplication magic-wormhole; + + mail-notification = callPackage ../desktops/gnome-2/desktop/mail-notification {}; + + magnetophonDSP = { + 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 = libsForQt514.callPackage ../applications/video/mapmap { }; + + marathonctl = callPackage ../tools/virtualization/marathonctl { } ; + + markdown-pp = callPackage ../tools/text/markdown-pp { }; + + 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 pytestrunner requests responses pytest python-olm + canonicaljson; + }; + + matrix-dl = callPackage ../applications/networking/instant-messengers/matrix-dl { }; + + matrix-recorder = callPackage ../applications/networking/instant-messengers/matrix-recorder {}; + + mblaze = callPackage ../applications/networking/mailreaders/mblaze { }; + + mcpp = callPackage ../development/compilers/mcpp { }; + + mda_lv2 = callPackage ../applications/audio/mda-lv2 { }; + + mediainfo = callPackage ../applications/misc/mediainfo { }; + + mediainfo-gui = callPackage ../applications/misc/mediainfo-gui { }; + + mediathekview = callPackage ../applications/video/mediathekview { }; + + meteo = callPackage ../applications/networking/weather/meteo { }; + + meld = callPackage ../applications/version-management/meld { }; + + meli = callPackage ../applications/networking/mailreaders/meli { }; + + melonDS = callPackage ../misc/emulators/melonDS { }; + + meme = callPackage ../applications/graphics/meme { }; + + mendeley = libsForQt514.callPackage ../applications/office/mendeley { + gconf = pkgs.gnome2.GConf; + }; + + menumaker = callPackage ../applications/misc/menumaker { }; + + mercurial_4 = callPackage ../applications/version-management/mercurial/4.9.nix { + inherit (darwin.apple_sdk.frameworks) ApplicationServices; + }; + mercurial = callPackage ../applications/version-management/mercurial { + inherit (darwin.apple_sdk.frameworks) ApplicationServices; + }; + + mercurialFull = appendToName "full" (pkgs.mercurial.override { guiSupport = true; }); + + merkaartor = libsForQt514.callPackage ../applications/misc/merkaartor { }; + + meshlab = libsForQt5.callPackage ../applications/graphics/meshlab { }; + + metersLv2 = callPackage ../applications/audio/meters_lv2 { }; + + mhwaveedit = callPackage ../applications/audio/mhwaveedit {}; + + 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 { }; + + minicom = callPackage ../tools/misc/minicom { }; + + 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 = libsForQt514.callPackage ../applications/video/minitube { }; + + mimic = callPackage ../applications/audio/mimic { }; + + mimms = callPackage ../applications/audio/mimms {}; + + 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_05; + }; + + MMA = callPackage ../applications/audio/MMA { }; + + mmex = callPackage ../applications/office/mmex { + wxGTK30 = wxGTK30.override { + withWebKit = true; + withGtk2 = false; + }; + }; + + mmsd = callPackage ../tools/networking/mmsd { }; + + moc = callPackage ../applications/audio/moc { }; + + mod-distortion = callPackage ../applications/audio/mod-distortion { }; + + xmr-stak = callPackage ../applications/misc/xmr-stak { + stdenvGcc6 = gcc6Stdenv; + }; + + xmrig = callPackage ../applications/misc/xmrig { }; + + 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 { }; + + monodevelop = callPackage ../applications/editors/monodevelop {}; + + monotone = callPackage ../applications/version-management/monotone { + lua = lua5; + botan = botan.override (x: { openssl = null; }); + }; + + monotoneViz = callPackage ../applications/version-management/monotone-viz { + ocamlPackages = ocaml-ng.ocamlPackages_4_01_0; + }; + + monitor = callPackage ../applications/system/monitor { }; + + moolticute = libsForQt5.callPackage ../applications/misc/moolticute { }; + + moonlight-embedded = callPackage ../applications/misc/moonlight-embedded { }; + + mooSpace = callPackage ../applications/audio/mooSpace { }; + + mop = callPackage ../applications/misc/mop { }; + + mopidyPackages = callPackages ../applications/audio/mopidy/default.nix { + python = python3; + }; + + inherit (mopidyPackages) + mopidy + mopidy-gmusic + mopidy-iris + mopidy-local-images + mopidy-local-sqlite + mopidy-moped + mopidy-mopify + mopidy-mpd + mopidy-mpris + mopidy-musicbox-webclient + mopidy-somafm + mopidy-soundcloud + mopidy-spotify + mopidy-spotify-tunigo + mopidy-tunein + mopidy-youtube; + + motif = callPackage ../development/libraries/motif { }; + + mozjpeg = callPackage ../applications/graphics/mozjpeg { }; + + 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 { }; + + mpg321 = callPackage ../applications/audio/mpg321 { }; + + mpc_cli = callPackage ../applications/audio/mpc { + inherit (python3Packages) sphinx; + }; + + clerk = callPackage ../applications/audio/clerk { }; + + nbstripout = callPackage ../applications/version-management/nbstripout { python = python3; }; + + ncmpc = callPackage ../applications/audio/ncmpc { }; + + ncmpcpp = callPackage ../applications/audio/ncmpcpp { }; + + 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 { }; + + ympd = callPackage ../applications/audio/ympd { }; + + nload = callPackage ../applications/networking/nload { }; + + 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 {}; + simple-mpv-webui = callPackage ../applications/video/mpv/scripts/simple-mpv-webui.nix {}; + sponsorblock = callPackage ../applications/video/mpv/scripts/sponsorblock.nix {}; + }; + + mrpeach = callPackage ../applications/audio/pd-plugins/mrpeach { }; + + mrxvt = callPackage ../applications/misc/mrxvt { }; + + 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; + pulseSupport = config.pulseaudio or stdenv.isLinux; + qt5 = qt514; + }).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 { }; + + # TODO: we should probably merge these 2 + musescore = + if stdenv.isDarwin then + callPackage ../applications/audio/musescore/darwin.nix { } + else + libsForQt514.callPackage ../applications/audio/musescore { }; + + mmh = callPackage ../applications/networking/mailreaders/mmh { }; + mutt = callPackage ../applications/networking/mailreaders/mutt { }; + mutt-with-sidebar = mutt.override { + withSidebar = true; + }; + + mwic = callPackage ../applications/misc/mwic { + pythonPackages = python3Packages; + }; + + neap = callPackage ../applications/misc/neap { }; + + neomutt = callPackage ../applications/networking/mailreaders/neomutt { }; + + natron = callPackage ../applications/video/natron { }; + + neocomp = callPackage ../applications/window-managers/neocomp { }; + + newsflash = callPackage ../applications/networking/feedreaders/newsflash { }; + + nicotine-plus = callPackage ../applications/networking/soulseek/nicotine-plus { + geoip = geoipWithDatabase; + }; + + 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 { }; + + nwg-launchers = callPackage ../applications/misc/nwg-launchers { }; + + ocenaudio = callPackage ../applications/audio/ocenaudio { }; + + open-policy-agent = callPackage ../development/tools/open-policy-agent { }; + + openshift = callPackage ../applications/networking/cluster/openshift { }; + + oroborus = callPackage ../applications/window-managers/oroborus {}; + + osm2pgsql = callPackage ../tools/misc/osm2pgsql { }; + + ostinato = callPackage ../applications/networking/ostinato { + wireshark = wireshark.override { qt5 = qt514; }; + }; + + p4 = callPackage ../applications/version-management/p4 { }; + 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 { }; + + pig = callPackage ../applications/networking/cluster/pig { }; + + pijul = callPackage ../applications/version-management/pijul { + inherit (llvmPackages) clang libclang; + }; + + ping = callPackage ../applications/networking/ping { }; + + piper = callPackage ../os-specific/linux/piper { }; + + plank = callPackage ../applications/misc/plank { }; + + planner = callPackage ../applications/office/planner { }; + + playonlinux = callPackage ../applications/misc/playonlinux { + stdenv = stdenv_32bit; + }; + + 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; + }; + + 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 { }; + + ptex = callPackage ../development/libraries/ptex {}; + + qbec = callPackage ../applications/networking/cluster/qbec { }; + + rssguard = libsForQt514.callPackage ../applications/networking/feedreaders/rssguard { }; + + scudcloud = callPackage ../applications/networking/instant-messengers/scudcloud { }; + + shotcut = libsForQt514.callPackage ../applications/video/shotcut { + libmlt = mlt; + }; + + shogun = callPackage ../applications/science/machine-learning/shogun { + stdenv = gcc8Stdenv; + + # Workaround for the glibc abi version mismatch. + # Please note that opencv builds are by default disabled. + opencv = opencv3.override { + stdenv = gcc8Stdenv; + openexr = openexr.override { + stdenv = gcc8Stdenv; + }; + }; + }; + + smplayer = libsForQt5.callPackage ../applications/video/smplayer { }; + + smtube = libsForQt514.callPackage ../applications/video/smtube {}; + + softmaker-office = callPackage ../applications/office/softmaker/softmaker_office.nix {}; + + 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 { }; + + 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; + }; + + typora = callPackage ../applications/editors/typora { }; + + taxi = callPackage ../applications/networking/ftp/taxi { }; + + librep = callPackage ../development/libraries/librep { }; + + rep-gtk = callPackage ../development/libraries/rep-gtk { }; + + sawfish = callPackage ../applications/window-managers/sawfish { }; + + 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; + }; + + 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 { }; + + 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 { }; + + 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 { }; + + navit = libsForQt5.callPackage ../applications/misc/navit { }; + + netbeans = callPackage ../applications/editors/netbeans { + jdk = jdk11; + }; + + 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 { }; + + notmuch-addrlookup = callPackage ../applications/networking/mailreaders/notmuch-addrlookup { }; + + nova-filters = callPackage ../applications/audio/nova-filters { }; + + nvi = callPackage ../applications/editors/nvi { }; + + nvpy = callPackage ../applications/editors/nvpy { }; + + obconf = callPackage ../tools/X11/obconf { + inherit (gnome2) libglade; + }; + + obs-linuxbrowser = callPackage ../applications/video/obs-studio/linuxbrowser.nix { }; + + obs-studio = libsForQt514.callPackage ../applications/video/obs-studio { }; + + obs-wlrobs = callPackage ../applications/video/obs-studio/wlrobs.nix { }; + + obs-v4l2sink = libsForQt514.callPackage ../applications/video/obs-studio/v4l2sink.nix { }; + + obs-ndi = libsForQt514.callPackage ../applications/video/obs-studio/obs-ndi.nix { }; + + obsidian = callPackage ../applications/misc/obsidian { }; + + octoprint = callPackage ../applications/misc/octoprint { }; + + octoprint-plugins = throw ''octoprint-plugins are now part of the octoprint.python.pkgs package set.''; + + 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 { }; + + 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 = (qt514.overrideScope' (_: _: { + libtiff = callPackage ../applications/graphics/opentoonz/libtiff.nix { }; + })).callPackage ../applications/graphics/opentoonz { }; + + opentx = libsForQt5.callPackage ../applications/misc/opentx { }; + + opera = callPackage ../applications/networking/browsers/opera {}; + + orca = python3Packages.callPackage ../applications/misc/orca { + inherit (pkgs) pkgconfig; + }; + + 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 { }; + + osu-lazer = callPackage ../games/osu-lazer { + dotnet-sdk = dotnetCorePackages.sdk_3_1; + dotnet-netcore = dotnetCorePackages.netcore_3_1; + }; + + owamp = callPackage ../applications/networking/owamp { }; + + 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 { }; + + openmpt123 = callPackage ../applications/audio/openmpt123 { }; + + openrazer-daemon = with python3Packages; toPythonApplication openrazer-daemon; + + opusfile = callPackage ../applications/audio/opusfile { }; + + opusTools = callPackage ../applications/audio/opus-tools { }; + + orpie = callPackage ../applications/misc/orpie { }; + + osmo = callPackage ../applications/office/osmo { }; + + palemoon = callPackage ../applications/networking/browsers/palemoon { + # https://www.palemoon.org/sourcecode.shtml + stdenv = gcc7Stdenv; + }; + + webbrowser = callPackage ../applications/networking/browsers/webbrowser {}; + + pamix = callPackage ../applications/audio/pamix { }; + + pamixer = callPackage ../applications/audio/pamixer { }; + + 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 { }; + + pavucontrol = callPackage ../applications/audio/pavucontrol { }; + + paraview = libsForQt5.callPackage ../applications/graphics/paraview { }; + + parlatype = callPackage ../applications/audio/parlatype { }; + + packet = callPackage ../development/tools/packet { }; + + packet-cli = callPackage ../development/tools/packet-cli { }; + + pb_cli = callPackage ../tools/misc/pb_cli {}; + + capture = callPackage ../tools/misc/capture {}; + + pbrt = callPackage ../applications/graphics/pbrt { }; + + pcsxr = callPackage ../misc/emulators/pcsxr { + ffmpeg = ffmpeg_2; + }; + + pcsx2 = pkgsi686Linux.callPackage ../misc/emulators/pcsx2 { + wxGTK = pkgsi686Linux.wxGTK30; + }; + + pekwm = callPackage ../applications/window-managers/pekwm { }; + + pencil = callPackage ../applications/graphics/pencil { + }; + + perseus = callPackage ../applications/science/math/perseus {}; + + petrifoo = callPackage ../applications/audio/petrifoo { + inherit (gnome2) libgnomecanvas; + }; + + 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; + }; + + peek = callPackage ../applications/video/peek { }; + + pflask = callPackage ../os-specific/linux/pflask {}; + + photoqt = libsForQt5.callPackage ../applications/graphics/photoqt { }; + + photoflow = callPackage ../applications/graphics/photoflow { }; + + phototonic = libsForQt5.callPackage ../applications/graphics/phototonic { }; + + phrasendrescher = callPackage ../tools/security/phrasendrescher { }; + + phraseapp-client = callPackage ../tools/misc/phraseapp-client { }; + + phwmon = callPackage ../applications/misc/phwmon { }; + + pianobar = callPackage ../applications/audio/pianobar { }; + + pianobooster = qt5.callPackage ../applications/audio/pianobooster { }; + + 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 { + openssl = if config.pidgin.openssl or true then openssl else null; + gnutls = if config.pidgin.gnutls or false then gnutls else null; + libgcrypt = if config.pidgin.gnutls or false then libgcrypt else null; + startupnotification = libstartup_notification; + plugins = []; + }; + + 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 { }; + + purple-discord = callPackage ../applications/networking/instant-messengers/pidgin-plugins/purple-discord { }; + + 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-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 { }; + + pithos = callPackage ../applications/audio/pithos { + pythonPackages = python3Packages; + }; + + pinfo = callPackage ../applications/misc/pinfo { }; + + pinpoint = callPackage ../applications/office/pinpoint { }; + + pinta = callPackage ../applications/graphics/pinta { + gtksharp = gtk-sharp-2_0; + }; + + pistol = callPackage ../tools/misc/pistol { }; + + plexamp = callPackage ../applications/audio/plexamp { }; + + plex-media-player = libsForQt512.callPackage ../applications/video/plex-media-player { }; + + plex-mpv-shim = python3Packages.callPackage ../applications/video/plex-mpv-shim { }; + + plover = recurseIntoAttrs (libsForQt514.callPackage ../applications/misc/plover { }); + + plugin-torture = callPackage ../applications/audio/plugin-torture { }; + + polar-bookshelf = callPackage ../applications/misc/polar-bookshelf { }; + + poezio = python3Packages.poezio; + + pommed_light = callPackage ../os-specific/linux/pommed-light {}; + + polymake = callPackage ../applications/science/math/polymake { + openjdk = openjdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + + pond = callPackage ../applications/networking/instant-messengers/pond { }; + + ponymix = callPackage ../applications/audio/ponymix { }; + + potrace = callPackage ../applications/graphics/potrace {}; + + posterazor = callPackage ../applications/misc/posterazor { }; + + pqiv = callPackage ../applications/graphics/pqiv { }; + + qiv = callPackage ../applications/graphics/qiv { }; + + 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 ({ + python = python3; + } // (config.profanity or {})); + + properties-cpp = callPackage ../development/libraries/properties-cpp { }; + + protonmail-bridge = libsForQt512.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 = libsForQt514.callPackage ../applications/networking/instant-messengers/psi { }; + + psi-plus = libsForQt514.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 { }; + + pybitmessage = callPackage ../applications/networking/instant-messengers/pybitmessage { }; + + 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 = callPackage ../applications/networking/p2p/eiskaltdcpp { + lua5 = lua5_1; + miniupnpc = miniupnpc_1; + }; + + qdirstat = libsForQt5.callPackage ../applications/misc/qdirstat {}; + + qemu = callPackage ../applications/virtualization/qemu { + inherit (darwin.apple_sdk.frameworks) CoreServices Cocoa Hypervisor; + inherit (darwin.stubs) rez setfile; + python = python3; + }; + + qemu-utils = callPackage ../applications/virtualization/qemu/utils.nix {}; + + # Our 3.10 LTS cannot use a newer Qt (5.15) version because it requires qtwebkit + # and our qtwebkit fails to build with 5.15. 01bcfd3579219d60e5d07df309a000f96b2b658b + qgis-unwrapped = let + pkgs_ = pkgs.extend(_: prev: { + pythonInterpreters = prev.pythonInterpreters.override(oldAttrs: { + pkgs = oldAttrs.pkgs.extend(_: _: { + qt5 = pkgs.qt514; + libsForQt5 = pkgs.libsForQt514; + }); + }); + }); + in pkgs_.libsForQt514.callPackage ../applications/gis/qgis/unwrapped.nix { + withGrass = false; + }; + + 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 {}; + + garmindev = callPackage ../applications/misc/qlandkartegt/garmindev.nix {}; + + qmapshack = libsForQt514.callPackage ../applications/misc/qmapshack { }; + + qmediathekview = libsForQt5.callPackage ../applications/video/qmediathekview { + boost = boost17x; + }; + + 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 { }; + + 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 = libsForQt514.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 { }; + + 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"; + }; + + quirc = callPackage ../tools/graphics/quirc {}; + + quilter = callPackage ../applications/editors/quilter { }; + + quiterss = libsForQt514.callPackage ../applications/networking/newsreaders/quiterss {}; + + falkon = libsForQt514.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 {}; + + 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 = libsForQt514.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 { }; + + recode = callPackage ../tools/text/recode { }; + + rednotebook = python3Packages.callPackage ../applications/editors/rednotebook { }; + + remotebox = callPackage ../applications/virtualization/remotebox { }; + + retroshare = libsForQt514.callPackage ../applications/networking/p2p/retroshare { }; + retroshare06 = retroshare; + + rgp = libsForQt5.callPackage ../development/tools/rgp { }; + + ricochet = libsForQt5.callPackage ../applications/networking/instant-messengers/ricochet { }; + + ries = callPackage ../applications/science/math/ries { }; + + ripcord = qt5.callPackage ../applications/networking/instant-messengers/ripcord { }; + + ripser = callPackage ../applications/science/math/ripser { }; + + rkdeveloptool = callPackage ../misc/rkdeveloptool { }; + + rofi-unwrapped = callPackage ../applications/misc/rofi { }; + rofi = callPackage ../applications/misc/rofi/wrapper.nix { }; + + 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 pyxdg; + }; + + rootlesskit = callPackage ../tools/virtualization/rootlesskit {}; + + rpcs3 = libsForQt514.callPackage ../misc/emulators/rpcs3 { }; + + rsclock = callPackage ../applications/misc/rsclock { }; + + rstudio = libsForQt514.callPackage ../applications/editors/rstudio { + boost = boost166; + llvmPackages = llvmPackages_7; + jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + + 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 { }; + + rtl-sdr = callPackage ../applications/radio/rtl-sdr { }; + + rtv = callPackage ../applications/misc/rtv { }; + + rubyripper = callPackage ../applications/audio/rubyripper {}; + + runc = callPackage ../applications/virtualization/runc {}; + + rxvt = callPackage ../applications/misc/rxvt { }; + + rxvt-unicode = callPackage ../applications/misc/rxvt-unicode/wrapper.nix { }; + + rxvt-unicode-unwrapped = callPackage ../applications/misc/rxvt-unicode { }; + + rxvt-unicode-plugins = import ../applications/misc/rxvt-unicode-plugins { inherit callPackage; }; + + uade123 = callPackage ../applications/audio/uade123 {}; + + udevil = callPackage ../applications/misc/udevil {}; + + udiskie = callPackage ../applications/misc/udiskie { }; + + sacc = callPackage ../applications/networking/gopher/sacc { }; + + sakura = callPackage ../applications/misc/sakura { }; + + sameboy = callPackage ../misc/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 { }; + + scribus = callPackage ../applications/office/scribus { + inherit (gnome2) libart_lgpl; + }; + + scribusUnstable = libsForQt514.callPackage ../applications/office/scribus/unstable.nix { }; + + seafile-client = libsForQt514.callPackage ../applications/networking/seafile-client { }; + + 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 { }; + + simple-scan = gnome3.simple-scan; + + siproxd = callPackage ../applications/networking/siproxd { }; + + skypeforlinux = callPackage ../applications/networking/instant-messengers/skypeforlinux { }; + + skype4pidgin = callPackage ../applications/networking/instant-messengers/pidgin-plugins/skype4pidgin { }; + + skype_call_recorder = callPackage ../applications/networking/instant-messengers/skype-call-recorder { }; + + SkypeExport = callPackage ../applications/networking/instant-messengers/SkypeExport { }; + + slmenu = callPackage ../applications/misc/slmenu {}; + + slop = callPackage ../tools/misc/slop {}; + + slrn = callPackage ../applications/networking/newsreaders/slrn { }; + + slurp = callPackage ../tools/misc/slurp { }; + + sniproxy = callPackage ../applications/networking/sniproxy { }; + + 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 { }; + + spotify-tui = callPackage ../applications/audio/spotify-tui { + inherit (darwin.apple_sdk.frameworks) AppKit Security; + }; + + squishyball = callPackage ../applications/audio/squishyball { + ncurses = ncurses5; + }; + + stupidterm = callPackage ../applications/misc/stupidterm { + gtk = gtk3; + }; + + styx = callPackage ../applications/misc/styx { }; + + 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 { }; + + st = callPackage ../applications/misc/st { + conf = config.st.conf or null; + patches = config.st.patches or []; + extraLibs = config.st.extraLibs or []; + }; + + xst = callPackage ../applications/misc/st/xst.nix { }; + + stag = callPackage ../applications/misc/stag { + curses = ncurses; + }; + + stella = callPackage ../misc/emulators/stella { }; + + linuxstopmotion = callPackage ../applications/video/linuxstopmotion { }; + + sweethome3d = recurseIntoAttrs ( (callPackage ../applications/misc/sweethome3d { + jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }) + // (callPackage ../applications/misc/sweethome3d/editors.nix { + jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + sweethome3dApp = sweethome3d.application; + }) + ); + + swingsane = callPackage ../applications/graphics/swingsane { }; + + sxiv = callPackage ../applications/graphics/sxiv { }; + + resilio-sync = callPackage ../applications/networking/resilio-sync { }; + + dropbox = callPackage ../applications/networking/dropbox { }; + + dropbox-cli = callPackage ../applications/networking/dropbox/cli.nix { }; + + maestral = with python3Packages; toPythonApplication maestral; + + maestral-gui = libsForQt5.callPackage ../applications/networking/maestral-qt { }; + + insync = callPackage ../applications/networking/insync { }; + + 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) exo; + }; + + 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 { }; + + 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 { }; + + curaLulzbot = libsForQt5.callPackage ../applications/misc/cura/lulzbot/default.nix { }; + + curaByDagoma = callPackage ../applications/misc/curabydagoma { }; + + 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 { }; + + robustirc-bridge = callPackage ../servers/irc/robustirc-bridge { }; + + sddm = libsForQt514.callPackage ../applications/display-managers/sddm { }; + + skrooge = libsForQt514.callPackage ../applications/office/skrooge {}; + + smartgithg = callPackage ../applications/version-management/smartgithg { + jre = openjdk11; + }; + + smartdeblur = callPackage ../applications/graphics/smartdeblur { }; + + snapper = callPackage ../tools/misc/snapper { }; + + snd = callPackage ../applications/audio/snd { }; + + shntool = callPackage ../applications/audio/shntool { }; + + sipp = callPackage ../development/tools/misc/sipp { }; + + skanlite = libsForQt514.callPackage ../applications/office/skanlite { }; + + soci = callPackage ../development/libraries/soci { }; + + sonic-lineup = libsForQt514.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 { }; + + spotify-unwrapped = callPackage ../applications/audio/spotify { + libgcrypt = libgcrypt_1_5; + libpng = libpng12; + curl = curl.override { + sslSupport = false; gnutlsSupport = true; + }; + }; + + spotify = callPackage ../applications/audio/spotify/wrapper.nix { }; + + libspotify = callPackage ../development/libraries/libspotify (config.libspotify or {}); + + sourcetrail = callPackage ../development/tools/sourcetrail { }; + + spotifywm = callPackage ../applications/audio/spotifywm { }; + + squeezelite = callPackage ../applications/audio/squeezelite { }; + + ltunify = callPackage ../tools/misc/ltunify { }; + + src = callPackage ../applications/version-management/src { + git = gitMinimal; + }; + + sslyze = with python3Packages; toPythonApplication sslyze; + + ssr = callPackage ../applications/audio/soundscape-renderer {}; + + ssrc = callPackage ../applications/audio/ssrc { }; + + stalonetray = callPackage ../applications/window-managers/stalonetray {}; + + inherit (ocaml-ng.ocamlPackages_4_07) stog; + + stp = callPackage ../applications/science/logic/stp { }; + + stretchly = callPackage ../applications/misc/stretchly { }; + + stumpish = callPackage ../applications/window-managers/stumpish {}; + + stumpwm = callPackage ../applications/window-managers/stumpwm { + version = "latest"; + }; + + stumpwm-git = stumpwm.override { + version = "git"; + inherit sbcl lispPackages; + }; + + sublime = callPackage ../applications/editors/sublime/2 { }; + + sublime3Packages = recurseIntoAttrs (callPackage ../applications/editors/sublime/3/packages.nix { }); + + sublime3 = sublime3Packages.sublime3; + + sublime3-dev = sublime3Packages.sublime3-dev; + + inherit (callPackage ../applications/version-management/sublime-merge {}) + sublime-merge + sublime-merge-dev; + + inherit (callPackages ../applications/version-management/subversion { sasl = cyrus_sasl; }) + subversion19 subversion_1_10 subversion; + + subversionClient = appendToName "client" (pkgs.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 (gnome3) zenity; + git = gitMinimal; + }; + + sunvox = callPackage ../applications/audio/sunvox { }; + + 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 { }; + + symlinks = callPackage ../tools/system/symlinks { }; + + # this can be changed to python3 once pyside2 is updated to support the latest python version + syncplay = python37.pkgs.callPackage ../applications/networking/syncplay { }; + + inherit (callPackages ../applications/networking/syncthing { }) + syncthing + syncthing-cli + 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 { + stdenv = if stdenv.cc.isClang then llvmPackages_5.stdenv else stdenv; + 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; + }; + + 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; + }; + + 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 = libsForQt512.callPackage ../applications/networking/instant-messengers/teamspeak/client.nix { }; + teamspeak_server = callPackage ../applications/networking/instant-messengers/teamspeak/server.nix { }; + + taskell = haskell.lib.justStaticExecutables haskellPackages.taskell; + + taskjuggler = callPackage ../applications/misc/taskjuggler { }; + + tabula = callPackage ../applications/misc/tabula { }; + + tasknc = callPackage ../applications/misc/tasknc { }; + + taskwarrior = callPackage ../applications/misc/taskwarrior { }; + + dstask = callPackage ../applications/misc/dstask { }; + + tasksh = callPackage ../applications/misc/tasksh { }; + + taskserver = callPackage ../servers/misc/taskserver { }; + + taskopen = callPackage ../applications/misc/taskopen { }; + + tdesktop = qt5.callPackage ../applications/networking/instant-messengers/telegram/tdesktop { }; + + 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 {}; + + tendermint = callPackage ../tools/networking/tendermint { }; + + termdown = python3Packages.callPackage ../applications/misc/termdown { }; + + terminal-notifier = callPackage ../applications/misc/terminal-notifier {}; + + terminator = callPackage ../applications/misc/terminator { }; + + terminus = callPackage ../applications/misc/terminus { }; + + tty-solitaire = callPackage ../applications/misc/tty-solitaire { }; + + lxterminal = callPackage ../applications/misc/lxterminal { }; + + aminal = callPackage ../applications/misc/aminal { + inherit (darwin.apple_sdk.frameworks) Carbon Cocoa Kernel; + }; + + termite-unwrapped = callPackage ../applications/misc/termite { }; + + termite = callPackage ../applications/misc/termite/wrapper.nix { termite = termite-unwrapped; }; + + termtosvg = callPackage ../tools/misc/termtosvg { }; + + inherit (callPackage ../applications/graphics/tesseract {}) + tesseract3 + tesseract4; + tesseract = tesseract3; + + tetraproc = callPackage ../applications/audio/tetraproc { }; + + tev = callPackage ../applications/graphics/tev { }; + + thinkingRock = callPackage ../applications/misc/thinking-rock { }; + + thonny = callPackage ../applications/editors/thonny { }; + + thunderbird = thunderbird-78; + + thunderbird-78 = callPackage ../applications/networking/mailreaders/thunderbird { + inherit (rustPackages) cargo rustc; + libpng = libpng_apng; + icu = icu67; + libvpx = libvpx_1_8; + gtk3Support = true; + }; + + thunderbird-68 = callPackage ../applications/networking/mailreaders/thunderbird/68.nix { + inherit (rustPackages) cargo rustc; + libpng = libpng_apng; + nss = nss_3_44; + gtk3Support = true; + }; + + thunderbolt = callPackage ../os-specific/linux/thunderbolt {}; + + thunderbird-bin = thunderbird-bin-78; + thunderbird-bin-78 = callPackage ../applications/networking/mailreaders/thunderbird-bin { }; + + thunderbird-bin-68 = callPackage ../applications/networking/mailreaders/thunderbird-bin/68.nix { }; + + ticpp = callPackage ../development/libraries/ticpp { }; + + tig = gitAndTools.tig; + + tilda = callPackage ../applications/misc/tilda { + gtk = gtk3; + }; + + timbreid = callPackage ../applications/audio/pd-plugins/timbreid { + fftw = fftwSinglePrec; + }; + + timewarrior = callPackage ../applications/misc/timewarrior { }; + + timidity = callPackage ../tools/misc/timidity { }; + + 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 { }; + + tkcvs = callPackage ../applications/version-management/tkcvs { }; + + 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 { }; + + todoman = callPackage ../applications/office/todoman { }; + + toggldesktop = libsForQt514.callPackage ../applications/misc/toggldesktop { }; + + topydo = callPackage ../applications/misc/topydo {}; + + torchat = callPackage ../applications/networking/instant-messengers/torchat { + inherit (pythonPackages) wrapPython wxPython; + }; + + torrential = callPackage ../applications/networking/p2p/torrential { }; + + tortoisehg = callPackage ../applications/version-management/tortoisehg { }; + + 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 { }; + + transmission = callPackage ../applications/networking/p2p/transmission { }; + 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 { }; + + 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; }; + + tremc = callPackage ../applications/networking/p2p/tremc { }; + + tribler = callPackage ../applications/networking/p2p/tribler { }; + + trojita = libsForQt514.callPackage ../applications/networking/mailreaders/trojita { + inherit (kdeApplications) akonadi-contacts; + }; + + tudu = callPackage ../applications/office/tudu { }; + + 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 { }; + + twister = callPackage ../applications/networking/p2p/twister { }; + + twmn = libsForQt5.callPackage ../applications/misc/twmn { }; + + testssl = callPackage ../applications/networking/testssl { }; + + ulauncher = callPackage ../applications/misc/ulauncher { }; + + twinkle = qt5.callPackage ../applications/networking/instant-messengers/twinkle { }; + + ueberzug = with python3Packages; toPythonApplication ueberzug; + + uhhyou.lv2 = callPackage ../applications/audio/uhhyou.lv2 { }; + + umurmur = callPackage ../applications/networking/umurmur { }; + + udocker = pythonPackages.callPackage ../tools/virtualization/udocker { }; + + uefitoolPackages = recurseIntoAttrs (callPackage ../tools/system/uefitool/variants.nix {}); + uefitool = uefitoolPackages.new-engine; + + ungoogled-chromium = callPackage ../applications/networking/browsers/ungoogled-chromium (config.chromium or {}); + + unigine-valley = callPackage ../applications/graphics/unigine-valley { }; + + unison = callPackage ../applications/networking/sync/unison { + ocamlPackages = ocaml-ng.ocamlPackages_4_09; + enableX11 = config.unison.enableX11 or true; + }; + + unpaper = callPackage ../tools/graphics/unpaper { }; + + unison-ucm = callPackage ../development/compilers/unison { }; + + urh = callPackage ../applications/radio/urh { }; + + uuagc = haskell.lib.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 = libsForQt514.callPackage ../applications/misc/valentina { }; + + vbindiff = callPackage ../applications/editors/vbindiff { }; + + vcprompt = callPackage ../applications/version-management/vcprompt { }; + + vcs = callPackage ../applications/video/vcs { }; + + vcv-rack = callPackage ../applications/audio/vcv-rack { }; + + vdirsyncer = with python3Packages; toPythonApplication vdirsyncer; + + vdirsyncerStable = with python3Packages; toPythonApplication vdirsyncerStable; + + vdpauinfo = callPackage ../tools/X11/vdpauinfo { }; + + verbiste = callPackage ../applications/misc/verbiste { + inherit (gnome2) libgnomeui; + }; + + vuescan = callPackage ../applications/graphics/vuescan { }; + + vim = callPackage ../applications/editors/vim { + inherit (darwin.apple_sdk.frameworks) Carbon Cocoa; + }; + + vimiv = callPackage ../applications/graphics/vimiv { }; + + 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; + }); + + vimacs = callPackage ../applications/editors/vim/vimacs.nix { }; + + qpdfview = libsForQt514.callPackage ../applications/misc/qpdfview {}; + + qtile = callPackage ../applications/window-managers/qtile { + inherit (xorg) libxcb; + }; + + vimpc = callPackage ../applications/audio/vimpc { }; + + wrapNeovim = callPackage ../applications/editors/neovim/wrapper.nix { }; + + neovim-unwrapped = callPackage ../applications/editors/neovim { + lua = + # neovim doesn't work with luajit on aarch64: https://github.com/neovim/neovim/issues/7879 + if stdenv.isAarch64 then lua5_1 else + luajit; + }; + + neovim = wrapNeovim neovim-unwrapped { }; + + neovim-qt = libsForQt5.callPackage ../applications/editors/neovim/qt.nix { }; + + olifant = callPackage ../applications/misc/olifant { }; + + gnvim-unwrapped = callPackage ../applications/editors/neovim/gnvim { + gtk = pkgs.gtk3; + }; + + gnvim = callPackage ../applications/editors/neovim/gnvim/wrapper.nix { }; + + neovim-remote = callPackage ../applications/editors/neovim/neovim-remote.nix { pythonPackages = python3Packages; }; + + vis = callPackage ../applications/editors/vis { + inherit (lua52Packages) lpeg; + }; + + 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 = libsForQt514.callPackage ../applications/virtualization/virt-manager/qt.nix { + qtermwidget = lxqt.qtermwidget; + }; + + virtinst = callPackage ../applications/virtualization/virtinst {}; + + 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 = libsForQt514.callPackage ../applications/video/vlc {}; + + vlc_qt5 = vlc; + + libvlc = vlc.override { + withQt5 = false; + qtbase = null; + qtsvg = null; + qtx11extras = null; + wrapQtAppsHook = null; + onlyLibVLC = true; + }; + + vmpk = 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 { }; + + vscode = callPackage ../applications/editors/vscode/vscode.nix { }; + + vscode-with-extensions = callPackage ../applications/editors/vscode/with-extensions.nix {}; + + vscode-utils = callPackage ../misc/vscode-extensions/vscode-utils.nix {}; + + vscode-extensions = recurseIntoAttrs (callPackage ../misc/vscode-extensions {}); + + vscodium = callPackage ../applications/editors/vscode/vscodium.nix { }; + + code-server = callPackage ../servers/code-server { }; + + 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 { }; + + 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 { + pythonPackages = python3Packages; + }; + + way-cooler = throw ("way-cooler is abandoned by its author: " + + "https://way-cooler.org/blog/2020/01/09/way-cooler-post-mortem.html"); + + waypipe = callPackage ../applications/networking/remote/waypipe { }; + + wayv = callPackage ../tools/X11/wayv {}; + + wayvnc = callPackage ../applications/networking/remote/wayvnc { }; + + webcamoid = libsForQt514.callPackage ../applications/video/webcamoid { }; + + webmacs = libsForQt5.callPackage ../applications/networking/browsers/webmacs {}; + + 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 { pipewire = pipewire_0_2; }; + + 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 { }; + + wily = callPackage ../applications/editors/wily { }; + + wings = callPackage ../applications/graphics/wings { + erlang = erlangR21; + }; + + write_stylus = libsForQt5.callPackage ../applications/graphics/write_stylus { }; + + alsamixer.app = callPackage ../applications/window-managers/windowmaker/dockapps/alsamixer.app.nix { }; + + wllvm = callPackage ../development/tools/wllvm { }; + + wmcalclock = callPackage ../applications/window-managers/windowmaker/dockapps/wmcalclock.nix { }; + + wmsm.app = callPackage ../applications/window-managers/windowmaker/dockapps/wmsm.app.nix { }; + + wmsystemtray = callPackage ../applications/window-managers/windowmaker/dockapps/wmsystemtray.nix { }; + + wmname = callPackage ../applications/misc/wmname { }; + + wmctrl = callPackage ../tools/X11/wmctrl { }; + + wmii_hg = callPackage ../applications/window-managers/wmii-hg { }; + + wofi = callPackage ../applications/misc/wofi { }; + + wordnet = callPackage ../applications/misc/wordnet { }; + + 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 { }; + + wp-cli = callPackage ../development/tools/wp-cli { }; + + retroArchCores = + let + cfg = config.retroarch or {}; + inherit (lib) optional; + in with libretro; + ([ ] + ++ optional (cfg.enableAtari800 or false) atari800 + ++ optional (cfg.enableBeetleGBA or false) beetle-gba + ++ optional (cfg.enableBeetleLynx or false) beetle-lynx + ++ optional (cfg.enableBeetleNGP or false) beetle-ngp + ++ optional (cfg.enableBeetlePCEFast or false) beetle-pce-fast + ++ optional (cfg.enableBeetlePCFX or false) beetle-pcfx + ++ optional (cfg.enableBeetlePSX or false) beetle-psx + ++ optional (cfg.enableBeetlePSXHW or false) beetle-psx-hw + ++ optional (cfg.enableBeetleSaturn or false) beetle-saturn + ++ optional (cfg.enableBeetleSaturnHW or false) beetle-saturn-hw + ++ optional (cfg.enableBeetleSNES or false) beetle-snes + ++ optional (cfg.enableBeetleSuperGrafx or false) beetle-supergrafx + ++ optional (cfg.enableBeetleWswan or false) beetle-wswan + ++ optional (cfg.enableBeetleVB or false) beetle-vb + ++ optional (cfg.enableBlueMSX or false) bluemsx + ++ optional (cfg.enableBsnesMercury or false) bsnes-mercury + ++ optional (cfg.enableCitra or false) citra + ++ optional (cfg.enableDesmume or false) desmume + ++ optional (cfg.enableDesmume2015 or false) desmume2015 + ++ optional (cfg.enableDolphin or false) dolphin + ++ optional (cfg.enableDOSBox or false) dosbox + ++ optional (cfg.enableEightyOne or false) eightyone + ++ optional (cfg.enableFBAlpha2012 or false) fbalpha2012 + ++ optional (cfg.enableFBNeo or false) fbneo + ++ optional (cfg.enableFceumm or false) fceumm + ++ optional (cfg.enableFlycast or false) flycast + ++ optional (cfg.enableFMSX or false) fmsx + ++ optional (cfg.enableFreeIntv or false) freeintv + ++ optional (cfg.enableGambatte or false) gambatte + ++ optional (cfg.enableGenesisPlusGX or false) genesis-plus-gx + ++ optional (cfg.enableGpsp or false) gpsp + ++ optional (cfg.enableGW or false) gw + ++ optional (cfg.enableHandy or false) handy + ++ optional (cfg.enableHatari or false) hatari + ++ optional (cfg.enableMAME or false) mame + ++ optional (cfg.enableMAME2000 or false) mame2000 + ++ optional (cfg.enableMAME2003 or false) mame2003 + ++ optional (cfg.enableMAME2003Plus or false) mame2003-plus + ++ optional (cfg.enableMAME2010 or false) mame2010 + ++ optional (cfg.enableMAME2015 or false) mame2015 + ++ optional (cfg.enableMAME2016 or false) mame2016 + ++ optional (cfg.enableMesen or false) mesen + ++ optional (cfg.enableMeteor or false) meteor + ++ optional (cfg.enableMGBA or false) mgba + ++ optional (cfg.enableMupen64Plus or false) mupen64plus + ++ optional (cfg.enableNeoCD or false) neocd + ++ optional (cfg.enableNestopia or false) nestopia + ++ optional (cfg.enableNP2kai or false) np2kai + ++ optional (cfg.enableO2EM or false) o2em + ++ optional (cfg.enableOpera or false) opera + ++ optional (cfg.enableParallelN64 or false) parallel-n64 + ++ optional (cfg.enablePCSXRearmed or false) pcsx_rearmed + ++ optional (cfg.enablePicodrive or false) picodrive + ++ optional (cfg.enablePlay or false) play + ++ optional (cfg.enablePPSSPP or false) ppsspp + ++ optional (cfg.enablePrboom or false) prboom + ++ optional (cfg.enableProSystem or false) prosystem + ++ optional (cfg.enableQuickNES or false) quicknes + ++ optional (cfg.enableSameBoy or false) sameboy + ++ optional (cfg.enableScummVM or false) scummvm + ++ optional (cfg.enableSMSPlusGX or false) smsplus-gx + ++ optional (cfg.enableSnes9x or false) snes9x + ++ optional (cfg.enableSnes9x2002 or false) snes9x2002 + ++ optional (cfg.enableSnes9x2005 or false) snes9x2005 + ++ optional (cfg.enableSnes9x2010 or false) snes9x2010 + ++ optional (cfg.enableStella or false) stella + ++ optional (cfg.enableStella2014 or false) stella2014 + ++ optional (cfg.enableTGBDual or false) tgbdual + ++ optional (cfg.enableTIC80 or false) tic80 + ++ optional (cfg.enableVbaNext or false) vba-next + ++ optional (cfg.enableVbaM or false) vba-m + ++ optional (cfg.enableVecx or false) vecx + ++ optional (cfg.enableVirtualJaguar or false) virtualjaguar + ++ optional (cfg.enableYabause or false) yabause + ); + + wrapRetroArch = { retroarch }: callPackage ../misc/emulators/retroarch/wrapper.nix { + inherit retroarch; + cores = retroArchCores; + }; + + wrapKodi = { kodi }: callPackage ../applications/video/kodi/wrapper.nix { + inherit kodi; + plugins = let inherit (lib) optional optionals; in with kodiPlugins; + ([] + ++ optional (config.kodi.enableAdvancedLauncher or false) advanced-launcher + ++ optional (config.kodi.enableAdvancedEmulatorLauncher or false) + advanced-emulator-launcher + ++ optionals (config.kodi.enableControllers or false) + (with controllers; + [ default dreamcast gba genesis mouse n64 nes ps snes ]) + ++ optional (config.kodi.enableExodus or false) exodus + ++ optionals (config.kodi.enableHyperLauncher or false) + (with hyper-launcher; [ plugin service pdfreader ]) + ++ optional (config.kodi.enableJoystick or false) joystick + ++ optional (config.kodi.enableOSMCskin or false) osmc-skin + ++ optional (config.kodi.enableSVTPlay or false) svtplay + ++ optional (config.kodi.enableSteamController or false) steam-controller + ++ optional (config.kodi.enableSteamLauncher or false) steam-launcher + ++ optional (config.kodi.enablePVRHTS or false) pvr-hts + ++ optional (config.kodi.enablePVRHDHomeRun or false) pvr-hdhomerun + ++ optional (config.kodi.enablePVRIPTVSimple or false) pvr-iptvsimple + ++ optional (config.kodi.enableInputStreamAdaptive or false) inputstream-adaptive + ++ optional (config.kodi.enableVFSSFTP or false) vfs-sftp + ++ optional (config.kodi.enableVFSLibarchive or false) vfs-libarchive + ); + }; + + 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; + }; + + x11basic = callPackage ../development/compilers/x11basic { }; + + 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 = imagemagick; + 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; + }; + + kodiPlain = callPackage ../applications/video/kodi { + jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + + kodiPlainWayland = callPackage ../applications/video/kodi { + useWayland = true; + jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + + kodiGBM = callPackage ../applications/video/kodi { + useGbm = true; + jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + }; + + kodiPlugins = recurseIntoAttrs (callPackage ../applications/video/kodi/plugins.nix {}); + + kodi = wrapKodi { + kodi = kodiPlain; + }; + + kodi-wayland = wrapKodi { + kodi = kodiPlainWayland; + }; + + kodi-gbm = wrapKodi { + kodi = kodiGBM; + }; + + kodi-cli = callPackage ../tools/misc/kodi-cli { }; + + kodi-retroarch-advanced-launchers = + callPackage ../misc/emulators/retroarch/kodi-advanced-launchers.nix { + cores = retroArchCores; + }; + xbmc-retroarch-advanced-launchers = kodi-retroarch-advanced-launchers; + + xca = libsForQt5.callPackage ../applications/misc/xca { }; + + xcalib = callPackage ../tools/X11/xcalib { }; + + xcape = callPackage ../tools/X11/xcape { }; + + xchainkeys = callPackage ../tools/X11/xchainkeys { }; + + xchm = callPackage ../applications/misc/xchm { }; + + inherit (xorg) xcompmgr; + + picom = callPackage ../applications/window-managers/picom {}; + + 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-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 { }; + + xenPackages = recurseIntoAttrs (callPackage ../applications/virtualization/xen/packages.nix {}); + + xen = xenPackages.xen-vanilla; + xen-slim = xenPackages.xen-slim; + xen-light = xenPackages.xen-light; + + xen_4_8 = xenPackages.xen_4_8-vanilla; + xen_4_8-slim = xenPackages.xen_4_8-slim; + xen_4_8-light = xenPackages.xen_4_8-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 {}; + + xineUI = callPackage ../applications/video/xine-ui { }; + + 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 { + gconf = gnome2.GConf; + inherit (gnome2) libglade scrollkeeper; + gtkhtml = gnome2.gtkhtml4; + python = python27; + enchant = enchant1; + }; + + 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 { }; + + xpointerbarrier = callPackage ../tools/X11/xpointerbarrier {}; + + xkb-switch = callPackage ../tools/X11/xkb-switch { }; + + xkblayout-state = callPackage ../applications/misc/xkblayout-state { }; + + xmobar = haskellPackages.xmobar; + + xmonad-log = callPackage ../tools/misc/xmonad-log { }; + + xmonad-with-packages = callPackage ../applications/window-managers/xmonad/wrapper.nix { + inherit (haskellPackages) ghcWithPackages; + packages = self: [ 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"; + }; + + xmpp-client = callPackage ../applications/networking/instant-messengers/xmpp-client { }; + + libxpdf = callPackage ../applications/misc/xpdf/libxpdf.nix { }; + + xpra = callPackage ../tools/X11/xpra { }; + libfakeXinerama = callPackage ../tools/X11/xpra/libfakeXinerama.nix { }; + + xrectsel = callPackage ../tools/X11/xrectsel { }; + + xrestop = callPackage ../tools/X11/xrestop { }; + + xsd = callPackage ../development/libraries/xsd { }; + + xscope = callPackage ../applications/misc/xscope { }; + + xscreensaver = callPackage ../misc/screensavers/xscreensaver { + inherit (gnome2) libglade; + }; + + 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 { }; + + xterm = callPackage ../applications/misc/xterm { }; + + mlterm = callPackage ../applications/misc/mlterm { + libssh2 = null; + openssl = null; + }; + + roxterm = callPackage ../applications/misc/roxterm { }; + + termonad-with-packages = callPackage ../applications/misc/termonad { + inherit (haskellPackages) ghcWithPackages; + }; + + 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/default.nix {}; + + 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 {}; + + yarssr = callPackage ../applications/misc/yarssr { }; + + yate = callPackage ../applications/misc/yate { }; + + ydiff = callPackage ../development/tools/ydiff { }; + + yed = callPackage ../applications/graphics/yed {}; + + yeetgif = callPackage ../applications/graphics/yeetgif { }; + + inherit (gnome3) yelp; + + yelp-tools = callPackage ../development/misc/yelp-tools { }; + + yokadi = python3Packages.callPackage ../applications/misc/yokadi {}; + + yoshimi = callPackage ../applications/audio/yoshimi { }; + + youtube-dl = with python3Packages; toPythonApplication youtube-dl; + + youtube-dl-light = with python3Packages; toPythonApplication youtube-dl-light; + + youtube-viewer = perlPackages.WWWYoutubeViewer; + + ytalk = callPackage ../applications/networking/instant-messengers/ytalk { }; + + ytcc = callPackage ../tools/networking/ytcc { }; + + zam-plugins = callPackage ../applications/audio/zam-plugins { }; + + zanshin = libsForQt514.callPackage ../applications/office/zanshin { + inherit (kdeApplications) akonadi-calendar akonadi-notes akonadi-search kidentitymanagement kontactinterface kldap; + inherit (kdeFrameworks) krunner kwallet kcalendarcore; + boost = boost160; + }; + + zathura = callPackage ../applications/misc/zathura { }; + + 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 { }; + + 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 = libsForQt514.callPackage ../applications/gis/zombietrackergps { }; + + zoom-us = libsForQt514.callPackage ../applications/networking/instant-messengers/zoom-us { }; + + zotero = callPackage ../applications/office/zotero { }; + + zscroll = callPackage ../applications/misc/zscroll {}; + + zynaddsubfx = callPackage ../applications/audio/zynaddsubfx { }; + + ### BLOCKCHAINS / CRYPTOCURRENCIES / WALLETS + + aeon = callPackage ../applications/blockchains/aeon { }; + + bitcoin = libsForQt5.callPackage ../applications/blockchains/bitcoin.nix { miniupnpc = miniupnpc_2; withGui = true; }; + bitcoind = callPackage ../applications/blockchains/bitcoin.nix { miniupnpc = miniupnpc_2; withGui = false; }; + + bitcoind-knots = callPackage ../applications/blockchains/bitcoin-knots.nix { miniupnpc = miniupnpc_2; }; + + cgminer = callPackage ../applications/blockchains/cgminer { }; + + clightning = callPackage ../applications/blockchains/clightning.nix { }; + + bitcoin-abc = libsForQt5.callPackage ../applications/blockchains/bitcoin-abc.nix { boost = boost165; withGui = true; }; + bitcoind-abc = callPackage ../applications/blockchains/bitcoin-abc.nix { + boost = boost165; + mkDerivation = stdenv.mkDerivation; + withGui = false; + }; + + bitcoin-unlimited = libsForQt514.callPackage ../applications/blockchains/bitcoin-unlimited.nix { + inherit (darwin.apple_sdk.frameworks) Foundation ApplicationServices AppKit; + withGui = true; + }; + bitcoind-unlimited = callPackage ../applications/blockchains/bitcoin-unlimited.nix { + inherit (darwin.apple_sdk.frameworks) Foundation ApplicationServices AppKit; + withGui = false; + }; + + bitcoin-classic = libsForQt514.callPackage ../applications/blockchains/bitcoin-classic.nix { boost = boost165; withGui = true; }; + bitcoind-classic = callPackage ../applications/blockchains/bitcoin-classic.nix { boost = boost165; withGui = false; }; + + bitcoin-gold = libsForQt514.callPackage ../applications/blockchains/bitcoin-gold.nix { boost = boost165; withGui = true; }; + bitcoind-gold = callPackage ../applications/blockchains/bitcoin-gold.nix { boost = boost165; withGui = false; }; + + btc1 = callPackage ../applications/blockchains/btc1.nix { + inherit (darwin.apple_sdk.frameworks) AppKit; + boost = boost165; + }; + btc1d = btc1.override { withGui = false; }; + + btcpayserver = callPackage ../applications/blockchains/btcpayserver { }; + + cryptop = python3.pkgs.callPackage ../applications/blockchains/cryptop { }; + + dashpay = callPackage ../applications/blockchains/dashpay.nix { }; + + dcrd = callPackage ../applications/blockchains/dcrd.nix { }; + dcrwallet = callPackage ../applications/blockchains/dcrwallet.nix { }; + + dero = callPackage ../applications/blockchains/dero.nix { boost = boost165; }; + + digibyte = libsForQt514.callPackage ../applications/blockchains/digibyte.nix { withGui = true; }; + digibyted = callPackage ../applications/blockchains/digibyte.nix { withGui = false; }; + + dogecoin = callPackage ../applications/blockchains/dogecoin.nix { boost = boost165; withGui = true; }; + dogecoind = callPackage ../applications/blockchains/dogecoin.nix { boost = boost165; withGui = false; }; + + ergo = callPackage ../applications/blockchains/ergo { }; + + exodus = callPackage ../applications/blockchains/exodus { }; + + freicoin = callPackage ../applications/blockchains/freicoin.nix { boost = boost155; }; + go-ethereum = callPackage ../applications/blockchains/go-ethereum.nix { + inherit (darwin) libobjc; + inherit (darwin.apple_sdk.frameworks) IOKit; + }; + + ledger_agent = with python3Packages; toPythonApplication ledger_agent; + + ledger-live-desktop = callPackage ../applications/blockchains/ledger-live-desktop { }; + + litecoin = libsForQt514.callPackage ../applications/blockchains/litecoin.nix { + inherit (darwin.apple_sdk.frameworks) AppKit; + }; + litecoind = litecoin.override { withGui = false; }; + + lnd = callPackage ../applications/blockchains/lnd.nix { }; + + monero = callPackage ../applications/blockchains/monero { + inherit (darwin.apple_sdk.frameworks) CoreData IOKit PCSC; + boost = boost17x; + }; + + monero-gui = libsForQt5.callPackage ../applications/blockchains/monero-gui { + boost = boost17x; + }; + + masari = callPackage ../applications/blockchains/masari.nix { boost = boost165; }; + + nano-wallet = libsForQt5.callPackage ../applications/blockchains/nano-wallet { }; + + namecoin = callPackage ../applications/blockchains/namecoin.nix { withGui = true; }; + namecoind = callPackage ../applications/blockchains/namecoin.nix { withGui = false; }; + + nbxplorer = callPackage ../applications/blockchains/nbxplorer { }; + + pivx = libsForQt5.callPackage ../applications/blockchains/pivx.nix { withGui = true; }; + pivxd = callPackage ../applications/blockchains/pivx.nix { withGui = false; }; + + ethabi = callPackage ../applications/blockchains/ethabi.nix { }; + + stellar-core = callPackage ../applications/blockchains/stellar-core.nix { }; + + sumokoin = callPackage ../applications/blockchains/sumokoin.nix { boost = boost165; }; + + tessera = callPackage ../applications/blockchains/tessera.nix { }; + + vertcoin = libsForQt514.callPackage ../applications/blockchains/vertcoin.nix { boost = boost165; withGui = true; }; + vertcoind = callPackage ../applications/blockchains/vertcoin.nix { boost = boost165; withGui = false; }; + + wasabiwallet = callPackage ../applications/blockchains/wasabiwallet { }; + + wasabibackend = callPackage ../applications/blockchains/wasabibackend { Nuget = dotnetPackages.Nuget; }; + + wownero = callPackage ../applications/blockchains/wownero.nix {}; + + zcash = callPackage ../applications/blockchains/zcash { }; + + openethereum = callPackage ../applications/blockchains/openethereum { }; + + parity-ui = callPackage ../applications/blockchains/parity-ui { }; + + polkadot = callPackage ../applications/blockchains/polkadot { }; + + particl-core = callPackage ../applications/blockchains/particl/particl-core.nix { miniupnpc = miniupnpc_2; }; + + quorum = callPackage ../applications/blockchains/quorum.nix { }; + + whirlpool-gui = callPackage ../applications/blockchains/whirlpool-gui { }; + + ### GAMES + + _2048-in-terminal = callPackage ../games/2048-in-terminal { }; + + _20kly = callPackage ../games/20kly { }; + + _90secondportraits = callPackage ../games/90secondportraits { love = love_0_10; }; + + abbaye-des-morts = callPackage ../games/abbaye-des-morts { }; + + adom = callPackage ../games/adom { }; + + airstrike = callPackage ../games/airstrike { }; + + alephone = callPackage ../games/alephone { ffmpeg = ffmpeg_2; }; + 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; + }; + + armagetronad = callPackage ../games/armagetronad { }; + + arena = callPackage ../games/arena {}; + + arx-libertatis = libsForQt5.callPackage ../games/arx-libertatis { + stdenv = gcc6Stdenv; + }; + + 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 {}; + + beancount = with python3.pkgs; toPythonApplication beancount; + + bean-add = callPackage ../applications/office/beancount/bean-add.nix { }; + + bench = haskell.lib.justStaticExecutables haskellPackages.bench; + + beret = callPackage ../games/beret { }; + + bitsnbots = callPackage ../games/bitsnbots { + lua = lua5; + }; + + blackshades = callPackage ../games/blackshades { }; + + blobby = callPackage ../games/blobby { }; + + boohu = callPackage ../games/boohu { }; + + braincurses = callPackage ../games/braincurses { }; + + brogue = callPackage ../games/brogue { }; + + 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; + + chessdb = callPackage ../games/chessdb { }; + + chessx = libsForQt5.callPackage ../games/chessx { }; + + chiaki = libsForQt514.callPackage ../games/chiaki { }; + + chocolateDoom = callPackage ../games/chocolate-doom { }; + + crispyDoom = callPackage ../games/crispy-doom { }; + + cri-o = callPackage ../applications/virtualization/cri-o/wrapper.nix { }; + cri-o-unwrapped = callPackage ../applications/virtualization/cri-o { }; + + ckan = callPackage ../games/ckan { }; + + cockatrice = libsForQt5.callPackage ../games/cockatrice { }; + + commandergenius = callPackage ../games/commandergenius { }; + + confd = callPackage ../tools/system/confd { }; + + conmon = callPackage ../applications/virtualization/conmon { }; + + construoBase = lowPrio (callPackage ../games/construo { + libGL = null; + libGLU = null; + freeglut = null; + }); + + construo = construoBase.override { + inherit libGL libGLU freeglut; + }; + + crack_attack = callPackage ../games/crack-attack { }; + + crafty = callPackage ../games/crafty { }; + + crawlTiles = callPackage ../games/crawl { + tileMode = true; + }; + + crawl = callPackage ../games/crawl { }; + + 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 { }; + + devilutionx = callPackage ../games/devilutionx {}; + + dhewm3 = callPackage ../games/dhewm3 {}; + + digikam = libsForQt514.callPackage ../applications/graphics/digikam { + inherit (plasma5) oxygen; + inherit (kdeApplications) akonadi-contacts; + inherit (kdeFrameworks) kcalendarcore; + opencv3 = opencv3WithoutCuda; + }; + + displaycal = callPackage ../applications/graphics/displaycal {}; + + drumkv1 = libsForQt5.callPackage ../applications/audio/drumkv1 { }; + + 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 { }; + + eduke32 = callPackage ../games/eduke32 { }; + + 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 { }; + + eureka-editor = callPackage ../applications/misc/eureka-editor { }; + + extremetuxracer = callPackage ../games/extremetuxracer { + libpng = libpng12; + }; + + exult = callPackage ../games/exult { }; + + fltrator = callPackage ../games/fltrator { }; + + 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 {}; + + fava = callPackage ../applications/office/fava {}; + + fish-fillets-ng = callPackage ../games/fish-fillets-ng {}; + + flightgear = libsForQt5.callPackage ../games/flightgear { }; + + flock = callPackage ../development/tools/flock { }; + + freecell-solver = callPackage ../games/freecell-solver { }; + + freeciv = callPackage ../games/freeciv { 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; + }; + }; + + fslint = callPackage ../applications/misc/fslint {}; + + 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 { }; + + gl117 = callPackage ../games/gl-117 {}; + + globulation2 = callPackage ../games/globulation { + boost = boost155; + }; + + gltron = callPackage ../games/gltron { }; + + gmad = callPackage ../games/gmad { }; + + 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 {}; + + gshhg-gmt = callPackage ../applications/gis/gmt/gshhg.nix { }; + + qtads = qt5.callPackage ../games/qtads { }; + + 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 { }; + + hawkthorne = callPackage ../games/hawkthorne { love = love_0_9; }; + + 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 { + inherit (pythonPackages) rdflib; + }; + + ideogram = callPackage ../applications/graphics/ideogram { }; + + instead = callPackage ../games/instead { }; + + instead-launcher = callPackage ../games/instead-launcher { }; + + ivan = callPackage ../games/ivan { }; + + ja2-stracciatella = callPackage ../games/ja2-stracciatella { }; + + katago = callPackage ../games/katago { }; + + katagoWithCuda = katago.override { + enableCuda = true; + cudnn = cudnn_cudatoolkit_10_2; + cudatoolkit = cudatoolkit_10_2; + }; + + 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 { }; + + mars = callPackage ../games/mars { }; + + megaglest = callPackage ../games/megaglest {}; + + mindustry = callPackage ../games/mindustry { }; + + mindustry-server = callPackage ../games/mindustry { + enableClient = false; + enableServer = true; + }; + + minecraft = callPackage ../games/minecraft { }; + + minecraft-server = callPackage ../games/minecraft-server { }; + + moon-buggy = callPackage ../games/moon-buggy {}; + + multimc = libsForQt5.callPackage ../games/multimc { }; + + inherit (callPackages ../games/minetest { + inherit (darwin) libiconv; + inherit (darwin.apple_sdk.frameworks) OpenGL OpenAL Carbon Cocoa; + }) + minetestclient_4 minetestserver_4 + minetestclient_5 minetestserver_5; + + minetest = minetestclient_5; + + mnemosyne = callPackage ../games/mnemosyne { + python = python3; + }; + + mrrescue = callPackage ../games/mrrescue { }; + + mudlet = libsForQt5.callPackage ../games/mudlet { + lua = lua5_1; + }; + + n2048 = callPackage ../games/n2048 { }; + + naev = callPackage ../games/naev { }; + + 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 { }; + + newtonwars = callPackage ../games/newtonwars { }; + + nottetris2 = callPackage ../games/nottetris2 { }; + + 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_9; + }; + + 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 { }; + + 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; + }; + }; + + 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 = libsForQt514.callPackage ../games/pentobi { }; + + performous = callPackage ../games/performous { + boost = boost166; + }; + + pingus = callPackage ../games/pingus {}; + + pioneer = callPackage ../games/pioneer { }; + + pioneers = callPackage ../games/pioneers { }; + + planetary_annihilation = callPackage ../games/planetaryannihilation { }; + + pong3d = callPackage ../games/pong3d { }; + + pokerth = libsForQt5.callPackage ../games/pokerth { }; + + pokerth-server = libsForQt5.callPackage ../games/pokerth { target = "server"; }; + + prboom = callPackage ../games/prboom { }; + + privateer = callPackage ../games/privateer { }; + + pysolfc = python3Packages.callPackage ../games/pysolfc { }; + + qweechat = callPackage ../applications/networking/irc/qweechat { }; + + 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 { }; + + quakespasm = callPackage ../games/quakespasm { }; + vkquake = callPackage ../games/quakespasm/vulkan.nix { }; + + ioquake3 = callPackage ../games/quake3/ioquake { }; + quake3e = callPackage ../games/quake3/quake3e { }; + + quantumminigolf = callPackage ../games/quantumminigolf {}; + + racer = callPackage ../games/racer { }; + + redeclipse = callPackage ../games/redeclipse { }; + + residualvm = callPackage ../games/residualvm { }; + + 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 { }; + + rimshot = callPackage ../games/rimshot { love = love_0_7; }; + + rogue = callPackage ../games/rogue { + ncurses = ncurses5; + }; + + robotfindskitten = callPackage ../games/robotfindskitten { }; + + rocksndiamonds = callPackage ../games/rocksndiamonds { }; + + rrootage = callPackage ../games/rrootage { }; + + saga = libsForQt514.callPackage ../applications/gis/saga { + inherit (darwin.apple_sdk.frameworks) Cocoa; + }; + + samplv1 = callPackage ../applications/audio/samplv1 { qt5 = qt514; }; + + sauerbraten = callPackage ../games/sauerbraten {}; + + scaleft = callPackage ../applications/networking/scaleft { }; + + scaleway-cli = callPackage ../tools/admin/scaleway-cli { }; + + 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 (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 (callPackage ../games/sgt-puzzles) { }; + + shattered-pixel-dungeon = callPackage ../games/shattered-pixel-dungeon { }; + + 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 = libsForQt514.callPackage ../games/solarus { }; + solarus-quest-editor = libsForQt514.callPackage ../development/tools/solarus-quest-editor { }; + + # You still can override by passing more arguments. + space-orbit = callPackage ../games/space-orbit { }; + + spring = callPackage ../games/spring { + boost = boost155; + }; + + springLobby = callPackage ../games/spring/springlobby.nix { }; + + ssl-cert-check = callPackage ../tools/admin/ssl-cert-check { }; + + stardust = callPackage ../games/stardust {}; + + stockfish = callPackage ../games/stockfish { }; + + steamPackages = dontRecurseIntoAttrs (callPackage ../games/steam { + buildFHSUserEnv = buildFHSUserEnvBubblewrap; + }); + + steam = steamPackages.steam-fhsenv; + + steam-run = steam.run; + steam-run-native = (steam.override { + nativeOnly = true; + }).run; + + steamcmd = steamPackages.steamcmd; + + protontricks = callPackage ../tools/package-management/protontricks { + inherit (python3Packages) buildPythonApplication pytest setuptools_scm vdf; + inherit (gnome3) zenity; + wine = wineWowPackages.minimal; + winetricks = winetricks.override { + wine = wineWowPackages.minimal; + }; + }; + + stepmania = callPackage ../games/stepmania { + ffmpeg = ffmpeg_2; + }; + + streamlit = python3Packages.callPackage ../applications/science/machine-learning/streamlit { }; + + stuntrally = callPackage ../games/stuntrally { + ogre = ogre1_9; + mygui = mygui.override { + withOgre = true; + }; + }; + + superTux = callPackage ../games/supertux { }; + + superTuxKart = callPackage ../games/super-tux-kart { }; + + synthv1 = libsForQt5.callPackage ../applications/audio/synthv1 { }; + + system-syzygy = callPackage ../games/system-syzygy { }; + + t4kcommon = callPackage ../games/t4kcommon { }; + + taisei = callPackage ../games/taisei { }; + + tcl2048 = callPackage ../games/tcl2048 { }; + + the-powder-toy = callPackage ../games/the-powder-toy { + lua = lua5_1; + }; + + tbe = libsForQt5.callPackage ../games/the-butterfly-effect { }; + + 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 { }; + + tockloader = callPackage ../development/tools/misc/tockloader { }; + + tome2 = callPackage ../games/tome2 { }; + + tome4 = callPackage ../games/tome4 { }; + + toppler = callPackage ../games/toppler { }; + + trackballs = callPackage ../games/trackballs { }; + + tremulous = callPackage ../games/tremulous { }; + + tuxpaint = callPackage ../games/tuxpaint { }; + + tuxtype = callPackage ../games/tuxtype { }; + + 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 { }; + + ufoai = callPackage ../games/ufoai { }; + + ultimatestunts = callPackage ../games/ultimatestunts { }; + + ultrastar-creator = libsForQt5.callPackage ../tools/misc/ultrastar-creator { }; + + ultrastar-manager = libsForQt5.callPackage ../tools/misc/ultrastar-manager { }; + + ultrastardx = callPackage ../games/ultrastardx { + ffmpeg = ffmpeg_2; + }; + + 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 ]; + + vapor = callPackage ../games/vapor { love = love_0_8; }; + + 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 { }; + + 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; + }; + + warmux = callPackage ../games/warmux { }; + + warsow-engine = callPackage ../games/warsow/engine.nix { }; + + warsow = callPackage ../games/warsow { }; + + warzone2100 = libsForQt5.callPackage ../games/warzone2100 { }; + + wesnoth = callPackage ../games/wesnoth { + inherit (darwin.apple_sdk.frameworks) Cocoa Foundation; + }; + + wesnoth-dev = wesnoth; + + widelands = callPackage ../games/widelands { + lua = lua5_2; + }; + + 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 = dontRecurseIntoAttrs (callPackage ../games/0ad { + wxGTK = wxGTK30; + }); + + zeroad = zeroadPackages.zeroad; + + ### 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 pkgs.enlightenment; + }); + + gnome2 = recurseIntoAttrs (callPackage ../desktops/gnome-2 { }); + + gnome3 = recurseIntoAttrs (callPackage ../desktops/gnome-3 { }); + + gnomeExtensions = recurseIntoAttrs { + appindicator = callPackage ../desktops/gnome-3/extensions/appindicator { }; + arc-menu = callPackage ../desktops/gnome-3/extensions/arc-menu { }; + battery-status = callPackage ../desktops/gnome-3/extensions/battery-status { }; + caffeine = callPackage ../desktops/gnome-3/extensions/caffeine { }; + clipboard-indicator = callPackage ../desktops/gnome-3/extensions/clipboard-indicator { }; + dash-to-dock = callPackage ../desktops/gnome-3/extensions/dash-to-dock { }; + dash-to-panel = callPackage ../desktops/gnome-3/extensions/dash-to-panel { }; + draw-on-your-screen = callPackage ../desktops/gnome-3/extensions/draw-on-your-screen { }; + drop-down-terminal = callPackage ../desktops/gnome-3/extensions/drop-down-terminal { }; + emoji-selector = callPackage ../desktops/gnome-3/extensions/emoji-selector { }; + freon = callPackage ../desktops/gnome-3/extensions/freon { }; + gsconnect = callPackage ../desktops/gnome-3/extensions/gsconnect { }; + icon-hider = callPackage ../desktops/gnome-3/extensions/icon-hider { }; + impatience = callPackage ../desktops/gnome-3/extensions/impatience { }; + material-shell = callPackage ../desktops/gnome-3/extensions/material-shell { }; + mpris-indicator-button = callPackage ../desktops/gnome-3/extensions/mpris-indicator-button { }; + night-theme-switcher = callPackage ../desktops/gnome-3/extensions/night-theme-switcher { }; + no-title-bar = callPackage ../desktops/gnome-3/extensions/no-title-bar { }; + paperwm = callPackage ../desktops/gnome-3/extensions/paperwm { }; + pidgin-im-integration = callPackage ../desktops/gnome-3/extensions/pidgin-im-integration { }; + remove-dropdown-arrows = callPackage ../desktops/gnome-3/extensions/remove-dropdown-arrows { }; + sound-output-device-chooser = callPackage ../desktops/gnome-3/extensions/sound-output-device-chooser { }; + system-monitor = callPackage ../desktops/gnome-3/extensions/system-monitor { }; + taskwhisperer = callPackage ../desktops/gnome-3/extensions/taskwhisperer { }; + tilingnome = callPackage ../desktops/gnome-3/extensions/tilingnome { }; + timepp = callPackage ../desktops/gnome-3/extensions/timepp { }; + topicons-plus = callPackage ../desktops/gnome-3/extensions/topicons-plus { }; + window-corner-preview = callPackage ../desktops/gnome-3/extensions/window-corner-preview { }; + window-is-ready-remover = callPackage ../desktops/gnome-3/extensions/window-is-ready-remover { }; + workspace-matrix = callPackage ../desktops/gnome-3/extensions/workspace-matrix { }; + + nohotcorner = throw "gnomeExtensions.nohotcorner removed since 2019-10-09: Since 3.34, it is a part of GNOME Shell configurable through GNOME Tweaks."; + mediaplayer = throw "gnomeExtensions.mediaplayer deprecated since 2019-09-23: retired upstream https://github.com/JasonLG1979/gnome-shell-extensions-mediaplayer/blob/master/README.md"; + }; + + gnome-tour = callPackage ../desktops/gnome-3/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 { + qt5 = qt514; + libsForQt5 = libsForQt514; + inherit pkgs; + inherit (lib) makeScope; + }); + + mate = recurseIntoAttrs (callPackage ../desktops/mate { }); + + pantheon = recurseIntoAttrs (callPackage ../desktops/pantheon { }); + + plasma-applet-volumewin7mixer = libsForQt5.callPackage ../applications/misc/plasma-applet-volumewin7mixer { }; + + inherit (callPackages ../applications/misc/redshift { + inherit (python3Packages) python pygobject3 pyxdg wrapPython; + inherit (darwin.apple_sdk.frameworks) CoreLocation ApplicationServices Foundation Cocoa; + geoclue = geoclue2; + }) redshift redshift-wlr gammastep; + + redshift-plasma-applet = libsForQt5.callPackage ../applications/misc/redshift-plasma-applet { }; + + latte-dock = libsForQt5.callPackage ../applications/misc/latte-dock { }; + + gnome-themes-extra = gnome3.gnome-themes-extra; + + rox-filer = callPackage ../desktops/rox/rox-filer { + gtk = gtk2; + }; + + xfce = recurseIntoAttrs (callPackage ../desktops/xfce { }); + + xrandr-invert-colors = callPackage ../applications/misc/xrandr-invert-colors { }; + + ### DESKTOP ENVIRONMENTS / PLASMA 5 + + plasma5 = + let + mkPlasma5 = import ../desktops/plasma-5; + attrs = { + libsForQt5 = libsForQt514; + inherit lib fetchurl; + gconf = gnome2.GConf; + inherit gsettings-desktop-schemas; + }; + in + recurseIntoAttrs (makeOverridable mkPlasma5 attrs); + + inherit (kdeFrameworks) kded kinit frameworkintegration; + + inherit (plasma5) + bluedevil breeze-gtk breeze-qt5 breeze-grub breeze-plymouth discover + kactivitymanagerd kde-cli-tools kde-gtk-config kdeplasma-addons kgamma5 + kinfocenter kmenuedit kscreen kscreenlocker ksshaskpass ksysguard + kwallet-pam kwayland-integration kwin kwrited milou oxygen plasma-browser-integration + plasma-desktop plasma-integration plasma-nm plasma-pa plasma-vault plasma-workspace + plasma-workspace-wallpapers polkit-kde-agent powerdevil sddm-kcm + systemsettings user-manager xdg-desktop-portal-kde; + + inherit (plasma5.thirdParty) + plasma-applet-caffeine-plus + kwin-dynamic-workspaces + kwin-tiling + krohnkite; + + ### SCIENCE + + ### SCIENCE/CHEMISTY + + avogadro = callPackage ../applications/science/chemistry/avogadro { + eigen = eigen2; + }; + + d-seams = callPackage ../applications/science/chemistry/d-seams {}; + + 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 { }; + + 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 { + mpi = openmpi; + }; + + siesta = callPackage ../applications/science/chemistry/siesta { }; + + siesta-mpi = callPackage ../applications/science/chemistry/siesta { + mpi = openmpi; + }; + + ### SCIENCE/GEOMETRY + + 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 { }; + + ants = callPackage ../applications/science/biology/ants { }; + + aragorn = callPackage ../applications/science/biology/aragorn { }; + + archimedes = callPackage ../applications/science/electronics/archimedes { + stdenv = gcc6Stdenv; + }; + + bayescan = callPackage ../applications/science/biology/bayescan { }; + + 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 { }; + + cmtk = callPackage ../applications/science/biology/cmtk { }; + + clustal-omega = callPackage ../applications/science/biology/clustal-omega { }; + + conglomerate = callPackage ../applications/science/biology/conglomerate { }; + + dcm2niix = callPackage ../applications/science/biology/dcm2niix { }; + + deeptools = callPackage ../applications/science/biology/deeptools { python = python3; }; + + 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 { }; + + 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 { }; + + kssd = callPackage ../applications/science/biology/kssd { }; + + last = callPackage ../applications/science/biology/last { }; + + lumpy = callPackage ../applications/science/biology/lumpy { }; + + macse = callPackage ../applications/science/biology/macse { }; + + migrate = callPackage ../applications/science/biology/migrate { }; + + minia = callPackage ../applications/science/biology/minia { + boost = boost159; + }; + + mirtk = callPackage ../development/libraries/science/biology/mirtk { }; + + muscle = callPackage ../applications/science/biology/muscle { }; + + n3 = callPackage ../applications/science/biology/N3 { }; + + neuron = callPackage ../applications/science/biology/neuron { + python = null; + }; + + neuron-mpi = appendToName "mpi" (neuron.override { + mpi = pkgs.openmpi; + }); + + neuron-full = neuron-mpi.override { inherit python; }; + + 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 = callPackage ../applications/science/biology/plink { }; + + 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 = appendToName "mpi" (raxml.override { + mpi = 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/default.nix { }; + + 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 { }; + + hmmer = callPackage ../applications/science/biology/hmmer { }; + + bwa = callPackage ../applications/science/biology/bwa { }; + + ### SCIENCE/MACHINE LEARNING + + sc2-headless = callPackage ../applications/science/machine-learning/sc2-headless { }; + + ### SCIENCE/MATH + + 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 { }; + + 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; + + 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 { }; + + 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 { + mpi = openmpi; + }; + + 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 { }; + + rubiks = callPackage ../development/libraries/science/math/rubiks { }; + + petsc = callPackage ../development/libraries/science/math/petsc { }; + + parmetis = callPackage ../development/libraries/science/math/parmetis { + mpi = openmpi; + }; + + 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; }; + + 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 { }; + + 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 { + mpi = openmpi; + }; + + lammps = callPackage ../applications/science/molecular-dynamics/lammps { + fftw = fftw; + }; + + lammps-mpi = lowPrio (lammps.override { + mpi = openmpi; + }); + + gromacs = callPackage ../applications/science/molecular-dynamics/gromacs { + singlePrec = true; + mpiEnabled = false; + fftw = fftwSinglePrec; + cmake = cmakeCurses; + }; + + gromacsMpi = lowPrio (gromacs.override { + singlePrec = true; + mpiEnabled = true; + fftw = fftwSinglePrec; + cmake = cmakeCurses; + }); + + gromacsDouble = lowPrio (gromacs.override { + singlePrec = false; + mpiEnabled = false; + fftw = fftw; + cmake = cmakeCurses; + }); + + gromacsDoubleMpi = lowPrio (gromacs.override { + singlePrec = false; + mpiEnabled = true; + fftw = fftw; + cmake = cmakeCurses; + }); + + zegrapher = libsForQt5.callPackage ../applications/science/math/zegrapher { }; + + ### SCIENCE/MEDICINE + + aliza = callPackage ../applications/science/medicine/aliza { }; + + dcmtk = callPackage ../applications/science/medicine/dcmtk { }; + + ### SCIENCE/PHYSICS + + elmerfem = callPackage ../applications/science/physics/elmerfem {}; + + sacrifice = callPackage ../applications/science/physics/sacrifice {}; + + sherpa = callPackage ../applications/science/physics/sherpa {}; + + xfitter = callPackage ../applications/science/physics/xfitter {}; + + xflr5 = libsForQt514.callPackage ../applications/science/physics/xflr5 { }; + + ### SCIENCE/PROGRAMMING + + dafny = dotnetPackages.Dafny; + + groove = callPackage ../applications/science/programming/groove { }; + + plm = callPackage ../applications/science/programming/plm { }; + + scyther = callPackage ../applications/science/programming/scyther { }; + + ### SCIENCE/LOGIC + + abc-verifier = callPackage ../applications/science/logic/abc {}; + + abella = callPackage ../applications/science/logic/abella { + ocamlPackages = ocaml-ng.ocamlPackages_4_07; + }; + + 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 { + ocamlPackages = ocaml-ng.ocamlPackages_4_07; + }; + + boogie = dotnetPackages.Boogie; + + cadical = callPackage ../applications/science/logic/cadical {}; + + inherit (callPackage ./coq-packages.nix { + inherit (ocaml-ng) ocamlPackages_4_05 ocamlPackages_4_09; + }) 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 coq + ; + + coq2html = callPackage ../applications/science/logic/coq2html { }; + + cryptoverif = callPackage ../applications/science/logic/cryptoverif { }; + + caprice32 = callPackage ../misc/emulators/caprice32 { }; + + cubicle = callPackage ../applications/science/logic/cubicle { + ocamlPackages = ocaml-ng.ocamlPackages_4_05; + }; + + cvc3 = callPackage ../applications/science/logic/cvc3 { + gmp = lib.overrideDerivation gmp (a: { 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 { }; + + 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 (ocamlPackages) hol_light; + + hologram = callPackage ../tools/security/hologram { }; + + tini = callPackage ../applications/virtualization/tini {}; + + ifstat-legacy = callPackage ../tools/networking/ifstat-legacy { }; + + isabelle = callPackage ../applications/science/logic/isabelle { + polyml = stdenv.lib.overrideDerivation polyml (attrs: { + configureFlags = [ "--enable-intinf-as-int" "--with-gmp" "--disable-shared" ]; + }); + + java = openjdk11; + z3 = z3_4_4_0; + }; + + iprover = callPackage ../applications/science/logic/iprover { }; + + jonprl = callPackage ../applications/science/logic/jonprl { + smlnj = if stdenv.isDarwin + then smlnjBootstrap + else smlnj; + }; + + 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 { + ocaml = ocaml-ng.ocamlPackages_4_01_0.ocaml;}; + + leo3-bin = callPackage ../applications/science/logic/leo3/binary.nix {}; + + logisim = callPackage ../applications/science/logic/logisim {}; + + 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 {}; + + 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 { + smlnj = if stdenv.isDarwin + then smlnjBootstrap + else smlnj; + }; + + fast-downward = callPackage ../applications/science/logic/fast-downward { }; + + twelf = callPackage ../applications/science/logic/twelf { + smlnj = if stdenv.isDarwin + then smlnjBootstrap + else smlnj; + }; + + 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 {gtk = gtk2;}; + + aiger = callPackage ../applications/science/logic/aiger {}; + + avy = callPackage ../applications/science/logic/avy {}; + + btor2tools = callPackage ../applications/science/logic/btor2tools {}; + + boolector = callPackage ../applications/science/logic/boolector {}; + + 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 = libsForQt514.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 = libsForQt514.callPackage ../applications/science/electronics/eagle/eagle.nix { }; + + caneda = libsForQt5.callPackage ../applications/science/electronics/caneda { }; + + csxcad = callPackage ../applications/science/electronics/csxcad { }; + + 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 { }; + + 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 { }; + + pcb = callPackage ../applications/science/electronics/pcb { }; + + qcsxcad = libsForQt514.callPackage ../applications/science/electronics/qcsxcad { }; + + qucs = callPackage ../applications/science/electronics/qucs { }; + + xcircuit = callPackage ../applications/science/electronics/xcircuit { }; + + xoscope = callPackage ../applications/science/electronics/xoscope { }; + + + ### 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 (python36Packages) python future six numpy pydot; + protobuf = protobuf3_1; + python-protobuf = python36Packages.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 = pkgs.config.cudaSupport or false; + }; + + ecm = callPackage ../applications/science/math/ecm { }; + + eukleides = callPackage ../applications/science/math/eukleides { + texLive = texlive.combine { inherit (texlive) scheme-small; }; + texinfo = texinfo4; + }; + + 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 { }; + + maxima = callPackage ../applications/science/math/maxima { + ecl = null; + }; + maxima-ecl = maxima.override { + ecl = ecl_16_1_2; + ecl-fasl = true; + sbcl = null; + }; + + 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 { }; + + 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 {}; + + 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 = callPackage ../applications/science/math/yacas { }; + + speedcrunch = libsForQt5.callPackage ../applications/science/math/speedcrunch { }; + + ### SCIENCE / MISC + + boinc = callPackage ../applications/science/misc/boinc { }; + + celestia = callPackage ../applications/science/astronomy/celestia { + lua = lua5_1; + inherit (pkgs.gnome2) gtkglext; + }; + + 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 = callPackage ../applications/science/misc/gplates { + boost = boost160; + cgal = cgal.override { boost = boost160; }; + }; + + 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 { }; + + 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 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 gcc8Stdenv; + }); + + rink = callPackage ../applications/science/misc/rink { }; + + simgrid = callPackage ../applications/science/misc/simgrid { }; + + spyder = with python3.pkgs; toPythonApplication spyder; + + openspace = callPackage ../applications/science/astronomy/openspace { }; + + stellarium = libsForQt5.callPackage ../applications/science/astronomy/stellarium { }; + + astrolabe-generator = callPackage ../applications/science/astronomy/astrolabe-generator { }; + + tulip = callPackage ../applications/science/misc/tulip { + cmake = cmake_2_8; + }; + + 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 = callPackage ../development/libraries/physics/fastnlo { }; + + 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 { }; + + 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 { }; + + ### MISC + + acpilight = callPackage ../misc/acpilight { }; + + android-file-transfer = libsForQt5.callPackage ../tools/filesystems/android-file-transfer { }; + + antimicroX = libsForQt5.callPackage ../tools/misc/antimicroX { }; + + atari800 = callPackage ../misc/emulators/atari800 { }; + + ataripp = callPackage ../misc/emulators/atari++ { }; + + atlantis = callPackage ../applications/networking/cluster/atlantis { }; + + auctex = callPackage ../tools/typesetting/tex/auctex { }; + + areca = callPackage ../applications/backup/areca { + jdk = jdk8; + jre = jre8; + swt = swt_jdk8; + }; + + attract-mode = callPackage ../misc/emulators/attract-mode { }; + + autotiling = python3Packages.callPackage ../misc/autotiling { }; + + 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 = libsForQt514.callPackage ../misc/calaos/installer {}; + + ccemux = callPackage ../misc/emulators/ccemux { }; + + click = callPackage ../applications/networking/cluster/click { }; + + clinfo = callPackage ../tools/system/clinfo { }; + + 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-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-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 { }; + + cups-bjnp = callPackage ../misc/cups/drivers/cups-bjnp { }; + + 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-googlecloudprint = callPackage ../misc/cups/drivers/googlecloudprint { }; + + # 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 ../misc/emulators/darcnes { }; + + darling-dmg = callPackage ../tools/filesystems/darling-dmg { }; + + desmume = callPackage ../misc/emulators/desmume { inherit (pkgs.gnome2) gtkglext libglade; }; + + dbacl = callPackage ../tools/misc/dbacl { }; + + dblatex = callPackage ../tools/typesetting/tex/dblatex { + enableAllFeatures = false; + }; + + dblatexFull = appendToName "full" (dblatex.override { + enableAllFeatures = true; + }); + + dbus-map = callPackage ../tools/misc/dbus-map { }; + + dell-530cdn = callPackage ../misc/drivers/dell-530cdn {}; + + dosbox = callPackage ../misc/emulators/dosbox { }; + + emu2 = callPackage ../misc/emulators/emu2 { }; + + dpkg = callPackage ../tools/package-management/dpkg { }; + + dumb = callPackage ../misc/dumb { }; + + dump = callPackage ../tools/backup/dump { }; + + ecdsatool = callPackage ../tools/security/ecdsatool { }; + + emulationstation = callPackage ../misc/emulators/emulationstation { }; + + electricsheep = callPackage ../misc/screensavers/electricsheep { }; + + flam3 = callPackage ../tools/graphics/flam3 { }; + + glee = callPackage ../tools/graphics/glee { }; + + fakenes = callPackage ../misc/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 { }; + + fceux = callPackage ../misc/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 {}; + + foo2zjs = callPackage ../misc/drivers/foo2zjs {}; + + foomatic-filters = callPackage ../misc/drivers/foomatic-filters {}; + + fuse-emulator = callPackage ../misc/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 ../misc/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; + }; + + gobuster = callPackage ../tools/security/gobuster { }; + + guetzli = callPackage ../applications/graphics/guetzli { }; + + gummi = callPackage ../applications/misc/gummi { }; + + gxemul = callPackage ../misc/emulators/gxemul { }; + + hatari = callPackage ../misc/emulators/hatari { }; + + helm = callPackage ../applications/audio/helm { }; + + helmfile = callPackage ../applications/networking/cluster/helmfile { }; + + helmsman = callPackage ../applications/networking/cluster/helmsman { }; + + velero = callPackage ../applications/networking/cluster/velero { }; + + hplip = callPackage ../misc/drivers/hplip { }; + + hplipWithPlugin = hplip.override { withPlugin = true; }; + + hplip_3_16_11 = callPackage ../misc/drivers/hplip/3.16.11.nix { }; + + hplipWithPlugin_3_16_11 = hplip_3_16_11.override { withPlugin = true; }; + + hplip_3_18_5 = callPackage ../misc/drivers/hplip/3.18.5.nix { }; + + hplipWithPlugin_3_18_5 = hplip_3_18_5.override { withPlugin = true; }; + + hyperfine = callPackage ../tools/misc/hyperfine { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + websocat = callPackage ../tools/misc/websocat { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + vector = callPackage ../tools/misc/vector { + inherit (darwin.apple_sdk.frameworks) Security CoreServices; + }; + + epkowa = callPackage ../misc/drivers/epkowa { }; + + utsushi = callPackage ../misc/drivers/utsushi { }; + + idsk = callPackage ../tools/filesystems/idsk { }; + + 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; }; + + # 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"; }; + jack2Full = jack2; # TODO: move to aliases.nix + + keynav = callPackage ../tools/X11/keynav { }; + + 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_16 + kops_1_17 + kops_1_18 + ; + kops = kops_1_18; + + lguf-brightness = callPackage ../misc/lguf-brightness { }; + + lilypond = callPackage ../misc/lilypond { guile = guile_1_8; }; + + lilypond-unstable = callPackage ../misc/lilypond/unstable.nix { }; + + lilypond-with-fonts = callPackage ../misc/lilypond/with-fonts.nix { }; + + openlilylib-fonts = callPackage ../misc/lilypond/fonts.nix { }; + + loop = callPackage ../tools/misc/loop { }; + + mailcore2 = callPackage ../development/libraries/mailcore2 { + icu = icu58; + }; + + mamba = callPackage ../applications/audio/mamba { }; + + mame = libsForQt514.callPackage ../misc/emulators/mame { + inherit (darwin.apple_sdk.frameworks) CoreAudioKit ForceFeedback; + }; + + martyr = callPackage ../development/libraries/martyr { }; + + 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 ../misc/emulators/mupen64plus { }; + + muse = libsForQt5.callPackage ../applications/audio/muse { }; + + musly = callPackage ../applications/audio/musly { }; + + mynewt-newt = callPackage ../tools/package-management/mynewt-newt { }; + + inherit (callPackage ../tools/package-management/nix { + storeDir = config.nix.storeDir or "/nix/store"; + stateDir = config.nix.stateDir or "/nix/var"; + boehmgc = boehmgc.override { enableLargeConfig = true; }; + }) + nix + nixStable + nixUnstable + nixFlakes; + + nixops = callPackage ../tools/package-management/nixops { }; + + nixops_1_6_1 = callPackage ../tools/package-management/nixops/nixops-v1_6_1.nix {}; + + nixopsUnstable = lowPrio (callPackage ../tools/package-management/nixops/unstable.nix { }); + + 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 (pkgs.path + "/nixos/lib/eval-config.nix") { + inherit (pkgs.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; + + + /* + * 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 (pkgs.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 pkgs.lib.isFunction loadedTest + then callPackage loadedTest {} + else loadedTest; + in + nixosTesting.makeTest calledTest; + + nixosOptionsDoc = attrs: + (import ../../nixos/lib/make-options-doc/default.nix) + ({ inherit pkgs lib; } // attrs); + + nixui = callPackage ../tools/package-management/nixui { node_webkit = nwjs_0_12; }; + + nixdoc = callPackage ../tools/nix/nixdoc {}; + + nix-doc = callPackage ../tools/package-management/nix-doc { }; + + nix-bundle = callPackage ../tools/package-management/nix-bundle { }; + + nix-delegate = haskell.lib.justStaticExecutables haskellPackages.nix-delegate; + nix-deploy = haskell.lib.justStaticExecutables haskellPackages.nix-deploy; + nix-diff = haskell.lib.justStaticExecutables haskellPackages.nix-diff; + + nix-du = callPackage ../tools/package-management/nix-du { }; + + nix-info = callPackage ../tools/nix/info { }; + nix-info-tested = nix-info.override { doCheck = true; }; + + nix-index = callPackage ../tools/package-management/nix-index { + inherit (darwin.apple_sdk.frameworks) Security; + }; + + nix-linter = haskell.lib.justStaticExecutables (haskellPackages.callPackage ../development/tools/analysis/nix-linter { }); + + 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 (pythonPackages) python toposort; }; + + nix-top = callPackage ../tools/package-management/nix-top { }; + + nix-tree = haskell.lib.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 { }; + + nixfmt = haskell.lib.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 { }; + + norwester-font = callPackage ../data/fonts/norwester {}; + + nut = callPackage ../applications/misc/nut { }; + + solfege = python3Packages.callPackage ../misc/solfege { }; + + disnix = callPackage ../tools/package-management/disnix { }; + + dysnomia = callPackage ../tools/package-management/disnix/dysnomia (config.disnix or {}); + + disnixos = callPackage ../tools/package-management/disnix/disnixos { }; + + DisnixWebService = callPackage ../tools/package-management/disnix/DisnixWebService { }; + + lkproof = callPackage ../tools/typesetting/tex/lkproof { }; + + lice = 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 { }; + + oclgrind = callPackage ../development/tools/analysis/oclgrind { }; + + opkg = callPackage ../tools/package-management/opkg { }; + + opkg-utils = callPackage ../tools/package-management/opkg-utils { }; + + pgmanage = callPackage ../applications/misc/pgmanage { }; + + pgadmin = callPackage ../applications/misc/pgadmin { + 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 ../misc/emulators/ppsspp { }; + + pt = callPackage ../applications/misc/pt { }; + + protocol = python3Packages.callPackage ../applications/networking/protocol { }; + + pykms = callPackage ../tools/networking/pykms { }; + + pyload = callPackage ../applications/networking/pyload {}; + + pwntools = with python3Packages; toPythonApplication pwntools; + + uae = callPackage ../misc/emulators/uae { }; + + fsuae = callPackage ../misc/emulators/fs-uae { }; + + putty = callPackage ../applications/networking/remote/putty { + gtk2 = gtk2-x11; + }; + + qMasterPassword = libsForQt5.callPackage ../applications/misc/qMasterPassword { }; + + py-wmi-client = callPackage ../tools/networking/py-wmi-client { }; + + rargs = callPackage ../tools/misc/rargs { }; + + redprl = callPackage ../applications/science/logic/redprl { }; + + renderizer = pkgs.callPackage ../development/tools/renderizer {}; + + retroarchBare = callPackage ../misc/emulators/retroarch { + inherit (darwin) libobjc; + inherit (darwin.apple_sdk.frameworks) AppKit Foundation; + }; + + retroarch = wrapRetroArch { retroarch = retroarchBare; }; + + libretro = recurseIntoAttrs (callPackage ../misc/emulators/retroarch/cores.nix { + retroarch = retroarchBare; + }); + + retrofe = callPackage ../misc/emulators/retrofe { }; + + rfc-bibtex = python3Packages.callPackage ../development/python-modules/rfc-bibtex { }; + + pick-colour-picker = python3Packages.callPackage ../applications/graphics/pick-colour-picker { + inherit (pkgs) glib gtk3 gobject-introspection wrapGAppsHook; + }; + + rpl = callPackage ../tools/text/rpl { + pythonPackages = python3Packages; + }; + + ricty = callPackage ../data/fonts/ricty { }; + + rmount = callPackage ../tools/filesystems/rmount {}; + + romdirfs = callPackage ../tools/filesystems/romdirfs {}; + + rss-glx = callPackage ../misc/screensavers/rss-glx { }; + + run-scaled = callPackage ../tools/X11/run-scaled { }; + + 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 { }; + + 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/default.nix { }).driver; + mfcl3770cdwcupswrapper = (callPackage ../misc/cups/drivers/brother/mfcl3770cdw/default.nix { }).cupswrapper; + + mfcl8690cdwcupswrapper = callPackage ../misc/cups/drivers/mfcl8690cdwcupswrapper { }; + mfcl8690cdwlpr = callPackage ../misc/cups/drivers/mfcl8690cdwlpr { }; + + samsung-unified-linux-driver_1_00_36 = callPackage ../misc/cups/drivers/samsung/1.00.36/default.nix { }; + 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-backends-git = callPackage ../applications/graphics/sane/backends/git.nix (config.sane or {}); + + brlaser = callPackage ../misc/cups/drivers/brlaser { }; + + fxlinuxprint = callPackage ../misc/cups/drivers/fxlinuxprint { }; + + brscan4 = callPackage ../applications/graphics/sane/backends/brscan4 { }; + + 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 = pythonPackages.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-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; + + soundOfSorting = callPackage ../misc/sound-of-sorting { }; + + sourceAndTags = callPackage ../misc/source-and-tags { + hasktags = haskellPackages.hasktags; + }; + + 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 { }; + + 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 { }; + + tellico = libsForQt514.callPackage ../applications/misc/tellico { }; + + termpdfpy = python3Packages.callPackage ../applications/misc/termpdf.py {}; + + inherit (callPackage ../applications/networking/cluster/terraform { }) + terraform_0_11 + terraform_0_11-full + terraform_0_12 + terraform_0_13 + terraform_plugins_test + ; + + terraform = terraform_0_12; + # deprecated + terraform-full = terraform.full; + + terraform-providers = recurseIntoAttrs ( + callPackage ../applications/networking/cluster/terraform-providers {} + ); + + 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 {}; + + 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; }; + + vnote = libsForQt514.callPackage ../applications/office/vnote { }; + + ssh-audit = callPackage ../tools/security/ssh-audit { }; + + thermald = callPackage ../tools/system/thermald { }; + + throttled = callPackage ../tools/system/throttled { }; + + thinkfan = callPackage ../tools/system/thinkfan { }; + + 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 { }; + + utf8cpp = callPackage ../development/libraries/utf8cpp { }; + + utf8proc = callPackage ../development/libraries/utf8proc { }; + + unicode-paracode = callPackage ../tools/misc/unicode { }; + + unixcw = callPackage ../applications/radio/unixcw { }; + + vault = callPackage ../tools/security/vault { }; + + vault-bin = callPackage ../tools/security/vault/vault-bin.nix { }; + + vaultenv = haskellPackages.vaultenv; + + vazir-fonts = callPackage ../data/fonts/vazir-fonts { }; + + vbam = callPackage ../misc/emulators/vbam { }; + + vice = callPackage ../misc/emulators/vice { + giflib = giflib_4_1; + }; + + viewnior = callPackage ../applications/graphics/viewnior { }; + + vimUtils = callPackage ../misc/vim-plugins/vim-utils.nix { }; + + vimPlugins = recurseIntoAttrs (callPackage ../misc/vim-plugins { + llvmPackages = llvmPackages_6; + }); + + vimb-unwrapped = callPackage ../applications/networking/browsers/vimb { }; + vimb = wrapFirefox vimb-unwrapped { }; + + vips = callPackage ../tools/graphics/vips { + inherit (darwin.apple_sdk.frameworks) ApplicationServices; + }; + 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; + }; + + vttest = callPackage ../tools/misc/vttest { }; + + wacomtablet = libsForQt514.callPackage ../tools/misc/wacomtablet { }; + + wasmer = callPackage ../development/interpreters/wasmer { }; + + wasm-pack = callPackage ../development/tools/wasm-pack { + # Wasm-pack depends on a version of rust-openssl which is incompatible with + # LibreSSL 3.1, so we explicitly opt for the older version. + libressl = libressl_3_0; + inherit (darwin.apple_sdk.frameworks) Security; + }; + + 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 { }; + + wikicurses = callPackage ../applications/misc/wikicurses { + pythonPackages = python3Packages; + }; + + winePackagesFor = wineBuild: lib.makeExtensible (self: with self; { + callPackage = newScope self; + + inherit wineBuild; + + inherit (callPackage ./wine-packages.nix {}) + minimal base full stable unstable staging fonts; + }); + + winePackages = recurseIntoAttrs (winePackagesFor (config.wine.build or "wine32")); + wineWowPackages = recurseIntoAttrs (winePackagesFor "wineWow"); + + wine = winePackages.full; + + wine-staging = lowPrio (winePackages.full.override { + wineRelease = "staging"; + }); + + winetricks = callPackage ../misc/emulators/wine/winetricks.nix { + inherit (gnome3) 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 { }; + + wraith = callPackage ../applications/networking/irc/wraith { + openssl = openssl_1_0_2; + }; + + wxmupen64plus = callPackage ../misc/emulators/wxmupen64plus { }; + + wxsqlite3 = callPackage ../development/libraries/wxsqlite3 { + wxGTK = wxGTK30; + }; + + wxsqliteplus = callPackage ../development/libraries/wxsqliteplus { + wxGTK = wxGTK30; + }; + + wyvern = callPackage ../games/wyvern { }; + + x11idle = callPackage ../tools/misc/x11idle {}; + + x11docker = callPackage ../applications/virtualization/x11docker { }; + + x2x = callPackage ../tools/X11/x2x { }; + + xboxdrv = callPackage ../misc/drivers/xboxdrv { }; + + 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 { }; + + 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 { + inherit (darwin.apple_sdk.frameworks) + Carbon Cocoa ScriptingBridge; + }; + + yabause = libsForQt5.callPackage ../misc/emulators/yabause { + freeglut = null; + openal = null; + }; + + yacreader = libsForQt5.callPackage ../applications/graphics/yacreader { }; + + yadm = callPackage ../applications/version-management/yadm { }; + + yamdi = callPackage ../tools/video/yamdi { }; + + yandex-disk = callPackage ../tools/filesystems/yandex-disk { }; + + yara = callPackage ../tools/security/yara { }; + + yaxg = callPackage ../tools/graphics/yaxg {}; + + 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 ../misc/emulators/zsnes { }; + + xcpc = callPackage ../misc/emulators/xcpc { }; + + zxcvbn-c = callPackage ../development/libraries/zxcvbn-c { }; + + snes9x-gtk = callPackage ../misc/emulators/snes9x-gtk { }; + + openmsx = callPackage ../misc/emulators/openmsx { + python = python3; + }; + + higan = callPackage ../misc/emulators/higan { + inherit (gnome2) gtksourceview; + inherit (darwin.apple_sdk.frameworks) Carbon Cocoa OpenGL OpenAL; + }; + + 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 { }; + dart_old = dart.override { version = "1.24.3"; }; + dart_stable = dart.override { version = "2.7.2"; }; + dart_dev = dart.override { version = "2.9.0-4.0.dev"; }; + + httrack = callPackage ../tools/backup/httrack { }; + + httraqt = libsForQt5.callPackage ../tools/backup/httrack/qt.nix { }; + + mg = callPackage ../applications/editors/mg { }; + + mpvc = callPackage ../applications/misc/mpvc { }; + + aucdtect = callPackage ../tools/audio/aucdtect { }; + + togglesg-download = callPackage ../tools/misc/togglesg-download { }; + + discord = import ../applications/networking/instant-messengers/discord { + branch = "stable"; + inherit pkgs; + }; + + discord-ptb = import ../applications/networking/instant-messengers/discord { + branch = "ptb"; + inherit pkgs; + }; + + discord-canary = import ../applications/networking/instant-messengers/discord { + branch = "canary"; + inherit pkgs; + }; + + golden-cheetah = libsForQt512.callPackage ../applications/misc/golden-cheetah {}; + + linkchecker = callPackage ../tools/networking/linkchecker { }; + + tomb = callPackage ../os-specific/linux/tomb {}; + + tomboy = callPackage ../applications/misc/tomboy { }; + + imatix_gsl = callPackage ../development/tools/imatix_gsl {}; + + iterm2 = callPackage ../applications/misc/iterm2 {}; + + sccache = callPackage ../development/tools/misc/sccache { }; + + sequeler = callPackage ../applications/misc/sequeler { }; + + sequelpro = callPackage ../applications/misc/sequelpro {}; + + snowsql = callPackage ../applications/misc/snowsql {}; + + 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 { }; + + 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 (callPackages ../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-3/extensions/chrome-gnome-shell {}; + + chrome-token-signing = libsForQt5.callPackage ../tools/security/chrome-token-signing {}; + + NSPlist = callPackage ../development/libraries/NSPlist {}; + + PlistCpp = callPackage ../development/libraries/PlistCpp {}; + + 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 {}; + + xtermcontrol = callPackage ../applications/misc/xtermcontrol {}; + + openfst = callPackage ../development/libraries/openfst {}; + + opengrm-ngram = callPackage ../development/libraries/opengrm-ngram {}; + + phonetisaurus = callPackage ../development/libraries/phonetisaurus {}; + + duti = callPackage ../os-specific/darwin/duti {}; + + dnstracer = callPackage ../tools/networking/dnstracer { + inherit (darwin) libresolv; + }; + + 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 { }; + + 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 ./unix-tools.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; + + netbsd = callPackages ../os-specific/bsd/netbsd {}; + netbsdCross = callPackages ../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 = python27; + }; + + tsung = callPackage ../applications/networking/tsung {}; + + bcompare = libsForQt5.callPackage ../applications/version-management/bcompare {}; + + pentablet-driver = libsForQt5.callPackage ../misc/drivers/pentablet-driver { }; + + qmk_firmware = callPackage ../development/misc/qmk_firmware { + avrgcc = pkgsCross.avr.buildPackages.gcc; + avrbinutils = pkgsCross.avr.buildPackages.binutils; + gcc-arm-embedded = pkgsCross.arm-embedded.buildPackages.gcc; + gcc-armhf-embedded = pkgsCross.armhf-embedded.buildPackages.gcc; + }; + + tdm = callPackage ../games/tdm { }; + + newlib = callPackage ../development/misc/newlib { }; + newlibCross = callPackage ../development/misc/newlib { + stdenv = crossLibcStdenv; + }; + + omnisharp-roslyn = callPackage ../development/tools/omnisharp-roslyn { }; + + wasmtime = callPackage ../development/interpreters/wasmtime {}; + + wfuzz = with python3Packages; toPythonApplication wfuzz; + + bemenu = callPackage ../applications/misc/bemenu { }; + + 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 { }; + + runwayml = callPackage ../applications/graphics/runwayml {}; + + uhubctl = callPackage ../tools/misc/uhubctl {}; + + kodelife = callPackage ../applications/graphics/kodelife {}; + + _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 {}; + + 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 {}; + + 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 {}; + + 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 {}; + + jitsi-meet-electron = callPackage ../applications/networking/instant-messengers/jitsi-meet-electron { }; + + zenstates = callPackage ../os-specific/linux/zenstates {}; + + vpsfree-client = callPackage ../tools/virtualization/vpsfree-client {}; + + gpio-utils = callPackage ../os-specific/linux/kernel/gpio-utils.nix { }; + + navidrome = callPackage ../servers/misc/navidrome {}; + + zettlr = callPackage ../applications/misc/zettlr { }; + + unifi-poller = callPackage ../servers/monitoring/unifi-poller {}; + + fac-build = callPackage ../development/tools/build-managers/fac {}; + + bottom = callPackage ../tools/system/bottom {}; + + cagebreak = callPackage ../applications/window-managers/cagebreak/default.nix {}; + + psftools = callPackage ../os-specific/linux/psftools {}; +} diff --git a/infra/libkookie/nixpkgs/pkgs/top-level/beam-packages.nix b/infra/libkookie/nixpkgs/pkgs/top-level/beam-packages.nix new file mode 100644 index 000000000000..139749e7d39b --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/top-level/beam-packages.nix @@ -0,0 +1,121 @@ +{ callPackage, wxGTK30, openssl_1_0_2 }: + +rec { + lib = callPackage ../development/beam-modules/lib.nix {}; + + # Each + interpreters = rec { + + # R22 is the default version. + erlang = erlangR22; # The main switch to change default Erlang version. + erlang_odbc = erlangR22_odbc; + erlang_javac = erlangR22_javac; + erlang_odbc_javac = erlangR22_odbc_javac; + erlang_nox = erlangR22_nox; + + # Standard Erlang versions, using the generic builder. + + # 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; + }; + erlangR23_odbc = erlangR23.override { odbcSupport = true; }; + erlangR23_javac = erlangR23.override { javacSupport = true; }; + erlangR23_odbc_javac = erlangR23.override { + javacSupport = true; odbcSupport = true; + }; + erlangR23_nox = erlangR23.override { wxSupport = false; }; + + # 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; + }; + erlangR22_odbc = erlangR22.override { odbcSupport = true; }; + erlangR22_javac = erlangR22.override { javacSupport = true; }; + erlangR22_odbc_javac = erlangR22.override { + javacSupport = true; odbcSupport = true; + }; + erlangR22_nox = erlangR22.override { wxSupport = false; }; + + # R21 + erlangR21 = lib.callErlang ../development/interpreters/erlang/R21.nix { + wxGTK = wxGTK30; + }; + erlangR21_odbc = erlangR21.override { odbcSupport = true; }; + erlangR21_javac = erlangR21.override { javacSupport = true; }; + erlangR21_odbc_javac = erlangR21.override { + javacSupport = true; odbcSupport = true; + }; + erlangR21_nox = erlangR21.override { wxSupport = false; }; + + # R20 + erlangR20 = lib.callErlang ../development/interpreters/erlang/R20.nix { + wxGTK = wxGTK30; + }; + erlangR20_odbc = erlangR20.override { odbcSupport = true; }; + erlangR20_javac = erlangR20.override { javacSupport = true; }; + erlangR20_odbc_javac = erlangR20.override { + javacSupport = true; odbcSupport = true; + }; + erlangR20_nox = erlangR20.override { wxSupport = false; }; + + # R19 + erlangR19 = lib.callErlang ../development/interpreters/erlang/R19.nix { + wxGTK = wxGTK30; + openssl = openssl_1_0_2; + }; + erlangR19_odbc = erlangR19.override { odbcSupport = true; }; + erlangR19_javac = erlangR19.override { javacSupport = true; }; + erlangR19_odbc_javac = erlangR19.override { + javacSupport = true; odbcSupport = true; + }; + erlangR19_nox = erlangR19.override { wxSupport = false; }; + + # R18 + erlangR18 = lib.callErlang ../development/interpreters/erlang/R18.nix { + wxGTK = wxGTK30; + openssl = openssl_1_0_2; + }; + erlangR18_odbc = erlangR18.override { odbcSupport = true; }; + erlangR18_javac = erlangR18.override { javacSupport = true; }; + erlangR18_odbc_javac = erlangR18.override { + javacSupport = true; odbcSupport = true; + }; + erlangR18_nox = erlangR18.override { wxSupport = false; }; + + # Basho fork, using custom builder. + erlang_basho_R16B02 = lib.callErlang ../development/interpreters/erlang/R16B02-basho.nix { + }; + 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.erlangR22.elixir`. + inherit (packages.erlang) elixir elixir_1_10 elixir_1_9 elixir_1_8 elixir_1_7; + + inherit (packages.erlang) lfe lfe_1_2 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 = packagesWith interpreters.erlang; + + erlangR23 = packagesWith interpreters.erlangR23; + erlangR22 = packagesWith interpreters.erlangR22; + erlangR21 = packagesWith interpreters.erlangR21; + erlangR20 = packagesWith interpreters.erlangR20; + erlangR19 = packagesWith interpreters.erlangR19; + erlangR18 = packagesWith interpreters.erlangR18; + }; +} diff --git a/infra/libkookie/nixpkgs/pkgs/top-level/config.nix b/infra/libkookie/nixpkgs/pkgs/top-level/config.nix new file mode 100644 index 000000000000..7a5b4bdd1798 --- /dev/null +++ b/infra/libkookie/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/infra/libkookie/nixpkgs/pkgs/top-level/coq-packages.nix b/infra/libkookie/nixpkgs/pkgs/top-level/coq-packages.nix new file mode 100644 index 000000000000..fe6cd81f9ea1 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/top-level/coq-packages.nix @@ -0,0 +1,138 @@ +{ lib, callPackage, newScope, recurseIntoAttrs, ocamlPackages_4_05, ocamlPackages_4_09 }: + +let + mkCoqPackages' = self: coq: + let callPackage = self.callPackage; in { + inherit coq; + coqPackages = self; + + contribs = recurseIntoAttrs + (callPackage ../development/coq-modules/contribs {}); + + 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 { }; + Cheerios = callPackage ../development/coq-modules/Cheerios {}; + CoLoR = callPackage ../development/coq-modules/CoLoR {}; + 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 { }; + coqhammer = callPackage ../development/coq-modules/coqhammer {}; + coqprime = callPackage ../development/coq-modules/coqprime {}; + coquelicot = callPackage ../development/coq-modules/coquelicot {}; + corn = callPackage ../development/coq-modules/corn {}; + dpdgraph = callPackage ../development/coq-modules/dpdgraph {}; + equations = callPackage ../development/coq-modules/equations { }; + fiat_HEAD = callPackage ../development/coq-modules/fiat/HEAD.nix {}; + flocq = callPackage ../development/coq-modules/flocq {}; + gappalib = callPackage ../development/coq-modules/gappalib {}; + heq = callPackage ../development/coq-modules/heq {}; + hierarchy-builder = callPackage ../development/coq-modules/hierarchy-builder {}; + HoTT = callPackage ../development/coq-modules/HoTT {}; + interval = callPackage ../development/coq-modules/interval {}; + InfSeqExt = callPackage ../development/coq-modules/InfSeqExt {}; + iris = callPackage ../development/coq-modules/iris {}; + ltac2 = callPackage ../development/coq-modules/ltac2 {}; + math-classes = callPackage ../development/coq-modules/math-classes { }; + inherit (callPackage ../development/coq-modules/mathcomp {}) + mathcomp_ mathcomp-config + mathcomp ssreflect + mathcomp-ssreflect mathcomp-fingroup mathcomp-algebra + mathcomp-solvable mathcomp-field mathcomp-character + ; + inherit (callPackage ../development/coq-modules/mathcomp/extra.nix { }) + mathcomp-extra-override mathcomp-extra-config mathcomp-extra + current-mathcomp-extra mathcomp-extra-fast mathcomp-extra-all + mathcomp-finmap mathcomp-bigenough mathcomp-real-closed + mathcomp-analysis multinomials coqeal + ; + metalib = callPackage ../development/coq-modules/metalib { }; + paco = callPackage ../development/coq-modules/paco {}; + paramcoq = callPackage ../development/coq-modules/paramcoq {}; + QuickChick = callPackage ../development/coq-modules/QuickChick {}; + simple-io = callPackage ../development/coq-modules/simple-io { }; + stdpp = callPackage ../development/coq-modules/stdpp { }; + StructTact = callPackage ../development/coq-modules/StructTact {}; + tlc = callPackage ../development/coq-modules/tlc {}; + Velisarios = callPackage ../development/coq-modules/Velisarios {}; + Verdi = callPackage ../development/coq-modules/Verdi {}; + VST = callPackage ../development/coq-modules/VST {}; + + filterPackages = filterCoqPackages; + }; + + filterCoqPackages = coq: set: + lib.listToAttrs ( + lib.concatMap (name: + let v = set.${name}; in + let p = v.compatibleCoqVersions or (_: true); in + lib.optional (p coq.coq-version) + (lib.nameValuePair name ( + if lib.isAttrs v && v.recurseForDerivations or false + then filterCoqPackages coq v + else v)) + ) (lib.attrNames set) + ); + +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 + if coq.dontFilter or false then self else filterCoqPackages coq self; + + coq_8_5 = callPackage ../applications/science/logic/coq { + ocamlPackages = ocamlPackages_4_05; + version = "8.5pl3"; + }; + coq_8_6 = callPackage ../applications/science/logic/coq { + ocamlPackages = ocamlPackages_4_05; + version = "8.6.1"; + }; + coq_8_7 = callPackage ../applications/science/logic/coq { + ocamlPackages = ocamlPackages_4_09; + version = "8.7.2"; + }; + coq_8_8 = callPackage ../applications/science/logic/coq { + ocamlPackages = ocamlPackages_4_09; + version = "8.8.2"; + }; + coq_8_9 = callPackage ../applications/science/logic/coq { + ocamlPackages = ocamlPackages_4_09; + version = "8.9.1"; + }; + coq_8_10 = callPackage ../applications/science/logic/coq { + ocamlPackages = ocamlPackages_4_09; + version = "8.10.2"; + }; + coq_8_11 = callPackage ../applications/science/logic/coq { + version = "8.11.2"; + }; + coq_8_12 = callPackage ../applications/science/logic/coq { + version = "8.12.0"; + }; + + 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 = recurseIntoAttrs (lib.mapDerivationAttrset lib.dontDistribute + coqPackages_8_11 + ); + coq = coqPackages.coq; + +} diff --git a/infra/libkookie/nixpkgs/pkgs/top-level/darwin-packages.nix b/infra/libkookie/nixpkgs/pkgs/top-level/darwin-packages.nix new file mode 100644 index 000000000000..affb4ae92c19 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/top-level/darwin-packages.nix @@ -0,0 +1,95 @@ +{ buildPackages, pkgs, targetPackages +, darwin, stdenv, callPackage, callPackages, newScope +}: + +let + apple-source-releases = callPackage ../os-specific/darwin/apple-source-releases { }; +in + +(apple-source-releases // { + + callPackage = newScope (darwin.apple_sdk.frameworks // darwin); + + stdenvNoCF = stdenv.override { + extraBuildInputs = []; + }; + + apple_sdk = callPackage ../os-specific/darwin/apple-sdk { }; + + binutils-unwrapped = callPackage ../os-specific/darwin/binutils { + inherit (darwin) cctools; + inherit (pkgs) binutils-unwrapped; + inherit (pkgs.llvmPackages_7) llvm; + }; + + binutils = pkgs.wrapBintoolsWith { + libc = + if stdenv.targetPlatform != stdenv.hostPlatform + then pkgs.libcCross + else pkgs.stdenv.cc.libc; + bintools = darwin.binutils-unwrapped; + }; + + cctools = callPackage ../os-specific/darwin/cctools/port.nix { + inherit (darwin) libobjc maloader libtapi; + stdenv = if stdenv.isDarwin then stdenv else pkgs.libcxxStdenv; + libcxxabi = pkgs.libcxxabi; + }; + + # TODO: remove alias. + cf-private = darwin.apple_sdk.frameworks.CoreFoundation; + + DarwinTools = callPackage ../os-specific/darwin/DarwinTools { }; + + maloader = callPackage ../os-specific/darwin/maloader { + inherit (darwin) opencflite; + }; + + insert_dylib = callPackage ../os-specific/darwin/insert_dylib { }; + + iosSdkPkgs = darwin.callPackage ../os-specific/darwin/xcode/sdk-pkgs.nix { + buildIosSdk = buildPackages.darwin.iosSdkPkgs.sdk; + targetIosSdkPkgs = targetPackages.darwin.iosSdkPkgs; + xcode = darwin.xcode; + inherit (pkgs.llvmPackages) clang-unwrapped; + }; + + iproute2mac = callPackage ../os-specific/darwin/iproute2mac { }; + + libobjc = apple-source-releases.objc4; + + lsusb = callPackage ../os-specific/darwin/lsusb { }; + + opencflite = callPackage ../os-specific/darwin/opencflite { }; + + stubs = callPackages ../os-specific/darwin/stubs { }; + + trash = darwin.callPackage ../os-specific/darwin/trash { }; + + usr-include = callPackage ../os-specific/darwin/usr-include { }; + + inherit (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 { }; + + CF = callPackage ../os-specific/darwin/swift-corelibs/corefoundation.nix { inherit (darwin) objc4 ICU; }; + + # 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 { inherit (darwin) apple_sdk_sierra xnu; }; + + 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 { + inherit (darwin.apple_sdk.frameworks) Cocoa; + }; + +}) diff --git a/infra/libkookie/nixpkgs/pkgs/top-level/default.nix b/infra/libkookie/nixpkgs/pkgs/top-level/default.nix new file mode 100644 index 000000000000..dfa68ba31b84 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/top-level/default.nix @@ -0,0 +1,128 @@ +/* This function composes the Nix Packages collection. It: + + 1. Applies the final stage to the given `config` if it is a function + + 2. Infers an appropriate `platform` based on the `system` if none is + provided + + 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; + + # Allow both: + # { /* the config */ } and + # { pkgs, ... } : { /* the config */ } + config1 = + if lib.isFunction config0 + then config0 { inherit pkgs; } + else config0; + + # From a minimum of `system` or `config` (actually a target triple, *not* + # nixpkgs configuration), infer the other one and platform as needed. + localSystem = lib.systems.elaborate (if builtins.isAttrs args.localSystem then ( + # Allow setting the platform in the config file. This take precedence over + # the inferred platform, but not over an explicitly passed-in one. + builtins.intersectAttrs { platform = null; } config1 + // args.localSystem) else args.localSystem); + + crossSystem = if crossSystem0 == null then localSystem + else lib.systems.elaborate crossSystem0; + + 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 pkgs diff --git a/infra/libkookie/nixpkgs/pkgs/top-level/dhall-packages.nix b/infra/libkookie/nixpkgs/pkgs/top-level/dhall-packages.nix new file mode 100644 index 000000000000..9d4801e9dc5c --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/top-level/dhall-packages.nix @@ -0,0 +1,48 @@ +{ lib +, newScope +, overrides ? (self: super: {}) +}: + +let + packages = self: + let + callPackage = newScope self; + + prefer = version: path: + let + packages = callPackage path { }; + + in + packages."${version}".overrideAttrs (_: { + passthru = packages; + } + ); + + 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 { }; + + in + { inherit + buildDhallPackage + buildDhallGitHubPackage + buildDhallDirectoryPackage + ; + + dhall-kubernetes = + prefer "3.0.0" ../development/dhall-modules/dhall-kubernetes.nix; + + dhall-packages = + prefer "0.11.1" ../development/dhall-modules/dhall-packages.nix; + + Prelude = + prefer "13.0.0" ../development/dhall-modules/Prelude.nix; + }; + +in + lib.fix' (lib.extends overrides packages) diff --git a/infra/libkookie/nixpkgs/pkgs/top-level/dotnet-packages.nix b/infra/libkookie/nixpkgs/pkgs/top-level/dotnet-packages.nix new file mode 100644 index 000000000000..f14ae3133b8b --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/top-level/dotnet-packages.nix @@ -0,0 +1,961 @@ +{ stdenv +, pkgs +, buildDotnetPackage +, fetchurl +, fetchFromGitHub +, fetchNuGet +, glib +, pkgconfig +, mono +, fsharp +, unzip +, overrides ? {} +}: + +let self = dotnetPackages // overrides; dotnetPackages = with self; { + + # BINARY PACKAGES + + Autofac = fetchNuGet { + baseName = "Autofac"; + version = "3.5.2"; + sha256 = "194cs8ybn5xjqnzy643w5i62m0d5s34d3nshwxp2v4fcb94wa4ri"; + outputFiles = [ "lib/portable-net4+sl5+netcore45+wpa81+wp8+MonoAndroid1+MonoTouch1/*" ]; + }; + + Fake = fetchNuGet { + baseName = "FAKE"; + version = "3.33.0"; + sha256 = "04gllx9d1w8zn9gq9p5k76b79ix07rilk3apdi72dmz6h3yylcdm"; + outputFiles = [ "tools/*" ]; + dllFiles = [ "Fake*.dll" ]; + }; + + Fantomas = fetchNuGet { + baseName = "Fantomas"; + version = "1.6.0"; + sha256 = "1b9rd3i76b5xzv0j62dvfr1ksdwvb59vxw6jhzpi018axjn6757q"; + outputFiles = [ "lib/*" ]; + dllFiles = [ "Fantomas*.dll" ]; + }; + + FSharpCompilerCodeDom = fetchNuGet { + baseName = "FSharp.Compiler.CodeDom"; + version = "0.9.2"; + sha256 = "0cy9gbvmfx2g74m7bgp6x9mr4avb6s560yjii7cyyxb7jlwabfcj"; + outputFiles = [ "lib/net40/*" ]; + }; + + FSharpCore302 = fetchNuGet { + baseName = "FSharp.Core"; + version = "3.0.2"; + sha256 = "1s4pqwbmhrsg5sw8i6dixdri3x0yjyilmkhsf4apfkp80si7d73q"; + outputFiles = [ "*" ]; + }; + + FSharpCore3125 = fetchNuGet { + baseName = "FSharp.Core"; + version = "3.1.2.5"; + sha256 = "0pfvjimrgrffb5rj612gsid044lfpk8g2cxyh9792dc1n8ck5hih"; + outputFiles = [ "*" ]; + }; + + FSharpCore4001 = fetchNuGet { + baseName = "FSharp.Core"; + version = "4.0.0.1"; + sha256 = "0v53iq12ji2d1bkdyg9dn8sz5l93sprrh835amh39dghh8v8vm8k"; + outputFiles = [ "*" ]; + }; + + FSharpCore4117 = fetchNuGet { + baseName = "FSharp.Core"; + version = "4.1.17"; + sha256 = "1yk23ir66fgqm5r6qyf66zf64l0s223l3yd7p9yvbyimyg0hgzb1"; + outputFiles = [ "*" ]; + }; + + FSharpData225 = fetchNuGet { + baseName = "FSharp.Data"; + version = "2.2.5"; + sha256 = "1c9l6bk0d2srccash2980y9phq3kmfm0m76k4wghnysnq94vm724"; + outputFiles = [ "*" ]; + }; + + FSharpDataSQLProvider = fetchNuGet { + baseName = "SQLProvider"; + version = "0.0.9-alpha"; + sha256 = "1wmgr5ca9hh6a7f0s8yc87n6arn7bq6nwc8n4crbbdil4r0bw46w"; + outputFiles = [ "lib/net40/*" ]; + }; + + FsCheck = fetchNuGet { + baseName = "FsCheck"; + version = "1.0.4"; + sha256 = "1q2wk4d4d1q94qzcccgmxb2lh0b8qkmpyz0p7lfphkw2gx6cy5ad"; + outputFiles = [ "lib/net45/*" ]; + }; + + FsCheck262 = fetchNuGet { + baseName = "FsCheck"; + version = "2.6.2"; + sha256 = "0fh9yvsc4i61z31qf00d6gjv6xxd54pv1ykf5bpv95a5crc3qfvl"; + outputFiles = [ "*" ]; + }; + + FsCheckNunit = fetchNuGet { + baseName = "FsCheck.Nunit"; + version = "1.0.4"; + sha256 = "1s62jrsa5hxqy1ginl8r29rjdc8vbkwmz7mb0hglhwccdqfyr5xy"; + outputFiles = [ "lib/net45/*" ]; + }; + + FSharpCompilerTools = fetchNuGet { + baseName = "FSharp.Compiler.Tools"; + version = "4.1.27"; + sha256 = "1m3hl8ja9gp5ajxmjf7bnq24bbkd6kx7yhxf4zb8si27h1n9l6dl"; + outputFiles = [ "*" ]; + }; + + FsLexYacc = fetchNuGet { + baseName = "FsLexYacc"; + version = "6.1.0"; + sha256 = "1v5myn62zqs431i046gscqw2v0c969fc7pdplx7z9cnpy0p2s4rv"; + outputFiles = [ "build/*" ]; + }; + + FsLexYacc706 = fetchNuGet { + baseName = "FsLexYacc"; + version = "7.0.6"; + sha256 = "0xwiq8q5q6ga6zj24w83ch5csbv405xcg6jg2hmnjic0npz0drk2"; + outputFiles = [ "*" ]; + }; + + FsLexYaccRuntime = fetchNuGet { + baseName = "FsLexYacc.Runtime"; + version = "6.1.0"; + sha256 = "18vrx4lxsn4hkfishg4abv0d4q21dsph0bm4mdq5z8afaypp5cr7"; + outputFiles = [ "lib/net40/*" ]; + }; + + FsPickler = fetchNuGet { + baseName = "FsPickler"; + version = "1.2.9"; + sha256 = "12fgcj7pvffsj1s1kaz15j22i1n98dy5mf4z84555xdf7mw7dpm4"; + outputFiles = [ "lib/net45/*" ]; + }; + + FsUnit = fetchNuGet { + baseName = "FsUnit"; + version = "1.3.0.1"; + sha256 = "1k7w8pc81aplsfn7n46617khmzingd2v7hcgdhh7vgsssibwms64"; + outputFiles = [ "Lib/Net40/*" ]; + }; + + FSharpFormatting = fetchNuGet { + baseName = "FSharp.Formatting"; + version = "2.9.8"; + sha256 = "1bswcpa68i2lqds4kkl2qxgkfrppbpxa4jkyja48azljajh0df3m"; + outputFiles = [ "lib/net40/*" ]; + }; + + NUnit3 = fetchNuGet { + baseName = "NUnit"; + version = "3.0.1"; + sha256 = "1g3j3kvg9vrapb1vjgq65nvn1vg7bzm66w7yjnaip1iww1yn1b0p"; + outputFiles = [ "lib/*" ]; + }; + + NUnit350 = fetchNuGet { + baseName = "NUnit"; + version = "3.5.0"; + sha256 = "19fxq9cf754ygda5c8rn1zqs71pfxi7mb96jwqhlichnqih6i16z"; + outputFiles = [ "*" ]; + }; + + NUnit2 = fetchNuGet { + baseName = "NUnit"; + version = "2.6.4"; + sha256 = "1acwsm7p93b1hzfb83ia33145x0w6fvdsfjm9xflsisljxpdx35y"; + outputFiles = [ "lib/*" ]; + }; + + NUnit = NUnit2; + + NUnitConsole = fetchNuGet { + baseName = "NUnit.Console"; + version = "3.0.1"; + sha256 = "154bqwm2n95syv8nwd67qh8qsv0b0h5zap60sk64z3kd3a9ffi5p"; + outputFiles = [ "tools/*" ]; + }; + + MaxMindDb = fetchNuGet { + baseName = "MaxMind.Db"; + version = "1.1.0.0"; + sha256 = "0lixl76f7k3ldiqzg94zh13gn82w5mm5dx72y97fcqvp8g6nj3ds"; + outputFiles = [ "lib/*" ]; + }; + + MaxMindGeoIP2 = fetchNuGet { + baseName = "MaxMind.GeoIP2"; + version = "2.3.1"; + sha256 = "1s44dvjnmj1aimbrgkmpj6h5dn1w6acgqjch1axc76yz6hwknqgf"; + outputFiles = [ "lib/*" ]; + }; + + SharpZipLib = fetchNuGet { + baseName = "SharpZipLib"; + version = "0.86.0"; + sha256 = "01w2038gckfnq31pncrlgm7d0c939pwr1x4jj5450vcqpd4c41jr"; + outputFiles = [ "lib/*" ]; + }; + + StyleCopMSBuild = fetchNuGet { + baseName = "StyleCop.MSBuild"; + version = "4.7.49.0"; + sha256 = "0rpfyvcggm881ynvgr17kbx5hvj7ivlms0bmskmb2zyjlpddx036"; + outputFiles = [ "tools/*" ]; + }; + + StyleCopPlusMSBuild = fetchNuGet { + baseName = "StyleCopPlus.MSBuild"; + version = "4.7.49.5"; + sha256 = "1hv4lfxw72aql8siyqc4n954vzdz8p6jx9f2wrgzz0jy1k98x2mr"; + outputFiles = [ "tools/*" ]; + }; + + SystemValueTuple = fetchNuGet { + baseName = "System.ValueTuple"; + version = "4.3.1"; + sha256 = "0qzq878s66yfkf4n2b9af8lw2bx45s3cg6mi0w8w0bi358fa7q70"; + outputFiles = [ "*" ]; + }; + + RestSharp = fetchNuGet { + baseName = "RestSharp"; + version = "105.2.3"; + sha256 = "1br48124ppz80x92m84sfyil1gn23hxg2ml9i9hsd0lp86vlaa1m"; + outputFiles = [ "lib/*" ]; + }; + + SharpFont = fetchNuGet { + baseName = "SharpFont"; + version = "4.0.1"; + sha256 = "1yd3cm4ww0hw2k3aymf792hp6skyg8qn491m2a3fhkzvsl8z7vs8"; + outputFiles = [ "lib/*" "config/*" ]; + }; + + SmartIrc4net = fetchNuGet { + baseName = "SmartIrc4net"; + version = "0.4.5.1"; + sha256 = "1d531sj39fvwmj2wgplqfify301y3cwp7kwr9ai5hgrq81jmjn2b"; + outputFiles = [ "lib/*" ]; + }; + + FuzzyLogicLibrary = fetchNuGet { + baseName = "FuzzyLogicLibrary"; + version = "1.2.0"; + sha256 = "0x518i8d3rw9n51xwawa4sywvqd722adj7kpcgcm63r66s950r5l"; + outputFiles = [ "bin/*" ]; + }; + + OpenNAT = fetchNuGet { + baseName = "Open.NAT"; + version = "2.1.0"; + sha256 = "1jyd30fwycdwx5ck96zhp2xf20yz0sp7g3pjbqhmay4kd322mfwk"; + outputFiles = [ "lib/*" ]; + }; + + MonoNat = fetchNuGet { + baseName = "Mono.Nat"; + version = "1.2.24"; + sha256 = "0vfkach11kkcd9rcqz3s38m70d5spyb21gl99iqnkljxj5555wjs"; + outputFiles = [ "lib/*" ]; + }; + + MicrosoftDiaSymReader = fetchNuGet { + baseName = "Microsoft.DiaSymReader"; + version = "1.1.0"; + sha256 = "04dgwy6nyxksd1nb24k5c5vz8naggg7hryadvwqnm2v3alkh6g88"; + outputFiles = [ "*" ]; + }; + + MicrosoftDiaSymReaderPortablePdb = fetchNuGet { + baseName = "Microsoft.DiaSymReader.PortablePdb"; + version = "1.2.0"; + sha256 = "0qa8sqg0lzz9galkkfyi8rkbkali0nxm3qd5y4dlxp96ngrq5ldz"; + outputFiles = [ "*" ]; + }; + + NUnitRunners = fetchNuGet { + baseName = "NUnit.Runners"; + version = "2.6.4"; + sha256 = "11nmi7vikn9idz8qcad9z7f73arsh5rw18fc1sri9ywz77mpm1s4"; + outputFiles = [ "tools/*" ]; + preInstall = "mv -v tools/lib/* tools && rmdir -v tools/lib"; + }; + + SystemCollectionsImmutable = fetchNuGet { + baseName = "System.Collections.Immutable"; + version = "1.1.36"; + sha256 = "0760kzf5s771pnvnxsgas446kqdh1b71w6g3k75jpzldfmsd3vyq"; + outputFiles = [ "lib/portable-net45+win8+wp8+wpa81/*" ]; + }; + + SystemCollectionsImmutable131 = fetchNuGet { + baseName = "System.Collections.Immutable"; + version = "1.3.1"; + sha256 = "149fcp7k7r9iw24dv5hbaij0c38kcv28dyhzbkggilfh4x2hy8c2"; + outputFiles = [ "*" ]; + }; + + SystemReflectionMetadata = fetchNuGet { + baseName = "System.Reflection.Metadata"; + version = "1.4.2"; + sha256 = "19fhdgd35yg52gyckhgwrphq07nv7v7r73hcg69ns94xfg1i6r7i"; + outputFiles = [ "*" ]; + }; + + Suave = fetchNuGet { + baseName = "Suave"; + version = "0.29.0"; + propagatedBuildInputs = [ FsPickler ]; + sha256 = "0rgqy0afwm50gq5ca94w16s565yx5wf961683ghfld6ir0k3dhln"; + outputFiles = [ "lib/net40/*" ]; + }; + + # SOURCE PACKAGES + + Boogie = buildDotnetPackage rec { + baseName = "Boogie"; + version = "2019-06-20"; + name = "${baseName}-unstable-${version}"; + + src = fetchFromGitHub { + owner = "boogie-org"; + repo = "boogie"; + rev = "2e8fae4dc1724d8f9e7b1f877116e56b0773337e"; + sha256 = "01wjps3yfx8q0qy0zrmmfd1ixjxi2dhkn1wfazb5qm2slav39dp2"; + }; + + # 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/${baseName}" + ln -sv "${pkgs.z3}/bin/z3" "$out/lib/dotnet/${baseName}/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 stdenv.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 = buildDotnetPackage rec { + baseName = "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 ${pkgs.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.baseName}/*.dll{,.mdb}; do + ln -s $lib $out/lib/dotnet/${baseName}/ + done + # We generate our own executable scripts + rm -f $out/lib/dotnet/${baseName}/dafny{,-server} + ''; + + meta = with stdenv.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); + }; + }; + + Deedle = fetchNuGet { + baseName = "Deedle"; + version = "1.2.5"; + sha256 = "0g19ll6bp97ixprcnpwwvshr1n9jxxf9xjhkxp0r63mg46z48jnw"; + outputFiles = [ "*" ]; + }; + + ExcelDna = buildDotnetPackage { + baseName = "Excel-DNA"; + version = "0.32.0"; + + src = fetchFromGitHub { + owner = "Excel-DNA"; + repo = "ExcelDna"; + rev = "10a163843bcc2fb5517f6f3d499e18a8b64df511"; + sha256 = "1w2ag9na20ly0m2sic3nkgdc4qqyb4x4c9iv588ynpkgd1pjndrk"; + }; + + buildInputs = [ ]; + + preConfigure = '' + rm -vf Distribution/*.dll Distribution/*.exe # Make sure we don't use those + substituteInPlace Source/ExcelDna.Integration/ExcelDna.Integration.csproj --replace LogDisplay.designer.cs LogDisplay.Designer.cs + ''; + + xBuildFiles = [ "Source/ExcelDna.sln" ]; + outputFiles = [ "Source/ExcelDnaPack/bin/Release/*" "Distribution/ExcelDna.xll" "Distribution/ExcelDna64.xll" ]; + + meta = { + description = "Excel-DNA is an independent project to integrate .NET into Excel"; + homepage = "https://excel-dna.net/"; + license = stdenv.lib.licenses.mit; + maintainers = with stdenv.lib.maintainers; [ obadz ]; + platforms = with stdenv.lib.platforms; linux; + }; + }; + + ExcelDnaRegistration = buildDotnetPackage rec { + baseName = "Excel-DNA.Registration"; + version = "git-" + (builtins.substring 0 10 rev); + rev = "69abb1b3528f40dbcf425e13690aaeab5f707bb6"; + + src = fetchFromGitHub { + inherit rev; + owner = "Excel-DNA"; + repo = "Registration"; + sha256 = "094932h6r2f4x9r5mnw8rm4jzz8vkfv90d95qi3h0i89ws2dnn07"; + }; + + buildInputs = [ + fsharp + dotnetPackages.ExcelDna + ]; + + xBuildFiles = [ "Source/ExcelDna.Registration/ExcelDna.Registration.csproj" "Source/ExcelDna.Registration.FSharp/ExcelDna.Registration.FSharp.fsproj" ]; + outputFiles = [ "Source/ExcelDna.Registration/bin/Release/*" "Source/ExcelDna.Registration.FSharp/bin/Release/*FSharp*" ]; + + meta = { + description = "This library implements helper functions to assist and modify the Excel-DNA function registration"; + homepage = "https://github.com/Excel-DNA/Registration"; + license = stdenv.lib.licenses.mit; + maintainers = with stdenv.lib.maintainers; [ obadz ]; + platforms = with stdenv.lib.platforms; linux; + }; + }; + + ExtCore = buildDotnetPackage { + baseName = "ExtCore"; + version = "0.8.46"; + + src = fetchFromGitHub { + owner = "jack-pappas"; + repo = "ExtCore"; + rev = "0269b6d3c479f45abd7aa983aaeca08d07473943"; + sha256 = "1kxkiszpvqisffhd6wciha8j3dhkq06w9c540bmq8zixa4xaj83p"; + }; + + buildInputs = [ + fsharp + dotnetPackages.NUnit + dotnetPackages.FsCheck + ]; + + postConfigure = '' + # Fix case + sed -i -e s,nuget.targets,NuGet.targets, ExtCore.Tests/ExtCore.Tests.fsproj + ''; + + xBuildFlags = [ "/p:Configuration=Release (net45)" ]; + outputFiles = [ "ExtCore/bin/net45/Release/*" ]; + + meta = { + description = "ExtCore is an extended core library for F#"; + homepage = "https://github.com/jack-pappas/ExtCore"; + license = stdenv.lib.licenses.asl20; + maintainers = with stdenv.lib.maintainers; [ obadz ]; + platforms = with stdenv.lib.platforms; linux; + broken = true; + }; + }; + + FSharpAutoComplete = buildDotnetPackage rec { + baseName = "FSharp.AutoComplete"; + version = "0.18.2"; + + src = fetchFromGitHub { + owner = "fsharp"; + repo = "FSharp.AutoComplete"; + rev = version; + sha256 = "1ikl72003xzqq2dc8i6h404hnq3q5g1p1q4rmzz9bdm7282q2jgs"; + }; + + buildInputs = [ + fsharp + glib + dotnetPackages.FSharpCompilerService + dotnetPackages.NewtonsoftJson + dotnetPackages.NDeskOptions + ]; + + outputFiles = [ "FSharp.AutoComplete/bin/Release/*" ]; + + meta = { + description = "An interface to the FSharp.Compiler.Service project"; + longDescription = '' + This project provides a command-line interface to the + FSharp.Compiler.Service project. It is intended to be used as a backend + service for rich editing or 'intellisense' features for editors. + ''; + homepage = "https://github.com/fsharp/FSharp.AutoComplete"; + license = stdenv.lib.licenses.asl20; + maintainers = with stdenv.lib.maintainers; [ obadz ]; + platforms = with stdenv.lib.platforms; linux; + }; + }; + + FSharpCompilerService = buildDotnetPackage { + baseName = "FSharp.Compiler.Service"; + version = "0.0.90"; + + src = fetchFromGitHub { + owner = "fsharp"; + repo = "FSharp.Compiler.Service"; + rev = "a87939ab3f3c571cad79bc3b5f298aa3e180e6b3"; + sha256 = "0axr38q8m0h11hhbxg5myd1wwfgysadriln8c7bqsv5sf9djihvd"; + }; + + buildInputs = [ + fsharp + dotnetPackages.NUnit + ]; + + outputFiles = [ "bin/v4.5/*" ]; + + meta = { + description = "The F# compiler services package is a component derived from the F# compiler source code that exposes additional functionality for implementing F# language bindings"; + homepage = "https://fsharp.github.io/FSharp.Compiler.Service/"; + license = stdenv.lib.licenses.asl20; + maintainers = with stdenv.lib.maintainers; [ obadz ]; + platforms = with stdenv.lib.platforms; linux; + }; + }; + + FSharpData = buildDotnetPackage rec { + baseName = "FSharp.Data"; + version = "2.2.3"; + + src = fetchFromGitHub { + owner = "fsharp"; + repo = baseName; + rev = version; + sha256 = "1h3v9rc8k0khp61cv5n01larqbxd3xcx3q52sw5zf9l0661vw7qr"; + }; + + buildInputs = [ fsharp ]; + + fileProvidedTypes = fetchurl { + name = "ProvidedTypes.fs"; + url = "https://raw.githubusercontent.com/fsprojects/FSharp.TypeProviders.StarterPack/877014bfa6244ac382642e113d7cd6c9bc27bc6d/src/ProvidedTypes.fs"; + sha256 = "1lb056v1xld1rfx6a8p8i2jz8i6qa2r2823n5izsf1qg1qgf2980"; + }; + + fileDebugProvidedTypes = fetchurl { + name = "DebugProvidedTypes.fs"; + url = "https://raw.githubusercontent.com/fsprojects/FSharp.TypeProviders.StarterPack/877014bfa6244ac382642e113d7cd6c9bc27bc6d/src/DebugProvidedTypes.fs"; + sha256 = "1whyrf2jv6fs7kgysn2086v15ggjsd54g1xfs398mp46m0nxp91f"; + }; + + preConfigure = '' + # Copy single-files-in-git-repos + mkdir -p "paket-files/fsprojects/FSharp.TypeProviders.StarterPack/src" + cp -v "${fileProvidedTypes}" "paket-files/fsprojects/FSharp.TypeProviders.StarterPack/src/ProvidedTypes.fs" + cp -v "${fileDebugProvidedTypes}" "paket-files/fsprojects/FSharp.TypeProviders.StarterPack/src/DebugProvidedTypes.fs" + ''; + + xBuildFiles = [ "src/FSharp.Data.fsproj" "src/FSharp.Data.DesignTime.fsproj" ]; + outputFiles = [ "bin/*.dll" "bin/*.xml" ]; + + meta = { + description = "F# Data: Library for Data Access"; + homepage = "https://fsharp.github.io/FSharp.Data/"; + license = stdenv.lib.licenses.asl20; + maintainers = with stdenv.lib.maintainers; [ obadz ]; + platforms = with stdenv.lib.platforms; linux; + }; + }; + + # FSharpxExtras = buildDotnetPackage rec { + # baseName = "FSharpx.Extras"; + # version = "1.8.41"; + # + # src = fetchurl { + # name = "${baseName}-${version}.tar.gz"; + # url = "https://github.com/fsprojects/FSharpx.Extras/archive/${version}.tar.gz"; + # sha256 = "102z5bvk3ffi1crgyp51488vamv41fsf61n8x8pdiznq155zydhl"; + # }; + # + # buildInputs = [ + # fsharp + # dotnetPackages.NUnit + # dotnetPackages.FsCheck + # dotnetPackages.FsCheckNunit + # dotnetPackages.FsUnit + # ]; + # + # patches = [ ./disable_excel.patch ]; + # + # xBuildFiles = [ "FSharpx.WithTypeProviders.sln" ]; + # outputFiles = [ "build/*" ]; + # + # meta = { + # description = "FSharpx.Extras is a collection of libraries and tools for use with F#"; + # homepage = "https://fsprojects.github.io/FSharpx.Extras/"; + # license = stdenv.lib.licenses.asl20; + # maintainers = with stdenv.lib.maintainers; [ obadz ]; + # platforms = with stdenv.lib.platforms; linux; + # }; + # }; + + GitVersionTree = buildDotnetPackage { + baseName = "GitVersionTree"; + version = "2013-10-01"; + + src = fetchFromGitHub { + owner = "crc8"; + repo = "GitVersionTree"; + rev = "58dc39c43cffea44f721ee4425835e56518f7da2"; + sha256 = "0mna5pkpqkdr5jgn8paz004h1pa24ncsvmi2c8s4gp94nfw34x05"; + }; + + buildInputs = with pkgs; [ ed ]; + + postPatch = '' + ed -v -p: -s GitVersionTree/Program.cs << EOF + /Main() + c + static void Main(string[] args) + . + /EnableVisualStyles + i + Reg.Write("GitPath", "${pkgs.gitMinimal}/bin/git"); + Reg.Write("GraphvizPath", "${pkgs.graphviz}/bin/dot"); + if (args.Length > 0) { + Reg.Write("GitRepositoryPath", args[0]); + } + . + w + EOF + + substituteInPlace GitVersionTree/Forms/MainForm.cs \ + --replace 'Directory.GetParent(Application.ExecutablePath)' 'Environment.CurrentDirectory' \ + --replace '\\' '/' \ + --replace '@"\"' '"/"' + ''; + + outputFiles = [ "GitVersionTree/bin/Release/*" ]; + exeFiles = [ "GitVersionTree.exe" ]; + + meta = with stdenv.lib; { + description = "A tool to help visualize git revisions and branches"; + homepage = "https://github.com/crc8/GitVersionTree"; + license = licenses.gpl2; + maintainers = with maintainers; [ obadz ]; + platforms = platforms.all; + }; + }; + + MathNetNumerics = buildDotnetPackage rec { + baseName = "MathNet.Numerics"; + version = "3.7.0"; + + src = fetchurl { + name = "${baseName}-${version}.tar.gz"; + url = "https://github.com/mathnet/mathnet-numerics/archive/v${version}.tar.gz"; + sha256 = "1yq6aqmc2gwh96z544qn83kby01lv1lsxm158hq0bimv2i9yywc7"; + }; + + buildInputs = [ fsharp ]; + + xBuildFiles = [ "MathNet.Numerics.sln" ]; + outputFiles = [ "out/lib/Net40/*" "src/FSharp/MathNet.Numerics.fsx" "src/FSharp/MathNet.Numerics.IfSharp.fsx" ]; + + meta = { + description = "Math.NET Numerics is an opensource numerical library for .Net, Silverlight and Mono"; + homepage = "https://numerics.mathdotnet.com/"; + license = stdenv.lib.licenses.mit; + maintainers = with stdenv.lib.maintainers; [ obadz ]; + platforms = with stdenv.lib.platforms; linux; + }; + }; + + MonoAddins = buildDotnetPackage rec { + baseName = "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 = stdenv.lib.licenses.mit; + }; + }; + + # MonoDevelopFSharpBinding = buildDotnetPackage rec { + # baseName = "MonoDevelop.FSharpBinding"; + # version = "git-a09c8185eb"; + + # broken = true; + + # src = fetchFromGitHub { + # owner = "fsharp"; + # repo = "fsharpbinding"; + # rev = "a09c8185ebf23fe2f7d22b14b4af2e3268d4f011"; + # sha256 = "1zp5gig42s1h681kch0rw5ykbbj0mcsmdvpyz1319wy9s7n2ng91"; + # }; + + # buildInputs = [ + # fsharp + # monodevelop + # pkgs.gtk-sharp + # pkgs.gnome-sharp + # dotnetPackages.ExtCore + # dotnetPackages.FSharpCompilerService + # dotnetPackages.FSharpCompilerCodeDom + # dotnetPackages.FSharpAutoComplete + # dotnetPackages.Fantomas + # ]; + + # patches = [ + # ../development/dotnet-modules/patches/monodevelop-fsharpbinding.references.patch + # ../development/dotnet-modules/patches/monodevelop-fsharpbinding.addin-xml.patch + # ]; + + # preConfigure = '' + # substituteInPlace monodevelop/configure.fsx --replace /usr/lib/monodevelop ${monodevelop}/lib/monodevelop + # substituteInPlace monodevelop/configure.fsx --replace bin/MonoDevelop.exe ../../bin/monodevelop + # (cd monodevelop; fsharpi ./configure.fsx) + # ''; + + # # This will not work as monodevelop probably looks in absolute nix store path rather than path + # # relative to its executable. Need to ln -s /run/current-system/sw/lib/dotnet/MonoDevelop.FSharpBinding + # # ~/.local/share/MonoDevelop-5.0/LocalInstall/Addins/ to install until we have a better way + + # # postInstall = '' + # # mkdir -p "$out/lib/monodevelop/AddIns" + # # ln -sv "$out/lib/dotnet/${baseName}" "$out/lib/monodevelop/AddIns" + # # ''; + + # xBuildFiles = [ "monodevelop/MonoDevelop.FSharpBinding/MonoDevelop.FSharp.mac-linux.fsproj" ]; + # outputFiles = [ "monodevelop/bin/mac-linux/Release/*" ]; + + # meta = { + # description = "F# addin for MonoDevelop 5.9"; + # homepage = "https://github.com/fsharp/fsharpbinding/tree/5.9"; + # license = stdenv.lib.licenses.asl20; + # maintainers = with stdenv.lib.maintainers; [ obadz ]; + # platforms = with stdenv.lib.platforms; linux; + # }; + # }; + + NDeskOptions = stdenv.mkDerivation rec { + baseName = "NDesk.Options"; + version = "0.2.1"; + name = "${baseName}-${version}"; + + src = fetchurl { + name = "${baseName}-${version}.tar.gz"; + url = "http://www.ndesk.org/archive/ndesk-options/ndesk-options-0.2.1.tar.gz"; + sha256 = "1y25bfapafwmifakjzyb9c70qqpvza8g5j2jpf08j8wwzkrb6r28"; + }; + + buildInputs = [ + mono + pkgconfig + ]; + + postInstall = '' + # Otherwise pkg-config won't find it and the DLL will get duplicated + ln -sv $out/lib/pkgconfig/ndesk-options.pc $out/lib/pkgconfig/NDesk.Options.pc + ''; + + dontStrip = true; + + meta = { + description = "A callback-based program option parser for C#"; + homepage = "http://www.ndesk.org/Options"; + license = stdenv.lib.licenses.mit; + maintainers = with stdenv.lib.maintainers; [ obadz ]; + platforms = with stdenv.lib.platforms; linux; + }; + }; + + NewtonsoftJson = fetchNuGet { + baseName = "Newtonsoft.Json"; + version = "11.0.2"; + sha256 = "07na27n4mlw77f3hg5jpayzxll7f4gyna6x7k9cybmxpbs6l77k7"; + outputFiles = [ "*" ]; + }; + + Nuget = buildDotnetPackage { + baseName = "Nuget"; + version = "4.9.1"; + + src = fetchFromGitHub { + owner = "mono"; + repo = "nuget-binary"; + rev = "7871fa26914593fdb2f2500df1196df7b8aecb1c"; + sha256 = "07r63xam6icm17pf6amh1qkmna13nxa3ncdan7a3ql307i5isriz"; + }; + + buildInputs = [ unzip ]; + + phases = [ "unpackPhase" "installPhase" ]; + + outputFiles = [ "*" ]; + dllFiles = [ "NuGet*.dll" ]; + exeFiles = [ "nuget.exe" ]; + }; + + Paket = fetchNuGet { + baseName = "Paket"; + version = "5.179.1"; + sha256 = "11rzna03i145qj08hwrynya548fwk8xzxmg65swyaf19jd7gzg82"; + outputFiles = [ "*" ]; + }; + + Projekt = buildDotnetPackage rec { + baseName = "projekt"; + version = "git-" + (builtins.substring 0 10 rev); + rev = "715a21e5cd3c86310387562618b04e979d0ec9c4"; + + src = fetchFromGitHub { + inherit rev; + owner = "kjnilsson"; + repo = "projekt"; + sha256 = "1ph3af07wmia6qkiq1qlywaj2xh6zn5drdx19dwb1g3237h5fnz0"; + }; + + buildInputs = [ + fsharp + dotnetPackages.UnionArgParser + dotnetPackages.FsUnit + ]; + + preConfigure = '' + sed -i -e "s/FSharp.Core, Version=\$(TargetFSharpCoreVersion), Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a/FSharp.Core/" src/Projekt/Projekt.fsproj + ''; + + outputFiles = [ "src/Projekt/bin/Release/*" ]; + + meta = { + description = "A command-line tool for manipulating F# project files"; + homepage = "https://github.com/kjnilsson/projekt"; + license = stdenv.lib.licenses.mit; + maintainers = with stdenv.lib.maintainers; [ obadz ]; + platforms = with stdenv.lib.platforms; linux; + }; + }; + + UnionArgParser = buildDotnetPackage { + baseName = "UnionArgParser"; + version = "0.8.7"; + + src = fetchFromGitHub { + owner = "nessos"; + repo = "UnionArgParser"; + rev = "acaeb946e53cbb0bd9768977c656b3242146070a"; + sha256 = "1yrs7ycf2hg7h8z6vm9lr7i3gr9s30k74fr2maigdydnnls93als"; + }; + + buildInputs = [ + fsharp + dotnetPackages.NUnit + dotnetPackages.FsUnit + ]; + + outputFiles = [ "bin/net40/*" ]; + + meta = { + description = "A declarative CLI argument/XML configuration parser for F# applications"; + homepage = "https://nessos.github.io/UnionArgParser/"; + license = stdenv.lib.licenses.mit; + maintainers = with stdenv.lib.maintainers; [ obadz ]; + platforms = with stdenv.lib.platforms; linux; + }; + }; + +}; in self diff --git a/infra/libkookie/nixpkgs/pkgs/top-level/emacs-packages.nix b/infra/libkookie/nixpkgs/pkgs/top-level/emacs-packages.nix new file mode 100644 index 000000000000..d044ed800485 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/top-level/emacs-packages.nix @@ -0,0 +1,86 @@ +# package.el-based emacs packages + +## FOR USERS +# +# Recommended: simply use `emacsWithPackages` with the packages you want. +# +# Alterative: 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) +*/ + +## FOR CONTRIBUTORS +# +# When adding a new package here please note that +# * please use `elpaBuild` for pre-built package.el packages and +# `melpaBuild` or `trivialBuild` if the package must actually +# be built from the source. +# * lib.licenses are `with`ed on top of the file here +# * both trivialBuild and melpaBuild will automatically derive a +# `meta` with `platforms` and `homepage` set to something you are +# unlikely to want to override for most packages + +{ lib, newScope, stdenv, fetchurl, fetchFromGitHub, runCommand, writeText + +, emacs, texinfo, lndir, makeWrapper +, trivialBuild +, melpaBuild + +, external +, pkgs +}: + +let + + mkElpaPackages = import ../applications/editors/emacs-modes/elpa-packages.nix { + inherit lib stdenv texinfo; + }; + + # Contains both melpa stable & unstable + melpaGeneric = import ../applications/editors/emacs-modes/melpa-packages.nix { + inherit external lib pkgs; + }; + mkMelpaStablePackages = melpaGeneric "stable"; + mkMelpaPackages = melpaGeneric "unstable"; + + mkOrgPackages = import ../applications/editors/emacs-modes/org-packages.nix { + inherit lib; + }; + + emacsWithPackages = import ../build-support/emacs/wrapper.nix { + inherit lib lndir makeWrapper runCommand; + }; + + mkManualPackages = import ../applications/editors/emacs-modes/manual-packages.nix { + inherit external lib pkgs; + }; + +in lib.makeScope newScope (self: lib.makeOverridable ({ + elpaPackages ? mkElpaPackages self + , melpaStablePackages ? mkMelpaStablePackages self + , melpaPackages ? mkMelpaPackages self + , orgPackages ? mkOrgPackages self + , manualPackages ? mkManualPackages self +}: ({} + // elpaPackages // { inherit elpaPackages; } + // melpaStablePackages // { inherit melpaStablePackages; } + // melpaPackages // { inherit melpaPackages; } + // orgPackages // { inherit orgPackages; } + // manualPackages // { inherit manualPackages; } + // { + inherit emacs melpaBuild trivialBuild; + emacsWithPackages = emacsWithPackages self; + }) +) {}) diff --git a/infra/libkookie/nixpkgs/pkgs/top-level/emscripten-packages.nix b/infra/libkookie/nixpkgs/pkgs/top-level/emscripten-packages.nix new file mode 100644 index 000000000000..ceb2d5e16f70 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/top-level/emscripten-packages.nix @@ -0,0 +1,189 @@ +{ 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 = [ autoreconfHook pkgconfig ]; + propagatedBuildInputs = [ zlib ]; + buildInputs = old.buildInputs ++ [ automake autoconf ]; + configurePhase = '' + HOME=$TMPDIR + emconfigure ./configure --prefix=$out + ''; + 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 . \ + .libs/libjson-c.so \ + -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 ++ [ pkgconfig ]; + + # 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 = [ pkgconfig autoconf automake libtool gnumake libxml2 nodejs openjdk json_c ]; + nativeBuildInputs = [ pkgconfig 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 ++ [ pkgconfig ]; + # 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 \ + 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.stdenv.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/infra/libkookie/nixpkgs/pkgs/top-level/haskell-packages.nix b/infra/libkookie/nixpkgs/pkgs/top-level/haskell-packages.nix new file mode 100644 index 000000000000..693f8fe8276b --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/top-level/haskell-packages.nix @@ -0,0 +1,234 @@ +{ buildPackages, pkgs, newScope }: + +let + # These are attributes in compiler and packages that don't support integer-simple. + integerSimpleExcludes = [ + "ghc822Binary" + "ghc865Binary" + "ghc8102Binary" + "ghcjs" + "ghcjs86" + "integer-simple" + "native-bignum" + "ghcHEAD" + ]; + + nativeBignumIncludes = [ + "ghcHEAD" + ]; + + haskellLib = import ../development/haskell-modules/lib.nix { + inherit (pkgs) lib; + inherit pkgs; + }; + + callPackage = newScope { + inherit haskellLib; + 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 = haskellLib; + + compiler = { + + ghc822Binary = callPackage ../development/compilers/ghc/8.2.2-binary.nix { }; + + ghc865Binary = callPackage ../development/compilers/ghc/8.6.5-binary.nix { }; + + ghc8102Binary = callPackage ../development/compilers/ghc/8.10.2-binary.nix { + llvmPackages = pkgs.llvmPackages_9; + }; + + ghc865 = callPackage ../development/compilers/ghc/8.6.5.nix { + bootPkgs = packages.ghc822Binary; + inherit (buildPackages.python3Packages) sphinx; + buildLlvmPackages = buildPackages.llvmPackages_6; + llvmPackages = pkgs.llvmPackages_6; + }; + ghc882 = callPackage ../development/compilers/ghc/8.8.2.nix { + bootPkgs = packages.ghc865Binary; + inherit (buildPackages.python3Packages) sphinx; + buildLlvmPackages = buildPackages.llvmPackages_7; + llvmPackages = pkgs.llvmPackages_7; + }; + ghc883 = callPackage ../development/compilers/ghc/8.8.3.nix { + bootPkgs = packages.ghc865Binary; + inherit (buildPackages.python3Packages) sphinx; + buildLlvmPackages = buildPackages.llvmPackages_7; + llvmPackages = pkgs.llvmPackages_7; + }; + ghc884 = callPackage ../development/compilers/ghc/8.8.4.nix { + bootPkgs = packages.ghc865Binary; + inherit (buildPackages.python3Packages) sphinx; + buildLlvmPackages = buildPackages.llvmPackages_7; + llvmPackages = pkgs.llvmPackages_7; + }; + ghc8101 = callPackage ../development/compilers/ghc/8.10.1.nix { + bootPkgs = packages.ghc865Binary; + inherit (buildPackages.python3Packages) sphinx; + buildLlvmPackages = buildPackages.llvmPackages_9; + llvmPackages = pkgs.llvmPackages_9; + }; + ghc8102 = callPackage ../development/compilers/ghc/8.10.2.nix { + bootPkgs = packages.ghc865Binary; + inherit (buildPackages.python3Packages) sphinx; + buildLlvmPackages = buildPackages.llvmPackages_9; + llvmPackages = pkgs.llvmPackages_9; + }; + ghc901 = callPackage ../development/compilers/ghc/9.0.1.nix { + bootPkgs = packages.ghc8102Binary; + inherit (buildPackages.python3Packages) sphinx; + buildLlvmPackages = buildPackages.llvmPackages_10; + llvmPackages = pkgs.llvmPackages_10; + }; + ghcHEAD = callPackage ../development/compilers/ghc/head.nix { + bootPkgs = packages.ghc883; # no binary yet + inherit (buildPackages.python3Packages) sphinx; + buildLlvmPackages = buildPackages.llvmPackages_10; + llvmPackages = pkgs.llvmPackages_10; + libffi = pkgs.libffi; + }; + ghcjs = compiler.ghcjs86; + ghcjs86 = callPackage ../development/compilers/ghcjs-ng { + bootPkgs = packages.ghc865; + ghcjsSrcJson = ../development/compilers/ghcjs-ng/8.6/git.json; + stage0 = ../development/compilers/ghcjs-ng/8.6/stage0.nix; + ghcjsDepOverrides = callPackage ../development/compilers/ghcjs-ng/8.6/dep-overrides.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 { + + ghc822Binary = callPackage ../development/haskell-modules { + buildHaskellPackages = bh.packages.ghc822Binary; + ghc = bh.compiler.ghc822Binary; + compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.2.x.nix { }; + packageSetConfig = bootstrapPackageSet; + }; + 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; + }; + ghc865 = callPackage ../development/haskell-modules { + buildHaskellPackages = bh.packages.ghc865; + ghc = bh.compiler.ghc865; + compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.6.x.nix { }; + }; + ghc882 = callPackage ../development/haskell-modules { + buildHaskellPackages = bh.packages.ghc882; + ghc = bh.compiler.ghc882; + compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.8.x.nix { }; + }; + ghc883 = callPackage ../development/haskell-modules { + buildHaskellPackages = bh.packages.ghc883; + ghc = bh.compiler.ghc883; + compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.8.x.nix { }; + }; + ghc884 = callPackage ../development/haskell-modules { + buildHaskellPackages = bh.packages.ghc884; + ghc = bh.compiler.ghc884; + compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.8.x.nix { }; + }; + ghc8101 = callPackage ../development/haskell-modules { + buildHaskellPackages = bh.packages.ghc8101; + ghc = bh.compiler.ghc8101; + compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.10.x.nix { }; + }; + ghc8102 = callPackage ../development/haskell-modules { + buildHaskellPackages = bh.packages.ghc8102; + ghc = bh.compiler.ghc8102; + compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.10.x.nix { }; + }; + ghc901 = callPackage ../development/haskell-modules { + buildHaskellPackages = bh.packages.ghc901; + ghc = bh.compiler.ghc901; + compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.0.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.ghcjs86; + ghcjs86 = callPackage ../development/haskell-modules rec { + buildHaskellPackages = ghc.bootPkgs; + ghc = bh.compiler.ghcjs86; + compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.6.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/infra/libkookie/nixpkgs/pkgs/top-level/haxe-packages.nix b/infra/libkookie/nixpkgs/pkgs/top-level/haxe-packages.nix new file mode 100644 index 000000000000..06b82a478a87 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/top-level/haxe-packages.nix @@ -0,0 +1,119 @@ +{ stdenv, fetchzip, fetchFromGitHub, haxe, neko, jdk, mono }: + +let + self = haxePackages; + haxePackages = with self; { + + withCommas = stdenv.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 = stdenv.lib.licenses.bsd2; + platforms = stdenv.lib.platforms.all; + description = throw "please write meta.description"; + } // attrs.meta; + }); + + hxcpp = buildHaxeLib rec { + libname = "hxcpp"; + version = "3.4.64"; + sha256 = "04gyjm6wqmsm0ifcfkxmq1yv8xrfzys3z5ajqnvvjrnks807mw8q"; + 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 ${ stdenv.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 = stdenv.lib.licenses.bsd2; + platforms = stdenv.lib.platforms.all; + description = "Extern definitions for node.js 6.9"; + }; + }; + }; +in self diff --git a/infra/libkookie/nixpkgs/pkgs/top-level/impure.nix b/infra/libkookie/nixpkgs/pkgs/top-level/impure.nix new file mode 100644 index 000000000000..3ba6c08a140b --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/top-level/impure.nix @@ -0,0 +1,91 @@ +/* Impure default args for `pkgs/top-level/default.nix`. See that file + for the meaning of each argument. */ + +with builtins; + +let + + homeDir = builtins.getEnv "HOME"; + + # Return ‘x’ if it evaluates, or ‘def’ if it throws an exception. + try = x: def: let res = tryEval x; in if res.success then res.value else def; + +in + +{ # We combine legacy `system` and `platform` into `localSystem`, if + # `localSystem` was not passed. Strictly speaking, this is pure desugar, but + # it is most convient to do so before the impure `localSystem.system` default, + # so we do it now. + localSystem ? builtins.intersectAttrs { system = null; platform = null; } args + +, # These are needed only because nix's `--arg` command-line logic doesn't work + # with unnamed parameters allowed by ... + system ? localSystem.system +, platform ? localSystem.platform +, crossSystem ? null + +, # Fallback: The contents of the configuration file found at $NIXPKGS_CONFIG or + # $HOME/.config/nixpkgs/config.nix. + config ? let + configFile = getEnv "NIXPKGS_CONFIG"; + configFile2 = homeDir + "/.config/nixpkgs/config.nix"; + configFile3 = homeDir + "/.nixpkgs/config.nix"; # obsolete + in + if configFile != "" && pathExists configFile then import configFile + else if homeDir != "" && pathExists configFile2 then import configFile2 + else if homeDir != "" && 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: 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 = readDir path; in + map (n: import (path + ("/" + n))) + (builtins.filter (n: builtins.match ".*\\.nix" n != null || pathExists (path + ("/" + n + "/default.nix"))) + (attrNames content)) + else + # it's a file, so the result is the contents of the file itself + import path; + in + if pathOverlays != "" && pathExists pathOverlays then overlays pathOverlays + else if pathExists homeOverlaysFile && 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 pathExists homeOverlaysFile then + if isDir homeOverlaysFile then + throw (homeOverlaysFile + " should be a file") + else overlays homeOverlaysFile + else if 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` and `platform` should +# not be passed. +assert args ? localSystem -> !(args ? system || args ? platform); + +import ./. (builtins.removeAttrs args [ "system" "platform" ] // { + inherit config overlays crossSystem crossOverlays; + # Fallback: Assume we are building packages on the current (build, in GNU + # Autotools parlance) system. + localSystem = if builtins.isString localSystem then localSystem + else (if args ? localSystem then {} + else { system = builtins.currentSystem; }) // localSystem; +}) diff --git a/infra/libkookie/nixpkgs/pkgs/top-level/java-packages.nix b/infra/libkookie/nixpkgs/pkgs/top-level/java-packages.nix new file mode 100644 index 000000000000..73ed6bf9162c --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/top-level/java-packages.nix @@ -0,0 +1,315 @@ +{ pkgs }: + +with pkgs; + +let + mavenbuild = callPackage ../development/java-modules/build-maven-package.nix { }; + fetchMaven = callPackage ../development/java-modules/m2install.nix { }; +in { + inherit mavenbuild fetchMaven; + + 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/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; + + inherit (callPackage ../development/java-modules/plexus/compiler-javac.nix { inherit fetchMaven; }) + plexusCompilerJavac_2_2; + + inherit (callPackage ../development/java-modules/plexus/compiler-manager.nix { inherit fetchMaven; }) + plexusCompilerManager_2_2; + + 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/infra/libkookie/nixpkgs/pkgs/top-level/lua-packages.nix b/infra/libkookie/nixpkgs/pkgs/top-level/lua-packages.nix new file mode 100644 index 000000000000..d120e9f7a7f2 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/top-level/lua-packages.nix @@ -0,0 +1,164 @@ +/* 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, pkgconfig +, pcre, oniguruma, gnulib, tre, glibc, sqlite, openssl, expat +, autoreconfHook, gnum4 +, mysql, postgresql, cyrus_sasl +, fetchFromGitHub, which, writeText +, pkgs +, lib +}: + +let + packages = ( self: + +let + luaAtLeast = lib.versionAtLeast lua.luaversion; + luaOlder = lib.versionOlder lua.luaversion; + isLua51 = (lib.versions.majorMinor lua.version) == "5.1"; + isLua52 = (lib.versions.majorMinor lua.version) == "5.2"; + isLua53 = lua.luaversion == "5.3"; + isLuaJIT = lib.getName lua == "luajit"; + + lua-setup-hook = callPackage ../development/interpreters/lua-5/setup-hook.nix { }; + + # Check whether a derivation provides a lua module. + hasLuaModule = drv: drv ? luaModule ; + + callPackage = pkgs.newScope self; + + requiredLuaModules = drvs: with stdenv.lib; let + modules = filter hasLuaModule drvs; + in unique ([lua] ++ modules ++ concatLists (catAttrs "requiredLuaModules" modules)); + + # Convert derivation to a lua module. + toLuaModule = drv: + drv.overrideAttrs( oldAttrs: { + # Use passthru in order to prevent rebuilds when possible. + passthru = (oldAttrs.passthru or {})// { + luaModule = lua; + requiredLuaModules = requiredLuaModules drv.propagatedBuildInputs; + }; + }); + + + platformString = + if stdenv.isDarwin then "macosx" + else if stdenv.isFreeBSD then "freebsd" + else if stdenv.isLinux then "linux" + else if stdenv.isSunOS then "solaris" + else throw "unsupported platform"; + + buildLuaApplication = args: buildLuarocksPackage ({namePrefix="";} // args ); + + buildLuarocksPackage = with pkgs.lib; makeOverridable(callPackage ../development/interpreters/lua-5/build-lua-package.nix { + inherit toLuaModule; + inherit lua; + }); +in +with self; { + + getLuaPathList = majorVersion: [ + "share/lua/${majorVersion}/?.lua" + "share/lua/${majorVersion}/?/init.lua" + ]; + getLuaCPathList = majorVersion: [ + "lib/lua/${majorVersion}/?.so" + ]; + + # helper functions for dealing with LUA_PATH and LUA_CPATH + getPath = drv: pathListForVersion: + lib.concatMapStringsSep ";" (path: "${drv}/${path}") (pathListForVersion lua.luaversion); + getLuaPath = drv: getPath drv getLuaPathList; + getLuaCPath = drv: getPath drv getLuaCPathList; + + #define build lua package function + buildLuaPackage = callPackage ../development/lua-modules/generic { + inherit lua writeText; + }; + + + inherit toLuaModule lua-setup-hook; + inherit buildLuarocksPackage buildLuaApplication; + inherit requiredLuaModules luaOlder luaAtLeast + isLua51 isLua52 isLua53 isLuaJIT lua callPackage; + + # wraps programs in $out/bin with valid LUA_PATH/LUA_CPATH + wrapLua = callPackage ../development/interpreters/lua-5/wrap-lua.nix { + inherit lua; inherit (pkgs) makeSetupHook makeWrapper; + }; + + luarocks = callPackage ../development/tools/misc/luarocks { + inherit lua; + }; + + luarocks-nix = callPackage ../development/tools/misc/luarocks/luarocks-nix.nix { }; + + luxio = buildLuaPackage rec { + name = "luxio-${version}"; + version = "13"; + + src = fetchurl { + url = "https://git.gitano.org.uk/luxio.git/snapshot/luxio-luxio-13.tar.bz2"; + sha256 = "1hvwslc25q7k82rxk461zr1a2041nxg7sn3sw3w0y5jxf0giz2pz"; + }; + + nativeBuildInputs = [ which pkgconfig ]; + + 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 stdenv.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 = toLuaModule(stdenv.mkDerivation rec { + pname = "vicious"; + version = "2.3.1"; + + src = fetchFromGitHub { + owner = "Mic92"; + repo = "vicious"; + rev = "v${version}"; + sha256 = "1yzhjn8rsvjjsfycdc993ms6jy2j5jh7x3r2ax6g02z5n0anvnbx"; + }; + + 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 stdenv.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/infra/libkookie/nixpkgs/pkgs/top-level/make-tarball.nix b/infra/libkookie/nixpkgs/pkgs/top-level/make-tarball.nix new file mode 100644 index 000000000000..f65829e29cab --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/top-level/make-tarball.nix @@ -0,0 +1,125 @@ +/* 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 +, pkgs ? import nixpkgs.outPath {} +, nix ? pkgs.nix +, lib-tests ? import ../../lib/tests/release.nix { inherit pkgs; } +}: + +with 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 = [ nix.out jq lib-tests pkgs.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)" + ''; + + 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 + + echo 'abort "Illegal use of <nixpkgs> in Nixpkgs."' > $TMPDIR/barf.nix + + # Make sure that Nixpkgs does not use <nixpkgs>. + badFiles=$(find 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 + + # Make sure that derivation paths do not depend on the Nixpkgs path. + mkdir $TMPDIR/foo + ln -s $(readlink -f .) $TMPDIR/foo/bar + p1=$(nix-instantiate ./. --dry-run -A firefox --show-trace) + p2=$(nix-instantiate $TMPDIR/foo/bar --dry-run -A firefox --show-trace) + if [ "$p1" != "$p2" ]; then + echo "Nixpkgs evaluation depends on Nixpkgs path ($p1 vs $p2)!" + exit 1 + fi + + # Check that all-packages.nix evaluates on a number of platforms without any warnings. + for platform in i686-linux x86_64-linux x86_64-darwin; do + header "checking Nixpkgs on $platform" + + nix-env -f . \ + --show-trace --argstr system "$platform" \ + -qa --drv-path --system-filter \* --system \ + "''${opts[@]}" 2>&1 >/dev/null | tee eval-warnings.log + + if [ -s eval-warnings.log ]; then + echo "Nixpkgs on $platform evaluated with warnings, aborting" + exit 1 + fi + rm eval-warnings.log + + nix-env -f . \ + --show-trace --argstr system "$platform" \ + -qa --drv-path --system-filter \* --system --meta --xml \ + "''${opts[@]}" > /dev/null + done + + 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 --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 = [ lib.maintainers.all ]; + }; +} diff --git a/infra/libkookie/nixpkgs/pkgs/top-level/metrics.nix b/infra/libkookie/nixpkgs/pkgs/top-level/metrics.nix new file mode 100644 index 000000000000..2bfcb9d5d80a --- /dev/null +++ b/infra/libkookie/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" ]; + } + '' + export NIX_STATE_DIR=$TMPDIR + 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 time -o stats-time "$@" 2>stats-nix >/dev/null ;; + *) + NIX_SHOW_STATS=1 time -o stats-time "$@" 2>stats-nix ;; + esac + + sed '/^warning:/d' -i stats-nix + + 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/infra/libkookie/nixpkgs/pkgs/top-level/ocaml-packages.nix b/infra/libkookie/nixpkgs/pkgs/top-level/ocaml-packages.nix new file mode 100644 index 000000000000..6af78e8f30d4 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/top-level/ocaml-packages.nix @@ -0,0 +1,1255 @@ +{ 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 {}; + + 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 { }; + + 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 { }; + + base64 = callPackage ../development/ocaml-modules/base64 { }; + + bap = callPackage ../development/ocaml-modules/bap { + llvm = pkgs.llvm_8; + }; + + batteries = callPackage ../development/ocaml-modules/batteries { }; + + 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 { }; + + bolt = callPackage ../development/ocaml-modules/bolt { }; + + bos = callPackage ../development/ocaml-modules/bos { }; + + 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_0 = + if lib.versionOlder "4.02" ocaml.version + then null + else callPackage ../development/ocaml-modules/camlimages/4.0.nix { + libpng = pkgs.libpng12; + giflib = pkgs.giflib_4_1; + }; + 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 { }; + + bin_prot_p4 = callPackage ../development/ocaml-modules/bin_prot { }; + + bisect_ppx = callPackage ../development/ocaml-modules/bisect_ppx { }; + bisect_ppx-ocamlbuild = callPackage ../development/ocaml-modules/bisect_ppx-ocamlbuild { }; + + ocaml_cairo = callPackage ../development/ocaml-modules/ocaml-cairo { }; + + cairo2 = callPackage ../development/ocaml-modules/cairo2 { }; + + cfstream = callPackage ../development/ocaml-modules/cfstream { }; + + 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 { }; + + 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 { }; + + config-file = callPackage ../development/ocaml-modules/config-file { }; + + containers = callPackage ../development/ocaml-modules/containers { }; + + containers-data = callPackage ../development/ocaml-modules/containers/data.nix { }; + + cow = callPackage ../development/ocaml-modules/cow { }; + + cpdf = callPackage ../development/ocaml-modules/cpdf { }; + + cppo = callPackage ../development/tools/ocaml/cppo { }; + + 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 = + if lib.versionAtLeast ocaml.version "4.2" + then callPackage ../development/ocaml-modules/cstruct {} + else callPackage ../development/ocaml-modules/cstruct/1.9.0.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 { }; + + curly = callPackage ../development/ocaml-modules/curly { + inherit (pkgs) curl; + }; + + curses = callPackage ../development/ocaml-modules/curses { }; + + ctypes = callPackage ../development/ocaml-modules/ctypes { }; + + decompress = callPackage ../development/ocaml-modules/decompress { }; + + digestif = callPackage ../development/ocaml-modules/digestif { }; + + dispatch = callPackage ../development/ocaml-modules/dispatch { }; + + dns = callPackage ../development/ocaml-modules/dns { }; + + dns-client = callPackage ../development/ocaml-modules/dns/client.nix { }; + + dolmen = callPackage ../development/ocaml-modules/dolmen { }; + + dolog = callPackage ../development/ocaml-modules/dolog { }; + + domain-name = callPackage ../development/ocaml-modules/domain-name { }; + + dtoa = callPackage ../development/ocaml-modules/dtoa { }; + + duff = callPackage ../development/ocaml-modules/duff { }; + + dum = callPackage ../development/ocaml-modules/dum { }; + + dune = callPackage ../development/tools/ocaml/dune { }; + + 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-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; + }; + + 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 { }; + + elina = callPackage ../development/ocaml-modules/elina { }; + + eliom = callPackage ../development/ocaml-modules/eliom { }; + + elpi = callPackage ../development/ocaml-modules/elpi { }; + + encore = callPackage ../development/ocaml-modules/encore { }; + + 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 { }; + + estring = callPackage ../development/ocaml-modules/estring { }; + + ezjsonm = callPackage ../development/ocaml-modules/ezjsonm { }; + + ezxmlm = callPackage ../development/ocaml-modules/ezxmlm { }; + + facile = callPackage ../development/ocaml-modules/facile { }; + + faillib = callPackage ../development/ocaml-modules/faillib { }; + + faraday = callPackage ../development/ocaml-modules/faraday { }; + + farfadet = callPackage ../development/ocaml-modules/farfadet { }; + + fdkaac = callPackage ../development/ocaml-modules/fdkaac { }; + + fiat-p256 = callPackage ../development/ocaml-modules/fiat-p256 { }; + + fieldslib_p4 = callPackage ../development/ocaml-modules/fieldslib { }; + + fileutils = callPackage ../development/ocaml-modules/fileutils { }; + + findlib = callPackage ../development/tools/ocaml/findlib { }; + + fix = callPackage ../development/ocaml-modules/fix { }; + + 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 { }; + + gmap = callPackage ../development/ocaml-modules/gmap { }; + + gnuplot = callPackage ../development/ocaml-modules/gnuplot { + inherit (pkgs) gnuplot; + }; + + gsl = callPackage ../development/ocaml-modules/gsl { + inherit (pkgs) gsl; + }; + + hacl_x25519 = callPackage ../development/ocaml-modules/hacl_x25519 { }; + + 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 { }; + + imagelib = callPackage ../development/ocaml-modules/imagelib { }; + + imagelib-unix = callPackage ../development/ocaml-modules/imagelib/unix.nix { }; + + 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-http = callPackage ../development/ocaml-modules/git-http { }; + + git-unix = callPackage ../development/ocaml-modules/git-unix { + 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 { }; + + gtktop = callPackage ../development/ocaml-modules/gtktop { }; + + 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-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-mem = callPackage ../development/ocaml-modules/irmin/mem.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 { }; + + jwto = callPackage ../development/ocaml-modules/jwto { }; + + kafka = callPackage ../development/ocaml-modules/kafka { }; + + 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 libglade gtksourceview; + }; + lablgtk = callPackage ../development/ocaml-modules/lablgtk { + inherit (pkgs.gnome2) libgnomecanvas libglade 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 { }; + + lambdaTerm = callPackage ../development/ocaml-modules/lambda-term { }; + + lens = callPackage ../development/ocaml-modules/lens { }; + + linenoise = callPackage ../development/ocaml-modules/linenoise { }; + + llvm = callPackage ../development/ocaml-modules/llvm { + llvm = pkgs.llvm_8; + }; + + logs = callPackage ../development/ocaml-modules/logs { }; + + lru = callPackage ../development/ocaml-modules/lru { }; + + lua-ml = callPackage ../development/ocaml-modules/lua-ml { }; + + lwt = callPackage ../development/ocaml-modules/lwt { }; + + ocaml_lwt = lwt; + + lwt_camlp4 = callPackage ../development/ocaml-modules/lwt/camlp4.nix { }; + + 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 { }; + + markup = callPackage ../development/ocaml-modules/markup { }; + + mdx = callPackage ../development/ocaml-modules/mdx { }; + + menhir = callPackage ../development/ocaml-modules/menhir { }; + + merlin = callPackage ../development/tools/ocaml/merlin { }; + + merlin-extend = callPackage ../development/ocaml-modules/merlin-extend { }; + + metrics = callPackage ../development/ocaml-modules/metrics { }; + + metrics-lwt = callPackage ../development/ocaml-modules/metrics/lwt.nix { }; + + metrics-unix = callPackage ../development/ocaml-modules/metrics/unix.nix { + inherit (pkgs) gnuplot; + }; + + mezzo = callPackage ../development/compilers/mezzo { }; + + minisat = callPackage ../development/ocaml-modules/minisat { }; + + mirage-clock = callPackage ../development/ocaml-modules/mirage-clock { }; + + mirage-clock-unix = callPackage ../development/ocaml-modules/mirage-clock/unix.nix { }; + + mirage-crypto = callPackage ../development/ocaml-modules/mirage-crypto { }; + + 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-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-protocols = callPackage ../development/ocaml-modules/mirage-protocols { }; + + mirage-random = callPackage ../development/ocaml-modules/mirage-random { }; + + 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-unix = callPackage ../development/ocaml-modules/mirage-unix { }; + + mlgmp = callPackage ../development/ocaml-modules/mlgmp { }; + + mlgmpidl = callPackage ../development/ocaml-modules/mlgmpidl { }; + + mmap = callPackage ../development/ocaml-modules/mmap { }; + + mparser = callPackage ../development/ocaml-modules/mparser { }; + + mstruct = callPackage ../development/ocaml-modules/mstruct { }; + + mtime = callPackage ../development/ocaml-modules/mtime { }; + + mustache = callPackage ../development/ocaml-modules/mustache { }; + + nocrypto = callPackage ../development/ocaml-modules/nocrypto { }; + + 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 { }; + + ocamlfuse = callPackage ../development/ocaml-modules/ocamlfuse { }; + + ocaml_gettext = callPackage ../development/ocaml-modules/ocaml-gettext { }; + + gettext-stub = callPackage ../development/ocaml-modules/ocaml-gettext/stub.nix { }; + + ocamlgraph = callPackage ../development/ocaml-modules/ocamlgraph { }; + + ocaml_http = callPackage ../development/ocaml-modules/http { }; + + ocaml_libvirt = callPackage ../development/ocaml-modules/ocaml-libvirt { }; + + ocamlify = callPackage ../development/tools/ocaml/ocamlify { }; + + ocaml-migrate-parsetree = callPackage ../development/ocaml-modules/ocaml-migrate-parsetree { }; + + 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_optcomp = callPackage ../development/ocaml-modules/optcomp { }; + + ocaml_pcre = callPackage ../development/ocaml-modules/pcre {}; + + 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 { }; + + ocaml_text = callPackage ../development/ocaml-modules/ocaml-text { }; + + ocaml-version = callPackage ../development/ocaml-modules/ocaml-version { }; + + ocf = callPackage ../development/ocaml-modules/ocf { }; + + 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 { }; + + odoc = callPackage ../development/ocaml-modules/odoc { }; + + 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 { }; + + otfm = callPackage ../development/ocaml-modules/otfm { }; + + 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 { }; + + pgsolver = callPackage ../development/ocaml-modules/pgsolver { }; + + phylogenetics = callPackage ../development/ocaml-modules/phylogenetics { }; + + 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 { }; + + ppxfind = callPackage ../development/ocaml-modules/ppxfind { }; + + 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 { }; + + result = callPackage ../development/ocaml-modules/ocaml-result { }; + + secp256k1 = callPackage ../development/ocaml-modules/secp256k1 { + inherit (pkgs) secp256k1; + }; + + seq = callPackage ../development/ocaml-modules/seq { }; + + sosa = callPackage ../development/ocaml-modules/sosa { }; + + spacetime_lib = callPackage ../development/ocaml-modules/spacetime_lib { }; + + sqlexpr = callPackage ../development/ocaml-modules/sqlexpr { }; + + 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 { }; + + 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 = callPackage ../development/ocaml-modules/extlib { }; + + ocb-stubblr = callPackage ../development/ocaml-modules/ocb-stubblr { }; + + ocurl = callPackage ../development/ocaml-modules/ocurl { }; + + pa_ounit = callPackage ../development/ocaml-modules/pa_ounit { }; + + pa_bench = callPackage ../development/ocaml-modules/pa_bench { }; + + parany = callPackage ../development/ocaml-modules/parany { }; + + pipebang = callPackage ../development/ocaml-modules/pipebang { }; + + pprint = callPackage ../development/ocaml-modules/pprint { }; + + ppx_blob = + if lib.versionAtLeast ocaml.version "4.02" + then callPackage ../development/ocaml-modules/ppx_blob {} + else null; + + ppx_cstruct = callPackage ../development/ocaml-modules/cstruct/ppx.nix {}; + + ppx_derivers = callPackage ../development/ocaml-modules/ppx_derivers {}; + + ppx_deriving = + if lib.versionAtLeast ocaml.version "4.02" + then callPackage ../development/ocaml-modules/ppx_deriving {} + else null; + + ppx_deriving_protobuf = callPackage ../development/ocaml-modules/ppx_deriving_protobuf {}; + + ppx_deriving_rpc = callPackage ../development/ocaml-modules/ppx_deriving_rpc { + ppxlib = ppxlib.override { legacy = true; }; + }; + + ppx_deriving_yojson = callPackage ../development/ocaml-modules/ppx_deriving_yojson {}; + + 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_sqlexpr = callPackage ../development/ocaml-modules/sqlexpr/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 {}; + + printbox = callPackage ../development/ocaml-modules/printbox { }; + + process = callPackage ../development/ocaml-modules/process { }; + + prof_spacetime = callPackage ../development/ocaml-modules/prof_spacetime { }; + + ptmap = callPackage ../development/ocaml-modules/ptmap { }; + + ptset = callPackage ../development/ocaml-modules/ptset { }; + + pycaml = callPackage ../development/ocaml-modules/pycaml { }; + + 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 { }; + + re = callPackage ../development/ocaml-modules/re { }; + + react = callPackage ../development/ocaml-modules/react { }; + + reactivedata = callPackage ../development/ocaml-modules/reactivedata {}; + + reason = callPackage ../development/compilers/reason { }; + + rope = callPackage ../development/ocaml-modules/rope { }; + + rpclib = callPackage ../development/ocaml-modules/rpclib { }; + + 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 { }; + + 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 { }; + + 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 { }; + + toml = callPackage ../development/ocaml-modules/toml { }; + + topkg = callPackage ../development/ocaml-modules/topkg { }; + + tsdl = callPackage ../development/ocaml-modules/tsdl { }; + + twt = callPackage ../development/ocaml-modules/twt { }; + + typerep_p4 = callPackage ../development/ocaml-modules/typerep { }; + + uchar = callPackage ../development/ocaml-modules/uchar { }; + + utop = callPackage ../development/tools/ocaml/utop { }; + + uuidm = callPackage ../development/ocaml-modules/uuidm { }; + + sawja = callPackage ../development/ocaml-modules/sawja { }; + + stdint = callPackage ../development/ocaml-modules/stdint { }; + + 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 { }; + + variantslib_p4 = callPackage ../development/ocaml-modules/variantslib { }; + + vg = callPackage ../development/ocaml-modules/vg { }; + + visitors = callPackage ../development/ocaml-modules/visitors { }; + + wasm = callPackage ../development/ocaml-modules/wasm { }; + + webbrowser = callPackage ../development/ocaml-modules/webbrowser { }; + + webmachine = callPackage ../development/ocaml-modules/webmachine { }; + + wtf8 = callPackage ../development/ocaml-modules/wtf8 { }; + + x509 = callPackage ../development/ocaml-modules/x509 { }; + + xmlm = callPackage ../development/ocaml-modules/xmlm { }; + + xml-light = callPackage ../development/ocaml-modules/xml-light { }; + + xtmpl = callPackage ../development/ocaml-modules/xtmpl { }; + + yaml = callPackage ../development/ocaml-modules/yaml { }; + + yojson = callPackage ../development/ocaml-modules/yojson { }; + + 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_13.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.13.nix { + inherit ctypes dune-configurator janePackage num octavius ppxlib re; + inherit (pkgs) openssl; + } + else if lib.versionOlder "4.07" ocaml.version + then import ../development/ocaml-modules/janestreet/0.12.nix { + inherit ctypes janePackage num octavius re; + inherit (pkgs) openssl; + ppxlib = ppxlib.override { legacy = true; }; + } + else import ../development/ocaml-modules/janestreet { + inherit janePackage ocamlbuild angstrom ctypes cryptokit; + inherit magic-mime num ocaml-migrate-parsetree octavius ounit; + inherit ppx_deriving re; + inherit (pkgs) openssl; + ppxlib = ppxlib.override { legacy = true; }; + }; + + janeStreet_0_9_0 = import ../development/ocaml-modules/janestreet/old.nix { + janePackage = callPackage ../development/ocaml-modules/janestreet/janePackage.nix { defaultVersion = "0.9.0"; }; + inherit lib ocaml ocamlbuild ctypes cryptokit; + inherit magic-mime num ocaml-migrate-parsetree octavius ounit; + inherit ppx_deriving re zarith; + inherit (pkgs) stdenv openssl; + }; + + js_build_tools = callPackage ../development/ocaml-modules/janestreet/js-build-tools.nix {}; + + buildOcamlJane = callPackage ../development/ocaml-modules/janestreet/buildOcamlJane.nix {}; + + ppx_core = + if lib.versionOlder "4.03" ocaml.version + then janeStreet.ppx_core + else callPackage ../development/ocaml-modules/janestreet/ppx-core.nix {}; + + ppx_optcomp = + if lib.versionOlder "4.03" ocaml.version + then janeStreet.ppx_optcomp + else callPackage ../development/ocaml-modules/janestreet/ppx-optcomp.nix {}; + + ppx_driver = + if lib.versionOlder "4.03" ocaml.version + then janeStreet.ppx_driver + else callPackage ../development/ocaml-modules/janestreet/ppx-driver.nix {}; + + ppx_type_conv = + if lib.versionOlder "4.03" ocaml.version + then janeStreet.ppx_type_conv + else callPackage ../development/ocaml-modules/janestreet/ppx-type-conv.nix {}; + + ppx_compare = + if lib.versionOlder "4.03" ocaml.version + then janeStreet.ppx_compare + else callPackage ../development/ocaml-modules/janestreet/ppx-compare.nix {}; + + ppx_here = + if lib.versionOlder "4.03" ocaml.version + then janeStreet.ppx_here + else callPackage ../development/ocaml-modules/janestreet/ppx-here.nix {}; + + ppx_sexp_conv = + if lib.versionOlder "4.03" ocaml.version + then janeStreet.ppx_sexp_conv + else callPackage ../development/ocaml-modules/janestreet/ppx-sexp-conv.nix {}; + + ppx_assert = + if lib.versionOlder "4.03" ocaml.version + then janeStreet.ppx_assert + else callPackage ../development/ocaml-modules/janestreet/ppx-assert.nix {}; + + ppx_inline_test = + if lib.versionOlder "4.03" ocaml.version + then janeStreet.ppx_inline_test + else callPackage ../development/ocaml-modules/janestreet/ppx-inline-test.nix {}; + + ppx_bench = + if lib.versionOlder "4.03" ocaml.version + then janeStreet.ppx_bench + else callPackage ../development/ocaml-modules/janestreet/ppx-bench.nix {}; + + ppx_bin_prot = + if lib.versionOlder "4.03" ocaml.version + then janeStreet.ppx_bin_prot + else callPackage ../development/ocaml-modules/janestreet/ppx-bin-prot.nix {}; + + ppx_custom_printf = + if lib.versionOlder "4.03" ocaml.version + then janeStreet.ppx_custom_printf + else callPackage ../development/ocaml-modules/janestreet/ppx-custom-printf.nix {}; + + ppx_enumerate = + if lib.versionOlder "4.03" ocaml.version + then janeStreet.ppx_enumerate + else callPackage ../development/ocaml-modules/janestreet/ppx-enumerate.nix {}; + + ppx_fail = + if lib.versionOlder "4.03" ocaml.version + then janeStreet.ppx_fail + else callPackage ../development/ocaml-modules/janestreet/ppx-fail.nix {}; + + ppx_fields_conv = + if lib.versionOlder "4.03" ocaml.version + then janeStreet.ppx_fields_conv + else callPackage ../development/ocaml-modules/janestreet/ppx-fields-conv.nix {}; + + ppx_let = + if lib.versionOlder "4.03" ocaml.version + then janeStreet.ppx_let + else callPackage ../development/ocaml-modules/janestreet/ppx-let.nix {}; + + ppx_pipebang = + if lib.versionOlder "4.03" ocaml.version + then janeStreet.ppx_pipebang + else callPackage ../development/ocaml-modules/janestreet/ppx-pipebang.nix {}; + + ppx_sexp_message = + if lib.versionOlder "4.03" ocaml.version + then janeStreet.ppx_sexp_message + else callPackage ../development/ocaml-modules/janestreet/ppx-sexp-message.nix {}; + + ppx_sexp_value = + if lib.versionOlder "4.03" ocaml.version + then janeStreet.ppx_sexp_value + else callPackage ../development/ocaml-modules/janestreet/ppx-sexp-value.nix {}; + + ppx_typerep_conv = + if lib.versionOlder "4.03" ocaml.version + then janeStreet.ppx_typerep_conv + else callPackage ../development/ocaml-modules/janestreet/ppx-typerep-conv.nix {}; + + ppx_variants_conv = + if lib.versionOlder "4.03" ocaml.version + then janeStreet.ppx_variants_conv + else callPackage ../development/ocaml-modules/janestreet/ppx-variants-conv.nix {}; + + ppx_expect = + if lib.versionOlder "4.03" ocaml.version + then janeStreet.ppx_expect + else callPackage ../development/ocaml-modules/janestreet/ppx-expect.nix {}; + + ppx_jane = + if lib.versionOlder "4.03" ocaml.version + then janeStreet.ppx_jane + else callPackage ../development/ocaml-modules/janestreet/ppx-jane.nix {}; + + + # Core sublibs + typerep = + if lib.versionOlder "4.03" ocaml.version + then janeStreet.typerep + else if lib.versionOlder "4.02" ocaml.version + then callPackage ../development/ocaml-modules/janestreet/typerep.nix {} + else typerep_p4; + + fieldslib = + if lib.versionOlder "4.03" ocaml.version + then janeStreet.fieldslib + else if lib.versionOlder "4.02" ocaml.version + then callPackage ../development/ocaml-modules/janestreet/fieldslib.nix {} + else fieldslib_p4; + + sexplib = + if lib.versionOlder "4.03" ocaml.version + then janeStreet.sexplib + else if lib.versionOlder "4.02" ocaml.version + then callPackage ../development/ocaml-modules/janestreet/sexplib.nix {} + else null; + + variantslib = + if lib.versionOlder "4.03" ocaml.version + then janeStreet.variantslib + else if lib.versionOlder "4.02" ocaml.version + then callPackage ../development/ocaml-modules/janestreet/variantslib.nix {} + else variantslib_p4; + + bin_prot = + if lib.versionOlder "4.03" ocaml.version + then janeStreet.bin_prot + else if lib.versionOlder "4.02" ocaml.version + then callPackage ../development/ocaml-modules/janestreet/bin_prot.nix {} + else bin_prot_p4; + + core_bench = + if lib.versionOlder "4.03" ocaml.version + then janeStreet.core_bench else + callPackage ../development/ocaml-modules/janestreet/core_bench.nix {}; + + async_rpc_kernel = + if lib.versionOlder "4.03" ocaml.version + then janeStreet.async_rpc_kernel + else callPackage ../development/ocaml-modules/janestreet/async-rpc-kernel.nix {}; + + # 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 { }; + + 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_latest = ocamlPackages_4_11; + + ocamlPackages = ocamlPackages_4_10; +} diff --git a/infra/libkookie/nixpkgs/pkgs/top-level/packages-config.nix b/infra/libkookie/nixpkgs/pkgs/top-level/packages-config.nix new file mode 100644 index 000000000000..8ce855780cf9 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/top-level/packages-config.nix @@ -0,0 +1,13 @@ +# 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: { + haskellPackages = super.recurseIntoAttrs super.haskellPackages; + rPackages = super.recurseIntoAttrs super.rPackages; + }; +} diff --git a/infra/libkookie/nixpkgs/pkgs/top-level/perl-packages.nix b/infra/libkookie/nixpkgs/pkgs/top-level/perl-packages.nix new file mode 100644 index 000000000000..6f6c45a27db0 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/top-level/perl-packages.nix @@ -0,0 +1,23106 @@ +/* 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, buildPackages, pkgs +, fetchurl, fetchgit, fetchpatch, fetchFromGitHub +, perl, overrides, buildPerl, shortenPerlShebang +}: + +# cpan2nix assumes that perl-packages.nix will be used only with perl 5.30.3 or above +assert stdenv.lib.versionAtLeast perl.version "5.30.3"; +let + inherit (stdenv.lib) maintainers; + 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 = stdenv.lib.filter hasPerlModule drvs; + in stdenv.lib.unique ([perl] ++ modules ++ stdenv.lib.concatLists (stdenv.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 = stdenv.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 (stdenv.lib.misc.closePropagation deps); + + + ack = buildPerlPackage { + pname = "ack"; + version = "3.4.0"; + + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PETDANCE/ack-v3.4.0.tar.gz"; + sha256 = "0l3bkac2kl1nl5pwmh5b4plyr7wdzf1h501gwkga2ag1p6wxdkvf"; + }; + + outputs = ["out" "man"]; + + nativeBuildInputs = stdenv.lib.optional stdenv.isDarwin shortenPerlShebang; + propagatedBuildInputs = [ FileNext ]; + postInstall = stdenv.lib.optionalString stdenv.isDarwin '' + shortenPerlShebang $out/bin/ack + ''; + + # tests fails on nixos and hydra because of different purity issues + doCheck = false; + + meta = with stdenv.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 ]; + }; + }; + + 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.10"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HA/HAARG/Algorithm-C3-0.10.tar.gz"; + sha256 = "01hlcaxndls86bl92rkd3fvf9pfa3inxqaimv88bxs95803kmkss"; + }; + meta = { + description = "A module for merging hierarchies using the C3 algorithm"; + license = with stdenv.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 ]; + }; + + 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 ]; + }; + + AlienBuild = buildPerlPackage { + pname = "Alien-Build"; + version = "2.29"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PL/PLICEASE/Alien-Build-2.29.tar.gz"; + sha256 = "0wx1czv14dhfkd9nwa3y2g2gy8fx041hdmckhkhb1ly46ral4d4f"; + }; + propagatedBuildInputs = [ CaptureTiny FFICheckLib FileWhich Filechdir PathTiny PkgConfig ]; + buildInputs = [ DevelHide Test2Suite ]; + meta = { + description = "Build external dependencies for use in CPAN"; + license = with stdenv.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 stdenv.lib.licenses; [ lgpl3Plus ]; + }; + }; + + AlienLibxml2 = buildPerlPackage { + pname = "Alien-Libxml2"; + version = "0.16"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PL/PLICEASE/Alien-Libxml2-0.16.tar.gz"; + sha256 = "15rvllspikyr8412v8dpl2f2w5vxnjgnddnkz378sy2g0mc6mw2n"; + }; + propagatedBuildInputs = [ AlienBuild ]; + buildInputs = [ pkgs.libxml2 MojoDOM58 SortVersions Test2Suite URI ]; + meta = { + description = "Install the C libxml2 library on your system"; + license = with stdenv.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 stdenv.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 stdenv.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.pkgconfig 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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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"; + }; + }; + + 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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ApacheSession = buildPerlModule { + pname = "Apache-Session"; + version = "1.93"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CH/CHORNY/Apache-Session-1.93.tar.gz"; + sha256 = "8e5a4882ac8ec657d1018d74d3ba37854e2688a41ddd0e1d73955ea59f276e8d"; + }; + buildInputs = [ TestDeep TestException ]; + meta = { + description = "A persistence framework for session data"; + license = with stdenv.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 = stdenv.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/etc/bash_completion.d + mv $out/bin/clusterssh_bash_completion.dist \ + $out/etc/bash_completion.d/clusterssh_bash_completion + substituteInPlace $out/etc/bash_completion.d/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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Appcpanminus = buildPerlPackage { + pname = "App-cpanminus"; + version = "1.7044"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIYAGAWA/App-cpanminus-1.7044.tar.gz"; + sha256 = "9b60767fe40752ef7a9d3f13f19060a63389a5c23acc3e9827e19b75500f81f3"; + }; + meta = { + homepage = "https://github.com/miyagawa/cpanminus"; + description = "Get, unpack, build and install modules from CPAN"; + license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Applify = buildPerlPackage { + pname = "Applify"; + version = "0.21"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JH/JHTHORSEN/Applify-0.21.tar.gz"; + sha256 = "e34bc64c12c42369af6db7d17e3e20059b9d97ed50f8e487bf610008525eb84d"; + }; + meta = { + homepage = "https://github.com/jhthorsen/applify"; + description = "Write object oriented scripts with ease"; + license = stdenv.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 ] + ++ stdenv.lib.optional (!stdenv.isDarwin) [ Wx ]; + nativeBuildInputs = stdenv.lib.optional stdenv.isDarwin shortenPerlShebang; + postInstall = stdenv.lib.optionalString stdenv.isDarwin '' + shortenPerlShebang $out/bin/chordpro + rm $out/bin/wxchordpro # Wx not supported on darwin + ''; + meta = { + homepage = "http://www.chordpro.org"; + description = "A lyrics and chords formatting program"; + license = with stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Appperlbrew = buildPerlModule { + pname = "App-perlbrew"; + version = "0.88"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GU/GUGOD/App-perlbrew-0.88.tar.gz"; + sha256 = "08aj77i7bh4nhilz16axp4zfv0zg66za2c4i0rcwfg3qxgxbcrzs"; + }; + 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 = stdenv.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 stdenv.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 = stdenv.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 = stdenv.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 = stdenv.lib.licenses.artistic2; + }; + }; + + ArrayCompare = buildPerlModule { + pname = "Array-Compare"; + version = "3.0.3"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DAVECROSS/Array-Compare-v3.0.3.tar.gz"; + sha256 = "13hn913cj7vswh5yy7gxpmhzrwmwknkc73qn7bhw0x7gx757rav2"; + }; + + 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 stdenv.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 = stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ArchiveTarWrapper = buildPerlPackage { + pname = "Archive-Tar-Wrapper"; + version = "0.37"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AR/ARFREITAS/Archive-Tar-Wrapper-0.37.tar.gz"; + sha256 = "0b1hi3zfnq487kfg514kr595j9w8x6wxddy3zlpqcxgiv90zlv3y"; + }; + 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 stdenv.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 = "http://github.com/timj/perl-Astro-FITS-Header/tree/master"; + description = "Object-oriented interface to FITS HDUs"; + license = stdenv.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 = stdenv.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 = stdenv.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 = stdenv.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 stdenv.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 stdenv.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 = stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + AuthenRadius = buildPerlPackage { + pname = "Authen-Radius"; + version = "0.31"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PO/PORTAONE/Authen-Radius-0.31.tar.gz"; + sha256 = "bb5191484188ac7d6e281eb199d16c4e09fb0090af7c2187aa275c454c1fc012"; + }; + buildInputs = [ TestNoWarnings ]; + propagatedBuildInputs = [ DataHexDump NetIP ]; + meta = { + description = "Provide simple Radius client facilities "; + license = with stdenv.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 stdenv.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 stdenv.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 = stdenv.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 stdenv.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 stdenv.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 stdenv.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 = stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + 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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + BerkeleyDB = buildPerlPackage { + pname = "BerkeleyDB"; + version = "0.63"; + + src = fetchurl { + url = "mirror://cpan/authors/id/P/PM/PMQS/BerkeleyDB-0.63.tar.gz"; + sha256 = "1lh2a75cy85hqxlridk862nwzhrp762h74vy27hcbfgb4a6r62by"; + }; + + preConfigure = '' + echo "LIB = ${pkgs.db.out}/lib" > config.in + echo "INCLUDE = ${pkgs.db.dev}/include" >> config.in + ''; + }; + + 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 stdenv.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 stdenv.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 { + pname = "B-Keywords"; + version = "1.21"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RU/RURBAN/B-Keywords-1.21.tar.gz"; + sha256 = "12481z1z1nyrjlkizzqn4cdmcrfjkc3hvxppqipsf6r5gnffh9as"; + }; + meta = { + description = "Lists of reserved barewords and symbol names"; + license = with stdenv.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 stdenv.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 = "http://metacpan.org/release/Bot-Training"; + description = "Plain text training material for bots like Hailo and AI::MegaHAL"; + license = with stdenv.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 = "http://metacpan.org/release/Bot-Training-MegaHAL"; + description = "Provide megahal.trn via Bot::Training"; + license = with stdenv.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 = "http://metacpan.org/release/Bot-Training-StarCraft"; + description = "Provide starcraft.trn via Bot::Training"; + license = with stdenv.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 = [ maintainers.limeytexan ]; + description = "BSD process resource limit and priority functions"; + license = stdenv.lib.licenses.artistic2; + }; + }; + + 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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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.49"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RO/ROBM/Cache-FastMmap-1.49.tar.gz"; + sha256 = "1azz66d4syk6b6gc95drkglajvf8igiy3449hpsm444inis9mscm"; + }; + }; + + 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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Cairo = buildPerlPackage { + pname = "Cairo"; + version = "1.107"; + src = fetchurl { + url = "mirror://cpan/authors/id/X/XA/XAOC/Cairo-1.107.tar.gz"; + sha256 = "0sg1gf1f2pjq7pji0zsv4rbi3bzpsx82z98k7yqxafzrvlkf27ay"; + }; + buildInputs = [ pkgs.cairo ]; + meta = { + homepage = "http://gtk2-perl.sourceforge.net/"; + description = "Perl interface to the cairo 2D vector graphics library"; + license = stdenv.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 = stdenv.lib.licenses.lgpl21Plus; + }; + propagatedBuildInputs = [ Cairo Glib ]; + }; + + 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 = stdenv.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 = stdenv.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 stdenv.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.20"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PETDANCE/Carp-Assert-More-1.20.tar.gz"; + sha256 = "16jnhdjgfwymrc5fki4xlf1rlziszf9k6q0245g976124k708ac5"; + }; + propagatedBuildInputs = [ CarpAssert ]; + meta = { + license = stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ TestWarn ]; + }; + + 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 stdenv.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 stdenv.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 = stdenv.lib.licenses.bsd3; + }; + }; + + CatalystDevel = buildPerlPackage { + pname = "Catalyst-Devel"; + version = "1.41"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HA/HAARG/Catalyst-Devel-1.41.tar.gz"; + sha256 = "9a4a7ab9266aed8b11f399e9859b7ff42615de1d6c7ee76505ed0cae0fce0ae5"; + }; + buildInputs = [ TestFatal ]; + propagatedBuildInputs = [ CatalystActionRenderView CatalystPluginConfigLoader CatalystPluginStaticSimple ConfigGeneral FileChangeNotify FileCopyRecursive ModuleInstall TemplateToolkit ]; + meta = { + homepage = "http://wiki.catalystframework.org/wiki/"; + description = "Catalyst Development Tools"; + license = with stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CatalystRuntime = buildPerlPackage { + pname = "Catalyst-Runtime"; + version = "5.90126"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JJ/JJNAPIORK/Catalyst-Runtime-5.90126.tar.gz"; + sha256 = "66f08334bf8b70049e77c0dcafd741c568e6f1341b2ffbb531a93833638d3986"; + }; + 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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CDB_File = buildPerlPackage { + pname = "CDB_File"; + version = "1.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TODDR/CDB_File-1.02.tar.gz"; + sha256 = "a0ae46916a190dd746be9fb11cda51cfb27dfec0f21e15e1ec2773dadc50c05f"; + }; + meta = { + homepage = "https://github.com/toddr/CDB_File"; + description = "Perl extension for access to cdb databases"; + license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + 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 stdenv.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 = stdenv.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 = stdenv.lib.licenses.artistic1; + }; + }; + + + CGI = buildPerlPackage { + pname = "CGI"; + version = "4.50"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LE/LEEJO/CGI-4.50.tar.gz"; + sha256 = "d8c7a2143352842a9b4962c314ee7e0385273c8b9d8314dcbd04a09c008eef46"; + }; + buildInputs = [ TestDeep TestNoWarnings TestWarn ]; + propagatedBuildInputs = [ HTMLParser ]; + meta = { + description = "Handle Common Gateway Interface requests and responses"; + license = with stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 = stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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.34"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HA/HAARG/Class-C3-0.34.tar.gz"; + sha256 = "1dcibc31v5jwmi6hsdzi7c5ag1sb4wp3kxkibc889qrdj7jm12sd"; + }; + propagatedBuildInputs = [ AlgorithmC3 ]; + meta = { + description = "A pragma to use the C3 method resolution order algorithm"; + license = with stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.limeytexan ]; + }; + }; + + 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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ClassSingleton = buildPerlPackage { + pname = "Class-Singleton"; + version = "1.5"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHAY/Class-Singleton-1.5.tar.gz"; + sha256 = "0y7ngrjf551bjgmijp5rsidbkq6c8hb5lmy2jcqq0fify020s8iq"; + }; + }; + + 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 stdenv.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 stdenv.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 = stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 = stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ClonePP = buildPerlPackage { + pname = "Clone-PP"; + version = "1.07"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NE/NEILB/Clone-PP-1.07.tar.gz"; + sha256 = "15dkhqvih6rx9dnngfwwljcm9s8afb0nbyl2vdvhd8frnw4y31dz"; + }; + meta = { + license = with stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + 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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CompressRawBzip2 = buildPerlPackage { + pname = "Compress-Raw-Bzip2"; + version = "2.096"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PM/PMQS/Compress-Raw-Bzip2-2.096.tar.gz"; + sha256 = "1glcjnbqksaviwyrprh9i4dybsb12kzfy0bx932l0xya9riyfr55"; + }; + + # 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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CompressRawZlib = buildPerlPackage { + pname = "Compress-Raw-Zlib"; + version = "2.096"; + + src = fetchurl { + url = "mirror://cpan/authors/id/P/PM/PMQS/Compress-Raw-Zlib-2.096.tar.gz"; + sha256 = "04jrqvqsa2c655idw7skv5rhb9vx9997h4n9if5p99srq4hblk6d"; + }; + + 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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ConfigAutoConf = buildPerlPackage { + pname = "Config-AutoConf"; + version = "0.318"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RE/REHSACK/Config-AutoConf-0.318.tar.gz"; + sha256 = "0d5bxsax2x3xy8bgqrbzs0562x7bpglan8m23hjxw0rhxkz31j9k"; + }; + propagatedBuildInputs = [ CaptureTiny ]; + meta = { + description = "A module to implement some of AutoConf macros in pure perl"; + license = with stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/dagolden/Config-Identity"; + }; + }; + + ConfigIniFiles = buildPerlModule { + 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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.limeytexan ]; + }; + }; + + 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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Connector = buildPerlPackage { + pname = "Connector"; + version = "1.32"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MR/MRSCOTTY/Connector-1.32.tar.gz"; + sha256 = "c108ce559fa48faf95d01eb6bae9c14ecef49386f89c4aa2c2ce5edf9fd0ca14"; + }; + 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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + ConvertASN1 = buildPerlPackage { + pname = "Convert-ASN1"; + version = "0.27"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GB/GBARR/Convert-ASN1-0.27.tar.gz"; + sha256 = "12nmsca6hzgxq57sx7dp8yq6zxqhl41z5a6018877sf5w25ag93l"; + }; + }; + + 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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 = { + }; + }; + + 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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CPAN = buildPerlPackage { + pname = "CPAN"; + version = "2.28"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AN/ANDK/CPAN-2.28.tar.gz"; + sha256 = "39d357489283d479695027640d7fc25b42ec3c52003071d1ec94496e34af5974"; + }; + propagatedBuildInputs = [ ArchiveZip CPANChecksums CPANPerlReleases Expect FileHomeDir LWP LogLog4perl ModuleBuild TermReadKey YAML YAMLLibYAML YAMLSyck ]; + meta = { + description = "Query, download and build perl modules from CPAN sites"; + license = with stdenv.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 = stdenv.lib.optional stdenv.isDarwin shortenPerlShebang; + propagatedBuildInputs = [ FileHomeDir LWPProtocolHttps ]; + postInstall = stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + CpanelJSONXS = buildPerlPackage { + pname = "Cpanel-JSON-XS"; + version = "4.17"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RU/RURBAN/Cpanel-JSON-XS-4.17.tar.gz"; + sha256 = "fa80ae47caa9beee6db9b12df2c04482e98df1d62041a114ccd82b681a8706fb"; + }; + meta = { + description = "CPanel fork of JSON::XS, fast and correct serializing"; + license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + 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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CPANChecksums = buildPerlPackage { + pname = "CPAN-Checksums"; + version = "2.12"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AN/ANDK/CPAN-Checksums-2.12.tar.gz"; + sha256 = "0f1dbpp4638jfdfwrywjmz88na5wzw4fdsmm2r7gh1x0s6r0yq4r"; + }; + propagatedBuildInputs = [ CompressBzip2 DataCompare ModuleSignature ]; + meta = { + license = with stdenv.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 = stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + CPANPerlReleases = buildPerlPackage { + pname = "CPAN-Perl-Releases"; + version = "5.20200820"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BI/BINGOS/CPAN-Perl-Releases-5.20200820.tar.gz"; + sha256 = "07vsbsxygdbv0nk9389ng3jdsl1d3yk1z54xdci1gpy0lghbij70"; + }; + meta = { + homepage = "https://github.com/bingos/cpan-perl-releases"; + description = "Mapping Perl releases on CPAN to the location of the tarballs"; + license = with stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + 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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.lib; { + description = "Use block ciphers using ECB mode"; + license = with stdenv.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 = stdenv.lib.optionalString (stdenv.isi686 || stdenv.isDarwin) "export LD=$CC"; + }; + + 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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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.06"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TODDR/Crypt-RIPEMD160-0.06.tar.gz"; + sha256 = "ea64a1e9eb42f3d79855a392e7cca6b86e8e0bcc9aabcc5efa5fa32415b67dba"; + }; + meta = { + homepage = "https://wiki.github.com/toddr/Crypt-RIPEMD160"; + description = "Perl extension for the RIPEMD-160 Hash function"; + license = with stdenv.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 = stdenv.lib.optionalString (stdenv.isi686 || stdenv.isDarwin) "export LD=$CC"; + }; + + CryptRijndael = buildPerlPackage { + pname = "Crypt-Rijndael"; + version = "1.14"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LE/LEONT/Crypt-Rijndael-1.14.tar.gz"; + sha256 = "03l5nwq97a8q9na4dpd4m3r7vrwpranx225vw8xm40w7zvgw6lb4"; + }; + }; + + 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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + CryptTwofish = buildPerlPackage { + pname = "Crypt-Twofish"; + version = "2.17"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AM/AMS/Crypt-Twofish-2.17.tar.gz"; + sha256 = "eed502012f0c63927a1a32e3154071cc81175d1992a893ec41f183b6e3e5d758"; + }; + meta = { + description = "The Twofish Encryption Algorithm"; + license = with stdenv.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 = stdenv.lib.optional stdenv.isDarwin shortenPerlShebang; + postInstall = stdenv.lib.optionalString stdenv.isDarwin '' + shortenPerlShebang $out/bin/pgplet + ''; + + meta = { + homepage = "https://github.com/btrott/Crypt-OpenPGP"; + description = "Pure-Perl OpenPGP implementation"; + license = with stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 = stdenv.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 ]; + }; + + 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 = stdenv.lib.optionalString (stdenv.isi686 || stdenv.isDarwin) "export LD=$CC"; + meta = { + description = "XS based CSS minifier"; + license = with stdenv.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.36"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GI/GIRAFFED/Curses-1.36.tar.gz"; + sha256 = "0r6xd9wr0c25rr28zixhqipak575zqsfb7r7f2693i9il1dpj554"; + }; + propagatedBuildInputs = [ pkgs.ncurses ]; + NIX_CFLAGS_LINK = "-lncurses"; + meta = { + description = "Perl bindings to ncurses"; + license = stdenv.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 = stdenv.lib.licenses.artistic1; + }; + propagatedBuildInputs = [ Curses TermReadKey ]; + }; + + 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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + 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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + 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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + 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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ TestFailWarnings ]; + }; + + 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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 = stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/gfx/Perl-Data-Util"; + }; + }; + + 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 stdenv.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 = stdenv.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 stdenv.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 stdenv.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 stdenv.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.82"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SB/SBECK/Date-Manip-6.82.tar.gz"; + sha256 = "0ak72kpydwhq2z03mhdfwm3ganddzb8gawzh6crpsjvb9kwvr5ps"; + }; + # 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 stdenv.lib.licenses; [ artistic1 gpl2Plus ]; + }; + }; + + DateTime = buildPerlPackage { + pname = "DateTime"; + version = "1.52"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DR/DROLSKY/DateTime-1.52.tar.gz"; + sha256 = "1z1xpifh2kpyw7rlc8ivg9rl0qmabjq979gjp0s9agdjf9hqp0k7"; + }; + buildInputs = [ CPANMetaCheck TestFatal TestWarnings ]; + propagatedBuildInputs = [ DateTimeLocale DateTimeTimeZone ]; + meta = { + description = "A date and time object"; + license = stdenv.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 = stdenv.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 stdenv.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 = stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DateTimeFormatISO8601 = buildPerlPackage { + pname = "DateTime-Format-ISO8601"; + version = "0.14"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DR/DROLSKY/DateTime-Format-ISO8601-0.14.tar.gz"; + sha256 = "1ssy41d7g1kgrdlhnz1vr7rhxspmnhzx1hkdmrf11ca293kq7r47"; + }; + propagatedBuildInputs = [ DateTimeFormatBuilder ]; + meta = { + description = "Parses ISO8601 formats"; + license = with stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DateTimeFormatNatural = buildPerlModule { + pname = "DateTime-Format-Natural"; + version = "1.10"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SC/SCHUBIGER/DateTime-Format-Natural-1.10.tar.gz"; + sha256 = "0ahia58vs5f8ymskain1a6vl6b4fhkar1cmakq5q92zzhvmgx6z1"; + }; + buildInputs = [ ModuleUtil TestMockTime ]; + propagatedBuildInputs = [ Clone DateTime ListMoreUtils ParamsValidate boolean ]; + meta = { + description = "Create machine readable date/time with natural parsing logic"; + license = with stdenv.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 stdenv.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 stdenv.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 = stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + 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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DateTimeTimeZone = buildPerlPackage { + pname = "DateTime-TimeZone"; + version = "2.39"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DR/DROLSKY/DateTime-TimeZone-2.39.tar.gz"; + sha256 = "65a49083bf465b42c6a65df575efaceb87b5ba5a997d4e91e6ddba57190c8fca"; + }; + buildInputs = [ TestFatal TestRequires ]; + propagatedBuildInputs = [ ClassSingleton ParamsValidationCompiler Specio namespaceautoclean ]; + meta = { + description = "Time zone object base class and factory"; + license = with stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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.83"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DC/DCANTRELL/Devel-CheckOS-1.83.tar.gz"; + sha256 = "b20fb5ab55d2cf8539fdc7268d77cdbf944408e620c4969023e687ddd28c9972"; + }; + propagatedBuildInputs = [ FileFindRule ]; + }; + + DevelLeak = buildPerlPackage rec { + 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 = { + homepage = "https://metacpan.org/release/Devel-Leak"; + description = "Utility for looking for perl objects that are not reclaimed"; + license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; # According to Debian + }; + }; + + DevelPatchPerl = buildPerlPackage { + pname = "Devel-PatchPerl"; + version = "2.00"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BI/BINGOS/Devel-PatchPerl-2.00.tar.gz"; + sha256 = "07yy02v86ia7j8qbn46jqan8c8d6xdqigvv5a4wmkqwln7jxmhrr"; + }; + propagatedBuildInputs = [ Filepushd ModulePluggable ]; + meta = { + homepage = "https://github.com/bingos/devel-patchperl"; + description = "Patch perl source a la Devel::PPPort's buildperl.pl"; + license = with stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DevelPPPort = buildPerlPackage { + pname = "Devel-PPPort"; + version = "3.60"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AT/ATOOMIC/Devel-PPPort-3.60.tar.gz"; + sha256 = "0c7f36d2c63e1bbe4fd9670f3b093a207175068764884b9d67ea27aed6c07ea6"; + }; + meta = { + description = "Perl/Pollution/Portability"; + license = with stdenv.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 = stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + DBDCSV = buildPerlPackage { + pname = "DBD-CSV"; + version = "0.55"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HM/HMBRAND/DBD-CSV-0.55.tgz"; + sha256 = "4670028e46df9a3c2791740445e8a4c82840b6667cee5dd796bc5a6ad9266ddb"; + }; + propagatedBuildInputs = [ DBI SQLStatement TextCSV_XS ]; + }; + + DBDMock = buildPerlModule { + pname = "DBD-Mock"; + version = "1.55"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JL/JLCOOPER/DBD-Mock-1.55.tar.gz"; + sha256 = "827ca7a363eca8d1d4912decc920eb55ef8e8173e0f756808e2ed304f0dad20c"; + }; + propagatedBuildInputs = [ DBI ]; + buildInputs = [ ModuleBuildTiny TestException ]; + }; + + DBDSQLite = buildPerlPackage { + pname = "DBD-SQLite"; + version = "1.66"; + + src = fetchurl { + url = "mirror://cpan/authors/id/I/IS/ISHIGAKI/DBD-SQLite-1.66.tar.gz"; + sha256 = "1zljln5nh61gj3k22a1fv2vhx5l83waizmarwkh77hk6kzzmvrw9"; + }; + + propagatedBuildInputs = [ DBI ]; + buildInputs = [ pkgs.sqlite ]; + + patches = [ + # Support building against our own sqlite. + ../development/perl-modules/DBD-SQLite/external-sqlite.patch + ]; + + 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 stdenv.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 stdenv.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 = stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + platforms = stdenv.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; + }; + + DBFile = buildPerlPackage { + pname = "DB_File"; + version = "1.853"; + + src = fetchurl { + url = "mirror://cpan/authors/id/P/PM/PMQS/DB_File-1.853.tar.gz"; + sha256 = "1y967si45vj0skip1hnhicbv9da29fv6qcfwnsbnvj06n36mkj6h"; + }; + + 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 = stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + DBIxClass = buildPerlPackage { + pname = "DBIx-Class"; + version = "0.082841"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RI/RIBASUSHI/DBIx-Class-0.082841.tar.gz"; + sha256 = "d705f85825aced299020534349778537524526d64f524217ca362787f683c3bd"; + }; + buildInputs = [ DBDSQLite TestDeep TestException TestWarn ]; + propagatedBuildInputs = [ ClassAccessorGrouped ClassC3Componentised ConfigAny ContextPreserve DBI DataDumperConcise DataPage DevelGlobalDestruction ModuleFind PathClass SQLAbstract ScopeGuard SubName namespaceclean ]; + meta = { + homepage = "https://metacpan.org/pod/DBIx::Class"; + description = "Extensible and flexible object <-> relational mapper"; + license = with stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 ]; + }; + + 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 stdenv.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 stdenv.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 stdenv.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 stdenv.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.06"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TI/TIMB/Devel-NYTProf-6.06.tar.gz"; + sha256 = "a14227ca79f1750b92cc7b8b0a5806c92abc4964a21a7fb100bd4907d6c4be55"; + }; + propagatedBuildInputs = [ FileWhich JSONMaybeXS ]; + meta = { + homepage = "https://github.com/timbunce/devel-nytprof"; + description = "Powerful fast feature-rich Perl source code profiler"; + license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ TestDifferences ]; + }; + + 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 stdenv.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 = stdenv.lib.licenses.artistic2; + }; + }; + + 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 stdenv.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 stdenv.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 = stdenv.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 stdenv.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 = stdenv.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 stdenv.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"; + }; + }; + + 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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + DistZilla = buildPerlPackage { + pname = "Dist-Zilla"; + version = "6.015"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Dist-Zilla-6.015.tar.gz"; + sha256 = "06w9mdk46y4n2dshkx6laphkqk08wfw6bqpsa5q2yb4lky0yb212"; + }; + 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 ]; + meta = { + homepage = "http://dzil.org/"; + description = "Distribution builder; installer not included!"; + license = with stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 = stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 = stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ MIMETools MailTools ]; + }; + + EmailOutlookMessage = buildPerlModule { + pname = "Email-Outlook-Message"; + version = "0.919"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MV/MVZ/Email-Outlook-Message-0.919.tar.gz"; + sha256 = "0fb1gymqa8nlj540dmbb1rhs2b0ln3y9ippbgj0miswcw92iaayb"; + }; + 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 stdenv.lib; { + homepage = "https://www.matijs.net/software/msgconv/"; + description = "A .MSG to mbox converter"; + license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = with maintainers; [ peterhoeg ]; + }; + }; + + EmailSender = buildPerlPackage { + pname = "Email-Sender"; + version = "1.300034"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RJ/RJBS/Email-Sender-1.300034.tar.gz"; + sha256 = "05ac38a63b053c7c3846ffa45196e4483a5785941b0bfb615b22b7a4f04c5291"; + }; + buildInputs = [ CaptureTiny ]; + propagatedBuildInputs = [ EmailAbstract EmailAddress MooXTypesMooseLike SubExporter Throwable TryTiny ]; + nativeBuildInputs = stdenv.lib.optional stdenv.isDarwin shortenPerlShebang; + postPatch = '' + patchShebangs --build util + ''; + preCheck = stdenv.lib.optionalString stdenv.isDarwin '' + shortenPerlShebang util/sendmail + ''; + meta = { + homepage = "https://github.com/rjbs/Email-Sender"; + description = "A library for sending email"; + license = with stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + 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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Encode = buildPerlPackage { + pname = "Encode"; + version = "3.07"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DANKOGAI/Encode-3.07.tar.gz"; + sha256 = "34a4ec9b574b7a6c6132c4ab3ded490fd600bc7ce382124aeda58bb1e112910f"; + }; + meta = { + description = "Character encodings in Perl"; + license = with stdenv.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 = stdenv.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 = stdenv.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 stdenv.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 = stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/neilb/Encode-Newlines"; + }; + }; + + 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 stdenv.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 stdenv.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 stdenv.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 = stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 = stdenv.lib.licenses.free; + }; + }; + + ExtUtilsCChecker = buildPerlModule { + pname = "ExtUtils-CChecker"; + version = "0.10"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PEVANS/ExtUtils-CChecker-0.10.tar.gz"; + sha256 = "50bfe76870fc1510f56bae4fa2dce0165d9ac4af4e7320d6b8fda14dfea4be0b"; + }; + buildInputs = [ TestFatal ]; + meta = { + description = "Configure-time utilities for using C headers,"; + license = with stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ExtUtilsInstall = buildPerlPackage { + pname = "ExtUtils-Install"; + version = "2.16"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BI/BINGOS/ExtUtils-Install-2.16.tar.gz"; + sha256 = "9b6cd0aa3585ce45b6faf6de490a561d51d530dc7922888989febf067c0632dc"; + }; + meta = { + description = "Install files from here to there"; + license = with stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ExtUtilsMakeMaker = buildPerlPackage { + pname = "ExtUtils-MakeMaker"; + version = "7.46"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BI/BINGOS/ExtUtils-MakeMaker-7.46.tar.gz"; + sha256 = "8f4a107565392d0f36c99c849a3bfe7126ba58148a4dca334c139add0dd0d328"; + }; + meta = { + description = "Create a module Makefile"; + license = with stdenv.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 stdenv.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.pkgconfig ]; + propagatedBuildInputs = [ pkgs.pkgconfig ]; + meta = { + homepage = "http://gtk2-perl.sourceforge.net"; + description = "Simplistic interface to pkg-config"; + license = stdenv.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 = stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 = stdenv.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 stdenv.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 stdenv.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 = stdenv.lib.licenses.free; # Same as Perl + }; + }; + + 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 = [ maintainers.limeytexan ]; + description = "simple filename and pathname matching"; + license = stdenv.lib.licenses.free; # Same as Perl + }; + }; + + 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 = [ maintainers.limeytexan ]; + }; + }; + + 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 = stdenv.lib.licenses.gpl2; + maintainers = with maintainers; [ romildo ]; + }; + }; + + FileHomeDir = buildPerlPackage { + pname = "File-HomeDir"; + version = "1.004"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RE/REHSACK/File-HomeDir-1.004.tar.gz"; + sha256 = "45f67e2bb5e60a7970d080e8f02079732e5a8dfc0c7c3cbdb29abfb3f9f791ad"; + }; + propagatedBuildInputs = [ FileWhich ]; + meta = { + description = "Find your home and other directories on any platform"; + license = with stdenv.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 = stdenv.lib.optionalString stdenv.isi686 "export LD=$CC"; # fix undefined reference to `__stack_chk_fail_local' + meta = { + description = "Modify attributes of symlinks without dereferencing them"; + license = with stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + FileListing = buildPerlPackage { + pname = "File-Listing"; + version = "6.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GA/GAAS/File-Listing-6.04.tar.gz"; + sha256 = "1xcwjlnxaiwwpn41a5yi6nz95ywh3szq5chdxiwj36kqsvy5000y"; + }; + propagatedBuildInputs = [ HTTPDate ]; + }; + + FileLoadLines = buildPerlPackage { + pname = "File-LoadLines"; + version = "0.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JV/JV/File-LoadLines-0.02.tar.gz"; + sha256 = "ab0c1c31cf7b694dd3c9a0707098f7483763d46b60799a7f496ea0588be46b7b"; + }; + meta = { + description = "Load lines from file"; + license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + FileMimeInfo = buildPerlPackage { + pname = "File-MimeInfo"; + version = "0.29"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MICHIELB/File-MimeInfo-0.29.tar.gz"; + sha256 = "1sh8r6vczyz08zm8vfsjmkg6a165wch54akjdrd1vbifcmwjg5pi"; + }; + doCheck = false; # Failed test 'desktop file is the right one' + buildInputs = [ FileBaseDir FileDesktopEntry ]; + }; + + 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 = stdenv.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"; + }; + propagatedBuildInputs = [ PerlIOLayers SubExporterProgressive ]; + buildInputs = [ TestFatal TestWarnings ]; + meta = { + description = "Memory mapping made simple and safe."; + license = with stdenv.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 stdenv.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.17"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JK/JKEENAN/File-Path-2.17.tar.gz"; + sha256 = "8c506dfd69a70fdd5f1212fe58fbc53620a89a8293e2ac6860570f868269fb31"; + }; + meta = { + description = "Create or remove directory trees"; + license = with stdenv.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 = stdenv.lib.licenses.free; # Same as Perl + description = "Pid File Manipulation"; + maintainers = [ maintainers.limeytexan ]; + }; + }; + + 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 = stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + FileRemove = buildPerlModule { + pname = "File-Remove"; + version = "1.58"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/File-Remove-1.58.tar.gz"; + sha256 = "1n6h5w3sp2bs4cfrifdx2z15cfpb4r536179mx1a12xbmj1yrxl1"; + }; + }; + + 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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + FileShareDir = buildPerlPackage { + pname = "File-ShareDir"; + version = "1.116"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RE/REHSACK/File-ShareDir-1.116.tar.gz"; + sha256 = "0a43rfb0a1fpxh4d2dayarkdxw4cx9a2krkk87zmcilcz7yhpnar"; + }; + propagatedBuildInputs = [ ClassInspector ]; + meta = { + description = "Locate per-dist and per-module shared files"; + license = with stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.limeytexan ]; + }; + }; + + 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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.limeytexan ]; + }; + }; + + 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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + 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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.lib; { + description = "Helper to smartly find libs to use in the filesystem tree"; + license = with stdenv.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 = stdenv.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 stdenv.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 stdenv.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; + }; + + 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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Future = buildPerlModule { + pname = "Future"; + version = "0.45"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PEVANS/Future-0.45.tar.gz"; + sha256 = "1h5609wd1m774h8brgm5vinz6pfmdszp2ms6ybxlyhs0p5msp36f"; + }; + buildInputs = [ TestFatal TestIdentity TestRefcount ]; + meta = { + description = "represent an operation awaiting completion"; + license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + FutureAsyncAwait = buildPerlModule { + pname = "Future-AsyncAwait"; + version = "0.44"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PEVANS/Future-AsyncAwait-0.44.tar.gz"; + sha256 = "131825164614ede6a49df4566e730c4cc22e3129796039b9360fa551701413fe"; + }; + buildInputs = [ TestRefcount ]; + propagatedBuildInputs = [ Future XSParseSublike ]; + perlPreHook = stdenv.lib.optionalString stdenv.isDarwin "export LD=$CC"; + meta = { + description = "Deferred subroutine syntax for futures"; + license = with stdenv.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 = stdenv.lib.licenses.mit; + }; + }; + + GD = buildPerlPackage { + pname = "GD"; + version = "2.72"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RU/RURBAN/GD-2.72.tar.gz"; + sha256 = "014ik1rng6cnjfgdarkyy5m6wl4pdzc2b445m27krfn3zh9hgl31"; + }; + + 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 stdenv.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 stdenv.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 stdenv.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 = stdenv.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 stdenv.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 = [ maintainers.limeytexan ]; + description = "This is the Git.pm, plus the other files in the perl/Git directory, from github's git/git"; + license = stdenv.lib.licenses.free; + }; + }; + + GitAutofixup = buildPerlPackage rec { + pname = "App-Git-Autofixup"; + version = "0.002007"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TORBIAK/App-Git-Autofixup-0.002007.tar.gz"; + sha256 = "1ydy15pibva0qr5vrv5mqyzw3zlc3wbszzv7932vh7m88vv6gfr6"; + }; + meta = { + maintainers = [ maintainers.DamienCassou ]; + description = "Create fixup commits for topic branches"; + license = stdenv.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 stdenv.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 stdenv.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 stdenv.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 ]; + doCheck = false; # tests failing with glib 2.60 https://rt.cpan.org/Public/Bug/Display.html?id=128165 + meta = { + homepage = "http://gtk2-perl.sourceforge.net/"; + description = "Perl wrappers for the GLib utility and Object libraries"; + license = stdenv.lib.licenses.lgpl21Plus; + }; + propagatedBuildInputs = [ ExtUtilsDepends ExtUtilsPkgConfig ]; + }; + + GlibObjectIntrospection = buildPerlPackage { + pname = "Glib-Object-Introspection"; + version = "0.048"; + src = fetchurl { + url = "mirror://cpan/authors/id/X/XA/XAOC/Glib-Object-Introspection-0.048.tar.gz"; + sha256 = "01dx5w6r4nl3rgnz7wvgvqfaa48xmzy90p95d5k6315q44610kx6"; + }; + propagatedBuildInputs = [ pkgs.gobject-introspection Glib ]; + meta = { + description = "Dynamically create Perl language bindings"; + license = stdenv.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 = stdenv.lib.licenses.lgpl21Plus; + }; + }; + + Gnome2Canvas = buildPerlPackage { + pname = "Gnome2-Canvas"; + version = "1.002"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TS/TSCH/Gnome2-Canvas-1.002.tar.gz"; + sha256 = "47a34204cd5f3a0ef5c8b9e1c9c96f41740edab7e9abf1d0560fa8666ba1916e"; + }; + buildInputs = [ pkgs.gnome2.libgnomecanvas ]; + meta = { + license = stdenv.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 = stdenv.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.libwnck pkgs.glib pkgs.gtk2 ]; + propagatedBuildInputs = [ Gtk2 ]; + meta = { + description = "Perl interface to the Window Navigator Construction Kit"; + license = stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Graph = buildPerlPackage { + pname = "Graph"; + version = "0.9704"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JH/JHI/Graph-0.9704.tar.gz"; + sha256 = "099a1gca0wj5zs0cffncjqp2mjrdlk9i6325ks89ml72gfq8wpij"; + }; + }; + + 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 stdenv.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 = stdenv.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 = [ maintainers.limeytexan ]; + description = "Perl extension providing access to the GSSAPIv2 library"; + license = with stdenv.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 = stdenv.lib.licenses.lgpl21Plus; + }; + propagatedBuildInputs = [ Pango ]; + }; + + Gtk2GladeXML = buildPerlPackage { + pname = "Gtk2-GladeXML"; + version = "1.007"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TS/TSCH/Gtk2-GladeXML-1.007.tar.gz"; + sha256 = "50240a2bddbda807c8f8070de941823b7bf3d288a13be6d0d6563320b42c445a"; + }; + propagatedBuildInputs = [ pkgs.gnome2.libglade pkgs.gtk2 Gtk2 ]; + meta = { + description = "Create user interfaces directly from Glade XML files"; + license = stdenv.lib.licenses.lgpl2Plus; + }; + }; + + 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 = stdenv.lib.licenses.gpl2; + }; + }; + + 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.pkgconfig 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 = stdenv.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 = stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + 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 = stdenv.lib.licenses.lgpl21Plus; + }; + }; + + 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 = stdenv.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 stdenv.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 = stdenv.lib.optional stdenv.isDarwin shortenPerlShebang; + postPatch = '' + patchShebangs bin + ''; + postInstall = stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 = stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + 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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + 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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + HTMLTableExtract = buildPerlPackage { + pname = "HTML-TableExtract"; + version = "2.13"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MS/MSISK/HTML-TableExtract-2.13.tar.gz"; + sha256 = "01jimmss3q68a89696wmclvqwb2ybz6xgabpnbp6mm6jcni82z8a"; + }; + 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 stdenv.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 stdenv.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 stdenv.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 ]; + }; + + 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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + HTTPCookieJar = buildPerlPackage { + pname = "HTTP-CookieJar"; + version = "0.008"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DAGOLDEN/HTTP-CookieJar-0.008.tar.gz"; + sha256 = "0rfw6avcralggs7bf7n86flvhaahxjnqzvpwszp0sk4z4wwy01wm"; + }; + propagatedBuildInputs = [ HTTPDate ]; + buildInputs = [ TestDeep TestRequires URI ]; + meta = { + description = "A minimalist HTTP user agent cookie jar"; + license = with stdenv.lib.licenses; [ asl20 ]; + homepage = "https://github.com/dagolden/HTTP-CookieJar"; + }; + }; + + HTTPCookies = buildPerlPackage { + pname = "HTTP-Cookies"; + version = "6.08"; + src = fetchurl { + url = "mirror://cpan/authors/id/O/OA/OALDERS/HTTP-Cookies-6.08.tar.gz"; + sha256 = "0ndgqciqqcxyycry0nl0xkg9ci09vxvr81xw0hy0chgbfqsvgss9"; + }; + propagatedBuildInputs = [ HTTPMessage ]; + meta = { + description = "HTTP cookie jars"; + license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + HTTPDaemon = buildPerlPackage { + 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 ]; + meta = { + description = "A simple http server class"; + license = with stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + propagatedBuildInputs = [ TimeDate ]; + }; + + HTTPEntityParser = buildPerlModule { + pname = "HTTP-Entity-Parser"; + version = "0.24"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KA/KAZEBURO/HTTP-Entity-Parser-0.24.tar.gz"; + sha256 = "04p6y5234857wb0k024rx3928lx3q9pj5mr3mi0r5jshf740z3pn"; + }; + propagatedBuildInputs = [ HTTPMultiPartParser HashMultiValue JSONMaybeXS StreamBuffered WWWFormUrlEncoded ]; + buildInputs = [ HTTPMessage ModuleBuildTiny ]; + meta = { + description = "PSGI compliant HTTP Entity Parser"; + license = with stdenv.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 ]; + }; + + 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) + }; + + 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 stdenv.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.25"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/HTTP-Message-6.25.tar.gz"; + sha256 = "21f46502e87d57f43b7a38f81916464b079f5d50fe529458391c0ad529e0075a"; + }; + 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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/miyagawa/HTTP-Server-Simple-PSGI"; + }; + }; + + 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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + 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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 = stdenv.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 stdenv.lib.licenses; [ artistic1 lgpl21Plus ]; + }; + }; + + 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 stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + IOAsync = buildPerlModule { + pname = "IO-Async"; + version = "0.77"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PEVANS/IO-Async-0.77.tar.gz"; + sha256 = "153rfnbs2xwvx559h0ilfr0g9pg30avjad3cad659is9bdmfipri"; + }; + 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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + 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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + IOCompress = buildPerlPackage { + pname = "IO-Compress"; + version = "2.096"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PM/PMQS/IO-Compress-2.096.tar.gz"; + sha256 = "9d219fd5df4b490b5d2f847921e3cb1c3392758fa0bae9b05a8992b3620ba572"; + }; + propagatedBuildInputs = [ CompressRawBzip2 CompressRawZlib ]; + meta = { + description = "IO Interface to compressed data files/buffers"; + license = with stdenv.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.001"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CJ/CJM/IO-HTML-1.001.tar.gz"; + sha256 = "ea78d2d743794adc028bc9589538eb867174b4e165d7d8b5f63486e6b828e7e0"; + }; + meta = { + description = "Open an HTML file with automatic charset detection"; + license = with stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + 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 = "1.03"; + pname = "IO-Pager"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JP/JPIERCE/IO-Pager-1.03.tgz"; + sha256 = "13mmykrb391584wkw907zrmy4hg1fa9hj3zw58whdq5bjc66r1mc"; + }; + propagatedBuildInputs = [ pkgs.more FileWhich TermReadKey ]; # `more` used in tests + }; + + 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 stdenv.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 stdenv.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"; + }; + }; + + 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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + IOTty = buildPerlPackage { + pname = "IO-Tty"; + version = "1.14"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TODDR/IO-Tty-1.14.tar.gz"; + sha256 = "1dcmxdhrapxvvzlfp6yzz7655f3c6x8jrw0md8ndp2qj27iy9wsi"; + }; + 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 = stdenv.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 = stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + IPCSysV = buildPerlPackage { + pname = "IPC-SysV"; + version = "2.08"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MH/MHX/IPC-SysV-2.08.tar.gz"; + sha256 = "1b89bf3a2564f578bd9cd17659ac53e064c28ef7dd80e3cb5efef4ba6126ea4f"; + }; + meta = { + description = "System V IPC constants and system calls"; + license = with stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = with maintainers; [ sgo ]; + }; + }; + + ImageExifTool = buildPerlPackage { + pname = "Image-ExifTool"; + version = "12.00"; + + src = fetchurl { + url = "mirror://cpan/authors/id/E/EX/EXIFTOOL/Image-ExifTool-12.00.tar.gz"; + sha256 = "0nl5djf6hs6brnp7qnqvj3xwhj1qnjwcv35ih4yqp2mm9b4jqyfh"; + }; + + nativeBuildInputs = stdenv.lib.optional stdenv.isDarwin shortenPerlShebang; + postInstall = stdenv.lib.optionalString stdenv.isDarwin '' + shortenPerlShebang $out/bin/exiftool + ''; + + meta = with stdenv.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 stdenv.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 stdenv.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 = stdenv.lib.licenses.artistic2; + }; + }; + + 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 = stdenv.lib.optionalString (stdenv.isi686 || stdenv.isDarwin) "export LD=$CC"; + meta = { + description = "XS based JavaScript minifier"; + license = with stdenv.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 stdenv.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 = stdenv.lib.optionalString (stdenv.buildPlatform != stdenv.hostPlatform) '' + substituteInPlace Makefile.PL --replace "exit 0;" "" + ''; + buildInputs = [ TestPod ]; + meta = { + description = "JSON (JavaScript Object Notation) encoder/decoder"; + license = with stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ TestFatal TestRequires TestWarnings TestWithoutModule ]; + }; + + JSONMaybeXS = buildPerlPackage { + pname = "JSON-MaybeXS"; + version = "1.004002"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/JSON-MaybeXS-1.004002.tar.gz"; + sha256 = "1dbpdlrk4pjwbn3wzawwsj57jqzdvi01h4kqpknwbl1n7gf2z3iv"; + }; + meta = { + description = "Use L<Cpanel::JSON::XS> with a fallback to L<JSON::XS> and L<JSON::PP>"; + license = with stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + JSONParse = buildPerlPackage { + pname = "JSON-Parse"; + version = "0.57"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BK/BKB/JSON-Parse-0.57.tar.gz"; + sha256 = "1rqaqpgh068kqj11srw874m5ph5qkaz77ib5fi4hrc402d2qxa45"; + }; + meta = { + description = "Read JSON into a Perl variable"; + license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + JSONValidator = buildPerlPackage { + pname = "JSON-Validator"; + version = "4.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JH/JHTHORSEN/JSON-Validator-4.02.tar.gz"; + sha256 = "0ix6k7b7sawbfqsjfj2w9symfr6d7jvpjqc6c6ag8b5my8k932sy"; + }; + buildInputs = [ TestDeep ]; + propagatedBuildInputs = [ DataValidateDomain DataValidateIP Mojolicious NetIDNEncode YAMLLibYAML ]; + meta = { + homepage = "https://github.com/mojolicious/json-validator"; + description = "Validate data against a JSON schema"; + license = stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + JSONXS = buildPerlPackage { + pname = "JSON-XS"; + version = "4.02"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/ML/MLEHMANN/JSON-XS-4.02.tar.gz"; + sha256 = "05ngmpc0smlfzgyhyagd5gza8g93r8hik858kmr186h770higbd5"; + }; + 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 stdenv.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 { + pname = "LaTeXML"; + version = "0.8.4"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BR/BRMILLER/LaTeXML-0.8.4.tar.gz"; + sha256 = "92599b45fb587ac14b2ba9cc84b85d9ddc2deaf1cbdc2e89e7a6559e1fbb34cc"; + }; + propagatedBuildInputs = [ shortenPerlShebang ArchiveZip DBFile FileWhich IOString ImageSize JSONXS LWP ParseRecDescent PodParser TextUnidecode XMLLibXSLT ]; + doCheck = false; # epub test fails + postInstall = '' + shortenPerlShebang $out/bin/latexml + shortenPerlShebang $out/bin/latexmlc + shortenPerlShebang $out/bin/latexmlfind + shortenPerlShebang $out/bin/latexmlmath + shortenPerlShebang $out/bin/latexmlpost + ''; + meta = { + description = "Transforms TeX and LaTeX into XML/HTML/MathML"; + license = stdenv.lib.licenses.free; + }; + }; + + libapreq2 = buildPerlPackage { + pname = "libapreq2"; + version = "2.13"; + src = fetchurl { + url = "mirror://cpan/authors/id/I/IS/ISAAC/libapreq2-2.13.tar.gz"; + sha256 = "5731e6833b32d88e4a5c690e45ddf20fcf969ce3da666c5627d775e92da0cf6e"; + }; + patches = [ + (fetchpatch { + name = "CVE-2019-12412.patch"; + url = "https://svn.apache.org/viewvc/httpd/apreq/trunk/library/parser_multipart.c?r1=1866760&r2=1866759&pathrev=1866760&view=patch"; + sha256 = "08zaw5pb2i4w1y8crhxmlf0d8gzpvi9z49x4nwlkg4j87x7gjvaa"; + stripLen = 2; + }) + ]; + 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 = stdenv.lib.licenses.asl20; + }; + }; + + libintl_perl = buildPerlPackage { + pname = "libintl-perl"; + version = "1.31"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GU/GUIDO/libintl-perl-1.31.tar.gz"; + sha256 = "1afandrl44mq9c32r57xr489gkfswdgc97h8x86k98dz1byv3l6a"; + }; + }; + + libnet = buildPerlPackage { + pname = "libnet"; + version = "3.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHAY/libnet-3.11.tar.gz"; + sha256 = "1lsj3a2vbryh85mbb6yddyb2zjv5vs88fdj5x3v7fp2ndr6ixarg"; + }; + meta = { + description = "Collection of network protocol modules"; + license = with stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + LinguaENInflect = buildPerlPackage { + pname = "Lingua-EN-Inflect"; + version = "1.904"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DC/DCONWAY/Lingua-EN-Inflect-1.904.tar.gz"; + sha256 = "54d344884ba9b585680975bbd4049ddbf27bf654446fb00c7e1fc538e08c3173"; + }; + meta = { + description = "Convert singular to plural. Select 'a' or 'an'"; + license = with stdenv.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 stdenv.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 stdenv.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 stdenv.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 = stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/neilb/Lingua-PT-Stemmer"; + }; + }; + + LinguaStem = buildPerlModule { + pname = "Lingua-Stem"; + version = "2.30"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SN/SNOWHARE/Lingua-Stem-2.30.tar.gz"; + sha256 = "0wx1sa3y3l1a09zxqlfysxlc0x8cwjin3ivh849shv2xy2a3x27q"; + }; + 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 stdenv.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.14"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JH/JHTHORSEN/LinkEmbedder-1.14.tar.gz"; + sha256 = "1dzbh40g773ivawn1smii6jz3kisz07pcn9sbqarc857q5zaf8dq"; + }; + buildInputs = [ TestDeep ]; + propagatedBuildInputs = [ Mojolicious ]; + meta = { + homepage = "https://github.com/jhthorsen/linkembedder"; + description = "Embed / expand oEmbed resources and other URL / links"; + license = stdenv.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 = [ maintainers.limeytexan ]; + description = "Perl extension for reading and setting Access Control Lists for files by libacl linux library"; + license = with stdenv.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 = stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + 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 = stdenv.lib.optionalString stdenv.isi686 "export LD=$CC"; # fix undefined reference to `__stack_chk_fail_local' + meta = { + description = "Linux specific special filehandles"; + license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + 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 ]; + }; + + 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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ListMoreUtils = buildPerlPackage { + pname = "List-MoreUtils"; + version = "0.428"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RE/REHSACK/List-MoreUtils-0.428.tar.gz"; + sha256 = "713e0945d5f16e62d81d5f3da2b6a7b14a4ce439f6d3a7de74df1fd166476cc2"; + }; + propagatedBuildInputs = [ ExporterTiny ListMoreUtilsXS ]; + meta = { + description = "Provide the stuff missing in List::Util"; + license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ TestLeakTrace ]; + }; + + ListMoreUtilsXS = buildPerlPackage { + pname = "List-MoreUtils-XS"; + version = "0.428"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RE/REHSACK/List-MoreUtils-XS-0.428.tar.gz"; + sha256 = "0bfndmnkqaaf3gffprak143bzplxd69c368jxgr7rzlx88hyd7wx"; + }; + preConfigure = '' + export LD=$CC + ''; + meta = { + description = "Provide the stuff missing in List::Util in XS"; + license = with stdenv.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 stdenv.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.65"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SB/SBECK/Locale-Codes-3.65.tar.gz"; + sha256 = "8e0a3f5f9a5f9ec027dcfc6e21ad414b10e3a5c0826b3f9ea498e1a79881cd5d"; + }; + meta = { + description = "A distribution of modules to handle locale codes"; + license = with stdenv.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"; + }; + + 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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/preaction/Log-Any-Adapter-Log4perl"; + }; + }; + + 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 stdenv.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 = stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ PathTiny TestWarn ]; + }; + + 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 stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/marioroy/mce-perl"; + }; + }; + + LogLog4perl = buildPerlPackage { + pname = "Log-Log4perl"; + version = "1.52"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETJ/Log-Log4perl-1.52.tar.gz"; + sha256 = "be1cbc318f0c7c40b3062127994691d14a05881f268bbd2611e789b4fdd306b1"; + }; + meta = { + homepage = "https://mschilli.github.io/log4perl/"; + description = "Log4j implementation for Perl"; + license = with stdenv.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 stdenv.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 stdenv.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.pkgconfig pkgs.systemd ]; + postPatch = '' + substituteInPlace Build.PL \ + --replace "libsystemd-journal" "libsystemd" + ''; + meta = { + description = "Send messages to a systemd journal"; + license = with stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + LWP = buildPerlPackage { + pname = "libwww-perl"; + version = "6.47"; + src = fetchurl { + url = "mirror://cpan/authors/id/O/OA/OALDERS/libwww-perl-6.47.tar.gz"; + sha256 = "3029d6efc2099c4175bf976d0db7fbab9771ada631010c809cb4664230898f53"; + }; + 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 = stdenv.lib.optionalString (stdenv.buildPlatform != stdenv.hostPlatform) '' + substituteInPlace Makefile.PL --replace 'if has_module' 'if 0; #' + ''; + doCheck = !stdenv.isDarwin; + meta = with stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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.009"; + src = fetchurl { + url = "mirror://cpan/authors/id/W/WY/WYANT/Mac-Pasteboard-0.009.tar.gz"; + sha256 = "85b1d5e9630973b997c3c1634e2df964d6a8d6cb57d9abe1f7093385cf26cf54"; + }; + meta = with stdenv.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 stdenv.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 = stdenv.lib.licenses.gpl2; + maintainers = with maintainers; [ romildo ]; + }; + }; + + MailMessage = buildPerlPackage { + pname = "Mail-Message"; + version = "3.009"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MARKOV/Mail-Message-3.009.tar.gz"; + sha256 = "06ngjxnw0r5s6fnwc6qd2710p5v28ssgjkghkw8nqy2glacczlir"; + }; + propagatedBuildInputs = [ IOStringy MIMETypes MailTools URI UserIdentity ]; + meta = { + description = "Processing MIME messages"; + license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MailDKIM = buildPerlPackage { + 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 stdenv.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 stdenv.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 = [ maintainers.limeytexan ]; + description = "Simple platform independent mailer"; + license = with stdenv.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 = stdenv.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 stdenv.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 stdenv.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 stdenv.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 = stdenv.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 stdenv.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 stdenv.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"; + }; + + meta = { + license = with stdenv.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"; + }; + }; + + 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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MathPlanePath = buildPerlPackage { + pname = "Math-PlanePath"; + version = "127"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KR/KRYDE/Math-PlanePath-127.tar.gz"; + sha256 = "1dzywpydigwyr38vz9f4yn7xkkk21vi6lyzjlyqv8iny0y0c7w20"; + }; + 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 stdenv.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 stdenv.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 stdenv.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 = stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic2 ]; + }; + }; + + 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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + 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 stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MetaCPANClient = buildPerlPackage { + pname = "MetaCPAN-Client"; + version = "2.028000"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MICKEY/MetaCPAN-Client-2.028000.tar.gz"; + sha256 = "1fcafd1504e838ea37fa1769c751e096fe6ac7bba41c5f62959b156ea27d319a"; + }; + + # 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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MIMETypes = buildPerlPackage { + pname = "MIME-Types"; + version = "2.17"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MARKOV/MIME-Types-2.17.tar.gz"; + sha256 = "1xlg7q6h8zyb8534sy0iqn90py18kilg419q6051bwqz5zadfkp0"; + }; + meta = { + description = "Definition of MIME types"; + license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Minion = buildPerlPackage { + pname = "Minion"; + version = "10.13"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SR/SRI/Minion-10.13.tar.gz"; + sha256 = "0nxk147v22lvc461923yv8fypqpbsajamvcvnlidk8bb54r33afj"; + }; + propagatedBuildInputs = [ Mojolicious ]; + meta = { + homepage = "https://github.com/mojolicious/minion"; + description = "A high performance job queue for Perl"; + license = stdenv.lib.licenses.artistic2; + maintainers = [ maintainers.sgo ]; + }; + }; + + MinionBackendSQLite = buildPerlModule { + pname = "Minion-Backend-SQLite"; + version = "5.0.3"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DB/DBOOK/Minion-Backend-SQLite-v5.0.3.tar.gz"; + sha256 = "1ch92846cgr1s1y6nlicjxlq9r4qh1a3fig0jlr7ligzw05mxib4"; + }; + buildInputs = [ ModuleBuildTiny ]; + propagatedBuildInputs = [ Minion MojoSQLite ]; + meta = { + homepage = "https://github.com/Grinnz/Minion-Backend-SQLite"; + description = "SQLite backend for Minion job queue"; + license = stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + 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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ TestSharedFork ]; + }; + + 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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 = stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 = stdenv.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 stdenv.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 stdenv.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 stdenv.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"; + }; + 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 = stdenv.lib.licenses.asl20; + }; + }; + + Mojolicious = buildPerlPackage { + pname = "Mojolicious"; + version = "8.63"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SR/SRI/Mojolicious-8.63.tar.gz"; + sha256 = "1nw500wi6kdyawc2aq37lnx6zfkpby3sczflh5pjz623i8nw4b66"; + }; + meta = { + homepage = "https://mojolicious.org"; + description = "Real-time web framework"; + license = stdenv.lib.licenses.artistic2; + maintainers = with maintainers; [ thoughtpolice sgo ]; + }; + }; + + MojoliciousPluginAssetPack = buildPerlPackage { + pname = "Mojolicious-Plugin-AssetPack"; + version = "2.09"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JH/JHTHORSEN/Mojolicious-Plugin-AssetPack-2.09.tar.gz"; + sha256 = "7d3277748fb05221085a7632dd1c152e8b41c5519fd3984a0380404221e0686d"; + }; + 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 = stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + MojoliciousPluginOpenAPI = buildPerlPackage { + pname = "Mojolicious-Plugin-OpenAPI"; + version = "3.35"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JH/JHTHORSEN/Mojolicious-Plugin-OpenAPI-3.35.tar.gz"; + sha256 = "1zw51qdlmrqbg758w2dnrs9qraqj0nv9jqrjygdn4d6661fran11"; + }; + propagatedBuildInputs = [ JSONValidator ]; + meta = { + homepage = "https://github.com/jhthorsen/mojolicious-plugin-openapi"; + description = "OpenAPI / Swagger plugin for Mojolicious"; + license = stdenv.lib.licenses.artistic2; + maintainers = [ maintainers.sgo ]; + }; + }; + + MojoliciousPluginStatus = buildPerlPackage { + pname = "Mojolicious-Plugin-Status"; + version = "1.12"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SR/SRI/Mojolicious-Plugin-Status-1.12.tar.gz"; + sha256 = "1hn333220ba3hxl9aks0ywx933zv6klyi3a0iw571q76z5a8r2jn"; + }; + propagatedBuildInputs = [ BSDResource CpanelJSONXS FileMap Mojolicious ]; + meta = { + homepage = "https://github.com/mojolicious/mojo-status"; + description = "Mojolicious server status plugin"; + license = with stdenv.lib.licenses; [ artistic2 ]; + maintainers = [ maintainers.thoughtpolice ]; + }; + }; + + MojoliciousPluginTextExceptions = buildPerlPackage { + pname = "Mojolicious-Plugin-TextExceptions"; + version = "0.01"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MR/MRAMBERG/Mojolicious-Plugin-TextExceptions-0.01.tar.gz"; + sha256 = "070daf284c5d3832b7fde42120eaf747aea4cc75de8ff807f77accc84fe4f22e"; + }; + propagatedBuildInputs = [ Mojolicious ]; + meta = { + homepage = "https://github.com/marcusramberg/mojolicious-plugin-textexceptions"; + description = "Render exceptions as text in command line user agents"; + license = stdenv.lib.licenses.artistic2; + maintainers = [ maintainers.sgo ]; + }; + }; + + MojoliciousPluginWebpack = buildPerlPackage { + pname = "Mojolicious-Plugin-Webpack"; + version = "0.13"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JH/JHTHORSEN/Mojolicious-Plugin-Webpack-0.13.tar.gz"; + sha256 = "7848c0698e1b52909c71add638f7523f5affdfb8133b4ddb6f23a3bca485e761"; + }; + propagatedBuildInputs = [ Mojolicious ]; + meta = { + homepage = "https://github.com/jhthorsen/mojolicious-plugin-webpack"; + description = "Mojolicious <3 Webpack"; + license = stdenv.lib.licenses.artistic2; + maintainers = with maintainers; [ sgo ]; + }; + }; + + MojoRedis = buildPerlPackage { + pname = "Mojo-Redis"; + version = "3.24"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JH/JHTHORSEN/Mojo-Redis-3.24.tar.gz"; + sha256 = "ca9ca1026bf7d658f23860d54cbc79605e4e5a8b1cc8e7b053b36a218cef566b"; + }; + propagatedBuildInputs = [ Mojolicious ProtocolRedisFaster ]; + meta = { + homepage = "https://github.com/jhthorsen/mojo-redis"; + description = "Redis driver based on Mojo::IOLoop"; + license = stdenv.lib.licenses.artistic2; + maintainers = [ maintainers.sgo ]; + }; + }; + + MojoSQLite = buildPerlModule { + pname = "Mojo-SQLite"; + version = "3.004"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DB/DBOOK/Mojo-SQLite-3.004.tar.gz"; + sha256 = "d9ca9c1f3e8183611638e318b88ad3c0f8ab7e65f6ac72e48bffe51aea03b983"; + }; + buildInputs = [ ModuleBuildTiny ]; + propagatedBuildInputs = [ DBDSQLite Mojolicious SQLAbstract URIdb ]; + meta = { + homepage = "https://github.com/Grinnz/Mojo-SQLite"; + description = "A tiny Mojolicious wrapper for SQLite"; + license = stdenv.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 = stdenv.lib.licenses.artistic2; + maintainers = [ maintainers.sgo ]; + }; + }; + + 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 ]; + meta = { + description = "Run blocking functions asynchronously by forking"; + license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MojoJWT = buildPerlModule { + pname = "Mojo-JWT"; + version = "0.08"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JB/JBERGER/Mojo-JWT-0.08.tar.gz"; + sha256 = "c910229e1182266b6666a2d65deea381a04e48d3aa788c42461b3184006934de"; + }; + buildInputs = [ ModuleBuildTiny ]; + propagatedBuildInputs = [ Mojolicious ]; + meta = { + homepage = "https://github.com/jberger/Mojo-JWT"; + description = "JSON Web Token the Mojo way"; + license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + MojoPg = buildPerlPackage { + pname = "Mojo-Pg"; + version = "4.19"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SR/SRI/Mojo-Pg-4.19.tar.gz"; + sha256 = "5061eaddddb52c9daf2cbc34bb21e9aeea6ae58a22775fdf1ffa747905ebc992"; + }; + propagatedBuildInputs = [ DBDPg Mojolicious SQLAbstract ]; + buildInputs = [ TestDeep ]; + meta = { + homepage = "https://github.com/mojolicious/mojo-pg"; + description = "Mojolicious <3 PostgreSQL"; + license = stdenv.lib.licenses.artistic2; + maintainers = [ maintainers.sgo ]; + }; + }; + + 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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Moo = buildPerlPackage { + pname = "Moo"; + version = "2.004000"; + src = fetchurl { + url = "mirror://cpan/authors/id/H/HA/HAARG/Moo-2.004000.tar.gz"; + sha256 = "323240d000394cf38ec42e865b05cb8928f625c82c9391cd2cdc72b33c51b834"; + }; + buildInputs = [ TestFatal ]; + propagatedBuildInputs = [ ClassMethodModifiers ModuleRuntime RoleTiny SubQuote ]; + meta = { + description = "Minimalist Object Orientation (with Moose compatibility)"; + license = with stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.eelco ]; + }; + }; + + MooXHandlesVia = buildPerlPackage { + pname = "MooX-HandlesVia"; + version = "0.001008"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MATTP/MooX-HandlesVia-0.001008.tar.gz"; + sha256 = "b0946f23b3537763b8a96b8a83afcdaa64fce4b45235e98064845729acccfe8c"; + }; + buildInputs = [ MooXTypesMooseLike TestException TestFatal ]; + propagatedBuildInputs = [ DataPerl Moo ]; + meta = { + description = "NativeTrait-like behavior for Moo"; + license = with stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + 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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 = stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 ]; + }; + + 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 = stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 = stdenv.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 stdenv.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 = stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 = stdenv.lib.optionalString stdenv.isi686 "-fno-stack-protector"; + hardeningDisable = stdenv.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 stdenv.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 = stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + MusicBrainzDiscID = buildPerlModule { + pname = "MusicBrainz-DiscID"; + version = "0.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NJ/NJH/MusicBrainz-DiscID-0.03.tar.gz"; + sha256 = "0fjph2q3yp0aa87gckv3391s47m13wbyylj7jb7vqx7hv0pzj0jh"; + }; + perlPreHook = stdenv.lib.optionalString stdenv.isi686 "export LD=$CC"; # fix undefined reference to `__stack_chk_fail_local' + # Build.PL in this package uses which to find pkg-config -- make it use path instead + patchPhase = ''sed -ie 's/`which pkg-config`/"pkg-config"/' Build.PL''; + doCheck = false; # The main test performs network access + nativeBuildInputs = [ pkgs.pkgconfig ]; + 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 stdenv.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.mysql-client FileSlurp StringShellQuote ]; + meta = { + homepage = "https://github.com/estrabd/mysqldiff"; + description = "Generates a database upgrade instruction set"; + license = with stdenv.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 stdenv.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 stdenv.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 = stdenv.lib.licenses.mit; + }; + }; + + 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 stdenv.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 stdenv.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.91"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BA/BARNEY/Net-Amazon-S3-0.91.tar.gz"; + sha256 = "9779f8dea7155b6f96549b4817ca55ee5c6d6e1b0ee872d8d0de8ff13205caff"; + }; + 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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + 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 ]; + meta = { + description = "asyncronously check remote host for reachability"; + license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/frioux/Net-Async-Ping"; + }; + }; + + 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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.bjornfor ]; + }; + }; + + NetCIDRLite = buildPerlPackage { + pname = "Net-CIDR-Lite"; + version = "0.21"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DO/DOUGW/Net-CIDR-Lite-0.21.tar.gz"; + sha256 = "cfa125e8a2aef9259bc3a44e07cbdfb7894b64d22e7c0cee92aee2f5c7915093"; + }; + meta = { + description = "Perl extension for merging IPv4 or IPv6 CIDR addresses"; + }; + }; + + 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 stdenv.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.pkgconfig ]; + 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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + NetDNS = buildPerlPackage { + pname = "Net-DNS"; + version = "1.26"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NL/NLNETLABS/Net-DNS-1.26.tar.gz"; + sha256 = "eabaecd0fdb3e6adef8c9e016e8509319f19caa8c76836253f7db72bafe56498"; + }; + propagatedBuildInputs = [ DigestHMAC ]; + makeMakerFlags = "--noonline-tests"; + meta = { + description = "Perl Interface to the Domain Name System"; + license = stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 ]; + }; + }; + + 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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + doCheck = false; /* wants network */ + }; + + 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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + NetNetmask = buildPerlPackage { + pname = "Net-Netmask"; + version = "1.9104"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JM/JMASLAK/Net-Netmask-1.9104.tar.gz"; + sha256 = "17li2svymz49az35xl6galp4b9qcnb985gzklhikkvkn9da6rz3y"; + }; + 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 stdenv.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.73"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RU/RURBAN/Net-Ping-2.73.tar.gz"; + sha256 = "a5fbeafd3e65778364bead8800ae6a06d468ed68208619b5d4c1debd4d197cf2"; + }; + 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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + NetSSLeay = buildPerlPackage { + pname = "Net-SSLeay"; + version = "1.88"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CH/CHRISN/Net-SSLeay-1.88.tar.gz"; + sha256 = "1pfgh4h3szcpvqlcimc60pjbk9zwls99x5863sva0wc47i4dl010"; + }; + buildInputs = [ pkgs.openssl ]; + 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 = stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + NumberFraction = buildPerlModule { + pname = "Number-Fraction"; + version = "2.01"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DAVECROSS/Number-Fraction-2.01.tar.gz"; + sha256 = "1ysv5md4dmz95zc0gy8ivb21nhqxyv8vrc5lr2sgshsjrdqsi185"; + }; + propagatedBuildInputs = [ Moose ]; + meta = { + description = "Perl extension to model fractions"; + license = with stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + OggVorbisHeaderPurePerl = buildPerlPackage { + pname = "Ogg-Vorbis-Header-PurePerl"; + version = "1.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DAVECROSS/Ogg-Vorbis-Header-PurePerl-1.04.tar.gz"; + sha256 = "04xcjbpkp6mc57f1626871xy3aqnmp8nr21hfsazih8mzklld5sg"; + }; + + # 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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + OpenAPIClient = buildPerlPackage rec { + pname = "OpenAPI-Client"; + version = "0.25"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JH/JHTHORSEN/OpenAPI-Client-0.25.tar.gz"; + sha256 = "bc6be443c9c44348899fd595e080abe53760ae7561d63615a2f9b9f0a943336c"; + }; + propagatedBuildInputs = [ MojoliciousPluginOpenAPI ]; + meta = { + homepage = "https://github.com/jhthorsen/openapi-client"; + description = "A client for talking to an Open API powered server"; + license = stdenv.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@@" '${stdenv.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; + }; + + 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.79"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SA/SALVA/Net-OpenSSH-0.79.tar.gz"; + sha256 = "4210fa64b50820f91ab4b6c0e02a579543fc071e73fbdec0f476447ca11172cc"; + }; + meta = { + description = "Perl SSH client package implemented on top of OpenSSH"; + license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + NetZooKeeper = buildPerlPackage { + pname = "Net-ZooKeeper"; + version = "0.41"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MAF/Net-ZooKeeper-0.41.tar.gz"; + sha256 = "91c177f30f82302eaf3173356eef05c21bc82163df752acb469177bd14a72db9"; + }; + buildInputs = [ pkgs.zookeeper_mt ]; + # fix "error: format not a string literal and no format arguments [-Werror=format-security]" + hardeningDisable = [ "format" ]; + NIX_CFLAGS_COMPILE = "-I${pkgs.zookeeper_mt}/include"; + NIX_CFLAGS_LINK = "-L${pkgs.zookeeper_mt.out}/lib -lzookeeper_mt"; + meta = { + maintainers = [ maintainers.limeytexan ]; + homepage = "https://github.com/mark-5/p5-net-zookeeper"; + license = stdenv.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 stdenv.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 = stdenv.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 stdenv.lib.licenses; [ artistic1 ]; + }; + }; + + PackageStash = buildPerlPackage { + pname = "Package-Stash"; + version = "0.38"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Package-Stash-0.38.tar.gz"; + sha256 = "c58ee8844df2dda38e3bf66fdf443439aaefaef1a33940edf2055f0afd223a7f"; + }; + buildInputs = [ TestFatal TestRequires ]; + propagatedBuildInputs = [ DistCheckConflicts ModuleImplementation ]; + meta = { + description = "Routines for manipulating stashes"; + license = with stdenv.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 stdenv.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 = stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + propagatedBuildInputs = [ Moo ]; + }; + + 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 stdenv.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 = stdenv.lib.optionalString stdenv.isi686 "export LD=$CC"; # fix undefined reference to `__stack_chk_fail_local' + }; + + ParamsUtil = buildPerlPackage { + pname = "Params-Util"; + version = "1.07"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AD/ADAMK/Params-Util-1.07.tar.gz"; + sha256 = "0v67sx93yhn7xa0nh9mnbf8mixf54czk6wzrjsp6dzzr5hzyrw9h"; + }; + meta = { + description = "Simple, compact and correct param-checking functions"; + license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + ParamsValidate = buildPerlModule { + pname = "Params-Validate"; + version = "1.29"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DR/DROLSKY/Params-Validate-1.29.tar.gz"; + sha256 = "49a68dfb430bea028042479111d19068e08095e5a467e320b7ab7bde3d729733"; + }; + buildInputs = [ TestFatal TestRequires ]; + propagatedBuildInputs = [ ModuleImplementation ]; + perlPreHook = "export LD=$CC"; + meta = { + description = "Validate method/function parameters"; + license = stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.limeytexan ]; + }; + }; + + PARDist = buildPerlPackage { + pname = "PAR-Dist"; + version = "0.49"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RS/RSCHUPP/PAR-Dist-0.49.tar.gz"; + sha256 = "078ycyn8pw3rba4k3qwcqrqfcym5c1pivymwa0bvs9sab45j4iwy"; + }; + 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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.limeytexan ]; + }; + }; + + ParsePMFile = buildPerlPackage { + pname = "Parse-PMFile"; + version = "0.42"; + src = fetchurl { + url = "mirror://cpan/authors/id/I/IS/ISHIGAKI/Parse-PMFile-0.42.tar.gz"; + sha256 = "0v3k5jslbl29735hs32x9si546v55cyy6sb58aib8vmq684wgxp7"; + }; + buildInputs = [ ExtUtilsMakeMakerCPANfile ]; + meta = { + description = "parses .pm file as PAUSE does"; + license = with stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 = stdenv.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 = stdenv.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.pkgconfig ]; + NIX_CFLAGS_LINK = "-L${stdenv.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 = stdenv.lib.licenses.gpl2Plus; + maintainers = with maintainers; [ abbradar ]; + }; + }; + + PDFAPI2 = buildPerlPackage { + pname = "PDF-API2"; + version = "2.038"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SS/SSIMMS/PDF-API2-2.038.tar.gz"; + sha256 = "7447c4749b02a784f525d3c7ece99d34b0a10475db65096f6316748dd2f9bd09"; + }; + buildInputs = [ TestException TestMemoryCycle ]; + propagatedBuildInputs = [ FontTTF ]; + meta = { + description = "Facilitates the creation and modification of PDF files"; + license = stdenv.lib.licenses.lgpl21Plus; + }; + }; + + PDL = buildPerlPackage rec { + pname = "PDL"; + version = "2.022"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETJ/${pname}-${version}.tar.gz"; + sha256 = "12isj05ni44bgf76lc0fs5v88ai8gn5dqrppsbj7vsxblcya7113"; + }; + 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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + platforms = stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PerlCritic = buildPerlModule { + pname = "Perl-Critic"; + version = "1.138"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PETDANCE/Perl-Critic-1.138.tar.gz"; + sha256 = "2ad194f91ef24df4698369c2562d4164e9bf74f2d5565c681841abf79789ed82"; + }; + buildInputs = [ TestDeep ]; + 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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + 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 = stdenv.lib.licenses.artistic1; + }; + }; + + 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"; + }; + meta = { + description = "Querying your filehandle's capabilities"; + license = with stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PerlIOutf8_strict = buildPerlPackage { + pname = "PerlIO-utf8_strict"; + version = "0.007"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LE/LEONT/PerlIO-utf8_strict-0.007.tar.gz"; + sha256 = "83a33f2fe046cb3ad6afc80790635a423e2c7c6854afacc6998cd46951cc81cb"; + }; + buildInputs = [ TestException ]; + meta = { + description = "Fast and correct UTF-8 IO"; + license = with stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.limeytexan ]; + }; + }; + + PerlMagick = buildPerlPackage { + pname = "PerlMagick"; + version = "6.89-1"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JC/JCRISTY/PerlMagick-6.89-1.tar.gz"; + sha256 = "0n9afy1z5bhf9phrbahnkwhgcmijn8jggpbzwrivw1zhliliiy68"; + }; + buildInputs = [ pkgs.imagemagick ]; + preConfigure = + '' + sed -i -e 's|my \$INC_magick = .*|my $INC_magick = "-I${pkgs.imagemagick.dev}/include/ImageMagick";|' Makefile.PL + ''; + doCheck = false; + }; + + PerlTidy = buildPerlPackage rec { + pname = "Perl-Tidy"; + version = "20200110"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHANCOCK/Perl-Tidy-20200110.tar.gz"; + sha256 = "c8c13ab88f42409d419993d488b8dc7cf4a02d5034d3037ca859fb93b18e8086"; + }; + meta = { + description = "Indent and reformat perl scripts"; + license = stdenv.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 { + pname = "PkgConfig"; + version = "0.24026"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PL/PLICEASE/PkgConfig-0.24026.tar.gz"; + sha256 = "345d44562802ddf3da70faf817e2d1884808166d00480fcce6d7b92005d91aee"; + }; + meta = { + description = "Pure-Perl Core-Only replacement for pkg-config"; + license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.limeytexan ]; + }; + }; + + Plack = buildPerlPackage { + pname = "Plack"; + version = "1.0047"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIYAGAWA/Plack-1.0047.tar.gz"; + sha256 = "322c93f5acc0a0f0e11fd4a76188f978bdc14338a9f1df3ae535227017046561"; + }; + 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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Po4a = callPackage ../development/perl-modules/Po4a { }; + + 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 = [ maintainers.limeytexan ]; + description = "Portable multitasking and networking framework for any event loop"; + license = stdenv.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 = [ maintainers.limeytexan ]; + description = "Reusable tests for POE::Loop authors"; + license = stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PPIxQuoteLike = buildPerlModule { + pname = "PPIx-QuoteLike"; + version = "0.012"; + src = fetchurl { + url = "mirror://cpan/authors/id/W/WY/WYANT/PPIx-QuoteLike-0.012.tar.gz"; + sha256 = "0g69wgj3libxf03q2sp7wcs6m42yps38fi8ndwlz5saqxnwpdz27"; + }; + propagatedBuildInputs = [ PPI Readonly ]; + meta = { + description = "Parse Perl string literals and string-literal-like things."; + license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PPIxRegexp = buildPerlModule { + pname = "PPIx-Regexp"; + version = "0.074"; + src = fetchurl { + url = "mirror://cpan/authors/id/W/WY/WYANT/PPIx-Regexp-0.074.tar.gz"; + sha256 = "c4c02ef32d5357ac3f81c8cb6d7da5f1c9e9bea2f47f1476c847efac276d109f"; + }; + propagatedBuildInputs = [ PPI ]; + meta = { + description = "Parse regular expressions"; + license = with stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + 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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 ]; + }; + + 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 stdenv.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 = stdenv.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.3"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RO/ROBIN/PadWalker-2.3.tar.gz"; + sha256 = "2a6c44fb600861e54568e74081a8d1f121f0060076069ceab34b1ae89d6588cf"; + }; + }; + + 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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PodChecker = buildPerlPackage { + pname = "Pod-Checker"; + version = "1.73"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MAREKR/Pod-Checker-1.73.tar.gz"; + sha256 = "7dee443b03d80d0735ec50b6d1caf0209c51ab0a97d64050cfc10e1555cb9305"; + }; + }; + + 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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 = stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + podlators = buildPerlPackage { + pname = "podlators"; + version = "4.10"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RR/RRA/podlators-4.10.tar.gz"; + sha256 = "008b4j41ijrfyyq5nd3y7pqyww6rg49fjg2c6kmpnqrmgs347qqp"; + }; + meta = { + description = "Convert POD data to various other formats"; + license = with stdenv.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 = stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PodMarkdown = buildPerlPackage { + pname = "Pod-Markdown"; + version = "3.200"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RW/RWSTAUNER/Pod-Markdown-3.200.tar.gz"; + sha256 = "16dffpqwrdhi2s90ff2sgncrpnzqp81ydhl5pd78m725j60p2286"; + }; + buildInputs = [ TestDifferences ]; + meta = { + homepage = "https://github.com/rwstauner/Pod-Markdown"; + description = "Convert POD to Markdown"; + license = with stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + PodSimple = buildPerlPackage { + pname = "Pod-Simple"; + version = "3.40"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KH/KHW/Pod-Simple-3.40.tar.gz"; + sha256 = "0384k8k18srsdj2a2j10gbvv19lnvynq359y9kb4zn5bv2wqqfh6"; + }; + }; + + 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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 = stdenv.lib.optional stdenv.isDarwin shortenPerlShebang; + postInstall = stdenv.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 stdenv.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 = stdenv.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 stdenv.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 = stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + 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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + platforms = stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 = stdenv.lib.licenses.lgpl21Plus; + }; + }; + + SearchXapian = buildPerlPackage rec { + pname = "Search-Xapian"; + version = "1.2.25.2"; + src = fetchurl { + url = "mirror://cpan/authors/id/O/OL/OLLY/Search-Xapian-1.2.25.2.tar.gz"; + sha256 = "0hpa8gi38j0ibq8af6dy69lm1bl5jnq76nsa69dbrzbr88l5m594"; + }; + patches = [ + (fetchpatch { + url = "https://git.xapian.org/?p=xapian;a=patch;h=69ad652b7ad7912801e686db2da55d73f79fbf75"; + name = "fix-automated-testing-false-negative"; + sha256 = "1241mpyf8mgx7szyl5sxa6wl388rzph3q51mn9v4yjbm0k5l0sxr"; + stripLen = 1; + }) + ]; + buildInputs = [ pkgs.xapian DevelLeak ]; + meta = { + description = "Perl XS frontend to the Xapian C++ search library"; + license = with stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 = stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 = stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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"; + }; + }; + + 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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + SQLAbstractLimit = buildPerlModule { + pname = "SQL-Abstract-Limit"; + version = "0.141"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DAVEBAIRD/SQL-Abstract-Limit-0.141.tar.gz"; + sha256 = "1qqh89kz065mkgyg5pjcgbf8qcpzfk8vf1lgkbwynknadmv87zqg"; + }; + 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.412"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RE/REHSACK/SQL-Statement-1.412.tar.gz"; + sha256 = "65c870883379c11b53f19ead10aaac241ccc86a90bbab77f6376fe750720e5c8"; + }; + 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.61"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MS/MSTROUT/SQL-Translator-1.61.tar.gz"; + sha256 = "840e3c77cd48b47e1343c79ae8ef4fca46d036356d143d33528900740416dfe8"; + }; + buildInputs = [ FileShareDirInstall JSONMaybeXS TestDifferences TestException XMLWriter YAML ]; + propagatedBuildInputs = [ CarpClan DBI FileShareDir Moo PackageVariant ParseRecDescent TryTiny ]; + meta = { + description = "SQL DDL transformations and more"; + license = with stdenv.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 stdenv.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 stdenv.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 = stdenv.lib.optional stdenv.isDarwin shortenPerlShebang; + propagatedBuildInputs = [ DataDump HTTPParserXS NetServer Plack NetServerSSPrefork ]; + postInstall = stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + StatisticsDescriptive = buildPerlModule { + pname = "Statistics-Descriptive"; + version = "3.0702"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/Statistics-Descriptive-3.0702.tar.gz"; + sha256 = "f98a10c625640170cdda408cccc72bdd7f66f8ebe5f59dec1b96185171ef11d0"; + }; + 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 stdenv.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 stdenv.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 stdenv.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"; + }; + }; + + StringCRC32 = buildPerlPackage { + pname = "String-CRC32"; + version = "1.8"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LE/LEEJO/String-CRC32-1.8.tar.gz"; + sha256 = "0vvwlf50vylx1m7nrjphkz309nsl2k2yqyldn3942337kiipjnmn"; + }; + }; + + 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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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.30"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/String-Random-0.30.tar.gz"; + sha256 = "06xdpyjc53al0a4ib2lw1m388v41z97hzqbdkd00w3nmjsdrn4w1"; + }; + }; + + 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 stdenv.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 stdenv.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 stdenv.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"; + }; + }; + + 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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + SubHandlesVia = buildPerlPackage { + pname = "Sub-HandlesVia"; + version = "0.014"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TOBYINK/Sub-HandlesVia-0.014.tar.gz"; + sha256 = "0mhwnh3966gr10hxnbsdq2ccsha958divcfhwn2yia3q06j6bk4d"; + }; + propagatedBuildInputs = [ ClassMethodModifiers ClassTiny RoleTiny ScalarListUtils TypeTiny ]; + buildInputs = [ TestFatal TestRequires ]; + meta = { + description = "alternative handles_via implementation"; + license = with stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/toddr/Safe-Hole"; + }; + }; + + 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 stdenv.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 + }; + + 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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + 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 stdenv.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 stdenv.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 = stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ PodCoverageTrustPod TestCPANMeta TestPod TestPodCoverage ]; + }; + + SysVirt = buildPerlModule rec { + pname = "Sys-Virt"; + version = "6.3.0"; + src = fetchurl { + url = "mirror://cpan/authors/id/D/DA/DANBERR/Sys-Virt-v6.3.0.tar.gz"; + sha256 = "6333fe3c554322fec5a3e1890b08a4ea4f39b0fbb506b3592688a5785a488f39"; + }; + nativeBuildInputs = [ pkgs.pkgconfig ]; + buildInputs = [ pkgs.libvirt CPANChanges TestPod TestPodCoverage XMLXPath ]; + perlPreHook = stdenv.lib.optionalString stdenv.isi686 "export LD=$CC"; # fix undefined reference to `__stack_chk_fail_local' + }; + + 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 stdenv.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 stdenv.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.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/Task-FreecellSolver-Testing-v0.0.11.tar.gz"; + sha256 = "a2f73c65d0e5676cf4aae213ba4c3f88bf85f084a2165f1e71e3ce5b19023206"; + }; + 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 = stdenv.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.0105"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/Task-Test-Run-AllPlugins-0.0105.tar.gz"; + sha256 = "fd43bd053aa884a5abca851f145a0e29898515dcbfc3512f18cd0d86d28eb0a9"; + }; + 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 = stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 = stdenv.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 = stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TermShell = buildPerlModule { + pname = "Term-Shell"; + version = "0.11"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/Term-Shell-0.11.tar.gz"; + sha256 = "7a142361f22f2e5fae9d6e39353663e8bdfa6118d1aee82204bd9083ddb04154"; + }; + propagatedBuildInputs = [ TermReadKey TextAutoformat ]; + meta = with stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic2 ]; + }; + propagatedBuildInputs = [ TestSimple13 ]; + }; + + Test2Suite = buildPerlPackage { + pname = "Test2-Suite"; + version = "0.000135"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/EX/EXODIST/Test2-Suite-0.000135.tar.gz"; + sha256 = "1d0ac9e1e363c70ffecfe155e2cf917c610c671f65aa1cdb2425a3a6caeae21b"; + }; + propagatedBuildInputs = [ ModulePluggable ScopeGuard SubInfo TermTable TestSimple13 ]; + meta = { + description = "Distribution with a rich set of tools built upon the Test2 framework"; + license = with stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 = stdenv.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 stdenv.lib.licenses; [ artistic2 ]; + }; + }; + + TestDataSplit = buildPerlModule { + pname = "Test-Data-Split"; + version = "0.2.1"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/Test-Data-Split-0.2.1.tar.gz"; + sha256 = "9ba0c27a9e23c5dd8ede7611a049180485acc512a63783e1d1843b6569db5ae7"; + }; + buildInputs = [ TestDifferences ]; + propagatedBuildInputs = [ IOAll ListMoreUtils MooX MooXlate ]; + meta = { + description = "Split data-driven tests into several test scripts"; + license = stdenv.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 = { + }; + }; + + 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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestEOL = buildPerlPackage { + pname = "Test-EOL"; + version = "2.00"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/ET/ETHER/Test-EOL-2.00.tar.gz"; + sha256 = "0l3bxpsw0x7j9nclizcp53mnf9wny25dmg2iglfhzgnk0xfpwzwf"; + }; + meta = { + description = "Check the correct line endings in your project"; + license = with stdenv.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 stdenv.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 = stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/karenetheridge/Test-LWP-UserAgent"; + }; + }; + + 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 stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + 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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestMockModule = buildPerlModule { + pname = "Test-MockModule"; + version = "0.173.0"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GF/GFRANKS/Test-MockModule-v0.173.0.tar.gz"; + sha256 = "0hnv2ziyasrri58ys93j5qyyzgxw3jx5hvjhd72nsp4vqq6lhg6s"; + }; + 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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 = stdenv.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 stdenv.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 { + pname = "Test-PerlTidy"; + version = "20200412"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/Test-PerlTidy-20200412.tar.gz"; + sha256 = "905240447edb1930192000db659556cbf5ad5710f4376bb0a5abcd8716a4592c"; + }; + propagatedBuildInputs = [ PathTiny PerlTidy TextDiff ]; + meta = { + license = with stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestRun = buildPerlModule { + pname = "Test-Run"; + version = "0.0304"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/Test-Run-0.0304.tar.gz"; + sha256 = "f3feaf9c4494c0b3a5294228cab27efe93653b7e0bbd7fbb99b94b65b247f323"; + }; + 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 = stdenv.lib.licenses.mit; + }; + }; + + TestRunCmdLine = buildPerlModule { + pname = "Test-Run-CmdLine"; + version = "0.0131"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/Test-Run-CmdLine-0.0131.tar.gz"; + sha256 = "cceeeecd3f4b2f1d2929f3ada351c1ade23a8ac73ef0486dc6e9605ebcdaef18"; + }; + 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 = stdenv.lib.licenses.mit; + }; + }; + + TestRunPluginAlternateInterpreters = buildPerlModule { + pname = "Test-Run-Plugin-AlternateInterpreters"; + version = "0.0124"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/Test-Run-Plugin-AlternateInterpreters-0.0124.tar.gz"; + sha256 = "eecb3830d350b5d7853322df4f3090af42ff17e9c31075f8d4f69856c968bff3"; + }; + 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 = stdenv.lib.licenses.mit; + }; + }; + + TestRunPluginBreakOnFailure = buildPerlModule { + pname = "Test-Run-Plugin-BreakOnFailure"; + version = "0.0.5"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/Test-Run-Plugin-BreakOnFailure-v0.0.5.tar.gz"; + sha256 = "e422eb64a2fa6ae59837312e37ab88d68b4945148eb436a3774faed5074f0430"; + }; + 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 = stdenv.lib.licenses.mit; + }; + }; + + TestRunPluginColorFileVerdicts = buildPerlModule { + pname = "Test-Run-Plugin-ColorFileVerdicts"; + version = "0.0124"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/Test-Run-Plugin-ColorFileVerdicts-0.0124.tar.gz"; + sha256 = "0418f03abe241f5a3c2a2ab3dd2679d11eee42c9e1f5b5a6ea80d9e238374302"; + }; + 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 = stdenv.lib.licenses.mit; + }; + }; + + TestRunPluginColorSummary = buildPerlModule { + pname = "Test-Run-Plugin-ColorSummary"; + version = "0.0202"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/Test-Run-Plugin-ColorSummary-0.0202.tar.gz"; + sha256 = "ea4fb6768c4f6645cedf87d9b7c6baf97364ebc6f4171e4dd5f68939fb2bdd3a"; + }; + 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 = stdenv.lib.licenses.mit; + }; + }; + + TestRunPluginTrimDisplayedFilenames = buildPerlModule { + pname = "Test-Run-Plugin-TrimDisplayedFilenames"; + version = "0.0125"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/Test-Run-Plugin-TrimDisplayedFilenames-0.0125.tar.gz"; + sha256 = "2255bc5cb6ab65ee4dfff3bcdf007fb74785ff3bb439a9cef5052c66d80424a5"; + }; + buildInputs = [ TestRun TestRunCmdLine TestTrap YAMLLibYAML ]; + propagatedBuildInputs = [ Moose ]; + meta = { + homepage = "https://web-cpan.shlomifish.org/modules/Test-Run/"; + description = "Trim the first components"; + license = stdenv.lib.licenses.mit; + }; + }; + + TestRunValgrind = buildPerlModule { + pname = "Test-RunValgrind"; + version = "0.2.1"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/Test-RunValgrind-0.2.1.tar.gz"; + sha256 = "25a4a8bfcefaed7c40d8b8492e8828e798e6c85ca5f34ce4b9993f9899a7b09c"; + }; + buildInputs = [ TestTrap ]; + propagatedBuildInputs = [ PathTiny ]; + meta = { + description = "Tests that an external program is valgrind-clean"; + license = stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestSimple13 = buildPerlPackage { + pname = "Test-Simple"; + version = "1.302177"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/EX/EXODIST/Test-Simple-1.302177.tar.gz"; + sha256 = "9fbf263096d893d7f8e0dcb0ea0dfe8d62b973b86e6360f43b54080bd2974554"; + }; + meta = { + description = "Basic utilities for writing tests"; + license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + 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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 = stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TestWWWMechanize = buildPerlPackage { + pname = "Test-WWW-Mechanize"; + version = "1.52"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PETDANCE/Test-WWW-Mechanize-1.52.tar.gz"; + sha256 = "1jsywlbxhqw39ij7s8vmgff5vys58vlfaq27072awacnxc65aal4"; + }; + buildInputs = [ TestLongString ]; + propagatedBuildInputs = [ CarpAssertMore HTTPServerSimple WWWMechanize ]; + meta = { + homepage = "https://github.com/petdance/test-www-mechanize"; + description = "Testing-specific WWW::Mechanize subclass"; + license = stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TextBalanced = buildPerlPackage { + pname = "Text-Balanced"; + version = "2.03"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHAY/Text-Balanced-2.03.tar.gz"; + sha256 = "057753f8f0568b53921f66a60a89c30092b73329bcc61a2c43339ab70c9792c8"; + }; + meta = { + description = "Extract delimited text sequences from strings"; + license = with stdenv.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"; + }; + perlPreHook = "export LD=$CC"; + perlPostHook = stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + TextFormat = buildPerlModule { + pname = "Text-Format"; + version = "0.61"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/Text-Format-0.61.tar.gz"; + sha256 = "bb8a3b8ff515c85101baf553a769337f944a05cde81f111ae78aff416bf4ae2b"; + }; + meta = { + homepage = "https://metacpan.org/release/Text-Format"; + description = "Format text"; + license = with stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + + 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 stdenv.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"; + }; + }; + + 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 = stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 ]; + }; + + 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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + 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"; + }; + }; + + 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 stdenv.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 = stdenv.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 stdenv.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 stdenv.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 = stdenv.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 = stdenv.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.0403"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/Text-Sprintf-Named-0.0403.tar.gz"; + sha256 = "8a2f6e52998d1d8adb6ce0f5be85265be2e51ce06cf8ae23b3a0f059ba21b888"; + }; + buildInputs = [ TestWarn ]; + meta = { + description = "Sprintf-like function with named conversions"; + license = stdenv.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 = stdenv.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 stdenv.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 stdenv.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 = stdenv.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 stdenv.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"; + }; + + 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 stdenv.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 = stdenv.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 stdenv.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 ]; + }; + + 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"; + }; + propagatedBuildInputs = [ pkgs.glibc 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 stdenv.lib.licenses; [ artistic1 gpl2 ]; + # bogus use of glibc, pretty sure, think this is what we have glibcLocales for? + broken = stdenv.hostPlatform.libc != "glibc"; + }; + }; + + 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 stdenv.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 stdenv.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 stdenv.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 = stdenv.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 stdenv.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 stdenv.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 stdenv.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 = stdenv.lib.licenses.asl20; + }; + }; + + TieHashIndexed = buildPerlPackage { + pname = "Tie-Hash-Indexed"; + version = "0.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MH/MHX/Tie-Hash-Indexed-0.05.tar.gz"; + sha256 = "a8862a4763d58a8c785e34b8b18e5db4ce5c3e36b9b5cf565a3088584eab361e"; + }; + meta = { + description = "Ordered hashes for Perl"; + license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + doCheck = false; /* test fails on some machines */ + }; + + TieRefHash = buildPerlPackage { + pname = "Tie-RefHash"; + version = "1.39"; + src = fetchurl { + url = "mirror://cpan/authors/id/F/FL/FLORA/Tie-RefHash-1.39.tar.gz"; + sha256 = "b0b80ef571e7dadb726b8214f7352a932a8fa82af29072895aa1aadc89f48bec"; + }; + }; + + 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 = stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 = stdenv.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 stdenv.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 stdenv.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 = stdenv.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 stdenv.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 stdenv.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 = stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/miyagawa/Twiggy"; + }; + }; + + TypeTiny = buildPerlPackage { + pname = "Type-Tiny"; + version = "1.010006"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TOBYINK/Type-Tiny-1.010006.tar.gz"; + sha256 = "f1568e3f0bf103e65faadc1804c6184fe29bf52559e7ff3c12f4dad437befd82"; + }; + propagatedBuildInputs = [ ExporterTiny ]; + meta = { + description = "Tiny, yet Moo(se)-compatible type constraint"; + license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + buildInputs = [ TestMemoryCycle ]; + }; + + TypesSerialiser = buildPerlPackage { + pname = "Types-Serialiser"; + version = "1.0"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/ML/MLEHMANN/Types-Serialiser-1.0.tar.gz"; + sha256 = "03bk0hm5ys8k7265dkap825ybn2zmzb1hl0kf1jdm8yq95w39lvs"; + }; + 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 stdenv.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 stdenv.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 stdenv.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 = stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 = "1.76"; + src = fetchurl { + url = "mirror://cpan/authors/id/O/OA/OALDERS/URI-1.76.tar.gz"; + sha256 = "b2c98e1d50d6f572483ee538a6f4ccc8d9185f91f0073fd8af7390898254413e"; + }; + buildInputs = [ TestNeeds ]; + meta = { + homepage = "https://github.com/libwww-perl/URI"; + description = "Uniform Resource Identifiers (absolute and relative)"; + license = with stdenv.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 stdenv.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 stdenv.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 stdenv.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 = "0.99"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MARKOV/User-Identity-0.99.tar.gz"; + sha256 = "0c2qwxgpqncm4ya3rb5zz2hgiwwf559j1b1a6llyarf9jy43hfzm"; + }; + meta = { + description = "Collect information about a user"; + license = with stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + 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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + Version = buildPerlPackage { + pname = "version"; + version = "0.9927"; + src = fetchurl { + url = "mirror://cpan/authors/id/L/LE/LEONT/version-0.9927.tar.gz"; + sha256 = "a78cb8d9ecbfea200ac18bed9e6e72c8efd60e6ebeb47ee142c3c5c635a88d06"; + }; + meta = { + description = "Structured version objects"; + license = with stdenv.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 stdenv.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 stdenv.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 stdenv.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 = stdenv.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 = stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + homepage = "https://github.com/kazeburo/WWW-Form-UrlEncoded"; + }; + }; + + WWWMechanize = buildPerlPackage { + pname = "WWW-Mechanize"; + version = "2.00"; + src = fetchurl { + url = "mirror://cpan/authors/id/O/OA/OALDERS/WWW-Mechanize-2.00.tar.gz"; + sha256 = "0j5bzn9jwb8rclif776gax57jxxn108swmajiqi2cpjbmlwng0ki"; + }; + 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 stdenv.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' + ''; + }; + + 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 stdenv.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 stdenv.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 stdenv.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 stdenv.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"; + }; + AUTOMATED_TESTING = false; + 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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + 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 stdenv.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 stdenv.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 = stdenv.lib.optional stdenv.isDarwin shortenPerlShebang; + propagatedBuildInputs = [ + XMLSAX + XMLSAXWriter + ]; + postInstall = stdenv.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.0205"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/XML-LibXML-2.0205.tar.gz"; + sha256 = "0y12bcpnxzn8vs9zglaaxkw0kgrgmljxrxdf1cnijgxi2hkh099s"; + }; + SKIP_SAX_INSTALL = 1; + buildInputs = [ AlienBuild AlienLibxml2 ]; + 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 stdenv.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.pkgconfig 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 = stdenv.lib.optionalString (stdenv.buildPlatform != stdenv.hostPlatform) '' + substituteInPlace Expat/Makefile.PL --replace 'use English;' '#' + '' + stdenv.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 stdenv.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 = stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + description = "Client and server implementation of XML-RPC protocol"; + }; + }; + + XMLRSS = buildPerlModule { + pname = "XML-RSS"; + version = "1.61"; + src = fetchurl { + url = "mirror://cpan/authors/id/S/SH/SHLOMIF/XML-RSS-1.61.tar.gz"; + sha256 = "fa6fe7ce5d31800a2bd414ef39da48c7f2b26b073a3c1f0d677bda26e840c90d"; + }; + propagatedBuildInputs = [ DateTimeFormatMail DateTimeFormatW3CDTF XMLParser ]; + meta = { + homepage = "http://perl-rss.sourceforge.net/"; + description = "Creates and updates RSS files"; + license = with stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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 stdenv.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.625"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JO/JOSEPHW/XML-Writer-0.625.tar.gz"; + sha256 = "1gjzs570i67ywbv967g8ylb5sg59clwmyrl2yix3jl70dhn55070"; + }; + }; + + 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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + XSParseSublike = buildPerlModule { + pname = "XS-Parse-Sublike"; + version = "0.10"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PEVANS/XS-Parse-Sublike-0.10.tar.gz"; + sha256 = "99a1bdda3ffa67514adb6aa189c902fa78dca41d778a42ae7079f604a045ac43"; + }; + buildInputs = [ TestFatal ]; + perlPreHook = stdenv.lib.optionalString stdenv.isDarwin "export LD=$CC"; + meta = { + description = "XS functions to assist in parsing sub-like syntax"; + license = with stdenv.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 stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + + YAMLSyck = buildPerlPackage { + pname = "YAML-Syck"; + version = "1.32"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TO/TODDR/YAML-Syck-1.32.tar.gz"; + sha256 = "1fz9r9vvsmjkzvcbznxw65b319vkmwzd0ck09q9nwip00gn907fv"; + }; + perlPreHook = stdenv.lib.optionalString stdenv.isDarwin "export LD=$CC"; + meta = { + description = "Fast, lightweight YAML loader and dumper"; + license = stdenv.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.025"; + src = fetchurl { + url = "mirror://cpan/authors/id/T/TI/TINITA/YAML-PP-0.025.tar.gz"; + sha256 = "1v579a874b98l8kj0sk2qk8ydcgqlzlrvcs2yc77s1xnxay15b0m"; + }; + buildInputs = [ TestDeep TestWarn ]; + meta = { + description = "YAML Framework"; + license = with stdenv.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 stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + +} // stdenv.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; + 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; + +}; in self diff --git a/infra/libkookie/nixpkgs/pkgs/top-level/php-packages.nix b/infra/libkookie/nixpkgs/pkgs/top-level/php-packages.nix new file mode 100644 index 000000000000..d4518b60d24d --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/top-level/php-packages.nix @@ -0,0 +1,549 @@ +{ stdenv, lib, pkgs, fetchgit, php, autoconf, pkgconfig, re2c +, gettext, bzip2, curl, libxml2, openssl, gmp, icu64, oniguruma, libsodium +, html-tidy, libzip, zlib, pcre, pcre2, libxslt, aspell, openldap, cyrus_sasl +, uwimap, pam, libiconv, enchant1, libXpm, gd, libwebp, libjpeg, libpng +, freetype, libffi, freetds, postgresql, sqlite, net-snmp, unixODBC, libedit +, readline, rsync, fetchpatch +}: + +let + 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}"; + }); + + pcre' = if (lib.versionAtLeast php.version "7.3") then pcre2 else pcre; + + callPackage = pkgs.newScope { + inherit mkDerivation php buildPecl pcre'; + }; +in +{ + inherit buildPecl; + + # This is a set of interactive tools based on PHP. + packages = { + box = callPackage ../development/php-packages/box { }; + + composer = callPackage ../development/php-packages/composer { }; + + composer2 = callPackage ../development/php-packages/composer/2.0.nix { }; + + 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 = { + 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 { }; + + event = callPackage ../development/php-packages/event { }; + + 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 { }; + + pcov = callPackage ../development/php-packages/pcov { }; + + pcs = buildPecl { + version = "1.3.3"; + pname = "pcs"; + + sha256 = "0d4p1gpl8gkzdiv860qzxfz250ryf0wmjgyc8qcaaqgkdyh5jy5p"; + + internalDeps = [ php.extensions.tokenizer ]; + + meta.maintainers = lib.teams.php.members; + meta.broken = lib.versionAtLeast php.version "7.3"; # Runtime failure on 7.3, build error on 7.4 + }; + + 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 { }; + + pthreads = callPackage ../development/php-packages/pthreads { }; + + rdkafka = callPackage ../development/php-packages/rdkafka { }; + + redis = callPackage ../development/php-packages/redis { }; + + sqlsrv = callPackage ../development/php-packages/sqlsrv { }; + + v8 = buildPecl { + version = "0.2.2"; + pname = "v8"; + + sha256 = "103nys7zkpi1hifqp9miyl0m1mn07xqshw3sapyz365nb35g5q71"; + + buildInputs = [ pkgs.v8_6_x ]; + configureFlags = [ "--with-v8=${pkgs.v8_6_x}" ]; + + meta.maintainers = lib.teams.php.members; + meta.broken = true; + }; + + v8js = buildPecl { + version = "2.1.0"; + pname = "v8js"; + + sha256 = "0g63dyhhicngbgqg34wl91nm3556vzdgkq19gy52gvmqj47rj6rg"; + + buildInputs = [ pkgs.v8_6_x ]; + configureFlags = [ "--with-v8js=${pkgs.v8_6_x}" ]; + + meta.maintainers = lib.teams.php.members; + meta.broken = true; + }; + + xdebug = callPackage ../development/php-packages/xdebug { }; + + yaml = callPackage ../development/php-packages/yaml { }; + + zmq = buildPecl { + version = "1.1.3"; + pname = "zmq"; + + sha256 = "1kj487vllqj9720vlhfsmv32hs2dy2agp6176mav6ldx31c3g4n4"; + + configureFlags = [ + "--with-zmq=${pkgs.zeromq}" + ]; + + nativeBuildInputs = [ pkgs.pkgconfig ]; + + meta.maintainers = lib.teams.php.members; + meta.broken = lib.versionAtLeast php.version "7.3"; + }; + } // (let + # Function to build a single php extension 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 pkgconfig 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 = "echo n | make test"; + 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; + }; + }); + + # 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.optional (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 = [ pcre' ]; } + { name = "filter"; buildInputs = [ pcre' ]; } + { 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 = if stdenv.isDarwin then + [ "--with-iconv=${libiconv}" ] + else + [ "--with-iconv" ]; + doCheck = false; } + { name = "imap"; + buildInputs = [ uwimap openssl pam pcre' ]; + configureFlags = [ "--with-imap=${uwimap}" "--with-imap-ssl" ]; + # uwimap doesn't build on darwin. + enable = (!stdenv.isDarwin); } + # interbase (7.3, 7.2) + { name = "intl"; + buildInputs = [ icu64 ]; + patches = lib.optional (lib.versionOlder php.version "7.4") (fetchpatch { + url = "https://github.com/php/php-src/commit/93a9b56c90c334896e977721bfb3f38b1721cec6.patch"; + sha256 = "055l40lpyhb0rbjn6y23qkzdhvpp7inbnn6x13cpn4inmhjqfpg4"; + }); + } + { name = "json"; } + { name = "ldap"; + buildInputs = [ openldap cyrus_sasl ]; + configureFlags = [ + "--with-ldap" + "LDAP_DIR=${openldap.dev}" + "LDAP_INCDIR=${openldap.dev}/include" + "LDAP_LIBDIR=${openldap.out}/lib" + ] ++ lib.optional stdenv.isLinux "--with-ldap-sasl=${cyrus_sasl.dev}"; + doCheck = false; } + { name = "mbstring"; buildInputs = [ oniguruma ]; 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.optional (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 = [ pcre' ]; + # HAVE_OPCACHE_FILE_CACHE is defined in config.h, which is + # included from ZendAccelerator.h, but ZendAccelerator.h is + # included after the ifdef... + patches = lib.optional (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"); } + { 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 = [ pcre' ]; + 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; + } + # recode (7.3, 7.2) + { name = "session"; } + { name = "shmop"; } + { name = "simplexml"; + buildInputs = [ libxml2 pcre' ]; + configureFlags = [ "--enable-simplexml" ] + # Required to build on darwin. + ++ lib.optional (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.optional (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"; } + { 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.optional (lib.versionOlder php.version "7.4") [ "--with-libxml-dir=${libxml2.dev}" ]; + doCheck = false; } + { name = "xmlreader"; + buildInputs = [ libxml2 ]; + configureFlags = [ "--enable-xmlreader CFLAGS=-I../.." ] + # Required to build on darwin. + ++ lib.optional (lib.versionOlder php.version "7.4") [ "--with-libxml-dir=${libxml2.dev}" ]; } + { name = "xmlrpc"; + buildInputs = [ libxml2 libiconv ]; + configureFlags = [ "--with-xmlrpc" ] + # Required to build on darwin. + ++ lib.optional (lib.versionOlder php.version "7.4") [ "--with-libxml-dir=${libxml2.dev}" ]; } + { name = "xmlwriter"; + buildInputs = [ libxml2 ]; + configureFlags = [ "--enable-xmlwriter" ] + # Required to build on darwin. + ++ lib.optional (lib.versionOlder php.version "7.4") [ "--with-libxml-dir=${libxml2.dev}" ]; } + { name = "xsl"; + buildInputs = [ libxslt libxml2 ]; + doCheck = !(lib.versionOlder php.version "7.4"); + configureFlags = [ "--with-xsl=${libxslt.dev}" ]; } + { name = "zend_test"; } + { name = "zip"; + buildInputs = [ libzip pcre' ]; + configureFlags = [ "--with-zip" ] + ++ lib.optional (lib.versionOlder php.version "7.4") [ "--with-zlib-dir=${zlib.dev}" ] + ++ lib.optional (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.optional (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/infra/libkookie/nixpkgs/pkgs/top-level/pure-packages.nix b/infra/libkookie/nixpkgs/pkgs/top-level/pure-packages.nix new file mode 100644 index 000000000000..005e09cc003e --- /dev/null +++ b/infra/libkookie/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/infra/libkookie/nixpkgs/pkgs/top-level/python-packages.nix b/infra/libkookie/nixpkgs/pkgs/top-level/python-packages.nix new file mode 100644 index 000000000000..b3d1c5cfe856 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/top-level/python-packages.nix @@ -0,0 +1,7846 @@ +# 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 +, python +, overrides ? (self: super: {}) +}: + +with pkgs.lib; + +let + packages = ( self: + +let + inherit (python.passthru) isPy27 isPy35 isPy36 isPy37 isPy38 isPy39 isPy3k isPyPy pythonAtLeast pythonOlder; + + callPackage = pkgs.newScope self; + + 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: stdenv.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; + }; + }); + + disabledIf = x: drv: + if x then throw "${removePythonPrefix (drv.pname or drv.name)} not supported for interpreter ${python.executable}" else drv; + +in { + + inherit (python.passthru) isPy27 isPy35 isPy36 isPy37 isPy38 isPy39 isPy3k isPyPy pythonAtLeast pythonOlder; + inherit python bootstrapped-pip buildPythonPackage buildPythonApplication; + inherit fetchPypi callPackage; + inherit hasPythonModule requiredPythonModules makePythonPath disabledIf; + inherit toPythonModule toPythonApplication; + inherit buildSetupcfg; + + inherit (callPackage ../development/interpreters/python/hooks { }) + eggUnpackHook + eggBuildHook + eggInstallHook + flitBuildHook + pipBuildHook + pipInstallHook + pytestCheckHook + pythonCatchConflictsHook + pythonImportsCheckHook + pythonNamespacesHook + pythonRecompileBytecodeHook + pythonRemoveBinBytecodeHook + pythonRemoveTestsDirHook + setuptoolsBuildHook + setuptoolsCheckHook + venvShellHook + wheelUnpackHook; + + # helpers + + wrapPython = callPackage ../development/interpreters/python/wrap-python.nix {inherit python; inherit (pkgs) makeSetupHook makeWrapper; }; + + # Dont take pythonPackages from "global" pkgs scope to avoid mixing python versions + pythonPackages = self; + + # specials + + recursivePthLoader = callPackage ../development/python-modules/recursive-pth-loader { }; + + setuptools = if isPy27 then + callPackage ../development/python-modules/setuptools/44.0.nix { } + else + 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 { }; + + 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 { }; + + adal = callPackage ../development/python-modules/adal { }; + + adb-homeassistant = callPackage ../development/python-modules/adb-homeassistant { }; + + adb-shell = callPackage ../development/python-modules/adb-shell { }; + + addic7ed-cli = callPackage ../development/python-modules/addic7ed-cli { }; + + adguardhome= callPackage ../development/python-modules/adguardhome { }; + + aenum = callPackage ../development/python-modules/aenum { }; + + afdko = callPackage ../development/python-modules/afdko { }; + + affine = callPackage ../development/python-modules/affine { }; + + affinity = callPackage ../development/python-modules/affinity { }; + + 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 { }; + + aioamqp = callPackage ../development/python-modules/aioamqp { }; + + aioconsole = callPackage ../development/python-modules/aioconsole { }; + + aiocontextvars = callPackage ../development/python-modules/aiocontextvars { }; + + aiodns = callPackage ../development/python-modules/aiodns { }; + + aioesphomeapi = callPackage ../development/python-modules/aioesphomeapi { }; + + aioeventlet = callPackage ../development/python-modules/aioeventlet { }; + + aiofiles = callPackage ../development/python-modules/aiofiles { }; + + aioftp = callPackage ../development/python-modules/aioftp { }; + + aioh2 = callPackage ../development/python-modules/aioh2 { }; + + aioharmony = callPackage ../development/python-modules/aioharmony { }; + + aiohttp = callPackage ../development/python-modules/aiohttp { }; + + 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-socks = callPackage ../development/python-modules/aiohttp-socks { }; + + aiohttp-swagger = callPackage ../development/python-modules/aiohttp-swagger { }; + + aiohue = callPackage ../development/python-modules/aiohue { }; + + aioimaplib = callPackage ../development/python-modules/aioimaplib { }; + + aiojobs = callPackage ../development/python-modules/aiojobs { }; + + aiokafka = callPackage ../development/python-modules/aiokafka { }; + + aiolifx = callPackage ../development/python-modules/aiolifx { }; + + aiolifx-effects = callPackage ../development/python-modules/aiolifx-effects { }; + + aiomysql = callPackage ../development/python-modules/aiomysql { }; + + aionotify = callPackage ../development/python-modules/aionotify { }; + + aioprocessing = callPackage ../development/python-modules/aioprocessing { }; + + aioredis = callPackage ../development/python-modules/aioredis { }; + + aioresponses = callPackage ../development/python-modules/aioresponses { }; + + aiorpcx = callPackage ../development/python-modules/aiorpcx { }; + + aiorun = callPackage ../development/python-modules/aiorun { }; + + aiosmtpd = callPackage ../development/python-modules/aiosmtpd { }; + + aiosqlite = callPackage ../development/python-modules/aiosqlite { }; + + aiounifi = callPackage ../development/python-modules/aiounifi { }; + + aiounittest = callPackage ../development/python-modules/aiounittest { }; + + aiozeroconf = callPackage ../development/python-modules/aiozeroconf { }; + + ajpy = callPackage ../development/python-modules/ajpy { }; + + alabaster = callPackage ../development/python-modules/alabaster { }; + + alarmdecoder = callPackage ../development/python-modules/alarmdecoder { }; + + alembic = callPackage ../development/python-modules/alembic { }; + + alerta = callPackage ../development/python-modules/alerta { }; + + alerta-server = callPackage ../development/python-modules/alerta-server { }; + + algebraic-data-types = callPackage ../development/python-modules/algebraic-data-types { }; + + allpairspy = callPackage ../development/python-modules/allpairspy { }; + + alot = callPackage ../development/python-modules/alot { }; + + altair = callPackage ../development/python-modules/altair { }; + + amazon_kclpy = callPackage ../development/python-modules/amazon_kclpy { }; + + amply = callPackage ../development/python-modules/amply { }; + + amqp = callPackage ../development/python-modules/amqp { }; + + amqplib = callPackage ../development/python-modules/amqplib { }; + + androidtv = callPackage ../development/python-modules/androidtv { }; + + androguard = callPackage ../development/python-modules/androguard { }; + + 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 { }; + + 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 { }; + + ansiwrap = callPackage ../development/python-modules/ansiwrap { }; + + antlr4-python2-runtime = callPackage ../development/python-modules/antlr4-python2-runtime { antlr4 = pkgs.antlr4; }; + + antlr4-python3-runtime = callPackage ../development/python-modules/antlr4-python3-runtime { antlr4 = pkgs.antlr4; }; + + anyjson = callPackage ../development/python-modules/anyjson { }; + + anytree = callPackage ../development/python-modules/anytree { inherit (pkgs) graphviz; }; + + apache-airflow = callPackage ../development/python-modules/apache-airflow { }; + + 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 = disabledIf isPy3k (toPythonModule (pkgs.appleseed.override { inherit (self) python; })); + + application = callPackage ../development/python-modules/application { }; + + 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 { }; + + APScheduler = callPackage ../development/python-modules/APScheduler { }; + + apsw = callPackage ../development/python-modules/apsw { }; + + 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 { }; + + args = callPackage ../development/python-modules/args { }; + + aria2p = callPackage ../development/python-modules/aria2p { inherit (pkgs) aria2; }; + + 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 { }; + + asciimatics = callPackage ../development/python-modules/asciimatics { }; + + asciitree = callPackage ../development/python-modules/asciitree { }; + + asdf = callPackage ../development/python-modules/asdf { }; + + ase = if isPy27 then + callPackage ../development/python-modules/ase/3.17.nix { } + else + callPackage ../development/python-modules/ase { }; + + asgi-csrf = callPackage ../development/python-modules/asgi-csrf { }; + + asgiref = callPackage ../development/python-modules/asgiref { }; + + asn1ate = callPackage ../development/python-modules/asn1ate { }; + + asn1crypto = callPackage ../development/python-modules/asn1crypto { }; + + aspy-yaml = callPackage ../development/python-modules/aspy.yaml { }; + + astor = callPackage ../development/python-modules/astor { }; + + astral = callPackage ../development/python-modules/astral { }; + + astroid = if isPy3k then + callPackage ../development/python-modules/astroid { } + else + callPackage ../development/python-modules/astroid/1.6.nix { }; + + astropy = callPackage ../development/python-modules/astropy { }; + + astropy-healpix = callPackage ../development/python-modules/astropy-healpix { }; + + astropy-helpers = callPackage ../development/python-modules/astropy-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 { }; + + asyncpg = callPackage ../development/python-modules/asyncpg { }; + + asyncssh = callPackage ../development/python-modules/asyncssh { }; + + asynctest = callPackage ../development/python-modules/asynctest { }; + + async-timeout = callPackage ../development/python-modules/async_timeout { }; + + async-upnp-client = callPackage ../development/python-modules/async-upnp-client { }; + + 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 { }; + + audio-metadata = callPackage ../development/python-modules/audio-metadata { }; + + audioread = callPackage ../development/python-modules/audioread { }; + + audiotools = callPackage ../development/python-modules/audiotools { }; + + augeas = callPackage ../development/python-modules/augeas { inherit (pkgs) augeas; }; + + auth0-python = callPackage ../development/python-modules/auth0-python { }; + + 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 { }; + + autologging = callPackage ../development/python-modules/autologging { }; + + automat = callPackage ../development/python-modules/automat { }; + + autopep8 = callPackage ../development/python-modules/autopep8 { }; + + avahi = toPythonModule (pkgs.avahi.override { + inherit python; + withPython = true; + }); + + av = callPackage ../development/python-modules/av { inherit (pkgs) pkgconfig; }; + + 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 { }; + + awkward = callPackage ../development/python-modules/awkward { }; + awkward1 = callPackage ../development/python-modules/awkward1 { }; + + 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 { }; + + 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-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-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-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-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-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_functools_lru_cache = callPackage ../development/python-modules/backports_functools_lru_cache { }; + + backports_lzma = callPackage ../development/python-modules/backports_lzma { }; + + backports_os = callPackage ../development/python-modules/backports_os { }; + + 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 = + if !(pythonOlder "3.5") then null else 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 { }; + + bacpypes = callPackage ../development/python-modules/bacpypes { }; + + bandit = callPackage ../development/python-modules/bandit { }; + + bap = callPackage ../development/python-modules/bap { bap = pkgs.ocaml-ng.ocamlPackages_4_07.bap; }; + + base58 = callPackage ../development/python-modules/base58 { }; + + baselines = callPackage ../development/python-modules/baselines { }; + + basemap = callPackage ../development/python-modules/basemap { }; + + bash_kernel = callPackage ../development/python-modules/bash_kernel { inherit (pkgs) bash; }; + + bashlex = callPackage ../development/python-modules/bashlex { }; + + basiciw = callPackage ../development/python-modules/basiciw { inherit (pkgs) gcc wirelesstools; }; + + 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 { }; + + bcdoc = callPackage ../development/python-modules/bcdoc { }; + + bcrypt = if pythonOlder "3.6" then + callPackage ../development/python-modules/bcrypt/3_1.nix { } + else + 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 { }; + + beautifulsoup4 = callPackage ../development/python-modules/beautifulsoup4 { }; + + bedup = callPackage ../development/python-modules/bedup { }; + + behave = callPackage ../development/python-modules/behave { }; + + bellows = callPackage ../development/python-modules/bellows { }; + + bespon = callPackage ../development/python-modules/bespon { }; + + 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 { }; + + binaryornot = callPackage ../development/python-modules/binaryornot { }; + + binwalk = callPackage ../development/python-modules/binwalk { + pyqtgraph = null; + matplotlib = null; + }; + + binwalk-full = appendToName "full" (self.binwalk.override { + pyqtgraph = self.pyqtgraph; + matplotlib = self.matplotlib; + }); + + 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 { }; + + bitbucket_api = callPackage ../development/python-modules/bitbucket-api { }; + + bitbucket-cli = callPackage ../development/python-modules/bitbucket-cli { }; + + bitcoinlib = callPackage ../development/python-modules/bitcoinlib { }; + + bitcoin-price-api = callPackage ../development/python-modules/bitcoin-price-api { }; + + bitmath = callPackage ../development/python-modules/bitmath { }; + + bitstring = callPackage ../development/python-modules/bitstring { }; + + bitstruct = callPackage ../development/python-modules/bitstruct { }; + + 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 { }; + + blessed = callPackage ../development/python-modules/blessed { }; + + blessings = callPackage ../development/python-modules/blessings { }; + + blinker = callPackage ../development/python-modules/blinker { }; + + BlinkStick = callPackage ../development/python-modules/blinkstick { }; + + blis = callPackage ../development/python-modules/blis { }; + + blist = callPackage ../development/python-modules/blist { }; + + blivet = callPackage ../development/python-modules/blivet { }; + + blockdiag = callPackage ../development/python-modules/blockdiag { }; + + blockdiagcontrib-cisco = callPackage ../development/python-modules/blockdiagcontrib-cisco { }; + + block-io = callPackage ../development/python-modules/block-io { }; + + bluepy = callPackage ../development/python-modules/bluepy { }; + + bokeh = callPackage ../development/python-modules/bokeh { }; + + boltons = callPackage ../development/python-modules/boltons { }; + + boltztrap2 = callPackage ../development/python-modules/boltztrap2 { }; + + 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; + }); + + 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 { }; + + box2d = callPackage ../development/python-modules/box2d { }; + + bpython = callPackage ../development/python-modules/bpython { }; + + 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 { }; + + broadlink = callPackage ../development/python-modules/broadlink { }; + + brother = callPackage ../development/python-modules/brother { }; + + brotli = callPackage ../development/python-modules/brotli { }; + + brotlipy = callPackage ../development/python-modules/brotlipy { }; + + browser-cookie3 = callPackage ../development/python-modules/browser-cookie3 { }; + + browsermob-proxy = disabledIf isPy3k (callPackage ../development/python-modules/browsermob-proxy { }); + + bsddb3 = callPackage ../development/python-modules/bsddb3 { }; + + bsdiff4 = callPackage ../development/python-modules/bsdiff4 { }; + + 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 { }; + + bugseverywhere = throw "bugseverywhere has been removed: Abandoned by upstream."; # Added 2019-11-27 + + bugsnag = callPackage ../development/python-modules/bugsnag { }; + + bugwarrior = callPackage ../development/python-modules/bugwarrior { }; + + bugz = callPackage ../development/python-modules/bugz { }; + + bugzilla = callPackage ../development/python-modules/bugzilla { }; + + 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 { }; + + bumps = callPackage ../development/python-modules/bumps { }; + + bunch = callPackage ../development/python-modules/bunch { }; + + bx-python = callPackage ../development/python-modules/bx-python { inherit (pkgs) zlib; }; + + 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 = let + cachetools' = callPackage ../development/python-modules/cachetools { }; + cachetools_2 = cachetools'.overridePythonAttrs (oldAttrs: rec { + version = "3.1.1"; + src = oldAttrs.src.override { + inherit version; + sha256 = "16m69l6n6y1r1y7cklm92rr7v69ldig2n3lbl3j323w5jz7d78lf"; + }; + }); + in if isPy3k then cachetools' else cachetools_2; + + cachy = callPackage ../development/python-modules/cachy { }; + + cadquery = callPackage ../development/python-modules/cadquery { }; + + caffe = toPythonModule (pkgs.caffe.override { + pythonSupport = true; + inherit (self) python numpy boost; + }); + + cairocffi = if isPy3k then + callPackage ../development/python-modules/cairocffi { } + else + callPackage ../development/python-modules/cairocffi/0_9.nix { }; + + cairosvg = if isPy3k then + callPackage ../development/python-modules/cairosvg { } + else + callPackage ../development/python-modules/cairosvg/1_x.nix { }; + + caldav = callPackage ../development/python-modules/caldav { }; + + 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 { }; + + carrot = callPackage ../development/python-modules/carrot { }; + + cartopy = callPackage ../development/python-modules/cartopy { }; + + casbin = callPackage ../development/python-modules/casbin { }; + + case = callPackage ../development/python-modules/case { }; + + cassandra-driver = callPackage ../development/python-modules/cassandra-driver { }; + + casttube = callPackage ../development/python-modules/casttube { }; + + catalogue = callPackage ../development/python-modules/catalogue { }; + + 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 { }; + + CDDB = callPackage ../development/python-modules/cddb { }; + + cdecimal = callPackage ../development/python-modules/cdecimal { }; + + celery = callPackage ../development/python-modules/celery { }; + + cement = callPackage ../development/python-modules/cement { }; + + cerberus = callPackage ../development/python-modules/cerberus { }; + + 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-route53 = callPackage ../development/python-modules/certbot-dns-route53 { }; + + certifi = callPackage ../development/python-modules/certifi { }; + + certipy = callPackage ../development/python-modules/certipy { }; + + cffi = callPackage ../development/python-modules/cffi { }; + + 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 { }; + + chart-studio = callPackage ../development/python-modules/chart-studio { }; + + check-manifest = callPackage ../development/python-modules/check-manifest { }; + + cheetah3 = callPackage ../development/python-modules/cheetah3 { }; + + cheetah = callPackage ../development/python-modules/cheetah { }; + + cheroot = callPackage ../development/python-modules/cheroot { }; + + cherrypy = if isPy3k then + callPackage ../development/python-modules/cherrypy { } + else + callPackage ../development/python-modules/cherrypy/17.nix { }; + + chevron = callPackage ../development/python-modules/chevron { }; + + ci-info = callPackage ../development/python-modules/ci-info { }; + + ci-py = callPackage ../development/python-modules/ci-py { }; + + cirq = callPackage ../development/python-modules/cirq { }; + + ciso8601 = callPackage ../development/python-modules/ciso8601 { }; + + citeproc-py = callPackage ../development/python-modules/citeproc-py { }; + + cjson = callPackage ../development/python-modules/cjson { }; + + ckcc-protocol = callPackage ../development/python-modules/ckcc-protocol { }; + + class-registry = callPackage ../development/python-modules/class-registry { }; + + cld2-cffi = callPackage ../development/python-modules/cld2-cffi { }; + + cleo = callPackage ../development/python-modules/cleo { }; + + clf = callPackage ../development/python-modules/clf { }; + + cliapp = callPackage ../development/python-modules/cliapp { }; + + click = callPackage ../development/python-modules/click { }; + + clickclick = callPackage ../development/python-modules/clickclick { }; + + click-completion = callPackage ../development/python-modules/click-completion { }; + + 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-log = callPackage ../development/python-modules/click-log { }; + + click-plugins = callPackage ../development/python-modules/click-plugins { }; + + click-repl = callPackage ../development/python-modules/click-repl { }; + + click-threading = callPackage ../development/python-modules/click-threading { }; + + 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 { }; + + clize = callPackage ../development/python-modules/clize { }; + + clldutils = callPackage ../development/python-modules/clldutils { }; + + closure-linter = callPackage ../development/python-modules/closure-linter { }; + + cloudflare = callPackage ../development/python-modules/cloudflare { }; + + cloudpickle = callPackage ../development/python-modules/cloudpickle { }; + + clustershell = callPackage ../development/python-modules/clustershell { }; + + cma = callPackage ../development/python-modules/cma { }; + + cmarkgfm = callPackage ../development/python-modules/cmarkgfm { }; + + cmd2 = callPackage ../development/python-modules/cmd2 { }; + + cmdline = callPackage ../development/python-modules/cmdline { }; + + cmdtest = callPackage ../development/python-modules/cmdtest { }; + + cntk = callPackage ../development/python-modules/cntk { }; + + cnvkit = callPackage ../development/python-modules/cnvkit { }; + + cocotb = callPackage ../development/python-modules/cocotb { }; + + codecov = callPackage ../development/python-modules/codecov { }; + + codespell = callPackage ../development/python-modules/codespell { }; + + cogapp = callPackage ../development/python-modules/cogapp { }; + + coilmq = callPackage ../development/python-modules/coilmq { }; + + coinmarketcap = callPackage ../development/python-modules/coinmarketcap { }; + + ColanderAlchemy = callPackage ../development/python-modules/colanderalchemy { }; + + colander = callPackage ../development/python-modules/colander { }; + + colorama = callPackage ../development/python-modules/colorama { }; + + colorcet = callPackage ../development/python-modules/colorcet { }; + + colorclass = callPackage ../development/python-modules/colorclass { }; + + colored = callPackage ../development/python-modules/colored { }; + + 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 { }; + + colour = callPackage ../development/python-modules/colour { }; + + CommonMark = callPackage ../development/python-modules/commonmark { }; + + compiledb = callPackage ../development/python-modules/compiledb { }; + + conda = callPackage ../development/python-modules/conda { }; + + ConfigArgParse = callPackage ../development/python-modules/configargparse { }; + + configobj = callPackage ../development/python-modules/configobj { }; + + configparser = if pythonOlder "3.6" then + callPackage ../development/python-modules/configparser/4.nix { } + else + callPackage ../development/python-modules/configparser { }; + + configshell = callPackage ../development/python-modules/configshell { }; + + confluent-kafka = callPackage ../development/python-modules/confluent-kafka { }; + + connexion = callPackage ../development/python-modules/connexion { }; + + 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 { }; + + 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 { }; + + cozy = callPackage ../development/python-modules/cozy { }; + + cppheaderparser = callPackage ../development/python-modules/cppheaderparser { }; + + cppy = callPackage ../development/python-modules/cppy { }; + + cram = callPackage ../development/python-modules/cram { }; + + 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 { }; + + croniter = callPackage ../development/python-modules/croniter { }; + + cryptacular = callPackage ../development/python-modules/cryptacular { }; + + cryptography = if isPy27 then + callPackage ../development/python-modules/cryptography/2.9.nix { } + else + callPackage ../development/python-modules/cryptography { }; + + cryptography_vectors = if isPy27 then + callPackage ../development/python-modules/cryptography/vectors-2.9.nix { } + else + callPackage ../development/python-modules/cryptography/vectors.nix { }; + + csscompressor = callPackage ../development/python-modules/csscompressor { }; + + cssmin = callPackage ../development/python-modules/cssmin { }; + + 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 { }; + + csvs-to-sqlite = callPackage ../development/python-modules/csvs-to-sqlite { }; + + 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_10_0; + cudnn = pkgs.cudnn_cudatoolkit_10_0; + nccl = pkgs.nccl_cudatoolkit_10; + }; + + 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 { }; + + cx_Freeze = callPackage ../development/python-modules/cx_freeze { }; + + cx_oracle = callPackage ../development/python-modules/cx_oracle { }; + + cycler = callPackage ../development/python-modules/cycler { }; + + 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 { }; + + daemonize = callPackage ../development/python-modules/daemonize { }; + + daphne = callPackage ../development/python-modules/daphne { }; + + darcsver = callPackage ../development/python-modules/darcsver { }; + + 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 { inherit (pkgs) go; }; + + 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 { inherit (pkgs) jdk; }; + + 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 { }; + + datamodeldict = callPackage ../development/python-modules/datamodeldict { }; + + datasets = callPackage ../development/python-modules/datasets { }; + + datasette = callPackage ../development/python-modules/datasette { }; + + datashader = callPackage ../development/python-modules/datashader { }; + + datashape = callPackage ../development/python-modules/datashape { }; + + datatable = callPackage ../development/python-modules/datatable { + inherit (pkgs.llvmPackages) libcxx; + }; + + dateparser = callPackage ../development/python-modules/dateparser { }; + + datrie = callPackage ../development/python-modules/datrie { }; + + 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 pkgconfig; }; + + dcmstack = callPackage ../development/python-modules/dcmstack { }; + + ddt = callPackage ../development/python-modules/ddt { }; + + deap = callPackage ../development/python-modules/deap { }; + + debian = callPackage ../development/python-modules/debian { }; + + debts = callPackage ../development/python-modules/debts { }; + + debugpy = callPackage ../development/python-modules/debugpy { }; + + decorator = callPackage ../development/python-modules/decorator { }; + + deepdiff = callPackage ../development/python-modules/deepdiff { }; + + deepmerge = callPackage ../development/python-modules/deepmerge { }; + + deeptoolsintervals = callPackage ../development/python-modules/deeptoolsintervals { }; + + 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 { }; + + deluge-client = callPackage ../development/python-modules/deluge-client { }; + + demjson = callPackage ../development/python-modules/demjson { }; + + 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 { }; + + deskcon = callPackage ../development/python-modules/deskcon { }; + + detox = throw "detox is no longer maintained, and was broken since may 2019"; # added 2020-07-04 + + devpi-common = callPackage ../development/python-modules/devpi-common { }; + + dftfit = callPackage ../development/python-modules/dftfit { }; + + diceware = callPackage ../development/python-modules/diceware { }; + + dicom2nifti = callPackage ../development/python-modules/dicom2nifti { }; + + dict2xml = callPackage ../development/python-modules/dict2xml { }; + + dictionaries = callPackage ../development/python-modules/dictionaries { }; + + 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 { }; + + diofant = callPackage ../development/python-modules/diofant { }; + + dipy = callPackage ../development/python-modules/dipy { }; + + discid = callPackage ../development/python-modules/discid { }; + + discogs_client = callPackage ../development/python-modules/discogs_client { }; + + discordpy = callPackage ../development/python-modules/discordpy { }; + + 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_2_2 = callPackage ../development/python-modules/django/2_2.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_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-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_evolution = callPackage ../development/python-modules/django_evolution { }; + + django_extensions = callPackage ../development/python-modules/django-extensions { }; + + django-filter = callPackage ../development/python-modules/django-filter { }; + + 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-logentry-admin = callPackage ../development/python-modules/django-logentry-admin { }; + + django_lts = self.django_2_2; + + 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_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_pipeline = callPackage ../development/python-modules/django-pipeline { }; + + django_polymorphic = callPackage ../development/python-modules/django-polymorphic { }; + + django-postgresql-netfields = callPackage ../development/python-modules/django-postgresql-netfields { }; + + 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 { }; + + djangorestframework = callPackage ../development/python-modules/djangorestframework { }; + + djangorestframework-jwt = callPackage ../development/python-modules/djangorestframework-jwt { }; + + 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 = self.django_lts; + + 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-storages = callPackage ../development/python-modules/django-storages { }; + + django_tagging = callPackage ../development/python-modules/django_tagging { }; + + django_taggit = callPackage ../development/python-modules/django_taggit { }; + + 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-sonnet = callPackage ../development/python-modules/dm-sonnet { }; + + dnslib = callPackage ../development/python-modules/dnslib { }; + + dnspython = if isPy3k then + callPackage ../development/python-modules/dnspython { } + else + self.dnspython_1; + + dnspython_1 = callPackage ../development/python-modules/dnspython/1.nix { }; + + dns = self.dnspython; # Alias for compatibility, 2017-12-10 + + 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 = disabledIf isPy27 (callPackage ../development/python-modules/docker-py { }); + + dockerspawner = callPackage ../development/python-modules/dockerspawner { }; + + docloud = callPackage ../development/python-modules/docloud { }; + + docopt = callPackage ../development/python-modules/docopt { }; + + 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 { }; + + dodgy = callPackage ../development/python-modules/dodgy { }; + + dogpile_cache = callPackage ../development/python-modules/dogpile.cache { }; + + dogpile_core = callPackage ../development/python-modules/dogpile.core { }; + + dogtail = callPackage ../development/python-modules/dogtail { }; + + dominate = callPackage ../development/python-modules/dominate { }; + + dopy = callPackage ../development/python-modules/dopy { }; + + dot2tex = callPackage ../development/python-modules/dot2tex { inherit (pkgs) graphviz; }; + + dotnetcore2 = callPackage ../development/python-modules/dotnetcore2 { inherit (pkgs) substituteAll dotnet-sdk; }; + + dparse = callPackage ../development/python-modules/dparse { }; + + dpath = callPackage ../development/python-modules/dpath { }; + + dpkt = callPackage ../development/python-modules/dpkt { }; + + drf-yasg = callPackage ../development/python-modules/drf-yasg { }; + + drms = callPackage ../development/python-modules/drms { }; + + dropbox = callPackage ../development/python-modules/dropbox { }; + + ds4drv = callPackage ../development/python-modules/ds4drv { inherit (pkgs) fetchFromGitHub bluez; }; + + dtopt = callPackage ../development/python-modules/dtopt { }; + + duckdb = callPackage ../development/python-modules/duckdb { duckdb = pkgs.duckdb; }; + + duecredit = callPackage ../development/python-modules/duecredit { }; + + dufte = callPackage ../development/python-modules/dufte { }; + + dugong = callPackage ../development/python-modules/dugong { }; + + dulwich = if isPy3k then + callPackage ../development/python-modules/dulwich { } + else + callPackage ../development/python-modules/dulwich/0_19.nix { }; + + dyn = callPackage ../development/python-modules/dyn { }; + + 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 { + openssl = pkgs.openssl; + net-snmp = pkgs.net-snmp; + }; + + easy-thumbnails = callPackage ../development/python-modules/easy-thumbnails { }; + + easywatch = callPackage ../development/python-modules/easywatch { }; + + eccodes = toPythonModule (pkgs.eccodes.override { + enablePython = true; + pythonPackages = self; + }); + + ecdsa = callPackage ../development/python-modules/ecdsa { }; + + ecos = callPackage ../development/python-modules/ecos { }; + + ecpy = callPackage ../development/python-modules/ecpy { }; + + ed25519 = callPackage ../development/python-modules/ed25519 { }; + + editorconfig = callPackage ../development/python-modules/editorconfig { }; + + edward = callPackage ../development/python-modules/edward { }; + + effect = callPackage ../development/python-modules/effect { }; + + eggdeps = callPackage ../development/python-modules/eggdeps { }; + + elasticsearch = callPackage ../development/python-modules/elasticsearch { }; + + elasticsearch-dsl = callPackage ../development/python-modules/elasticsearch-dsl { }; + + elasticsearchdsl = self.elasticsearch-dsl; # alias + + elementpath = callPackage ../development/python-modules/elementpath { }; + + eliot = callPackage ../development/python-modules/eliot { }; + + emailthreads = callPackage ../development/python-modules/emailthreads { }; + + email_validator = callPackage ../development/python-modules/email-validator { }; + + emcee = callPackage ../development/python-modules/emcee { }; + + emoji = callPackage ../development/python-modules/emoji { }; + + enaml = callPackage ../development/python-modules/enaml { }; + + enamlx = callPackage ../development/python-modules/enamlx { }; + + entrance = callPackage ../development/python-modules/entrance { routerFeatures = false; }; + + entrance-with-router-features = callPackage ../development/python-modules/entrance { routerFeatures = true; }; + + entrypoint2 = callPackage ../development/python-modules/entrypoint2 { }; + + entrypoints = callPackage ../development/python-modules/entrypoints { }; + + enum34 = callPackage ../development/python-modules/enum34 { }; + + enum = callPackage ../development/python-modules/enum { }; + + enum-compat = callPackage ../development/python-modules/enum-compat { }; + + envisage = callPackage ../development/python-modules/envisage { }; + + envs = callPackage ../development/python-modules/envs { }; + + enzyme = callPackage ../development/python-modules/enzyme { }; + + epc = callPackage ../development/python-modules/epc { }; + + ephem = callPackage ../development/python-modules/ephem { }; + + eradicate = callPackage ../development/python-modules/eradicate { }; + + escapism = callPackage ../development/python-modules/escapism { }; + + etcd = callPackage ../development/python-modules/etcd { }; + + etelemetry = callPackage ../development/python-modules/etelemetry { }; + + 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 { }; + + et_xmlfile = callPackage ../development/python-modules/et_xmlfile { }; + + evdev = callPackage ../development/python-modules/evdev { }; + + eve = callPackage ../development/python-modules/eve { }; + + eventlet = callPackage ../development/python-modules/eventlet { }; + + eventlib = callPackage ../development/python-modules/eventlib { }; + + events = callPackage ../development/python-modules/events { }; + + evernote = callPackage ../development/python-modules/evernote { }; + + ewmh = callPackage ../development/python-modules/ewmh { }; + + exchangelib = callPackage ../development/python-modules/exchangelib { }; + + execnet = callPackage ../development/python-modules/execnet { }; + + executing = callPackage ../development/python-modules/executing { }; + + executor = callPackage ../development/python-modules/executor { }; + + exifread = callPackage ../development/python-modules/exifread { }; + + extension-helpers = callPackage ../development/python-modules/extension-helpers { }; + + extras = callPackage ../development/python-modules/extras { }; + + eyeD3 = callPackage ../development/python-modules/eyed3 { }; + + ezdxf = callPackage ../development/python-modules/ezdxf { }; + + Fabric = callPackage ../development/python-modules/Fabric { }; + + 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 { }; + + faker = callPackage ../development/python-modules/faker { }; + + fake-useragent = callPackage ../development/python-modules/fake-useragent { }; + + falcon = callPackage ../development/python-modules/falcon { }; + + fastapi = callPackage ../development/python-modules/fastapi { }; + + fastcache = callPackage ../development/python-modules/fastcache { }; + + fastdtw = callPackage ../development/python-modules/fastdtw { }; + + fasteners = callPackage ../development/python-modules/fasteners { }; + + fastentrypoints = callPackage ../development/python-modules/fastentrypoints { }; + + fastimport = callPackage ../development/python-modules/fastimport { }; + + fastjsonschema = callPackage ../development/python-modules/fastjsonschema { }; + + fastpair = callPackage ../development/python-modules/fastpair { }; + + fastparquet = callPackage ../development/python-modules/fastparquet { }; + + fastpbkdf2 = callPackage ../development/python-modules/fastpbkdf2 { }; + + fastrlock = callPackage ../development/python-modules/fastrlock { }; + + fasttext = callPackage ../development/python-modules/fasttext { }; + + faulthandler = if !isPy3k then + callPackage ../development/python-modules/faulthandler { } + else + throw "faulthandler is built into ${python.executable}"; + + favicon = callPackage ../development/python-modules/favicon { }; + + fb-re2 = callPackage ../development/python-modules/fb-re2 { }; + + fdint = callPackage ../development/python-modules/fdint { }; + + 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 { + inherit (pkgs) pkg-config; + mpi = pkgs.openmpi; + pytest = self.pytest_4; + }; + + ffmpeg-python = callPackage ../development/python-modules/ffmpeg-python { }; + + fido2 = callPackage ../development/python-modules/fido2 { }; + + 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 { }; + + fints = callPackage ../development/python-modules/fints { }; + + fiona = callPackage ../development/python-modules/fiona { gdal_2 = pkgs.gdal_2; }; + + 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 { }; + + fixtures = callPackage ../development/python-modules/fixtures { }; + + flake8-blind-except = callPackage ../development/python-modules/flake8-blind-except { }; + + flake8 = callPackage ../development/python-modules/flake8 { }; + + flake8-debugger = callPackage ../development/python-modules/flake8-debugger { }; + + 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 { }; + + flammkuchen = callPackage ../development/python-modules/flammkuchen { }; + + 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-httpauth = callPackage ../development/python-modules/flask-httpauth { }; + + flask-jwt-extended = callPackage ../development/python-modules/flask-jwt-extended { }; + + flask_ldap_login = callPackage ../development/python-modules/flask-ldap-login { }; + + 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_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-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-swagger = callPackage ../development/python-modules/flask-swagger { }; + + flask-swagger-ui = callPackage ../development/python-modules/flask-swagger-ui { }; + + flask_testing = callPackage ../development/python-modules/flask-testing { }; + + flask-versioned = callPackage ../development/python-modules/flask-versioned { }; + + flask_wtf = callPackage ../development/python-modules/flask-wtf { }; + + flexmock = callPackage ../development/python-modules/flexmock { }; + + flickrapi = callPackage ../development/python-modules/flickrapi { }; + + 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 { }; + + flup = callPackage ../development/python-modules/flup { }; + + flux-led = callPackage ../development/python-modules/flux-led { }; + + fn = callPackage ../development/python-modules/fn { }; + + folium = callPackage ../development/python-modules/folium { }; + + fontforge = disabledIf (!isPy3k) (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 { }; + + foolscap = callPackage ../development/python-modules/foolscap { }; + + forbiddenfruit = callPackage ../development/python-modules/forbiddenfruit { }; + + 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; }; + + foxdot = callPackage ../development/python-modules/foxdot { }; + + fpdf = callPackage ../development/python-modules/fpdf { }; + + fpylll = callPackage ../development/python-modules/fpylll { }; + + freetype-py = callPackage ../development/python-modules/freetype-py { }; + + freezegun = callPackage ../development/python-modules/freezegun { }; + + fritzconnection = callPackage ../development/python-modules/fritzconnection { }; + + frozendict = callPackage ../development/python-modules/frozendict { }; + + 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 { }; + + fudge = callPackage ../development/python-modules/fudge { }; + + 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 { }; + + fuse = callPackage ../development/python-modules/fuse-python { inherit (pkgs) fuse pkgconfig; }; + + fusepy = callPackage ../development/python-modules/fusepy { }; + + future = callPackage ../development/python-modules/future { }; + + future-fstrings = callPackage ../development/python-modules/future-fstrings { }; + + futures = callPackage ../development/python-modules/futures { }; + + fuzzywuzzy = callPackage ../development/python-modules/fuzzywuzzy { }; + + fx2 = callPackage ../development/python-modules/fx2 { }; + + gaia = disabledIf (isPyPy || isPy3k) (toPythonModule (pkgs.gaia.override { + pythonPackages = self; + pythonSupport = true; + })); # gaia isn't supported with python3 and it's not available from pypi + + galario = toPythonModule (pkgs.galario.override { + enablePython = true; + pythonPackages = self; + }); + + gast = callPackage ../development/python-modules/gast { }; + + gateone = callPackage ../development/python-modules/gateone { }; + + gcovr = callPackage ../development/python-modules/gcovr { }; + + gdal = toPythonModule (pkgs.gdal.override { pythonPackages = self; }); + + gdata = callPackage ../development/python-modules/gdata { }; + + gdcm = disabledIf isPy27 (toPythonModule (pkgs.gdcm.override { + inherit (self) python; + enablePython = true; + })); + + gdown = callPackage ../development/python-modules/gdown { }; + + gdrivefs = callPackage ../development/python-modules/gdrivefs { }; + + geant4 = disabledIf (!isPy3k) (toPythonModule (pkgs.geant4.override { + enablePython = true; + python3 = python; + })); + + geeknote = callPackage ../development/python-modules/geeknote { }; + + genanki = callPackage ../development/python-modules/genanki { }; + + 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 { }; + + geographiclib = callPackage ../development/python-modules/geographiclib { }; + + geoip2 = callPackage ../development/python-modules/geoip2 { }; + + GeoIP = callPackage ../development/python-modules/GeoIP { }; + + geojson = callPackage ../development/python-modules/geojson { }; + + geopandas = callPackage ../development/python-modules/geopandas { }; + + geopy = if isPy3k then + callPackage ../development/python-modules/geopy { } + else + callPackage ../development/python-modules/geopy/2.nix { }; + + getmac = callPackage ../development/python-modules/getmac { }; + + 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 { }; + + ghdiff = callPackage ../development/python-modules/ghdiff { }; + + gidgethub = callPackage ../development/python-modules/gidgethub { }; + + gin-config = callPackage ../development/python-modules/gin-config { }; + + gipc = callPackage ../development/python-modules/gipc { }; + + git-annex-adapter = + callPackage ../development/python-modules/git-annex-adapter { inherit (pkgs.gitAndTools) git-annex; }; + + gitdb2 = throw "gitdb2 has been deprecated, use gitdb instead."; # added 2020-03-14 + + gitdb = callPackage ../development/python-modules/gitdb { }; + + github3_py = callPackage ../development/python-modules/github3_py { }; + + 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 = throw "glances has moved to pkgs.glances"; # added 2020-20-28 + + glasgow = callPackage ../development/python-modules/glasgow { }; + + 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 { }; + + gmusicapi = callPackage ../development/python-modules/gmusicapi { }; + + gnureadline = callPackage ../development/python-modules/gnureadline { }; + + gnutls = callPackage ../development/python-modules/gnutls { }; + + goobook = callPackage ../development/python-modules/goobook { }; + + goocalendar = callPackage ../development/python-modules/goocalendar { }; + + google_api_core = callPackage ../development/python-modules/google_api_core { }; + + google_api_python_client = + let google_api_python_client = callPackage ../development/python-modules/google-api-python-client { }; + in if isPy3k then + google_api_python_client + else # Python 2.7 support was deprecated but is still needed by weboob and duplicity + google_api_python_client.overridePythonAttrs (old: rec { + version = "1.7.6"; + src = old.src.override { + inherit version; + sha256 = "14w5sdrp0bk9n0r2lmpqmrbf2zclpfq6q7giyahnskkfzdkb165z"; + }; + }); + + googleapis_common_protos = callPackage ../development/python-modules/googleapis_common_protos { }; + + google_apputils = callPackage ../development/python-modules/google_apputils { }; + + 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_asset = callPackage ../development/python-modules/google_cloud_asset { }; + + 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_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_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_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_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-music = callPackage ../development/python-modules/google-music { }; + + google-music-proto = callPackage ../development/python-modules/google-music-proto { }; + + google-music-utils = callPackage ../development/python-modules/google-music-utils { }; + + google-pasta = callPackage ../development/python-modules/google-pasta { }; + + google_resumable_media = callPackage ../development/python-modules/google_resumable_media { }; + + googletrans = callPackage ../development/python-modules/googletrans { }; + + gorilla = callPackage ../development/python-modules/gorilla { }; + + 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 { inherit (pkgs) pkgconfig; }; + + gprof2dot = callPackage ../development/python-modules/gprof2dot { inherit (pkgs) graphviz; }; + + gpsoauth = callPackage ../development/python-modules/gpsoauth { }; + + gpxpy = callPackage ../development/python-modules/gpxpy { }; + + gpy = callPackage ../development/python-modules/gpy { }; + + gpyopt = callPackage ../development/python-modules/gpyopt { }; + + grammalecte = callPackage ../development/python-modules/grammalecte { }; + + grandalf = callPackage ../development/python-modules/grandalf { }; + + 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 { }; + + graphql-core = callPackage ../development/python-modules/graphql-core { }; + + graphql-server-core = callPackage ../development/python-modules/graphql-server-core { }; + + graph-tool = callPackage ../development/python-modules/graph-tool/2.x.x.nix { inherit (pkgs) pkg-config; }; + + graphviz = callPackage ../development/python-modules/graphviz { inherit (pkgs) graphviz; }; + + grappelli_safe = callPackage ../development/python-modules/grappelli_safe { }; + + graspy = callPackage ../development/python-modules/graspy { }; + + greatfet = callPackage ../development/python-modules/greatfet { }; + + green = callPackage ../development/python-modules/green { }; + + greenlet = callPackage ../development/python-modules/greenlet { }; + + grequests = callPackage ../development/python-modules/grequests { }; + + grib-api = disabledIf (!isPy27) (toPythonModule (pkgs.grib-api.override { + enablePython = true; + pythonPackages = self; + })); + + grip = callPackage ../development/python-modules/grip { }; + + 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-tools = callPackage ../development/python-modules/grpcio-tools { }; + + gsd = if isPy27 then + callPackage ../development/python-modules/gsd/1.7.nix { } + else + callPackage ../development/python-modules/gsd { }; + + gspread = callPackage ../development/python-modules/gspread { }; + + gssapi = callPackage ../development/python-modules/gssapi { inherit (pkgs) darwin krb5Full; }; + + gst-python = callPackage ../development/python-modules/gst-python { + inherit (pkgs) meson pkgconfig; + gst-plugins-base = pkgs.gst_all_1.gst-plugins-base; + }; + + 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 { }; + + gumath = callPackage ../development/python-modules/gumath { }; + + gunicorn = if isPy27 then + callPackage ../development/python-modules/gunicorn/19.nix { } + else + callPackage ../development/python-modules/gunicorn { }; + + 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 { }; + + gwyddion = disabledIf isPy3k (toPythonModule (pkgs.gwyddion.override { + pythonSupport = true; + pythonPackages = self; + })); + + 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 { hdf5 = pkgs.hdf5; }; + + h5py-mpi = self.h5py.override { hdf5 = pkgs.hdf5-mpi; }; + + habanero = callPackage ../development/python-modules/habanero { }; + + ha-ffmpeg = callPackage ../development/python-modules/ha-ffmpeg { }; + + handout = callPackage ../development/python-modules/handout { }; + + HAP-python = callPackage ../development/python-modules/HAP-python { }; + + hass-nabucasa = callPackage ../development/python-modules/hass-nabucasa { }; + + hawkauthlib = callPackage ../development/python-modules/hawkauthlib { }; + + hbmqtt = callPackage ../development/python-modules/hbmqtt { }; + + hcloud = callPackage ../development/python-modules/hcloud { }; + + hcs_utils = callPackage ../development/python-modules/hcs_utils { }; + + hdbscan = callPackage ../development/python-modules/hdbscan { }; + + hdlparse = callPackage ../development/python-modules/hdlparse { }; + + hdmedians = callPackage ../development/python-modules/hdmedians { }; + + heapdict = callPackage ../development/python-modules/heapdict { }; + + helpdev = callPackage ../development/python-modules/helpdev { }; + + helper = callPackage ../development/python-modules/helper { }; + + hepmc3 = toPythonModule (pkgs.hepmc3.override { inherit python; }); + + hetzner = callPackage ../development/python-modules/hetzner { }; + + heudiconv = callPackage ../development/python-modules/heudiconv { }; + + hg-evolve = callPackage ../development/python-modules/hg-evolve { }; + + hg-git = callPackage ../development/python-modules/hg-git { }; + + hglib = callPackage ../development/python-modules/hglib { }; + + hgsvn = callPackage ../development/python-modules/hgsvn { }; + + hickle = callPackage ../development/python-modules/hickle { }; + + hidapi = callPackage ../development/python-modules/hidapi { inherit (pkgs) udev libusb1; }; + + hieroglyph = callPackage ../development/python-modules/hieroglyph { }; + + hiredis = callPackage ../development/python-modules/hiredis { }; + + hiro = callPackage ../development/python-modules/hiro { }; + + hiyapyco = callPackage ../development/python-modules/hiyapyco { }; + + hkdf = callPackage ../development/python-modules/hkdf { }; + + hmmlearn = callPackage ../development/python-modules/hmmlearn { }; + + hocr-tools = callPackage ../development/python-modules/hocr-tools { }; + + holidays = callPackage ../development/python-modules/holidays { }; + + holoviews = callPackage ../development/python-modules/holoviews { }; + + homeassistant-pyozw = callPackage ../development/python-modules/homeassistant-pyozw { }; + + 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 { }; + + hsaudiotag = callPackage ../development/python-modules/hsaudiotag { }; + + hstspreload = callPackage ../development/python-modules/hstspreload { }; + + html2text = if isPy3k then + callPackage ../development/python-modules/html2text { } + else + callPackage ../development/python-modules/html2text/2018.nix { }; + + html5lib = callPackage ../development/python-modules/html5lib { }; + + html5-parser = callPackage ../development/python-modules/html5-parser { inherit (pkgs) pkgconfig; }; + + htmllaundry = callPackage ../development/python-modules/htmllaundry { }; + + htmlmin = callPackage ../development/python-modules/htmlmin { }; + + html-sanitizer = callPackage ../development/python-modules/html-sanitizer { }; + + htmltreediff = callPackage ../development/python-modules/htmltreediff { }; + + HTSeq = callPackage ../development/python-modules/HTSeq { }; + + httmock = callPackage ../development/python-modules/httmock { }; + + 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 = if isPy3k then + callPackage ../development/python-modules/httpretty { } + else + callPackage ../development/python-modules/httpretty/0.nix { }; + + httpserver = callPackage ../development/python-modules/httpserver { }; + + httpsig = callPackage ../development/python-modules/httpsig { }; + + http_signature = callPackage ../development/python-modules/http_signature { }; + + httptools = callPackage ../development/python-modules/httptools { }; + + httpx = callPackage ../development/python-modules/httpx { }; + + huey = callPackage ../development/python-modules/huey { }; + + hug = callPackage ../development/python-modules/hug { }; + + humanfriendly = callPackage ../development/python-modules/humanfriendly { }; + + humanize = callPackage ../development/python-modules/humanize { }; + + hupper = callPackage ../development/python-modules/hupper { }; + + hvac = callPackage ../development/python-modules/hvac { }; + + hvplot = callPackage ../development/python-modules/hvplot { }; + + hwi = callPackage ../development/python-modules/hwi { }; + + hydra = callPackage ../development/python-modules/hydra { }; + + hydra-check = callPackage ../development/python-modules/hydra-check { }; + + hypchat = callPackage ../development/python-modules/hypchat { }; + + hyperframe = callPackage ../development/python-modules/hyperframe { }; + + hyperkitty = callPackage ../servers/mail/mailman/hyperkitty.nix { }; + + hyperlink = callPackage ../development/python-modules/hyperlink { }; + + hypothesis_4 = callPackage ../development/python-modules/hypothesis/2.nix + { }; # File name is called 2.nix because this one will need to remain for Python 2. + + hypothesis-auto = callPackage ../development/python-modules/hypothesis-auto { }; + + hypothesis = if isPy3k then callPackage ../development/python-modules/hypothesis { } else self.hypothesis_4; + + hyppo = callPackage ../development/python-modules/hyppo { }; + + i3ipc = callPackage ../development/python-modules/i3ipc { }; + + i3-py = callPackage ../development/python-modules/i3-py { }; + + iapws = callPackage ../development/python-modules/iapws { }; + + ibis = callPackage ../development/python-modules/ibis { }; + + ibis-framework = callPackage ../development/python-modules/ibis-framework { }; + + icalendar = callPackage ../development/python-modules/icalendar { }; + + icecream = callPackage ../development/python-modules/icecream { }; + + ics = callPackage ../development/python-modules/ics { }; + + 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 { }; + + ignite = callPackage ../development/python-modules/ignite { }; + + ihatemoney = callPackage ../development/python-modules/ihatemoney { }; + + ijson = callPackage ../development/python-modules/ijson { }; + + imagecodecs-lite = disabledIf (!isPy3k) (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-match = callPackage ../development/python-modules/image-match { }; + + imagesize = callPackage ../development/python-modules/imagesize { }; + + IMAPClient = callPackage ../development/python-modules/imapclient { }; + + imaplib2 = callPackage ../development/python-modules/imaplib2 { }; + + imbalanced-learn = if isPy27 then + callPackage ../development/python-modules/imbalanced-learn/0.4.nix { } + else + callPackage ../development/python-modules/imbalanced-learn { }; + + img2pdf = callPackage ../development/python-modules/img2pdf { }; + + imgaug = callPackage ../development/python-modules/imgaug { }; + + imgsize = callPackage ../development/python-modules/imgsize { }; + + immutables = callPackage ../development/python-modules/immutables { }; + + impacket = callPackage ../development/python-modules/impacket { }; + + 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) pkgconfig libjpeg libpng libtiff libwebp; }; + + imutils = callPackage ../development/python-modules/imutils { }; + + 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 { }; + + infoqscraper = callPackage ../development/python-modules/infoqscraper { }; + + iniconfig = callPackage ../development/python-modules/iniconfig { }; + + inifile = callPackage ../development/python-modules/inifile { }; + + iniparse = callPackage ../development/python-modules/iniparse { }; + + inotify-simple = callPackage ../development/python-modules/inotify-simple { }; + + inquirer = callPackage ../development/python-modules/inquirer { }; + + intake = callPackage ../development/python-modules/intake { }; + + intelhex = callPackage ../development/python-modules/intelhex { }; + + 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 { }; + + iocapture = callPackage ../development/python-modules/iocapture { }; + + 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 { }; + + ipfsapi = callPackage ../development/python-modules/ipfsapi { }; + + iptools = callPackage ../development/python-modules/iptools { }; + + ipy = callPackage ../development/python-modules/IPy { }; + + ipydatawidgets = callPackage ../development/python-modules/ipydatawidgets { }; + + ipykernel = if pythonOlder "3.4" then + callPackage ../development/python-modules/ipykernel/4.nix { } + else + 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 = if isPy27 then + callPackage ../development/python-modules/ipython/5.nix { } + else if isPy36 then + callPackage ../development/python-modules/ipython/7.16.nix { } + else + 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 { }; + + isbnlib = callPackage ../development/python-modules/isbnlib { }; + + islpy = callPackage ../development/python-modules/islpy { }; + + iso3166 = callPackage ../development/python-modules/iso3166 { }; + + iso-639 = callPackage ../development/python-modules/iso-639 { }; + + iso8601 = callPackage ../development/python-modules/iso8601 { }; + + isodate = callPackage ../development/python-modules/isodate { }; + + isort = callPackage ../development/python-modules/isort { }; + + isoweek = callPackage ../development/python-modules/isoweek { }; + + itanium_demangler = callPackage ../development/python-modules/itanium_demangler { }; + + itemadapter = callPackage ../development/python-modules/itemadapter { }; + + itemloaders = callPackage ../development/python-modules/itemloaders { }; + + iterm2 = callPackage ../development/python-modules/iterm2 { }; + + itsdangerous = callPackage ../development/python-modules/itsdangerous { }; + + itypes = callPackage ../development/python-modules/itypes { }; + + j2cli = callPackage ../development/python-modules/j2cli { }; + + jabberbot = callPackage ../development/python-modules/jabberbot { }; + + janus = callPackage ../development/python-modules/janus { }; + + jaraco_classes = callPackage ../development/python-modules/jaraco_classes { }; + + jaraco_collections = callPackage ../development/python-modules/jaraco_collections { }; + + jaraco_functools = if pythonOlder "3.6" then + callPackage ../development/python-modules/jaraco_functools/2.nix { } + else + callPackage ../development/python-modules/jaraco_functools { }; + + jaraco_itertools = callPackage ../development/python-modules/jaraco_itertools { }; + + jaraco_logging = callPackage ../development/python-modules/jaraco_logging { }; + + jaraco_stream = if pythonOlder "3.6" then + callPackage ../development/python-modules/jaraco_stream/2.nix { } + else + 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 { }; + + 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 { }; + + 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_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 { }; + + joblib = callPackage ../development/python-modules/joblib { }; + + josepy = callPackage ../development/python-modules/josepy { }; + + journalwatch = callPackage ../tools/system/journalwatch { inherit (self) systemd pytest; }; + + 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 { }; + + jsmin = callPackage ../development/python-modules/jsmin { }; + + jsondate = callPackage ../development/python-modules/jsondate { }; + + jsondiff = callPackage ../development/python-modules/jsondiff { }; + + jsonlines = callPackage ../development/python-modules/jsonlines { }; + + jsonmerge = callPackage ../development/python-modules/jsonmerge { }; + + json-merge-patch = callPackage ../development/python-modules/json-merge-patch { }; + + 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 { }; + + jsonpickle = callPackage ../development/python-modules/jsonpickle { }; + + jsonpointer = callPackage ../development/python-modules/jsonpointer { }; + + jsonref = callPackage ../development/python-modules/jsonref { }; + + jsonrpc-async = callPackage ../development/python-modules/jsonrpc-async { }; + + jsonrpc-base = callPackage ../development/python-modules/jsonrpc-base { }; + + jsonrpclib = callPackage ../development/python-modules/jsonrpclib { }; + + jsonrpclib-pelix = callPackage ../development/python-modules/jsonrpclib-pelix { }; + + jsonrpc-websocket = callPackage ../development/python-modules/jsonrpc-websocket { }; + + jsonschema = callPackage ../development/python-modules/jsonschema { }; + + jsonwatch = callPackage ../development/python-modules/jsonwatch { }; + + 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 = if isPy3k then + callPackage ../development/python-modules/jupyter_client { } + else + callPackage ../development/python-modules/jupyter_client/5.nix { }; + + jupyter_console = if pythonOlder "3.5" then + callPackage ../development/python-modules/jupyter_console/5.nix { } + else + callPackage ../development/python-modules/jupyter_console { }; + + jupyter_core = callPackage ../development/python-modules/jupyter_core { }; + + jupyterhub = callPackage ../development/python-modules/jupyterhub { }; + + jupyterhub-ldapauthenticator = callPackage ../development/python-modules/jupyterhub-ldapauthenticator { }; + + jupyterhub-systemdspawner = + callPackage ../development/python-modules/jupyterhub-systemdspawner { inherit (pkgs) bash; }; + + 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_server = callPackage ../development/python-modules/jupyterlab_server { }; + + jupyter-repo2docker = callPackage ../development/python-modules/jupyter-repo2docker { pkgs-docker = pkgs.docker; }; + + jupyter-sphinx = callPackage ../development/python-modules/jupyter-sphinx { }; + + jupyter-telemetry = callPackage ../development/python-modules/jupyter-telemetry { }; + + jupytext = callPackage ../development/python-modules/jupytext { }; + + jwcrypto = callPackage ../development/python-modules/jwcrypto { }; + + 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 { }; + + kaptan = callPackage ../development/python-modules/kaptan { }; + + 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 { inherit (pkgs) kerberos; }; + + keyring = if isPy3k then + callPackage ../development/python-modules/keyring { } + else + callPackage ../development/python-modules/keyring/2.nix { }; + + keyrings-alt = callPackage ../development/python-modules/keyrings-alt { }; + + keyutils = callPackage ../development/python-modules/keyutils { inherit (pkgs) keyutils; }; + + kicad = disabledIf isPy27 (toPythonModule (pkgs.kicad.override { python3 = python; }).src); + + kinparse = callPackage ../development/python-modules/kinparse { }; + + kitchen = callPackage ../development/python-modules/kitchen { }; + + kiwisolver = if isPy3k then + callPackage ../development/python-modules/kiwisolver { } + else + callPackage ../development/python-modules/kiwisolver/1_1.nix { }; + + klaus = callPackage ../development/python-modules/klaus { }; + + klein = callPackage ../development/python-modules/klein { }; + + kmapper = callPackage ../development/python-modules/kmapper { }; + + kmsxx = toPythonModule ((callPackage ../development/libraries/kmsxx { + inherit (pkgs.kmsxx) stdenv; + inherit (pkgs) pkgconfig; + withPython = true; + }).overrideAttrs (oldAttrs: { name = "${python.libPrefix}-${pkgs.kmsxx.name}"; })); + + knack = callPackage ../development/python-modules/knack { }; + + koji = callPackage ../development/python-modules/koji { }; + + kombu = callPackage ../development/python-modules/kombu { }; + + konfig = callPackage ../development/python-modules/konfig { }; + + korean-lunar-calendar = callPackage ../development/python-modules/korean-lunar-calendar { }; + + kubernetes = callPackage ../development/python-modules/kubernetes { }; + + labelbox = callPackage ../development/python-modules/labelbox { }; + + lammps-cython = callPackage ../development/python-modules/lammps-cython { mpi = pkgs.openmpi; }; + + langcodes = callPackage ../development/python-modules/langcodes { }; + + langdetect = callPackage ../development/python-modules/langdetect { }; + + larch = callPackage ../development/python-modules/larch { }; + + lark-parser = callPackage ../development/python-modules/lark-parser { }; + + Lasagne = callPackage ../development/python-modules/lasagne { }; + + 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 { }; + + ldap3 = callPackage ../development/python-modules/ldap3 { }; + + ldap = callPackage ../development/python-modules/ldap { inherit (pkgs) openldap cyrus_sasl; }; + + ldappool = callPackage ../development/python-modules/ldappool { }; + + ldaptor = callPackage ../development/python-modules/ldaptor { }; + + leather = callPackage ../development/python-modules/leather { }; + + le = callPackage ../development/python-modules/le { }; + + ledger_agent = callPackage ../development/python-modules/ledger_agent { }; + + ledgerblue = callPackage ../development/python-modules/ledgerblue { }; + + lektor = callPackage ../development/python-modules/lektor { }; + + leveldb = callPackage ../development/python-modules/leveldb { }; + + 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 pkgconfig; }; + + libcloud = if isPy27 then + callPackage ../development/python-modules/libcloud/2.nix { } + else + 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 = disabledIf (!isPy3k) (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; + inherit (pkgs.linuxPackages) nvidia_x11; + }; + + libiio = (toPythonModule (pkgs.libiio.override { inherit python; })).python; + + libkeepass = callPackage ../development/python-modules/libkeepass { }; + + liblarch = callPackage ../development/python-modules/liblarch { }; + + 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; }; + + libnl-python = disabledIf isPy3k (toPythonModule (pkgs.libnl.override { + pythonSupport = true; + inherit python; + })).py; + + libplist = disabledIf isPy3k (toPythonModule (pkgs.libplist.override { + enablePython = true; + inherit python; + })).py; + + 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 { }; + + 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 false) || pythonAtLeast "3.8"; + }; + })) + (p: + p.override { + enablePython = true; + inherit python; + }) + (p: p.py) + ]; + + libsoundtouch = callPackage ../development/python-modules/libsoundtouch { }; + + libthumbor = callPackage ../development/python-modules/libthumbor { }; + + libtmux = callPackage ../development/python-modules/libtmux { }; + + libtorrentRasterbar = (toPythonModule (pkgs.libtorrentRasterbar.override { inherit python; })).python; + + libusb1 = callPackage ../development/python-modules/libusb1 { inherit (pkgs) libusb1; }; + + libversion = callPackage ../development/python-modules/libversion { inherit (pkgs) libversion pkgconfig; }; + + libvirt = if isPy3k then + (callPackage ../development/python-modules/libvirt { inherit (pkgs) libvirt pkgconfig; }) + else + (callPackage ../development/python-modules/libvirt/5.9.0.nix { + inherit (pkgs) pkgconfig; + libvirt = pkgs.libvirt_5_9_0; + }); + + libxml2 = (toPythonModule (pkgs.libxml2.override { + pythonSupport = true; + inherit python; + })).py; + + libxslt = (toPythonModule (pkgs.libxslt.override { + pythonSupport = true; + inherit python; + inherit (self) libxml2; + })).py; + + license-expression = callPackage ../development/python-modules/license-expression { }; + + lightblue = callPackage ../development/python-modules/lightblue { }; + + lightgbm = callPackage ../development/python-modules/lightgbm { }; + + lightning = callPackage ../development/python-modules/lightning { }; + + lightparam = callPackage ../development/python-modules/lightparam { }; + + 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 { }; + + linode-api = callPackage ../development/python-modules/linode-api { }; + + linode = callPackage ../development/python-modules/linode { }; + + linuxfd = callPackage ../development/python-modules/linuxfd { }; + + lirc = disabledIf isPy27 (toPythonModule (pkgs.lirc.override { python3 = python; })); + + 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 pkgconfig; + }; # use "real" fuse and pkgconfig, not the python modules + + llvmlite = callPackage ../development/python-modules/llvmlite { + llvm = pkgs.llvm_9; + }; # llvmlite always requires a specific version of llvm. + + lmdb = callPackage ../development/python-modules/lmdb { }; + + lml = callPackage ../development/python-modules/lml { }; + + lmtpd = callPackage ../development/python-modules/lmtpd { }; + + localzone = callPackage ../development/python-modules/localzone { }; + + locket = callPackage ../development/python-modules/locket { }; + + lockfile = callPackage ../development/python-modules/lockfile { }; + + locustio = callPackage ../development/python-modules/locustio { }; + + Logbook = callPackage ../development/python-modules/Logbook { }; + + logfury = callPackage ../development/python-modules/logfury { }; + + 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 { }; + + lpod = callPackage ../development/python-modules/lpod { }; + + lsi = callPackage ../development/python-modules/lsi { }; + + ludios_wpull = callPackage ../development/python-modules/ludios_wpull { }; + + luftdaten = callPackage ../development/python-modules/luftdaten { }; + + lxc = callPackage ../development/python-modules/lxc { }; + + lxml = callPackage ../development/python-modules/lxml { inherit (pkgs) libxml2 libxslt zlib; }; + + lz4 = self.python-lz4; # alias 2018-12-05 + + 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 { }; + + 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 { }; + + 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 { }; + + Mako = callPackage ../development/python-modules/Mako { }; + + managesieve = callPackage ../development/python-modules/managesieve { }; + + manhole = callPackage ../development/python-modules/manhole { }; + + manifestparser = callPackage ../development/python-modules/marionette-harness/manifestparser.nix { }; + + manuel = callPackage ../development/python-modules/manuel { }; + + mapbox = callPackage ../development/python-modules/mapbox { }; + + mapsplotlib = callPackage ../development/python-modules/mapsplotlib { }; + + marionette_driver = callPackage ../development/python-modules/marionette-harness/marionette_driver.nix { }; + + marionette-harness = callPackage ../development/python-modules/marionette-harness { }; + + marisa = callPackage ../development/python-modules/marisa { marisa = pkgs.marisa; }; + + marisa-trie = callPackage ../development/python-modules/marisa-trie { }; + + markdown2 = callPackage ../development/python-modules/markdown2 { }; + + markdown = if isPy3k then + callPackage ../development/python-modules/markdown { } + else + callPackage ../development/python-modules/markdown/3_1.nix { }; + + 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-enum = callPackage ../development/python-modules/marshmallow-enum { }; + + marshmallow-polyfield = callPackage ../development/python-modules/marshmallow-polyfield { }; + + marshmallow-sqlalchemy = callPackage ../development/python-modules/marshmallow-sqlalchemy { }; + + mask-rcnn = callPackage ../development/python-modules/mask-rcnn { }; + + matchpy = callPackage ../development/python-modules/matchpy { }; + + mathlibtools = callPackage ../development/python-modules/mathlibtools { }; + + matplotlib = let + path = if isPy3k then + ../development/python-modules/matplotlib/default.nix + else + ../development/python-modules/matplotlib/2.nix; + in callPackage path { + stdenv = if stdenv.isDarwin then pkgs.clangStdenv else pkgs.stdenv; + inherit (pkgs.darwin.apple_sdk.frameworks) Cocoa; + inherit (pkgs) pkgconfig; + }; + + matrix-client = callPackage ../development/python-modules/matrix-client { }; + + matrix-nio = callPackage ../development/python-modules/matrix-nio { }; + + mautrix = callPackage ../development/python-modules/mautrix { }; + + mautrix-appservice = self.mautrix; # alias 2019-12-28 + + maxminddb = callPackage ../development/python-modules/maxminddb { }; + + maya = callPackage ../development/python-modules/maya { }; + + mayavi = pkgs.libsForQt5.callPackage ../development/python-modules/mayavi { + inherit buildPythonPackage isPy27 fetchPypi; + inherit (self) pyface pygments numpy vtk traitsui envisage apptools pyqt5; + }; + + mccabe = callPackage ../development/python-modules/mccabe { }; + + 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 { }; + + meinheld = callPackage ../development/python-modules/meinheld { }; + + meld3 = callPackage ../development/python-modules/meld3 { }; + + meliae = callPackage ../development/python-modules/meliae { }; + + memcached = callPackage ../development/python-modules/memcached { }; + + memory_profiler = callPackage ../development/python-modules/memory_profiler { }; + + mercurial = disabledIf (!isPy3k) (toPythonModule (pkgs.mercurial.override { python3Packages = self; })); + + mergedeep = callPackage ../development/python-modules/mergedeep { }; + + merkletools = callPackage ../development/python-modules/merkletools { }; + + mesa = callPackage ../development/python-modules/mesa { }; + + meshlabxml = callPackage ../development/python-modules/meshlabxml { }; + + meson = disabledIf (pythonOlder "3.5") (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 { }; + + metaphone = callPackage ../development/python-modules/metaphone { }; + + mezzanine = callPackage ../development/python-modules/mezzanine { }; + + micawber = callPackage ../development/python-modules/micawber { }; + + midiutil = callPackage ../development/python-modules/midiutil { }; + + mido = callPackage ../development/python-modules/mido { }; + + milksnake = callPackage ../development/python-modules/milksnake { }; + + minidb = callPackage ../development/python-modules/minidb { }; + + minimock = callPackage ../development/python-modules/minimock { }; + + mininet-python = (toPythonModule (pkgs.mininet.override { inherit 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 { }; + + mistune = callPackage ../development/python-modules/mistune { }; + + mitmproxy = callPackage ../development/python-modules/mitmproxy { }; + + mixpanel = callPackage ../development/python-modules/mixpanel { }; + + mkl-service = callPackage ../development/python-modules/mkl-service { }; + + mlflow = callPackage ../development/python-modules/mlflow { }; + + mlrose = callPackage ../development/python-modules/mlrose { }; + + mmh3 = callPackage ../development/python-modules/mmh3 { }; + + mmpython = callPackage ../development/python-modules/mmpython { }; + + mnemonic = callPackage ../development/python-modules/mnemonic { }; + + mnist = callPackage ../development/python-modules/mnist { }; + + mocket = callPackage ../development/python-modules/mocket { }; + + mock = if pythonOlder "3.6" then + callPackage ../development/python-modules/mock/2.nix { } + else + callPackage ../development/python-modules/mock { }; + + mockito = callPackage ../development/python-modules/mockito { }; + + mock-open = callPackage ../development/python-modules/mock-open { }; + + 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 { }; + + moinmoin = callPackage ../development/python-modules/moinmoin + { }; # Needed here because moinmoin is loaded as a Python library. + + mongodict = callPackage ../development/python-modules/mongodict { }; + + mongoengine = callPackage ../development/python-modules/mongoengine { }; + + monkeyhex = callPackage ../development/python-modules/monkeyhex { }; + + monosat = disabledIf (!isPy3k) (pkgs.monosat.python { + inherit buildPythonPackage; + inherit (self) cython; + }); + + monotonic = callPackage ../development/python-modules/monotonic { }; + + monty = callPackage ../development/python-modules/monty { }; + + more-itertools = if isPy27 then + callPackage ../development/python-modules/more-itertools/2.7.nix { } + else + callPackage ../development/python-modules/more-itertools { }; + + moretools = callPackage ../development/python-modules/moretools { }; + + morphys = callPackage ../development/python-modules/morphys { }; + + mortgage = callPackage ../development/python-modules/mortgage { }; + + moto = callPackage ../development/python-modules/moto { }; + + moviepy = callPackage ../development/python-modules/moviepy { }; + + mox3 = callPackage ../development/python-modules/mox3 { }; + + mox = callPackage ../development/python-modules/mox { }; + + mozcrash = callPackage ../development/python-modules/marionette-harness/mozcrash.nix { }; + + mozdevice = callPackage ../development/python-modules/marionette-harness/mozdevice.nix { }; + + mozfile = callPackage ../development/python-modules/marionette-harness/mozfile.nix { }; + + mozhttpd = callPackage ../development/python-modules/marionette-harness/mozhttpd.nix { }; + + mozinfo = callPackage ../development/python-modules/marionette-harness/mozinfo.nix { }; + + mozlog = callPackage ../development/python-modules/marionette-harness/mozlog.nix { }; + + moznetwork = callPackage ../development/python-modules/marionette-harness/moznetwork.nix { }; + + mozprocess = callPackage ../development/python-modules/marionette-harness/mozprocess.nix { }; + + mozprofile = callPackage ../development/python-modules/marionette-harness/mozprofile.nix { }; + + mozrunner = callPackage ../development/python-modules/marionette-harness/mozrunner.nix { }; + + mozsvc = callPackage ../development/python-modules/mozsvc { }; + + mozterm = callPackage ../development/python-modules/mozterm { }; + + moztest = callPackage ../development/python-modules/marionette-harness/moztest.nix { }; + + mozversion = callPackage ../development/python-modules/marionette-harness/mozversion.nix { }; + + mpd2 = callPackage ../development/python-modules/mpd2 { }; + + mpd = callPackage ../development/python-modules/mpd { }; + + mpi4py = callPackage ../development/python-modules/mpi4py { mpi = pkgs.openmpi; }; + + mplleaflet = callPackage ../development/python-modules/mplleaflet { }; + + mpmath = callPackage ../development/python-modules/mpmath { }; + + mpv = callPackage ../development/python-modules/mpv { mpv = pkgs.mpv; }; + + mpyq = callPackage ../development/python-modules/mpyq { }; + + mrbob = callPackage ../development/python-modules/mrbob { }; + + 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 { }; + + mss = callPackage ../development/python-modules/mss { }; + + msrestazure = callPackage ../development/python-modules/msrestazure { }; + + msrest = callPackage ../development/python-modules/msrest { }; + + msrplib = callPackage ../development/python-modules/msrplib { }; + + mt-940 = callPackage ../development/python-modules/mt-940 { }; + + multidict = callPackage ../development/python-modules/multidict { }; + + multi_key_dict = callPackage ../development/python-modules/multi_key_dict { }; + + 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 = if isPy27 then + callPackage ../development/python-modules/mutagen/1.43.nix { } + else + callPackage ../development/python-modules/mutagen { }; + + mutatormath = callPackage ../development/python-modules/mutatormath { }; + + muttils = callPackage ../development/python-modules/muttils { }; + + mwclient = callPackage ../development/python-modules/mwclient { }; + + mwlib = callPackage ../development/python-modules/mwlib { }; + + mwlib-ext = callPackage ../development/python-modules/mwlib-ext { }; + + mwlib-rl = callPackage ../development/python-modules/mwlib-rl { }; + + 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 { }; + + mypy = callPackage ../development/python-modules/mypy { }; + + 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 { }; + + nagiosplugin = callPackage ../development/python-modules/nagiosplugin { }; + + namebench = callPackage ../development/python-modules/namebench { }; + + namedlist = callPackage ../development/python-modules/namedlist { }; + + nameparser = callPackage ../development/python-modules/nameparser { }; + + names = callPackage ../development/python-modules/names { }; + + nanoleaf = callPackage ../development/python-modules/nanoleaf { }; + + nanomsg-python = callPackage ../development/python-modules/nanomsg-python { inherit (pkgs) nanomsg; }; + + nanotime = callPackage ../development/python-modules/nanotime { }; + + nassl = callPackage ../development/python-modules/nassl { }; + + natsort = callPackage ../development/python-modules/natsort { }; + + naturalsort = callPackage ../development/python-modules/naturalsort { }; + + 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 = if isPy3k then + callPackage ../development/python-modules/nbformat { } + else + callPackage ../development/python-modules/nbformat/2.nix { }; + + 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 { }; + + ndg-httpsclient = callPackage ../development/python-modules/ndg-httpsclient { }; + + ndtypes = callPackage ../development/python-modules/ndtypes { }; + + neo = callPackage ../development/python-modules/neo { }; + + nest-asyncio = callPackage ../development/python-modules/nest-asyncio { }; + + netaddr = callPackage ../development/python-modules/netaddr { }; + + netcdf4 = callPackage ../development/python-modules/netcdf4 { }; + + netdisco = callPackage ../development/python-modules/netdisco { }; + + netifaces = callPackage ../development/python-modules/netifaces { }; + + networkx = if isPy3k then + callPackage ../development/python-modules/networkx { } + else + callPackage ../development/python-modules/networkx/2.2.nix { }; + + 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 { }; + + 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 { }; + + nilearn = callPackage ../development/python-modules/nilearn { }; + + 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 { }; + + nix-kernel = callPackage ../development/python-modules/nix-kernel { inherit (pkgs) nix; }; + + nixpart0 = callPackage ../tools/filesystems/nixpart/0.4 + { }; # This is used for NixOps to make sure we won't break it with the next major version of nixpart. + + nixpart = callPackage ../tools/filesystems/nixpart { }; + + nixpkgs = callPackage ../development/python-modules/nixpkgs { }; + + nixpkgs-pytools = callPackage ../development/python-modules/nixpkgs-pytools { }; + + nix-prefetch-github = callPackage ../development/python-modules/nix-prefetch-github { }; + + nltk = callPackage ../development/python-modules/nltk { }; + + nmigen-boards = callPackage ../development/python-modules/nmigen-boards { }; + + nmigen = callPackage ../development/python-modules/nmigen { }; + + nmigen-soc = callPackage ../development/python-modules/nmigen-soc { }; + + nodeenv = callPackage ../development/python-modules/nodeenv { }; + + node-semver = callPackage ../development/python-modules/node-semver { }; + + noise = callPackage ../development/python-modules/noise { }; + + 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-focus = callPackage ../development/python-modules/nose-focus { }; + + nose-timer = callPackage ../development/python-modules/nose-timer { }; + + nosejs = callPackage ../development/python-modules/nosejs { }; + + nose-of-yeti = callPackage ../development/python-modules/nose-of-yeti { }; + + 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 = if isPy3k then + callPackage ../development/python-modules/notebook { } + else + callPackage ../development/python-modules/notebook/2.nix { }; + + notedown = callPackage ../development/python-modules/notedown { }; + + notify2 = callPackage ../development/python-modules/notify2 { }; + + notify = callPackage ../development/python-modules/notify { }; + + notify-py = callPackage ../development/python-modules/notify-py { }; + + notmuch = callPackage ../development/python-modules/notmuch { inherit (pkgs) notmuch; }; + + nototools = callPackage ../data/fonts/noto-fonts/tools.nix { }; + + nplusone = callPackage ../development/python-modules/nplusone { }; + + 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 { }; + + num2words = callPackage ../development/python-modules/num2words { }; + + numba = callPackage ../development/python-modules/numba { }; + + numcodecs = callPackage ../development/python-modules/numcodecs { inherit (pkgs) gcc8; }; + + numericalunits = callPackage ../development/python-modules/numericalunits { }; + + numexpr = callPackage ../development/python-modules/numexpr { }; + + numpydoc = callPackage ../development/python-modules/numpydoc { }; + + numpy = if pythonOlder "3.5" then + callPackage ../development/python-modules/numpy/1.16.nix { } + else + callPackage ../development/python-modules/numpy { }; + + numpy-stl = callPackage ../development/python-modules/numpy-stl { }; + + numtraits = callPackage ../development/python-modules/numtraits { }; + + nunavut = callPackage ../development/python-modules/nunavut { }; + + nvchecker = callPackage ../development/python-modules/nvchecker { }; + + nwdiag = callPackage ../development/python-modules/nwdiag { }; + + nxt-python = callPackage ../development/python-modules/nxt-python { }; + + 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 = if isPy27 then + callPackage ../development/python-modules/oauthlib/3.1.nix { } + else + callPackage ../development/python-modules/oauthlib { }; + + obfsproxy = callPackage ../development/python-modules/obfsproxy { }; + + objgraph = callPackage ../development/python-modules/objgraph { graphvizPkg = pkgs.graphviz; }; + + 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 { }; + + olefile = callPackage ../development/python-modules/olefile { }; + + omegaconf = callPackage ../development/python-modules/omegaconf { }; + + onkyo-eiscp = callPackage ../development/python-modules/onkyo-eiscp { }; + + onnx = callPackage ../development/python-modules/onnx { }; + + openant = callPackage ../development/python-modules/openant { }; + + openapi-spec-validator = callPackage ../development/python-modules/openapi-spec-validator { }; + + opencv3 = toPythonModule (pkgs.opencv3.override { + enablePython = true; + pythonPackages = self; + }); + + opencv4 = toPythonModule (pkgs.opencv4.override { + enablePython = true; + pythonPackages = self; + }); + + opencv = disabledIf isPy3k (toPythonModule (pkgs.opencv.override { + enablePython = true; + pythonPackages = self; + })); + + openidc-client = callPackage ../development/python-modules/openidc-client { }; + + openpyxl = if pythonAtLeast "3.6" then + callPackage ../development/python-modules/openpyxl { } + else + callPackage ../development/python-modules/openpyxl/2.nix { }; + + openrazer = callPackage ../development/python-modules/openrazer/pylib.nix { }; + + openrazer-daemon = callPackage ../development/python-modules/openrazer/daemon.nix { }; + + opentimestamps = callPackage ../development/python-modules/opentimestamps { }; + + opentracing = callPackage ../development/python-modules/opentracing { }; + + openwebifpy = callPackage ../development/python-modules/openwebifpy { }; + + openwrt-luci-rpc = disabledIf (!isPy3k) (callPackage ../development/python-modules/openwrt-luci-rpc { }); + + opt-einsum = if isPy27 then + callPackage ../development/python-modules/opt-einsum/2.nix { } + else + callPackage ../development/python-modules/opt-einsum { }; + + 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 { }; + + orm = callPackage ../development/python-modules/orm { }; + + ortools = (toPythonModule (pkgs.or-tools.override { inherit (self) python; })).python; + + osc = callPackage ../development/python-modules/osc { }; + + oscrypto = callPackage ../development/python-modules/oscrypto { }; + + oset = callPackage ../development/python-modules/oset { }; + + osmnx = callPackage ../development/python-modules/osmnx { }; + + osmpythontools = callPackage ../development/python-modules/osmpythontools { }; + + osqp = callPackage ../development/python-modules/osqp { }; + + outcome = callPackage ../development/python-modules/outcome { }; + + ovh = callPackage ../development/python-modules/ovh { }; + + ovito = toPythonModule (pkgs.libsForQt5.callPackage ../development/python-modules/ovito { pythonPackages = self; }); + + owslib = callPackage ../development/python-modules/owslib { }; + + oyaml = callPackage ../development/python-modules/oyaml { }; + + packaging = callPackage ../development/python-modules/packaging { }; + + packet-python = callPackage ../development/python-modules/packet-python { }; + + pafy = callPackage ../development/python-modules/pafy { }; + + pagelabels = callPackage ../development/python-modules/pagelabels { }; + + pagerduty = callPackage ../development/python-modules/pagerduty { }; + + paho-mqtt = callPackage ../development/python-modules/paho-mqtt { }; + + palettable = callPackage ../development/python-modules/palettable { }; + + # Alias. Added 2020-09-07. + pam = self.python-pam; + + pamela = callPackage ../development/python-modules/pamela { }; + + pamqp = callPackage ../development/python-modules/pamqp { }; + + pandas = if isPy3k then + callPackage ../development/python-modules/pandas { } + else + callPackage ../development/python-modules/pandas/2.nix { }; + + pandoc-attributes = callPackage ../development/python-modules/pandoc-attributes { }; + + pandocfilters = callPackage ../development/python-modules/pandocfilters { }; + + panel = callPackage ../development/python-modules/panel { }; + + papermill = callPackage ../development/python-modules/papermill { }; + + paperspace = callPackage ../development/python-modules/paperspace { }; + + paperwork-backend = callPackage ../applications/office/paperwork/backend.nix { }; + + papis = callPackage ../development/python-modules/papis { }; + + papis-python-rofi = callPackage ../development/python-modules/papis-python-rofi { }; + + param = callPackage ../development/python-modules/param { }; + + parameterized = callPackage ../development/python-modules/parameterized { }; + + paramiko = callPackage ../development/python-modules/paramiko { }; + + paramz = callPackage ../development/python-modules/paramz { }; + + parfive = callPackage ../development/python-modules/parfive { }; + + parse = callPackage ../development/python-modules/parse { }; + + parsedatetime = callPackage ../development/python-modules/parsedatetime { }; + + 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 { }; + + 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 = if isPy3k then + callPackage ../development/python-modules/path.py { } + else + callPackage ../development/python-modules/path.py/2.nix { }; + + pathspec = callPackage ../development/python-modules/pathspec { }; + + pathtools = callPackage ../development/python-modules/pathtools { }; + + patsy = callPackage ../development/python-modules/patsy { }; + + 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 { }); + + 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 { }; + + 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 { }; + + 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 { }; + + pex = callPackage ../development/python-modules/pex { }; + + pexif = callPackage ../development/python-modules/pexif { }; + + pexpect = callPackage ../development/python-modules/pexpect { }; + + pg8000 = callPackage ../development/python-modules/pg8000 { }; + pg8000_1_12 = callPackage ../development/python-modules/pg8000/1_12.nix { }; + + 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 { }; + + phonenumbers = callPackage ../development/python-modules/phonenumbers { }; + + phonopy = callPackage ../development/python-modules/phonopy { }; + + phpserialize = callPackage ../development/python-modules/phpserialize { }; + + 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 { }; + + 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 = if isPy27 then + callPackage ../development/python-modules/pillow/6.nix { + inherit (pkgs) freetype libjpeg zlib libtiff libwebp tcl lcms2 tk; + inherit (pkgs.xorg) libX11; + } + else + callPackage ../development/python-modules/pillow { + inherit (pkgs) freetype libjpeg zlib libtiff libwebp tcl lcms2 tk; + inherit (pkgs.xorg) libX11; + }; + + pims = callPackage ../development/python-modules/pims { }; + + pint = callPackage ../development/python-modules/pint { }; + + pip = callPackage ../development/python-modules/pip { }; + + pipdate = callPackage ../development/python-modules/pipdate { }; + + pip-tools = callPackage ../development/python-modules/pip-tools { + git = pkgs.gitMinimal; + glibcLocales = pkgs.glibcLocales; + }; + + pipx = callPackage ../development/python-modules/pipx { }; + + pivy = callPackage ../development/python-modules/pivy { + inherit (pkgs.qt5) qtbase qmake; + inherit (pkgs.libsForQt5) soqt; + }; + + pkgconfig = callPackage ../development/python-modules/pkgconfig { inherit (pkgs) pkgconfig; }; + + pkginfo = callPackage ../development/python-modules/pkginfo { }; + + pkuseg = callPackage ../development/python-modules/pkuseg { }; + + python-csxcad = callPackage ../development/python-modules/python-csxcad { }; + + python-openems = callPackage ../development/python-modules/python-openems { }; + + 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 { }; + + 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 { }; + + pluginbase = callPackage ../development/python-modules/pluginbase { }; + + plumbum = callPackage ../development/python-modules/plumbum { }; + + ply = callPackage ../development/python-modules/ply { }; + + 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 { }; + + poezio = callPackage ../applications/networking/instant-messengers/poezio { inherit (pkgs) pkgconfig; }; + + polib = callPackage ../development/python-modules/polib { }; + + polyline = callPackage ../development/python-modules/polyline { }; + + pomegranate = callPackage ../development/python-modules/pomegranate { }; + + pony = callPackage ../development/python-modules/pony { }; + + ponywhoosh = callPackage ../development/python-modules/ponywhoosh { }; + + pooch = callPackage ../development/python-modules/pooch { }; + + poppler-qt5 = callPackage ../development/python-modules/poppler-qt5 { + inherit (pkgs.qt5) qtbase; + inherit (pkgs.libsForQt5) poppler; + inherit (pkgs) pkgconfig; + }; + + 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 = disabledIf (!isPy3k) (callPackage ../servers/mail/mailman/postorius.nix { }); + + potr = callPackage ../development/python-modules/potr { }; + + power = callPackage ../development/python-modules/power { }; + + powerline = callPackage ../development/python-modules/powerline { }; + + 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 { }; + + pq = callPackage ../development/python-modules/pq { }; + + prance = callPackage ../development/python-modules/prance { }; + + prawcore = callPackage ../development/python-modules/prawcore { }; + + praw = if isPy3k then + callPackage ../development/python-modules/praw { } + else + callPackage ../development/python-modules/praw/6.3.nix { }; + + precis-i18n = callPackage ../development/python-modules/precis-i18n { }; + + pre-commit = callPackage ../development/python-modules/pre-commit { }; + + 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 { }; + + priority = callPackage ../development/python-modules/priority { }; + + prison = callPackage ../development/python-modules/prison { }; + + privacyidea = callPackage ../development/python-modules/privacyidea { }; + privacyidea-ldap-proxy = callPackage ../development/python-modules/privacyidea/ldap-proxy.nix { }; + + proboscis = callPackage ../development/python-modules/proboscis { }; + + process-tests = callPackage ../development/python-modules/process-tests { }; + + proglog = callPackage ../development/python-modules/proglog { }; + + progressbar231 = callPackage ../development/python-modules/progressbar231 { }; + + 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 { }; + + promise = callPackage ../development/python-modules/promise { }; + + prompt_toolkit = let + filename = if isPy3k then + ../development/python-modules/prompt_toolkit + else + ../development/python-modules/prompt_toolkit/1.nix; + in callPackage filename { }; + + 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; + doCheck = + !isPy3k; # If a protobuf upgrade causes many Python packages to fail, please pin it here to the previous version. + protobuf = pkgs.protobuf; + }; + + prov = callPackage ../development/python-modules/prov { }; + + prox-tv = callPackage ../development/python-modules/prox-tv { }; + + psautohint = callPackage ../development/python-modules/psautohint { }; + + psd-tools = callPackage ../development/python-modules/psd-tools { }; + + psutil = callPackage ../development/python-modules/psutil { }; + + psycopg2 = callPackage ../development/python-modules/psycopg2 { }; + + ptable = callPackage ../development/python-modules/ptable { }; + + ptest = callPackage ../development/python-modules/ptest { }; + + ptpython = callPackage ../development/python-modules/ptpython { prompt_toolkit = self.prompt_toolkit; }; + + ptyprocess = callPackage ../development/python-modules/ptyprocess { }; + + publicsuffix2 = callPackage ../development/python-modules/publicsuffix2 { }; + + publicsuffix = callPackage ../development/python-modules/publicsuffix { }; + + pudb = callPackage ../development/python-modules/pudb { }; + + pulp = callPackage ../development/python-modules/pulp { }; + + pulsectl = callPackage ../development/python-modules/pulsectl { }; + + 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 { }; + + purl = callPackage ../development/python-modules/purl { }; + + pushbullet = callPackage ../development/python-modules/pushbullet { }; + + pushover-complete = callPackage ../development/python-modules/pushover-complete { }; + + pvlib = callPackage ../development/python-modules/pvlib { }; + + Pweave = callPackage ../development/python-modules/pweave { }; + + pwntools = callPackage ../development/python-modules/pwntools { debugger = pkgs.gdb; }; + + pxml = callPackage ../development/python-modules/pxml { }; + + 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 { }; + + pyairvisual = callPackage ../development/python-modules/pyairvisual { }; + + pyalgotrade = callPackage ../development/python-modules/pyalgotrade { }; + + pyamf = callPackage ../development/python-modules/pyamf { }; + + pyamg = callPackage ../development/python-modules/pyamg { }; + + pyaml = callPackage ../development/python-modules/pyaml { }; + + pyannotate = callPackage ../development/python-modules/pyannotate { }; + + pyarrow = callPackage ../development/python-modules/pyarrow { inherit (pkgs) arrow-cpp cmake pkgconfig; }; + + pyasn1 = callPackage ../development/python-modules/pyasn1 { }; + + pyasn1-modules = callPackage ../development/python-modules/pyasn1-modules { }; + + pyatmo = callPackage ../development/python-modules/pyatmo { }; + + pyatspi = callPackage ../development/python-modules/pyatspi { inherit (pkgs) pkgconfig; }; + + pyatv = callPackage ../development/python-modules/pyatv { }; + + pyaudio = callPackage ../development/python-modules/pyaudio { }; + + pyavm = callPackage ../development/python-modules/pyavm { }; + + pyaxmlparser = callPackage ../development/python-modules/pyaxmlparser { }; + + 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 { }; + + pyblake2 = callPackage ../development/python-modules/pyblake2 { }; + + pyblock = callPackage ../development/python-modules/pyblock { }; + + pyblosxom = callPackage ../development/python-modules/pyblosxom { }; + + 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) meson pkgconfig; }; + + pycallgraph = callPackage ../development/python-modules/pycallgraph { }; + + py = callPackage ../development/python-modules/py { }; + + pycangjie = disabledIf (!isPy3k) (callPackage ../development/python-modules/pycangjie { inherit (pkgs) pkgconfig; }); + + pycapnp = callPackage ../development/python-modules/pycapnp { }; + + pycaption = callPackage ../development/python-modules/pycaption { }; + + pycarddav = callPackage ../development/python-modules/pycarddav { }; + + pycares = callPackage ../development/python-modules/pycares { }; + + pycassa = callPackage ../development/python-modules/pycassa { }; + + pycategories = callPackage ../development/python-modules/pycategories { }; + + pycdio = callPackage ../development/python-modules/pycdio { }; + + pychart = callPackage ../development/python-modules/pychart { }; + + pychef = callPackage ../development/python-modules/pychef { }; + + PyChromecast = callPackage ../development/python-modules/pychromecast { }; + + pyclipper = callPackage ../development/python-modules/pyclipper { }; + + pycm = callPackage ../development/python-modules/pycm { }; + + pycodestyle = callPackage ../development/python-modules/pycodestyle { }; + + pycognito = callPackage ../development/python-modules/pycognito { }; + + pycoin = callPackage ../development/python-modules/pycoin { }; + + pycollada = callPackage ../development/python-modules/pycollada { }; + + 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-cpuinfo = callPackage ../development/python-modules/py-cpuinfo { }; + + pycrc = callPackage ../development/python-modules/pycrc { }; + + pycrypto = callPackage ../development/python-modules/pycrypto { }; + + pycryptodome = callPackage ../development/python-modules/pycryptodome { }; + + pycryptodomex = callPackage ../development/python-modules/pycryptodomex { }; + + pycryptopp = callPackage ../development/python-modules/pycryptopp { }; + + pyct = callPackage ../development/python-modules/pyct { }; + + pycuda = callPackage ../development/python-modules/pycuda { + cudatoolkit = pkgs.cudatoolkit; + inherit (pkgs.stdenv) mkDerivation; + }; + + pycups = callPackage ../development/python-modules/pycups { }; + + pycurl2 = callPackage ../development/python-modules/pycurl2 { }; + + pycurl = callPackage ../development/python-modules/pycurl { }; + + pydantic = callPackage ../development/python-modules/pydantic { }; + + pydbus = callPackage ../development/python-modules/pydbus { }; + + pydenticon = callPackage ../development/python-modules/pydenticon { }; + + pydicom = callPackage ../development/python-modules/pydicom { }; + + pydispatcher = callPackage ../development/python-modules/pydispatcher { }; + + pydns = let + py3 = callPackage ../development/python-modules/py3dns { }; + py2 = callPackage ../development/python-modules/pydns { }; + in if isPy3k then py3 else py2; + + pydocstyle = if isPy27 then + callPackage ../development/python-modules/pydocstyle/2.nix { } + else + callPackage ../development/python-modules/pydocstyle { }; + + pydocumentdb = callPackage ../development/python-modules/pydocumentdb { }; + + pydot = callPackage ../development/python-modules/pydot { inherit (pkgs) graphviz; }; + + pydotplus = callPackage ../development/python-modules/pydotplus { }; + + pydrive = callPackage ../development/python-modules/pydrive { }; + + pydsdl = callPackage ../development/python-modules/pydsdl { }; + + pydub = callPackage ../development/python-modules/pydub { }; + + pydy = callPackage ../development/python-modules/pydy { }; + + pyechonest = callPackage ../development/python-modules/pyechonest { }; + + pyelftools = callPackage ../development/python-modules/pyelftools { }; + + pyemd = callPackage ../development/python-modules/pyemd { }; + + pyenchant = callPackage ../development/python-modules/pyenchant { enchant2 = pkgs.enchant2; }; + + pyepsg = callPackage ../development/python-modules/pyepsg { }; + + pyexcel = callPackage ../development/python-modules/pyexcel { }; + + pyexcelerator = callPackage ../development/python-modules/pyexcelerator { }; + + pyexcel-io = callPackage ../development/python-modules/pyexcel-io { }; + + pyexcel-ods = callPackage ../development/python-modules/pyexcel-ods { }; + + pyexcel-xls = callPackage ../development/python-modules/pyexcel-xls { }; + + pyexiv2 = disabledIf isPy3k (toPythonModule (callPackage ../development/python-modules/pyexiv2 { })); + + pyext = callPackage ../development/python-modules/pyext { }; + + pyface = callPackage ../development/python-modules/pyface { }; + + pyfaidx = callPackage ../development/python-modules/pyfaidx { }; + + pyfakefs = callPackage ../development/python-modules/pyfakefs { }; + + pyfantom = callPackage ../development/python-modules/pyfantom { }; + + pyfcm = callPackage ../development/python-modules/pyfcm { }; + + pyfftw = callPackage ../development/python-modules/pyfftw { }; + + pyfiglet = callPackage ../development/python-modules/pyfiglet { }; + + pyflakes = callPackage ../development/python-modules/pyflakes { }; + + pyfma = callPackage ../development/python-modules/pyfma { }; + + pyfribidi = callPackage ../development/python-modules/pyfribidi { }; + + pyfritzhome = callPackage ../development/python-modules/pyfritzhome { }; + + pyftdi = callPackage ../development/python-modules/pyftdi { }; + + pyftgl = callPackage ../development/python-modules/pyftgl { }; + + pyftpdlib = callPackage ../development/python-modules/pyftpdlib { }; + + pyfttt = callPackage ../development/python-modules/pyfttt { }; + + pyfxa = callPackage ../development/python-modules/pyfxa { }; + + pygal = callPackage ../development/python-modules/pygal { }; + + pygame = callPackage ../development/python-modules/pygame { }; + + pygame_sdl2 = callPackage ../development/python-modules/pygame_sdl2 { }; + + pygbm = callPackage ../development/python-modules/pygbm { }; + + pygccxml = callPackage ../development/python-modules/pygccxml { }; + + pygdbmi = callPackage ../development/python-modules/pygdbmi { }; + + pygeoip = callPackage ../development/python-modules/pygeoip { }; + + pygit2 = callPackage ../development/python-modules/pygit2 { }; + + PyGithub = callPackage ../development/python-modules/pyGithub { }; + + pyglet = callPackage ../development/python-modules/pyglet { }; + + pygls = callPackage ../development/python-modules/pygls { }; + + pygments-better-html = callPackage ../development/python-modules/pygments-better-html { }; + + pygments = if isPy3k then + callPackage ../development/python-modules/Pygments { } + else + callPackage ../development/python-modules/Pygments/2_5.nix { }; + + pygments-markdown-lexer = callPackage ../development/python-modules/pygments-markdown-lexer { }; + + pygmo = callPackage ../development/python-modules/pygmo { }; + + pygobject2 = callPackage ../development/python-modules/pygobject { inherit (pkgs) pkgconfig; }; + + pygobject3 = callPackage ../development/python-modules/pygobject/3.nix { inherit (pkgs) meson pkgconfig; }; + + pygogo = callPackage ../development/python-modules/pygogo { }; + + pygpgme = callPackage ../development/python-modules/pygpgme { }; + + pygraphviz = callPackage ../development/python-modules/pygraphviz { + inherit (pkgs) graphviz pkgconfig; + }; # not the python package + + pygreat = callPackage ../development/python-modules/pygreat { }; + + pygrok = callPackage ../development/python-modules/pygrok { }; + + pygtail = callPackage ../development/python-modules/pygtail { }; + + pygtk = callPackage ../development/python-modules/pygtk { + inherit (pkgs) pkgconfig; + libglade = null; + }; + + pyGtkGlade = self.pygtk.override { libglade = pkgs.gnome2.libglade; }; + + pygtksourceview = callPackage ../development/python-modules/pygtksourceview { inherit (pkgs) pkgconfig; }; + + pyhamcrest = if isPy3k then + callPackage ../development/python-modules/pyhamcrest { } + else + callPackage ../development/python-modules/pyhamcrest/1.nix { }; + + pyhaversion = callPackage ../development/python-modules/pyhaversion { }; + + pyhcl = callPackage ../development/python-modules/pyhcl { }; + + pyhocon = callPackage ../development/python-modules/pyhocon { }; + + pyhomematic = callPackage ../development/python-modules/pyhomematic { }; + + pyhs100 = callPackage ../development/python-modules/pyhs100 { }; + + pyicloud = callPackage ../development/python-modules/pyicloud { }; + + PyICU = callPackage ../development/python-modules/pyicu { }; + + pyinotify = callPackage ../development/python-modules/pyinotify { }; + + pyinputevent = callPackage ../development/python-modules/pyinputevent { }; + + pyipp = callPackage ../development/python-modules/pyipp { }; + + pyjade = callPackage ../development/python-modules/pyjade { }; + + 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 { }; + + 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 { }; + + pykickstart = callPackage ../development/python-modules/pykickstart { }; + + pykka = callPackage ../development/python-modules/pykka { }; + + pykwalify = callPackage ../development/python-modules/pykwalify { }; + + pylama = callPackage ../development/python-modules/pylama { }; + + pylast = callPackage ../development/python-modules/pylast { }; + + pylatexenc = callPackage ../development/python-modules/pylatexenc { }; + + PyLD = callPackage ../development/python-modules/PyLD { }; + + pylev = callPackage ../development/python-modules/pylev { }; + + pylibacl = callPackage ../development/python-modules/pylibacl { }; + + pylibconfig2 = callPackage ../development/python-modules/pylibconfig2 { }; + + pylibftdi = callPackage ../development/python-modules/pylibftdi { inherit (pkgs) libusb1; }; + + pylibgen = throw "pylibgen is unmaintained upstreamed, and removed from nixpkgs"; # added 2020-06-20 + + pyliblo = callPackage ../development/python-modules/pyliblo { }; + + pylibmc = callPackage ../development/python-modules/pylibmc { }; + + 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 = if isPy3k then + callPackage ../development/python-modules/pylint { } + else + callPackage ../development/python-modules/pylint/1.9.nix { }; + + pylint-plugin-utils = callPackage ../development/python-modules/pylint-plugin-utils { }; + + 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-isort = callPackage ../development/python-modules/pyls-isort { }; + + pyls-mypy = callPackage ../development/python-modules/pyls-mypy { }; + + PyLTI = callPackage ../development/python-modules/pylti { }; + + pymacaroons = callPackage ../development/python-modules/pymacaroons { }; + + pymaging = callPackage ../development/python-modules/pymaging { }; + + pymaging_png = callPackage ../development/python-modules/pymaging_png { }; + + pymatgen = callPackage ../development/python-modules/pymatgen { }; + + pymatgen-lammps = callPackage ../development/python-modules/pymatgen-lammps { }; + + pymavlink = callPackage ../development/python-modules/pymavlink { }; + + pymbolic = callPackage ../development/python-modules/pymbolic { }; + + pymc3 = callPackage ../development/python-modules/pymc3 { }; + + pymediainfo = callPackage ../development/python-modules/pymediainfo { }; + + pymeeus = callPackage ../development/python-modules/pymeeus { }; + + pymemoize = callPackage ../development/python-modules/pymemoize { }; + + pyment = callPackage ../development/python-modules/pyment { }; + + pymetar = callPackage ../development/python-modules/pymetar { }; + + pymetno = callPackage ../development/python-modules/pymetno { }; + + pymongo = callPackage ../development/python-modules/pymongo { }; + + pympler = callPackage ../development/python-modules/pympler { }; + + pymsgbox = callPackage ../development/python-modules/pymsgbox { }; + + pymssql = throw "pymssql has been abandoned upstream."; # added 2020-05-04 + + py-multibase = callPackage ../development/python-modules/py-multibase { }; + + py-multihash = callPackage ../development/python-modules/py-multihash { }; + + pymumble = callPackage ../development/python-modules/pymumble { }; + + pymupdf = callPackage ../development/python-modules/pymupdf { }; + + PyMVGLive = callPackage ../development/python-modules/pymvglive { }; + + 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 { }; + + 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 { }; + + pyobjc = if stdenv.isDarwin then + callPackage ../development/python-modules/pyobjc { } + else + throw "pyobjc can only be built on Mac OS"; + + pyocr = callPackage ../development/python-modules/pyocr { + tesseract = pkgs.tesseract4; + }; + + pyodbc = callPackage ../development/python-modules/pyodbc { }; + + pyogg = callPackage ../development/python-modules/pyogg { }; + + pyomo = callPackage ../development/python-modules/pyomo { }; + + pyopencl = callPackage ../development/python-modules/pyopencl { }; + + pyopengl = callPackage ../development/python-modules/pyopengl { }; + + pyopenssl = callPackage ../development/python-modules/pyopenssl { }; + + pyosmium = callPackage ../development/python-modules/pyosmium { }; + + 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 { }; + + pypcap = callPackage ../development/python-modules/pypcap { }; + + pypdf2 = callPackage ../development/python-modules/pypdf2 { }; + + pyPdf = callPackage ../development/python-modules/pypdf { }; + + 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 { }; + + pyplatec = callPackage ../development/python-modules/pyplatec { }; + + pypoppler = callPackage ../development/python-modules/pypoppler { }; + + pyprind = callPackage ../development/python-modules/pyprind { }; + + pyprof2calltree = callPackage ../development/python-modules/pyprof2calltree { }; + + pyproj = callPackage ../development/python-modules/pyproj { }; + + pyptlib = callPackage ../development/python-modules/pyptlib { }; + + pypubsub = callPackage ../development/python-modules/pypubsub { }; + + pyqrcode = callPackage ../development/python-modules/pyqrcode { }; + + pyqt4 = callPackage ../development/python-modules/pyqt/4.x.nix { inherit (pkgs) pkgconfig; }; + + pyqt5 = pkgs.libsForQt5.callPackage ../development/python-modules/pyqt/5.x.nix { pythonPackages = self; }; + + 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 { }; + + pyrabbit2 = callPackage ../development/python-modules/pyrabbit2 { }; + + pyrad = callPackage ../development/python-modules/pyrad { }; + + 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; + }); + + pyregion = callPackage ../development/python-modules/pyregion { }; + + pyreport = callPackage ../development/python-modules/pyreport { }; + + pyres = callPackage ../development/python-modules/pyres { }; + + 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-ppl = callPackage ../development/python-modules/pyro-ppl { }; + + pyroute2 = callPackage ../development/python-modules/pyroute2 { }; + + pyrr = callPackage ../development/python-modules/pyrr { }; + + pyrsistent = callPackage ../development/python-modules/pyrsistent { }; + + PyRSS2Gen = callPackage ../development/python-modules/pyrss2gen { }; + + pyrtlsdr = callPackage ../development/python-modules/pyrtlsdr { }; + + pysam = callPackage ../development/python-modules/pysam { }; + + pysaml2 = callPackage ../development/python-modules/pysaml2 { inherit (pkgs) xmlsec; }; + + pysc2 = callPackage ../development/python-modules/pysc2 { }; + + pyscard = callPackage ../development/python-modules/pyscard { inherit (pkgs.darwin.apple_sdk.frameworks) PCSC; }; + + pyschedule = callPackage ../development/python-modules/pyschedule { }; + + pyscreenshot = callPackage ../development/python-modules/pyscreenshot { }; + + py_scrypt = callPackage ../development/python-modules/py_scrypt { }; + + pyscrypt = callPackage ../development/python-modules/pyscrypt { }; + + pyscss = callPackage ../development/python-modules/pyscss { }; + + pysdl2 = callPackage ../development/python-modules/pysdl2 { }; + + 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 { }; + + pysigset = callPackage ../development/python-modules/pysigset { }; + + pysingleton = callPackage ../development/python-modules/pysingleton { }; + + pyslurm = callPackage ../development/python-modules/pyslurm { slurm = pkgs.slurm; }; + + pysmb = callPackage ../development/python-modules/pysmb { }; + + pysmbc = callPackage ../development/python-modules/pysmbc { inherit (pkgs) pkgconfig; }; + + pysmf = callPackage ../development/python-modules/pysmf { }; + + pysmi = callPackage ../development/python-modules/pysmi { }; + + 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 { }; + + 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 { }; + + pyspf = callPackage ../development/python-modules/pyspf { }; + + pyspice = callPackage ../development/python-modules/pyspice { }; + + pyspinel = callPackage ../development/python-modules/pyspinel { }; + + pyspotify = callPackage ../development/python-modules/pyspotify { }; + + pyspread = callPackage ../development/python-modules/pyspread { }; + + pysptk = callPackage ../development/python-modules/pysptk { }; + + pysqlite = callPackage ../development/python-modules/pysqlite { }; + + 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 { systemd = pkgs.systemd; }; + + PyStemmer = callPackage ../development/python-modules/pystemmer { }; + + pystray = callPackage ../development/python-modules/pystray { }; + + py_stringmatching = callPackage ../development/python-modules/py_stringmatching { }; + + pystringtemplate = callPackage ../development/python-modules/stringtemplate { }; + + pysvn = callPackage ../development/python-modules/pysvn { }; + + pytabix = callPackage ../development/python-modules/pytabix { }; + + pytado = callPackage ../development/python-modules/pytado { }; + + pytaglib = callPackage ../development/python-modules/pytaglib { }; + + pyte = callPackage ../development/python-modules/pyte { }; + + pytelegrambotapi = callPackage ../development/python-modules/pyTelegramBotAPI { }; + + pytesseract = callPackage ../development/python-modules/pytesseract { }; + + # pytest>=6 is too new for most packages + pytest = if isPy3k then self.pytest_5 else self.pytest_4; + + pytest_4 = callPackage + ../development/python-modules/pytest/4.nix { # hypothesis tests require pytest that causes dependency cycle + hypothesis = self.hypothesis.override { doCheck = false; }; + }; + + pytest_5 = callPackage + ../development/python-modules/pytest/5.nix { # hypothesis tests require pytest that causes dependency cycle + hypothesis = self.hypothesis.override { doCheck = false; }; + }; + + pytest_6 = + callPackage ../development/python-modules/pytest { # hypothesis tests require pytest that causes dependency cycle + hypothesis = self.hypothesis.override { doCheck = false; }; + }; + + 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 { }; + + pytestcache = callPackage ../development/python-modules/pytestcache { }; + + pytest-catchlog = callPackage ../development/python-modules/pytest-catchlog { }; + + pytest-check = callPackage ../development/python-modules/pytest-check { }; + + pytest-click = callPackage ../development/python-modules/pytest-click { }; + + pytestcov = 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-env = callPackage ../development/python-modules/pytest-env { }; + + 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 { }; + + pyopengl-accelerate = callPackage ../development/python-modules/pyopengl-accelerate { }; + + pytest-html = callPackage ../development/python-modules/pytest-html { }; + + pytest-httpbin = callPackage ../development/python-modules/pytest-httpbin { }; + + pytest-isort = callPackage ../development/python-modules/pytest-isort { }; + + pytest-lazy-fixture = callPackage ../development/python-modules/pytest-lazy-fixture { }; + + pytest-localserver = callPackage ../development/python-modules/pytest-localserver { }; + + pytest-metadata = callPackage ../development/python-modules/pytest-metadata { }; + + pytest-mock = if isPy3k then + callPackage ../development/python-modules/pytest-mock { } + else + callPackage ../development/python-modules/pytest-mock/2.nix { }; + + pytest-mpl = callPackage ../development/python-modules/pytest-mpl { }; + + pytest-mypy = callPackage ../development/python-modules/pytest-mypy { }; + + pytest-openfiles = callPackage ../development/python-modules/pytest-openfiles { }; + + pytest-ordering = callPackage ../development/python-modules/pytest-ordering { }; + + pytest-pep257 = callPackage ../development/python-modules/pytest-pep257 { }; + + pytestpep8 = callPackage ../development/python-modules/pytest-pep8 { }; + + pytest-pylint = callPackage ../development/python-modules/pytest-pylint { }; + + pytest-pythonpath = callPackage ../development/python-modules/pytest-pythonpath { }; + + pytest-qt = callPackage ../development/python-modules/pytest-qt { }; + + pytestquickcheck = callPackage ../development/python-modules/pytest-quickcheck { }; + + pytest-raisesregexp = callPackage ../development/python-modules/pytest-raisesregexp { }; + + pytest-randomly = callPackage ../development/python-modules/pytest-randomly { }; + + pytest-random-order = callPackage ../development/python-modules/pytest-random-order { }; + + 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 { }; + + pytestrunner = callPackage ../development/python-modules/pytestrunner { }; + + pytest-sanic = callPackage ../development/python-modules/pytest-sanic { }; + + pytest-server-fixtures = callPackage ../development/python-modules/pytest-server-fixtures { }; + + pytest-services = callPackage ../development/python-modules/pytest-services { }; + + pytest-shutil = callPackage ../development/python-modules/pytest-shutil { }; + + pytest-socket = callPackage ../development/python-modules/pytest-socket { }; + + pytest-subtesthack = callPackage ../development/python-modules/pytest-subtesthack { }; + + 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-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_1 = callPackage ../development/python-modules/pytest-xdist { }; + + pytest_xdist_2 = callPackage ../development/python-modules/pytest-xdist/2.nix { }; + + pytest_xdist = self.pytest_xdist_1; + + pytest-xprocess = callPackage ../development/python-modules/pytest-xprocess { }; + + pytest-xvfb = callPackage ../development/python-modules/pytest-xvfb { }; + + python2-pythondialog = callPackage ../development/python-modules/python2-pythondialog { }; + + python3-openid = callPackage ../development/python-modules/python3-openid { }; + + 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-binance = callPackage ../development/python-modules/python-binance { }; + + python-constraint = callPackage ../development/python-modules/python-constraint { }; + + python-ctags3 = callPackage ../development/python-modules/python-ctags3 { }; + + python-daemon = callPackage ../development/python-modules/python-daemon { }; + + python-dateutil = callPackage ../development/python-modules/dateutil { }; + # Alias that we should deprecate + dateutil = self.python-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 { }; + + pythonefl = callPackage ../development/python-modules/python-efl { inherit (pkgs) pkgconfig; }; + + python-engineio = callPackage ../development/python-modules/python-engineio { }; + + python-etcd = callPackage ../development/python-modules/python-etcd { }; + + 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-gitlab = callPackage ../development/python-modules/python-gitlab { }; + + python-gnupg = callPackage ../development/python-modules/python-gnupg { }; + + python-hosts = callPackage ../development/python-modules/python-hosts { }; + + python-igraph = callPackage ../development/python-modules/python-igraph { + pkgconfig = pkgs.pkgconfig; + igraph = pkgs.igraph; + }; + + pythonIRClib = callPackage ../development/python-modules/pythonirclib { }; + + pythonix = callPackage ../development/python-modules/pythonix { inherit (pkgs) meson pkgconfig; }; + + 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-logstash = callPackage ../development/python-modules/python-logstash { }; + + python-ly = callPackage ../development/python-modules/python-ly { }; + + python-lz4 = callPackage ../development/python-modules/python-lz4 { }; + + 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 { }; + + pythonmagick = callPackage ../development/python-modules/pythonmagick { }; + + python-mapnik = callPackage ../development/python-modules/python-mapnik { }; + + 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-nest = callPackage ../development/python-modules/python-nest { }; + + pythonnet = callPackage + ../development/python-modules/pythonnet { # `mono >= 4.6` required to prevent crashes encountered with earlier versions. + mono = pkgs.mono4; + inherit (pkgs) pkgconfig; + }; + + python-nomad = callPackage ../development/python-modules/python-nomad { }; + + python-oauth2 = callPackage ../development/python-modules/python-oauth2 { }; + + pythonocc-core = + toPythonModule (callPackage ../development/python-modules/pythonocc-core { inherit (pkgs.xorg) libX11; }); + + python-olm = callPackage ../development/python-modules/python-olm { }; + + python_openzwave = callPackage ../development/python-modules/python_openzwave { inherit (pkgs) pkgconfig; }; + + python-otr = callPackage ../development/python-modules/python-otr { }; + + 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-pipedrive = callPackage ../development/python-modules/python-pipedrive { }; + + 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-rtmidi = callPackage ../development/python-modules/python-rtmidi { }; + + python-simple-hipchat = callPackage ../development/python-modules/python-simple-hipchat { }; + python_simple_hipchat = self.python-simple-hipchat; + + python-slugify = callPackage ../development/python-modules/python-slugify { }; + + 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-sql = callPackage ../development/python-modules/python-sql { }; + + python_statsd = callPackage ../development/python-modules/python_statsd { }; + + python-stdnum = callPackage ../development/python-modules/python-stdnum { }; + + python-sybase = callPackage ../development/python-modules/sybase { }; + + python-telegram-bot = callPackage ../development/python-modules/python-telegram-bot { }; + + python-toolbox = callPackage ../development/python-modules/python-toolbox { }; + + 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-vipaccess = callPackage ../development/python-modules/python-vipaccess { }; + + python-vlc = callPackage ../development/python-modules/python-vlc { }; + + python-wifi = callPackage ../development/python-modules/python-wifi { }; + + python-xmp-toolkit = callPackage ../development/python-modules/python-xmp-toolkit { }; + + pytimeparse = callPackage ../development/python-modules/pytimeparse { }; + + pytmx = callPackage ../development/python-modules/pytmx { }; + + pytoml = callPackage ../development/python-modules/pytoml { }; + + 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 { + inherit (pkgs.linuxPackages) nvidia_x11; + }; + + pytorch-lightning = callPackage ../development/python-modules/pytorch-lightning { }; + + pytorch-metric-learning = callPackage ../development/python-modules/pytorch-metric-learning { }; + + pytorchWithCuda = self.pytorch.override { cudaSupport = true; }; + + pytorchWithoutCuda = self.pytorch.override { cudaSupport = false; }; + + pytrends = callPackage ../development/python-modules/pytrends { }; + + pytricia = callPackage ../development/python-modules/pytricia { }; + + pytun = callPackage ../development/python-modules/pytun { }; + + pytz = callPackage ../development/python-modules/pytz { }; + + 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 { }; + + pyusb = callPackage ../development/python-modules/pyusb { libusb1 = pkgs.libusb1; }; + + pyutil = callPackage ../development/python-modules/pyutil { }; + + 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 { }; + + pyviz-comms = callPackage ../development/python-modules/pyviz-comms { }; + + pyvips = callPackage ../development/python-modules/pyvips { + inherit (pkgs) pkg-config vips glib; + }; + + pyvmomi = callPackage ../development/python-modules/pyvmomi { }; + + pyvoro = callPackage ../development/python-modules/pyvoro { }; + + pywal = callPackage ../development/python-modules/pywal { }; + + pywatchman = callPackage ../development/python-modules/pywatchman { }; + + pywavelets = callPackage ../development/python-modules/pywavelets { }; + + # We need "normal" libxml2 and not the python package by the same name. + pywbem = callPackage ../development/python-modules/pywbem { libxml2 = pkgs.libxml2; }; + + PyWebDAV = callPackage ../development/python-modules/pywebdav { }; + + pywebpush = callPackage ../development/python-modules/pywebpush { }; + + pywebview = callPackage ../development/python-modules/pywebview { }; + + pywick = callPackage ../development/python-modules/pywick { }; + + pywinrm = callPackage ../development/python-modules/pywinrm { }; + + pyxattr = let + pyxattr' = callPackage ../development/python-modules/pyxattr { }; + pyxattr_2 = pyxattr'.overridePythonAttrs (oldAttrs: rec { + version = "0.6.1"; + src = oldAttrs.src.override { + inherit version; + sha256 = "b525843f6b51036198b3b87c4773a5093d6dec57d60c18a1f269dd7059aa16e3"; + }; + }); + in if isPy3k then pyxattr' else pyxattr_2; + + pyx = callPackage ../development/python-modules/pyx { }; + + pyxdg = callPackage ../development/python-modules/pyxdg { }; + + pyxl3 = callPackage ../development/python-modules/pyxl3 { }; + + pyxml = disabledIf isPy3k (callPackage ../development/python-modules/pyxml { }); + + pyxnat = callPackage ../development/python-modules/pyxnat { }; + + pyyaml = callPackage ../development/python-modules/pyyaml { }; + + pyzmq = callPackage ../development/python-modules/pyzmq { }; + + pyzufall = callPackage ../development/python-modules/pyzufall { }; + + qasm2image = callPackage ../development/python-modules/qasm2image { }; + + qdarkstyle = callPackage ../development/python-modules/qdarkstyle { }; + + qds_sdk = callPackage ../development/python-modules/qds_sdk { }; + + qimage2ndarray = callPackage ../development/python-modules/qimage2ndarray { }; + + qiskit-aer = callPackage ../development/python-modules/qiskit-aer { }; + + qiskit-aqua = callPackage ../development/python-modules/qiskit-aqua { }; + + qiskit = callPackage ../development/python-modules/qiskit { }; + + qiskit-ibmq-provider = callPackage ../development/python-modules/qiskit-ibmq-provider { }; + + qiskit-ignis = callPackage ../development/python-modules/qiskit-ignis { }; + + qiskit-terra = callPackage ../development/python-modules/qiskit-terra { }; + + qpid-python = callPackage ../development/python-modules/qpid-python { }; + + qrcode = callPackage ../development/python-modules/qrcode { }; + + qreactor = callPackage ../development/python-modules/qreactor { }; + + qscintilla-qt4 = callPackage ../development/python-modules/qscintilla { }; + + qscintilla-qt5 = pkgs.libsForQt5.callPackage ../development/python-modules/qscintilla-qt5 { pythonPackages = self; }; + + qscintilla = self.qscintilla-qt4; + + qserve = callPackage ../development/python-modules/qserve { }; + + qtawesome = callPackage ../development/python-modules/qtawesome { }; + + qtconsole = callPackage ../development/python-modules/qtconsole { }; + + qtpy = callPackage ../development/python-modules/qtpy { }; + + quamash = callPackage ../development/python-modules/quamash { }; + + quandl = callPackage ../development/python-modules/quandl { }; + + Quandl = + callPackage ../development/python-modules/quandl { }; # alias for an older package which did not support Python 3 + + quantities = callPackage ../development/python-modules/quantities { }; + + querystring_parser = callPackage ../development/python-modules/querystring-parser { }; + + queuelib = callPackage ../development/python-modules/queuelib { }; + + r2pipe = callPackage ../development/python-modules/r2pipe { }; + + rabbitpy = callPackage ../development/python-modules/rabbitpy { }; + + radicale_infcloud = callPackage ../development/python-modules/radicale_infcloud { }; + + radio_beam = callPackage ../development/python-modules/radio_beam { }; + + radish-bdd = callPackage ../development/python-modules/radish-bdd { }; + + rainbowstream = callPackage ../development/python-modules/rainbowstream { }; + + ramlfications = callPackage ../development/python-modules/ramlfications { }; + + random2 = callPackage ../development/python-modules/random2 { }; + + rarfile = callPackage ../development/python-modules/rarfile { inherit (pkgs) libarchive; }; + + rasterio = callPackage ../development/python-modules/rasterio { gdal = pkgs.gdal_2; }; # gdal 3.0 not supported yet + + 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 { }; + + rdflib-jsonld = callPackage ../development/python-modules/rdflib-jsonld { }; + + readchar = callPackage ../development/python-modules/readchar { }; + + 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 { }; + + recommonmark = callPackage ../development/python-modules/recommonmark { }; + + redis = callPackage ../development/python-modules/redis { }; + + rednose = callPackage ../development/python-modules/rednose { }; + + regex = callPackage ../development/python-modules/regex { }; + + regional = callPackage ../development/python-modules/regional { }; + + reikna = callPackage ../development/python-modules/reikna { }; + + relatorio = callPackage ../development/python-modules/relatorio { }; + + remotecv = callPackage ../development/python-modules/remotecv { }; + + rencode = callPackage ../development/python-modules/rencode { }; + + repeated_test = callPackage ../development/python-modules/repeated_test { }; + + 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-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-toolbelt = callPackage ../development/python-modules/requests-toolbelt { }; + + requests_toolbelt = self.requests-toolbelt; # Old attr, 2017-09-26 + + requests-unixsocket = callPackage ../development/python-modules/requests-unixsocket { }; + + requirements-detector = callPackage ../development/python-modules/requirements-detector { }; + + resampy = callPackage ../development/python-modules/resampy { }; + + responses = callPackage ../development/python-modules/responses { }; + + 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 = disabledIf (pythonOlder "3.5") (toPythonModule (callPackage ../development/python-modules/retworkx { })); + + rfc3986 = callPackage ../development/python-modules/rfc3986 { }; + + rfc3987 = callPackage ../development/python-modules/rfc3987 { }; + + rfc6555 = callPackage ../development/python-modules/rfc6555 { }; + + rfc7464 = callPackage ../development/python-modules/rfc7464 { }; + + rhpl = disabledIf isPy3k (callPackage ../development/python-modules/rhpl { }); + + rich = callPackage ../development/python-modules/rich { }; + + rig = callPackage ../development/python-modules/rig { }; + + ripser = callPackage ../development/python-modules/ripser { }; + + rising = callPackage ../development/python-modules/rising { }; + + rivet = disabledIf (!isPy3k) (toPythonModule (pkgs.rivet.override { python3 = python; })); + + rjsmin = callPackage ../development/python-modules/rjsmin { }; + + rl-coach = callPackage ../development/python-modules/rl-coach { }; + + rlp = callPackage ../development/python-modules/rlp { }; + + rnc2rng = callPackage ../development/python-modules/rnc2rng { }; + + robomachine = callPackage ../development/python-modules/robomachine { }; + + roboschool = callPackage ../development/python-modules/roboschool { + inherit (pkgs) pkgconfig; # use normal pkgconfig, not the python package + inherit (pkgs.qt5) qtbase; + }; + + 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-ride = callPackage ../development/python-modules/robotframework-ride { }; + + 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 { }; + + roman = callPackage ../development/python-modules/roman { }; + + rope = callPackage ../development/python-modules/rope { }; + + ROPGadget = callPackage ../development/python-modules/ROPGadget { }; + + ropper = callPackage ../development/python-modules/ropper { }; + + rotate-backups = callPackage ../tools/backup/rotate-backups { }; + + routes = callPackage ../development/python-modules/routes { }; + + rpdb = callPackage ../development/python-modules/rpdb { }; + + rpkg = callPackage ../development/python-modules/rpkg { }; + + rply = callPackage ../development/python-modules/rply { }; + + rpm = disabledIf (!isPy3k) (toPythonModule (pkgs.rpm.override { inherit python; })); + + rpmfluff = callPackage ../development/python-modules/rpmfluff { }; + + rpy2 = if isPy3k then + callPackage ../development/python-modules/rpy2 { } + else + callPackage ../development/python-modules/rpy2/2.nix { }; + + rpyc = callPackage ../development/python-modules/rpyc { }; + + rq = callPackage ../development/python-modules/rq { }; + + rsa = if isPy3k then + callPackage ../development/python-modules/rsa { } + else + callPackage ../development/python-modules/rsa/4_0.nix { }; + + rtmidi-python = callPackage ../development/python-modules/rtmidi-python { }; + + Rtree = callPackage ../development/python-modules/Rtree { inherit (pkgs) libspatialindex; }; + + rtslib = callPackage ../development/python-modules/rtslib { }; + + ruamel_base = callPackage ../development/python-modules/ruamel_base { }; + + ruamel_ordereddict = callPackage ../development/python-modules/ruamel_ordereddict { }; + + 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 { }; + + runsnakerun = callPackage ../development/python-modules/runsnakerun { }; + + runway-python = callPackage ../development/python-modules/runway-python { }; + + rx = callPackage ../development/python-modules/rx { }; + + rxv = callPackage ../development/python-modules/rxv { }; + + 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 { }; + + sacremoses = callPackage ../development/python-modules/sacremoses { }; + + safe = callPackage ../development/python-modules/safe { }; + + safety = callPackage ../development/python-modules/safety { }; + + salmon-mail = callPackage ../development/python-modules/salmon-mail { }; + + sampledata = callPackage ../development/python-modules/sampledata { }; + + samplerate = callPackage ../development/python-modules/samplerate { }; + + samsungctl = callPackage ../development/python-modules/samsungctl { }; + + samsungtvws = callPackage ../development/python-modules/samsungtvws { }; + + sandboxlib = callPackage ../development/python-modules/sandboxlib { }; + + sanic-auth = callPackage ../development/python-modules/sanic-auth { }; + + sanic = callPackage ../development/python-modules/sanic { }; + + sapi-python-client = callPackage ../development/python-modules/sapi-python-client { }; + + sarge = callPackage ../development/python-modules/sarge { }; + + sasmodels = callPackage ../development/python-modules/sasmodels { }; + + scales = callPackage ../development/python-modules/scales { }; + + scandir = callPackage ../development/python-modules/scandir { }; + + scapy = callPackage ../development/python-modules/scapy { }; + + schedule = callPackage ../development/python-modules/schedule { }; + + schema = callPackage ../development/python-modules/schema { }; + + scikit-bio = callPackage ../development/python-modules/scikit-bio { }; + + scikit-build = callPackage ../development/python-modules/scikit-build { }; + + scikit-fmm = callPackage ../development/python-modules/scikit-fmm { }; + + scikitimage = callPackage ../development/python-modules/scikit-image { }; + + scikitlearn = let args = { inherit (pkgs) gfortran glibcLocales; }; + in if isPy3k then + callPackage ../development/python-modules/scikitlearn args + else + callPackage ../development/python-modules/scikitlearn/0.20.nix args; + + 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_1_3 = self.scipy.overridePythonAttrs (oldAttrs: rec { + version = "1.3.3"; + src = oldAttrs.src.override { + inherit version; + sha256 = "02iqb7ws7fw5fd1a83hx705pzrw1imj7z0bphjsl4bfvw254xgv4"; + }; + doCheck = false; + disabled = !isPy3k; + }); + + scipy = let + scipy_ = callPackage ../development/python-modules/scipy { }; + scipy_1_2 = scipy_.overridePythonAttrs (oldAttrs: rec { + version = "1.2.2"; + src = oldAttrs.src.override { + inherit version; + sha256 = "a4331e0b8dab1ff75d2c67b5158a8bb9a83c799d7140094dda936d876c7cfbb1"; + }; + }); + in if pythonOlder "3.5" then scipy_1_2 else scipy_; + + scour = callPackage ../development/python-modules/scour { }; + + scp = callPackage ../development/python-modules/scp { }; + + 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 { }; + + scripttest = callPackage ../development/python-modules/scripttest { }; + + scs = callPackage ../development/python-modules/scs { scs = pkgs.scs; }; + + sdnotify = callPackage ../development/python-modules/sdnotify { }; + + seaborn = if isPy3k then + callPackage ../development/python-modules/seaborn { } + else + callPackage ../development/python-modules/seaborn/0.9.1.nix { }; + + seabreeze = callPackage ../development/python-modules/seabreeze { }; + + secp256k1 = callPackage ../development/python-modules/secp256k1 { inherit (pkgs) secp256k1 pkgconfig; }; + + secretstorage = if isPy3k then + callPackage ../development/python-modules/secretstorage { } + else + callPackage ../development/python-modules/secretstorage/2.nix { }; + + secure = callPackage ../development/python-modules/secure { }; + + seekpath = callPackage ../development/python-modules/seekpath { }; + + segments = callPackage ../development/python-modules/segments { }; + + selectors2 = callPackage ../development/python-modules/selectors2 { }; + + selectors34 = callPackage ../development/python-modules/selectors34 { }; + + selenium = callPackage ../development/python-modules/selenium { }; + + semantic = callPackage ../development/python-modules/semantic { }; + + semantic-version = callPackage ../development/python-modules/semantic-version { }; + + semver = callPackage ../development/python-modules/semver { }; + + send2trash = callPackage ../development/python-modules/send2trash { }; + + sentencepiece = callPackage ../development/python-modules/sentencepiece { inherit (pkgs) sentencepiece pkgconfig; }; + + sentinel = callPackage ../development/python-modules/sentinel { }; + + sentry-sdk = callPackage ../development/python-modules/sentry-sdk { }; + + sepaxml = callPackage ../development/python-modules/sepaxml { }; + + seqdiag = callPackage ../development/python-modules/seqdiag { }; + + sequoia = disabledIf (isPyPy || !isPy3k) (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 { }; + + serversyncstorage = callPackage ../development/python-modules/serversyncstorage { }; + + service-identity = callPackage ../development/python-modules/service_identity { }; + + setproctitle = callPackage ../development/python-modules/setproctitle { }; + + setuptoolsDarcs = callPackage ../development/python-modules/setuptoolsdarcs { }; + + setuptools-git = callPackage ../development/python-modules/setuptools-git { }; + + setuptools-lint = callPackage ../development/python-modules/setuptools-lint { }; + + 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 { }; + + shamir-mnemonic = callPackage ../development/python-modules/shamir-mnemonic { }; + + shapely = callPackage ../development/python-modules/shapely { }; + + sharedmem = callPackage ../development/python-modules/sharedmem { }; + + sh = callPackage ../development/python-modules/sh { }; + + 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 { }; + + shutilwhich = callPackage ../development/python-modules/shutilwhich { }; + + sievelib = callPackage ../development/python-modules/sievelib { }; + + signedjson = callPackage ../development/python-modules/signedjson { }; + + sigtools = callPackage ../development/python-modules/sigtools { }; + + simanneal = callPackage ../development/python-modules/simanneal { }; + + simpleai = callPackage ../development/python-modules/simpleai { }; + + 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 { }; + + simplejson = callPackage ../development/python-modules/simplejson { }; + + simplekml = callPackage ../development/python-modules/simplekml { }; + + simpleparse = callPackage ../development/python-modules/simpleparse { }; + + simple-salesforce = callPackage ../development/python-modules/simple-salesforce { }; + + simple-websocket-server = callPackage ../development/python-modules/simple-websocket-server { }; + + simpy = callPackage ../development/python-modules/simpy { }; + + singledispatch = callPackage ../development/python-modules/singledispatch { }; + + sip = callPackage ../development/python-modules/sip { }; + + sipsimple = callPackage ../development/python-modules/sipsimple { }; + + 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 { }; + + skorch = callPackage ../development/python-modules/skorch { }; + + slackclient = callPackage ../development/python-modules/slackclient { }; + + sleekxmpp = callPackage ../development/python-modules/sleekxmpp { }; + + slicedimage = callPackage ../development/python-modules/slicedimage { }; + + slicerator = callPackage ../development/python-modules/slicerator { }; + + slimit = callPackage ../development/python-modules/slimit { }; + + slither-analyzer = callPackage ../development/python-modules/slither-analyzer { }; + + slixmpp = callPackage ../development/python-modules/slixmpp { inherit (pkgs) gnupg; }; + + slob = callPackage ../development/python-modules/slob { }; + + slowaes = callPackage ../development/python-modules/slowaes { }; + + sly = callPackage ../development/python-modules/sly { }; + + smartdc = callPackage ../development/python-modules/smartdc { }; + + smart_open = callPackage ../development/python-modules/smart_open { }; + + smartypants = callPackage ../development/python-modules/smartypants { }; + + smmap2 = throw "smmap2 has been deprecated, use smmap instead."; # added 2020-03-14 + + smmap = callPackage ../development/python-modules/smmap { }; + + smpplib = callPackage ../development/python-modules/smpplib { }; + + smugline = callPackage ../development/python-modules/smugline { }; + + smugpy = callPackage ../development/python-modules/smugpy { }; + + snakebite = callPackage ../development/python-modules/snakebite { }; + + snakeviz = callPackage ../development/python-modules/snakeviz { }; + + snapcast = callPackage ../development/python-modules/snapcast { }; + + snapperGUI = callPackage ../development/python-modules/snappergui { }; + + 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 { }; + + snug = callPackage ../development/python-modules/snug { }; + + 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; + }); + + 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 { }; + + solo-python = disabledIf (!pythonAtLeast "3.6") (callPackage ../development/python-modules/solo-python { }); + + somajo = callPackage ../development/python-modules/somajo { }; + + 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 = if isPy3k then + callPackage ../development/python-modules/soupsieve { } + else + callPackage ../development/python-modules/soupsieve/1.nix { }; + + spacy = callPackage ../development/python-modules/spacy { }; + + spacy_models = callPackage ../development/python-modules/spacy/models.nix { }; + + spake2 = callPackage ../development/python-modules/spake2 { }; + + spambayes = callPackage ../development/python-modules/spambayes { }; + + spark_parser = callPackage ../development/python-modules/spark_parser { }; + + SPARQLWrapper = callPackage ../development/python-modules/sparqlwrapper { }; + + sparse = callPackage ../development/python-modules/sparse { }; + + speaklater = callPackage ../development/python-modules/speaklater { }; + + 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 { }; + + sphinxcontrib-applehelp = callPackage ../development/python-modules/sphinxcontrib-applehelp { }; + + 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-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_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-qthelp = callPackage ../development/python-modules/sphinxcontrib-qthelp { }; + + sphinxcontrib-serializinghtml = callPackage ../development/python-modules/sphinxcontrib-serializinghtml { }; + + 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 = if isPy3k then + callPackage ../development/python-modules/sphinxcontrib-websupport { } + else + callPackage ../development/python-modules/sphinxcontrib-websupport/1_1.nix { }; + + sphinx = if isPy3k then + callPackage ../development/python-modules/sphinx { } + else + callPackage ../development/python-modules/sphinx/2.nix { }; + + sphinx-argparse = callPackage ../development/python-modules/sphinx-argparse { }; + + sphinx-jinja = callPackage ../development/python-modules/sphinx-jinja { }; + + 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-testing = callPackage ../development/python-modules/sphinx-testing { }; + + spidev = callPackage ../development/python-modules/spidev { }; + + splinter = callPackage ../development/python-modules/splinter { }; + + spotipy = callPackage ../development/python-modules/spotipy { }; + + spyder = callPackage ../development/python-modules/spyder { }; + spyder_3 = callPackage ../development/python-modules/spyder/3.nix { }; + + spyder-kernels = callPackage ../development/python-modules/spyder-kernels { }; + spyder-kernels_0_5 = callPackage ../development/python-modules/spyder-kernels/0.x.nix { }; + + 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_migrate = callPackage ../development/python-modules/sqlalchemy-migrate { }; + + sqlalchemy-utils = callPackage ../development/python-modules/sqlalchemy-utils { }; + + sqlite3dbm = callPackage ../development/python-modules/sqlite3dbm { }; + + sqlitedict = callPackage ../development/python-modules/sqlitedict { }; + + sqlmap = callPackage ../development/python-modules/sqlmap { }; + + sqlobject = callPackage ../development/python-modules/sqlobject { }; + + sqlparse = callPackage ../development/python-modules/sqlparse { }; + + sqlsoup = callPackage ../development/python-modules/sqlsoup { }; + + squaremap = callPackage ../development/python-modules/squaremap { }; + + srp = callPackage ../development/python-modules/srp { }; + + srptools = callPackage ../development/python-modules/srptools { }; + + srsly = callPackage ../development/python-modules/srsly { }; + + srvlookup = callPackage ../development/python-modules/srvlookup { }; + + ssdeep = callPackage ../development/python-modules/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 { }; + + starlette = callPackage ../development/python-modules/starlette { }; + + staticjinja = callPackage ../development/python-modules/staticjinja { }; + + statistics = callPackage ../development/python-modules/statistics { }; + + statsd = callPackage ../development/python-modules/statsd { }; + + statsmodels = callPackage ../development/python-modules/statsmodels { }; + + stem = callPackage ../development/python-modules/stem { }; + + stevedore = callPackage ../development/python-modules/stevedore { }; + + stm32loader = callPackage ../development/python-modules/stm32loader { }; + + stompclient = callPackage ../development/python-modules/stompclient { }; + + strategies = callPackage ../development/python-modules/strategies { }; + + stravalib = callPackage ../development/python-modules/stravalib { }; + + streamz = callPackage ../development/python-modules/streamz { }; + + 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 { }; + + 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 { }; + + subdownloader = callPackage ../development/python-modules/subdownloader { }; + + subliminal = callPackage ../development/python-modules/subliminal { }; + + subprocess32 = callPackage ../development/python-modules/subprocess32 { }; + + subunit = callPackage ../development/python-modules/subunit { inherit (pkgs) subunit pkg-config cppunit check; }; + + suds = callPackage ../development/python-modules/suds { }; + + suds-jurko = callPackage ../development/python-modules/suds-jurko { }; + + sumo = callPackage ../development/python-modules/sumo { }; + + sunpy = callPackage ../development/python-modules/sunpy { }; + + supervise_api = callPackage ../development/python-modules/supervise_api { }; + + supervisor = callPackage ../development/python-modules/supervisor { }; + + sure = callPackage ../development/python-modules/sure { }; + + suseapi = callPackage ../development/python-modules/suseapi { }; + + 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 { }; + + swspotify = callPackage ../development/python-modules/swspotify { }; + + sybil = callPackage ../development/python-modules/sybil { }; + + symengine = callPackage ../development/python-modules/symengine { symengine = pkgs.symengine; }; + + sympy = if isPy3k then + callPackage ../development/python-modules/sympy { } + else + callPackage ../development/python-modules/sympy/1_5.nix { }; + + systemd = callPackage ../development/python-modules/systemd { inherit (pkgs) pkgconfig systemd; }; + + sysv_ipc = callPackage ../development/python-modules/sysv_ipc { }; + + tableaudocumentapi = callPackage ../development/python-modules/tableaudocumentapi { }; + + tables = if isPy3k then + callPackage ../development/python-modules/tables { hdf5 = pkgs.hdf5.override { zlib = pkgs.zlib; }; } + else + callPackage ../development/python-modules/tables/3.5.nix { hdf5 = pkgs.hdf5.override { zlib = pkgs.zlib; }; }; + + tablib = callPackage ../development/python-modules/tablib { }; + + tabulate = callPackage ../development/python-modules/tabulate { }; + + tadasets = callPackage ../development/python-modules/tadasets { }; + + tag-expressions = callPackage ../development/python-modules/tag-expressions { }; + + tarman = callPackage ../development/python-modules/tarman { }; + + 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 { }; + + telegram = callPackage ../development/python-modules/telegram { }; + + telethon = callPackage ../development/python-modules/telethon { }; + + telethon-session-sqlalchemy = callPackage ../development/python-modules/telethon-session-sqlalchemy { }; + + tempita = callPackage ../development/python-modules/tempita { }; + + tempora = callPackage ../development/python-modules/tempora { }; + + tenacity = callPackage ../development/python-modules/tenacity { }; + + tensorboardx = callPackage ../development/python-modules/tensorboardx { }; + + tensorflow-bin_1 = callPackage ../development/python-modules/tensorflow/1/bin.nix { + cudaSupport = pkgs.config.cudaSupport or false; + inherit (pkgs.linuxPackages) nvidia_x11; + cudatoolkit = pkgs.cudatoolkit_10; + cudnn = pkgs.cudnn_cudatoolkit_10; + }; + + tensorflow-bin_2 = callPackage ../development/python-modules/tensorflow/2/bin.nix { + cudaSupport = pkgs.config.cudaSupport or false; + inherit (pkgs.linuxPackages) nvidia_x11; + cudatoolkit = pkgs.cudatoolkit_10; + cudnn = pkgs.cudnn_cudatoolkit_10; + }; + + tensorflow-bin = self.tensorflow-bin_1; + + tensorflow-build_1 = callPackage ../development/python-modules/tensorflow/1 { + cudaSupport = pkgs.config.cudaSupport or false; + inherit (pkgs.linuxPackages) nvidia_x11; + cudatoolkit = pkgs.cudatoolkit_10; + cudnn = pkgs.cudnn_cudatoolkit_10; + nccl = pkgs.nccl_cudatoolkit_10; + openssl = pkgs.openssl_1_1; + inherit (pkgs.darwin.apple_sdk.frameworks) Foundation Security; + }; + + tensorflow-build_2 = callPackage ../development/python-modules/tensorflow/2 { + cudaSupport = pkgs.config.cudaSupport or false; + cudatoolkit = pkgs.cudatoolkit_11; + cudnn = pkgs.cudnn_cudatoolkit_11; + nccl = pkgs.nccl_cudatoolkit_11; + openssl = pkgs.openssl_1_1; + inherit (pkgs.darwin.apple_sdk.frameworks) Foundation Security; + }; + + tensorflow-build = self.tensorflow-build_1; + + tensorflow-estimator_1 = callPackage ../development/python-modules/tensorflow-estimator/1 { }; + + tensorflow-estimator_2 = callPackage ../development/python-modules/tensorflow-estimator/2 { }; + + tensorflow-estimator = self.tensorflow-estimator_1; + + tensorflow-probability = callPackage ../development/python-modules/tensorflow-probability { }; + + tensorflow = self.tensorflow_1; + tensorflow_1 = self.tensorflow-build_1; + tensorflow_2 = self.tensorflow-build_2; + + tensorflow-tensorboard_1 = callPackage ../development/python-modules/tensorflow-tensorboard/1 { }; + + tensorflow-tensorboard_2 = callPackage ../development/python-modules/tensorflow-tensorboard/2 { }; + + tensorflow-tensorboard = self.tensorflow-tensorboard_1; + + tensorflowWithCuda = self.tensorflow.override { cudaSupport = true; }; + + tensorflowWithoutCuda = self.tensorflow.override { cudaSupport = false; }; + + tensorly = callPackage ../development/python-modules/tensorly { }; + + termcolor = callPackage ../development/python-modules/termcolor { }; + + terminado = callPackage ../development/python-modules/terminado { }; + + terminaltables = callPackage ../development/python-modules/terminaltables { }; + + termstyle = callPackage ../development/python-modules/termstyle { }; + + tess = callPackage ../development/python-modules/tess { }; + + tesserocr = callPackage ../development/python-modules/tesserocr { }; + + testfixtures = callPackage ../development/python-modules/testfixtures { }; + + textfsm = callPackage ../development/python-modules/textfsm { }; + + 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 { }; + + 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 { }; + + Theano = callPackage ../development/python-modules/Theano rec { + cudaSupport = pkgs.config.cudaSupport or false; + cudnnSupport = cudaSupport; + inherit (pkgs.linuxPackages) nvidia_x11; + }; + + 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 { }; + + threadpool = callPackage ../development/python-modules/threadpool { }; + + threadpoolctl = callPackage ../development/python-modules/threadpoolctl { }; + + thrift = callPackage ../development/python-modules/thrift { }; + + thumbor = callPackage ../development/python-modules/thumbor { }; + + 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 { }; + + tiledb = callPackage ../development/python-modules/tiledb { inherit (pkgs) tiledb; }; + + tilestache = callPackage ../development/python-modules/tilestache { }; + + timelib = callPackage ../development/python-modules/timelib { }; + + timeout-decorator = callPackage ../development/python-modules/timeout-decorator { }; + + timezonefinder = callPackage ../development/python-modules/timezonefinder { }; + + tinycss2 = callPackage ../development/python-modules/tinycss2 { }; + + tinycss = callPackage ../development/python-modules/tinycss { }; + + tinydb = callPackage ../development/python-modules/tinydb { }; + + tiros = callPackage ../development/python-modules/tiros { }; + + 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 { }; + + tmdb3 = callPackage ../development/python-modules/tmdb3 { }; + + todoist = callPackage ../development/python-modules/todoist { }; + + toggl-cli = callPackage ../development/python-modules/toggl-cli { }; + + tokenizers = disabledIf (!isPy3k) (toPythonModule (callPackage ../development/python-modules/tokenizers { })); + + tokenlib = callPackage ../development/python-modules/tokenlib { }; + + tokenserver = callPackage ../development/python-modules/tokenserver { }; + + toml = callPackage ../development/python-modules/toml { }; + + tomlkit = callPackage ../development/python-modules/tomlkit { }; + + toolz = callPackage ../development/python-modules/toolz { }; + + toposort = callPackage ../development/python-modules/toposort { }; + + topydo = throw "python3Packages.topydo was moved to topydo"; # 2017-09-22 + + torchgpipe = callPackage ../development/python-modules/torchgpipe { }; + + torchvision = callPackage ../development/python-modules/torchvision { }; + + tornado = if isPy3k then + callPackage ../development/python-modules/tornado { } + else + callPackage ../development/python-modules/tornado/5.nix { }; + + # Used by circus and grab-site, 2020-08-29 + tornado_4 = callPackage ../development/python-modules/tornado/4.nix { }; + + # Used by luigi, 2020-08-29 + tornado_5 = callPackage ../development/python-modules/tornado/5.nix { }; + + towncrier = callPackage ../development/python-modules/towncrier { inherit (pkgs) git; }; + + tox = callPackage ../development/python-modules/tox { }; + + 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 { }; + + translationstring = callPackage ../development/python-modules/translationstring { }; + + transmissionrpc = callPackage ../development/python-modules/transmissionrpc { }; + + 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 { }; + + trollius = callPackage ../development/python-modules/trollius { }; + + trueskill = callPackage ../development/python-modules/trueskill { }; + + trustme = callPackage ../development/python-modules/trustme { }; + + trytond = callPackage ../development/python-modules/trytond { }; + + ttystatus = callPackage ../development/python-modules/ttystatus { }; + + tunigo = callPackage ../development/python-modules/tunigo { }; + + TurboCheetah = callPackage ../development/python-modules/TurboCheetah { }; + + tubeup = callPackage ../development/python-modules/tubeup { }; + + tvdb_api = callPackage ../development/python-modules/tvdb_api { }; + + tvnamer = callPackage ../development/python-modules/tvnamer { }; + + tweepy = callPackage ../development/python-modules/tweepy { }; + + twiggy = callPackage ../development/python-modules/twiggy { }; + + twilio = callPackage ../development/python-modules/twilio { }; + + twill = callPackage ../development/python-modules/twill { }; + + twine = callPackage ../development/python-modules/twine { }; + + twisted = callPackage ../development/python-modules/twisted { }; + + 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 { }; + + 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 { }; + + txrequests = callPackage ../development/python-modules/txrequests { }; + + txtorcon = callPackage ../development/python-modules/txtorcon { }; + + typed-ast = callPackage ../development/python-modules/typed-ast { }; + + typeguard = callPackage ../development/python-modules/typeguard { }; + + typer = callPackage ../development/python-modules/typer { }; + + typesentry = callPackage ../development/python-modules/typesentry { }; + + typesystem = callPackage ../development/python-modules/typesystem { }; + + typing = callPackage ../development/python-modules/typing { }; + + typing-extensions = callPackage ../development/python-modules/typing-extensions { }; + + typing-inspect = callPackage ../development/python-modules/typing-inspect { }; + + typogrify = callPackage ../development/python-modules/typogrify { }; + + tzlocal = callPackage ../development/python-modules/tzlocal { }; + + uamqp = + callPackage ../development/python-modules/uamqp { inherit (pkgs.darwin.apple_sdk.frameworks) CFNetwork Security; }; + + ua-parser = callPackage ../development/python-modules/ua-parser { }; + + uarray = callPackage ../development/python-modules/uarray { }; + + ueberzug = callPackage ../development/python-modules/ueberzug { inherit (pkgs.xorg) libX11 libXext; }; + + ufonormalizer = callPackage ../development/python-modules/ufonormalizer { }; + + ufoprocessor = callPackage ../development/python-modules/ufoprocessor { }; + + ujson = if isPy27 then + callPackage ../development/python-modules/ujson/2.nix { } + else + callPackage ../development/python-modules/ujson { }; + + ukpostcodeparser = callPackage ../development/python-modules/ukpostcodeparser { }; + + umalqurra = callPackage ../development/python-modules/umalqurra { }; + + umap-learn = callPackage ../development/python-modules/umap-learn { }; + + umemcache = callPackage ../development/python-modules/umemcache { }; + + u-msgpack-python = callPackage ../development/python-modules/u-msgpack-python { }; + + 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 { }; + + unidecode = callPackage ../development/python-modules/unidecode { }; + + unidiff = callPackage ../development/python-modules/unidiff { }; + + unifi = callPackage ../development/python-modules/unifi { }; + + 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 { }; + + unrpa = callPackage ../development/python-modules/unrpa { }; + + untangle = callPackage ../development/python-modules/untangle { }; + + upass = callPackage ../development/python-modules/upass { }; + + update_checker = callPackage ../development/python-modules/update_checker { }; + + update-copyright = callPackage ../development/python-modules/update-copyright { }; + + update-dotdee = callPackage ../development/python-modules/update-dotdee { }; + + uproot = callPackage ../development/python-modules/uproot { }; + + uproot-methods = callPackage ../development/python-modules/uproot-methods { }; + + uptime = callPackage ../development/python-modules/uptime { }; + + uranium = callPackage ../development/python-modules/uranium { }; + + uritemplate = callPackage ../development/python-modules/uritemplate { }; + + uritools = callPackage ../development/python-modules/uritools { }; + + urlgrabber = callPackage ../development/python-modules/urlgrabber { }; + + urllib3 = callPackage ../development/python-modules/urllib3 { }; + + 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 { }; + + 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 { + inherit (pkgs.darwin.apple_sdk.frameworks) CoreServices Security; + inherit (pkgs) pkg-config openssl rustPlatform; + }; + + vdirsyncerStable = callPackage ../development/python-modules/vdirsyncer/stable.nix { }; + + vega = callPackage ../development/python-modules/vega { }; + + vega_datasets = callPackage ../development/python-modules/vega_datasets { }; + + venusian = callPackage ../development/python-modules/venusian { }; + + verboselogs = callPackage ../development/python-modules/verboselogs { }; + + versioneer = callPackage ../development/python-modules/versioneer { }; + + versiontools = callPackage ../development/python-modules/versiontools { }; + + vertica-python = callPackage ../development/python-modules/vertica-python { }; + + veryprettytable = callPackage ../development/python-modules/veryprettytable { }; + + vidstab = callPackage ../development/python-modules/vidstab { }; + + viewstate = callPackage ../development/python-modules/viewstate { }; + + vine = callPackage ../development/python-modules/vine { }; + + virtkey = callPackage ../development/python-modules/virtkey { inherit (pkgs) pkgconfig; }; + + 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 { }; + + vmprof = callPackage ../development/python-modules/vmprof { }; + + vobject = callPackage ../development/python-modules/vobject { }; + + voluptuous = callPackage ../development/python-modules/voluptuous { }; + + voluptuous-serialize = callPackage ../development/python-modules/voluptuous-serialize { }; + + vowpalwabbit = callPackage ../development/python-modules/vowpalwabbit { }; + + vsts = callPackage ../development/python-modules/vsts { }; + + vsts-cd-manager = callPackage ../development/python-modules/vsts-cd-manager { }; + + vtk = toPythonModule (pkgs.vtk_7.override { + inherit (self) python; + enablePython = true; + }); + + vultr = callPackage ../development/python-modules/vultr { }; + + vulture = callPackage ../development/python-modules/vulture { }; + + vxi11 = callPackage ../development/python-modules/vxi11 { }; + + 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 { }; + + Wand = callPackage ../development/python-modules/Wand { }; + + warlock = callPackage ../development/python-modules/warlock { }; + + warrant = callPackage ../development/python-modules/warrant { }; + + wasabi = callPackage ../development/python-modules/wasabi { }; + + watchdog = callPackage ../development/python-modules/watchdog { }; + + WazeRouteCalculator = callPackage ../development/python-modules/WazeRouteCalculator { }; + + wcwidth = callPackage ../development/python-modules/wcwidth { }; + + weasyprint = callPackage ../development/python-modules/weasyprint { }; + + webapp2 = callPackage ../development/python-modules/webapp2 { }; + + webassets = callPackage ../development/python-modules/webassets { }; + + web = callPackage ../development/python-modules/web { }; + + webcolors = callPackage ../development/python-modules/webcolors { }; + + webdavclient3 = callPackage ../development/python-modules/webdavclient3 { }; + + webencodings = callPackage ../development/python-modules/webencodings { }; + + 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 { }; + + webtest = callPackage ../development/python-modules/webtest { }; + + 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 { }; + + whichcraft = callPackage ../development/python-modules/whichcraft { }; + + whisper = callPackage ../development/python-modules/whisper { }; + + whitenoise = callPackage ../development/python-modules/whitenoise { }; + + whoosh = callPackage ../development/python-modules/whoosh { }; + + widgetsnbextension = callPackage ../development/python-modules/widgetsnbextension { }; + + willow = callPackage ../development/python-modules/willow { }; + + wled = callPackage ../development/python-modules/wled { }; + + word2vec = callPackage ../development/python-modules/word2vec { }; + + wordcloud = callPackage ../development/python-modules/wordcloud { }; + + wordfreq = callPackage ../development/python-modules/wordfreq { }; + + worldengine = callPackage ../development/python-modules/worldengine { }; + + wptserve = callPackage ../development/python-modules/wptserve { }; + + wrapt = callPackage ../development/python-modules/wrapt { }; + + wrf-python = callPackage ../development/python-modules/wrf-python { }; + + ws4py = callPackage ../development/python-modules/ws4py { }; + + wsgiproxy2 = callPackage ../development/python-modules/wsgiproxy2 { }; + + WSGIProxy = callPackage ../development/python-modules/wsgiproxy { }; + + wsgitools = callPackage ../development/python-modules/wsgitools { }; + + WSME = callPackage ../development/python-modules/WSME { }; + + wsproto = if (pythonAtLeast "3.6") then + callPackage ../development/python-modules/wsproto { } + else + callPackage ../development/python-modules/wsproto/0.14.nix { }; + + wtforms = callPackage ../development/python-modules/wtforms { }; + + wtf-peewee = callPackage ../development/python-modules/wtf-peewee { }; + + wurlitzer = callPackage ../development/python-modules/wurlitzer { }; + + wxPython30 = callPackage ../development/python-modules/wxPython/3.0.nix { + wxGTK = pkgs.wxGTK30; + inherit (pkgs) pkgconfig; + }; + + wxPython_4_0 = callPackage ../development/python-modules/wxPython/4.0.nix { + inherit (pkgs) pkgconfig; + wxGTK = pkgs.wxGTK30.override { + withGtk2 = false; + withWebKit = true; + }; + }; + + wxPython = self.wxPython30; + + x11_hash = callPackage ../development/python-modules/x11_hash { }; + + x256 = callPackage ../development/python-modules/x256 { }; + + xapian = callPackage ../development/python-modules/xapian { xapian = 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 { }; + + xcaplib = callPackage ../development/python-modules/xcaplib { }; + + xcffib = callPackage ../development/python-modules/xcffib { }; + + xdg = callPackage ../development/python-modules/xdg { }; + + xdis = callPackage ../development/python-modules/xdis { }; + + xdot = callPackage ../development/python-modules/xdot { }; + + xenomapper = disabledIf (!isPy3k) (callPackage ../applications/science/biology/xenomapper { }); + + xgboost = callPackage ../development/python-modules/xgboost { xgboost = pkgs.xgboost; }; + + xhtml2pdf = callPackage ../development/python-modules/xhtml2pdf { }; + + xkcdpass = callPackage ../development/python-modules/xkcdpass { }; + + 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 { }; + + xml2rfc = callPackage ../development/python-modules/xml2rfc { }; + + xmlschema = callPackage ../development/python-modules/xmlschema { }; + + xmltodict = callPackage ../development/python-modules/xmltodict { }; + + xmodem = callPackage ../development/python-modules/xmodem { }; + + xmpppy = callPackage ../development/python-modules/xmpppy { }; + + xnd = callPackage ../development/python-modules/xnd { }; + + 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 { }; + + xvfbwrapper = callPackage ../development/python-modules/xvfbwrapper { inherit (pkgs.xorg) xorgserver; }; + + xxhash = callPackage ../development/python-modules/xxhash { }; + + yahooweather = callPackage ../development/python-modules/yahooweather { }; + + yamllint = callPackage ../development/python-modules/yamllint { }; + + yamlordereddictloader = callPackage ../development/python-modules/yamlordereddictloader { }; + + yanc = callPackage ../development/python-modules/yanc { }; + + yapf = callPackage ../development/python-modules/yapf { }; + + yappi = callPackage ../development/python-modules/yappi { }; + + Yapsy = callPackage ../development/python-modules/yapsy { }; + + yarg = callPackage ../development/python-modules/yarg { }; + + yarl = callPackage ../development/python-modules/yarl { }; + + yattag = callPackage ../development/python-modules/yattag { }; + + ydiff = callPackage ../development/python-modules/ydiff { }; + + yeelight = callPackage ../development/python-modules/yeelight { }; + + yenc = callPackage ../development/python-modules/yenc { }; + + yfinance = callPackage ../development/python-modules/yfinance { }; + + yoda = toPythonModule (pkgs.yoda.override { inherit python; }); + + youtube-dl = callPackage ../tools/misc/youtube-dl { }; + + youtube-dl-light = callPackage ../tools/misc/youtube-dl { + ffmpegSupport = false; + phantomjsSupport = false; + }; + + yowsup = callPackage ../development/python-modules/yowsup { }; + + yq = callPackage ../development/python-modules/yq { }; + + yt = callPackage ../development/python-modules/yt { }; + + 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 { }; + + zbase32 = callPackage ../development/python-modules/zbase32 { }; + + zc_buildout221 = callPackage ../development/python-modules/buildout { }; + + zc_buildout = self.zc_buildout221; # A patched version of buildout, useful for buildout based development on Nix + + zc_buildout_nix = callPackage ../development/python-modules/buildout-nix { }; + + zc_lockfile = callPackage ../development/python-modules/zc_lockfile { }; + + zconfig = callPackage ../development/python-modules/zconfig { }; + + zdaemon = callPackage ../development/python-modules/zdaemon { }; + + zeep = callPackage ../development/python-modules/zeep { }; + + zeitgeist = disabledIf isPy3k (toPythonModule (pkgs.zeitgeist.override { python2Packages = self; })).py; + + zerobin = callPackage ../development/python-modules/zerobin { }; + + 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 { }; + + 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 { }; + + zimports = callPackage ../development/python-modules/zimports { }; + + zipfile36 = callPackage ../development/python-modules/zipfile36 { }; + + zipp = if pythonOlder "3.6" then + callPackage ../development/python-modules/zipp/1.nix { } + else + callPackage ../development/python-modules/zipp { }; + + zipstream = callPackage ../development/python-modules/zipstream { }; + + 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 { }; + + zstandard = callPackage ../development/python-modules/zstandard { }; + + zstd = callPackage ../development/python-modules/zstd { inherit (pkgs) zstd pkgconfig; }; + + zulip = callPackage ../development/python-modules/zulip { }; + + zxcvbn = callPackage ../development/python-modules/zxcvbn { }; + +}); + +in fix' (extends overrides packages) diff --git a/infra/libkookie/nixpkgs/pkgs/top-level/release-alternatives.nix b/infra/libkookie/nixpkgs/pkgs/top-level/release-alternatives.nix new file mode 100644 index 000000000000..7479377bd302 --- /dev/null +++ b/infra/libkookie/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" "sundials_2" "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/infra/libkookie/nixpkgs/pkgs/top-level/release-cross.nix b/infra/libkookie/nixpkgs/pkgs/top-level/release-cross.nix new file mode 100644 index 000000000000..df476db0a7a0 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/top-level/release-cross.nix @@ -0,0 +1,178 @@ +/* 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 the fuloong */ + fuloongminipc = mapTestOnCross lib.systems.examples.fuloongminipc 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; + + aarch64-musl = mapTestOnCross lib.systems.examples.aarch64-multiplatform-musl linuxCommon; + + x86_64-musl = mapTestOnCross lib.systems.examples.musl64 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; + avr = mapTestOnCross lib.systems.examples.avr embedded; + arm-embedded = mapTestOnCross lib.systems.examples.arm-embedded embedded; + powerpc-embedded = mapTestOnCross lib.systems.examples.ppc-embedded embedded; + aarch64-embedded = mapTestOnCross lib.systems.examples.aarch64-embedded embedded; + i686-embedded = mapTestOnCross lib.systems.examples.i686-embedded embedded; + x86_64-embedded = mapTestOnCross lib.systems.examples.x86_64-embedded embedded; + + # 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/infra/libkookie/nixpkgs/pkgs/top-level/release-lib.nix b/infra/libkookie/nixpkgs/pkgs/top-level/release-lib.nix new file mode 100644 index 000000000000..1e33c7b0585b --- /dev/null +++ b/infra/libkookie/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_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 == "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: + let res = builtins.tryEval ( + 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 + []); + in if res.success then res.value else [] + ); + + + /* Common platform groups on which to test packages. */ + inherit (platforms) unix linux darwin cygwin all mesaPlatforms; + +} diff --git a/infra/libkookie/nixpkgs/pkgs/top-level/release-python.nix b/infra/libkookie/nixpkgs/pkgs/top-level/release-python.nix new file mode 100644 index 000000000000..485410356048 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/top-level/release-python.nix @@ -0,0 +1,26 @@ +/* + test for example like this + $ hydra-eval-jobs pkgs/top-level/release-python.nix +*/ + +{ # The platforms for which we build Nixpkgs. + supportedSystems ? [ "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 [] + ); +in (mapTestOn (packagePython pkgs)) diff --git a/infra/libkookie/nixpkgs/pkgs/top-level/release-small.nix b/infra/libkookie/nixpkgs/pkgs/top-level/release-small.nix new file mode 100644 index 000000000000..41aa86a8c463 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/top-level/release-small.nix @@ -0,0 +1,178 @@ +/* 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; + 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; + classpath = linux; + cmake = all; + coreutils = all; + cpio = all; + cron = linux; + cups = linux; + dbus = linux; + dhcp = linux; + diffutils = all; + e2fsprogs = linux; + emacs = linux; + enscript = all; + file = all; + findutils = all; + flex = all; + gcc = all; + gcj = linux; + 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; + gogoclient = linux; + grub = linux; + grub2 = linux; + gsl = 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; + jnettop = linux; + jwhois = linux; + kbd = linux; + keen4 = ["i686-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; + lzma = linux; + man = linux; + man-pages = linux; + mc = all; + mcabber = linux; + mcron = linux; + mdadm = linux; + mesa = mesaPlatforms; + midori = linux; + mingetty = linux; + mk = linux; + mktemp = all; + mono = linux; + monotone = linux; + mpg321 = 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; + par2cmdline = all; + pciutils = linux; + pdf2xml = all; + perl = all; + pkgconfig = all; + pmccabe = linux; + procps = linux; + python = unix; # Cygwin builds fail + readline = all; + rlwrap = all; + rpm = linux; + rpcbind = linux; + rsync = linux; + screen = linux ++ darwin; + scrot = linux; + sdparm = linux; + sharutils = all; + sloccount = unix; # Cygwin builds fail + smartmontools = all; + sqlite = unix; # Cygwin builds fail + squid = linux; + ssmtp = linux; + stdenv = all; + strace = linux; + su = linux; + sudo = linux; + sysklogd = linux; + syslinux = ["i686-linux"]; + sysvinit = linux; + sysvtools = linux; + tcl = linux; + tcpdump = linux; + texinfo = all; + time = linux; + tinycc = linux; + udev = linux; + unzip = all; + usbutils = linux; + utillinux = linux; + utillinuxMinimal = linux; + w3m = all; + webkitgtk = linux; + wget = all; + which = all; + wicd = linux; + wireshark = linux; + wirelesstools = linux; + wpa_supplicant = linux; + xfsprogs = linux; + xkeyboard_config = linux; + zile = linux; + zip = all; + +} )) diff --git a/infra/libkookie/nixpkgs/pkgs/top-level/release.nix b/infra/libkookie/nixpkgs/pkgs/top-level/release.nix new file mode 100644 index 000000000000..5fc6e91b3118 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/top-level/release.nix @@ -0,0 +1,205 @@ +/* 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 = builtins.elem "x86_64-darwin" systemsWithAnySupport; + + jobs = + { tarball = import ./make-tarball.nix { inherit pkgs nixpkgs officialRelease; }; + + 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 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.python.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.manual + jobs.lib-tests + jobs.pkgs-lib-tests + jobs.stdenv.x86_64-linux + jobs.linux.x86_64-linux + jobs.pandoc.x86_64-linux + jobs.python.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.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 [ + jobs.stdenv.x86_64-darwin + jobs.python.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-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; + }; + }; + + } // (mapTestOn ((packagePlatforms pkgs) // { + haskell.compiler = packagePlatforms pkgs.haskell.compiler; + haskellPackages = packagePlatforms pkgs.haskellPackages; + idrisPackages = packagePlatforms pkgs.idrisPackages; + agdaPackages = packagePlatforms pkgs.agdaPackages; + + 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/infra/libkookie/nixpkgs/pkgs/top-level/ruby-packages.nix b/infra/libkookie/nixpkgs/pkgs/top-level/ruby-packages.nix new file mode 100644 index 000000000000..ef82be30b620 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/top-level/ruby-packages.nix @@ -0,0 +1,2646 @@ +{ + actionmailer = { + dependencies = ["actionpack" "actionview" "activejob" "mail" "rails-dom-testing"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "18wwlj4f7jffv3vxm80d2z36nwza95l5xfcqc401hvvrls4xzhsy"; + type = "gem"; + }; + version = "4.2.11.1"; + }; + actionpack = { + dependencies = ["actionview" "activesupport" "rack" "rack-test" "rails-dom-testing" "rails-html-sanitizer"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0rmldsk3a4lwxk0lrp6x1nz1v1r2xmbm3300l4ghgfygv3grdwjh"; + type = "gem"; + }; + version = "4.2.11.1"; + }; + actionview = { + dependencies = ["activesupport" "builder" "erubis" "rails-dom-testing" "rails-html-sanitizer"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0x7vjn8q6blzyf7j3kwg0ciy7vnfh28bjdkd1mp9k4ghp9jn0g9p"; + type = "gem"; + }; + version = "4.2.11.1"; + }; + activejob = { + dependencies = ["activesupport" "globalid"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0jy1c1r6syjqpa0sh9f1p4iaxzvp6qg4n6zs774j9z27q7h407mj"; + type = "gem"; + }; + version = "4.2.11.1"; + }; + activemodel = { + dependencies = ["activesupport" "builder"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1c1x0rd6wnk1f0gsmxs6x3gx7yf6fs9qqkdv7r4hlbcdd849in33"; + type = "gem"; + }; + version = "4.2.11.1"; + }; + activerecord = { + dependencies = ["activemodel" "activesupport" "arel"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "07ixiwi0zzs9skqarvpfamsnay7npfswymrn28ngxaf8hi279q5p"; + type = "gem"; + }; + version = "4.2.11.1"; + }; + activesupport = { + dependencies = ["i18n" "minitest" "thread_safe" "tzinfo"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1vbq7a805bfvyik2q3kl9s3r418f5qzvysqbz2cwy4hr7m2q4ir6"; + type = "gem"; + }; + version = "4.2.11.1"; + }; + addressable = { + dependencies = ["public_suffix"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1fvchp2rhp2rmigx7qglf69xvjqvzq7x0g49naliw29r2bz656sy"; + type = "gem"; + }; + version = "2.7.0"; + }; + algoliasearch = { + dependencies = ["httpclient" "json"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1ayg8j3819ay2d8618jv32ca16fh8qsgjsiq9j32yd016c170nkj"; + type = "gem"; + }; + version = "1.27.1"; + }; + arel = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0nfcrdiys6q6ylxiblky9jyssrw2xj96fmxmal7f4f0jj3417vj4"; + type = "gem"; + }; + version = "6.0.4"; + }; + ast = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "184ssy3w93nkajlz2c70ifm79jp3j737294kbc5fjw69v1w0n9x7"; + type = "gem"; + }; + version = "2.4.0"; + }; + atk = { + dependencies = ["glib2"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0a8q9a1f6x4gy55p8cf52a22bnpjgn18ad9n959x0f4gybbhs948"; + type = "gem"; + }; + version = "3.4.1"; + }; + 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 = "14arh1ixfsd6j5md0agyzvksm5svfkvchb90fp32nn7y3avcmc2h"; + type = "gem"; + }; + version = "1.8.0"; + }; + bacon = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1f06gdj77bmwzc1k5iragl1595hbn67yc7sqvs56ca8plrr2vmai"; + type = "gem"; + }; + version = "1.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 = "1mmkls9n56l4gx2k0dnyianwz36z2zgpxli5bpsbr7jbw7hn2x6j"; + type = "gem"; + }; + version = "11.0.1"; + }; + cairo = { + dependencies = ["native-package-installer" "pkg-config"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0yvv2lcbsybzbw1nrmfivmln23da4rndrs3av6ymjh0x3ww5h7p8"; + type = "gem"; + }; + version = "1.16.4"; + }; + cairo-gobject = { + dependencies = ["cairo" "glib2"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0gkxdfslcvrwrs48giilji3bgxd5bwijwq33p9h00r10jzfg2028"; + type = "gem"; + }; + version = "3.4.1"; + }; + camping = { + dependencies = ["mab" "rack"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1q2a5x97pgnld0b8yziblp9fqkjyib4gfwv9gcyynyhswqwsldpf"; + type = "gem"; + }; + version = "2.1.532"; + }; + CFPropertyList = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1825ll26p28swjiw8n3x2pnh5ygsmg83spf82fnzcjn2p87vc5lf"; + type = "gem"; + }; + version = "3.0.2"; + }; + 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 = "0kasxsms24fgcdsq680nz99d5lazl9rmz1qkil2y5gbbssx89g0z"; + type = "gem"; + }; + version = "1.0.3"; + }; + clamp = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0dka8f3hwzz7p558kiyyrdabljvwp71cbzk46akb3kvnvhcyjx89"; + type = "gem"; + }; + version = "1.3.1"; + }; + cld3 = { + dependencies = ["ffi"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "06p4jgrr0zixqnflmg5dcrbmhlnmll85j7vxkrjmnng293cwvzgw"; + type = "gem"; + }; + version = "3.2.4"; + }; + cocoapods = { + dependencies = ["activesupport" "claide" "cocoapods-core" "cocoapods-deintegrate" "cocoapods-downloader" "cocoapods-plugins" "cocoapods-search" "cocoapods-stats" "cocoapods-trunk" "cocoapods-try" "colored2" "escape" "fourflusher" "gh_inspector" "molinillo" "nap" "ruby-macho" "xcodeproj"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "007ssx75588ji2d8l8s6c95dng1c7b6yacng8nngpy7maijzjgzc"; + type = "gem"; + }; + version = "1.8.4"; + }; + cocoapods-acknowledgements = { + dependencies = ["activesupport" "redcarpet"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "07n638ijlc4y5vfzs5ykzhmwwsng7njb2nnwn4ravydqqxqgv13m"; + type = "gem"; + }; + version = "1.1.3"; + }; + cocoapods-art = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0vkcpwjp7hzby60hq0pxn9zdiz7snf7siq02bckkmd84n27hlz3w"; + type = "gem"; + }; + version = "1.0.4"; + }; + cocoapods-bin = { + dependencies = ["cocoapods" "cocoapods-generate" "parallel"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0dzbv7bfyw8a0iyi4nqw8a74wrdhf3absnpdb3i46rpbkanxw7hy"; + type = "gem"; + }; + version = "0.1.24"; + }; + cocoapods-browser = { + dependencies = ["cocoapods"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1mq9mcw3xnf2nqkmcjg874sx422dbmfa99vhw31c9jb0cd4j3m9p"; + type = "gem"; + }; + version = "0.1.5"; + }; + cocoapods-bugsnag = { + dependencies = ["cocoapods"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1r34h66rqswsyhanx69qnhhr02xsqy2y1zp5265gl6m76nyqq5wa"; + type = "gem"; + }; + version = "2.0.1"; + }; + cocoapods-check = { + dependencies = ["cocoapods"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "17wb5xzhjvrqllsjqqbm00w8gnsrwcb6k7wsb36ykbcp0aiagvaf"; + type = "gem"; + }; + version = "1.1.0"; + }; + 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 = "1b91sfsriizsr08m1vn9j4sf9sb8vgsyr6xjnw18bpy66bpwsqca"; + type = "gem"; + }; + version = "0.0.2"; + }; + cocoapods-core = { + dependencies = ["activesupport" "algoliasearch" "concurrent-ruby" "fuzzy_match" "nap"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0zcisqb404828n5d3lbk9y2yyx8v2yr6rk1l8y9a4i1hp743fiad"; + type = "gem"; + }; + version = "1.8.4"; + }; + cocoapods-coverage = { + dependencies = ["cocoapods-testing" "slather"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "04bzk1x67pqrmnmz3pdw107j5p9ncwfm7gdv8n4bk4r9nqxdv3wn"; + type = "gem"; + }; + version = "0.2.0"; + }; + cocoapods-deintegrate = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0bf524f1za92i6rlr4cr6jm3c4vfjszsdc9lsr6wk5125c76ipzn"; + type = "gem"; + }; + version = "1.0.4"; + }; + 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 = "08vn0pgcyn6w6fq5xjd7szv2h9s5rzl17kyidnd7fl5qdmzc9c54"; + type = "gem"; + }; + version = "1.3.0"; + }; + 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 = "17nqdhdjjg3919h3sz7jkqqhxsi6nyqgfyd7y4ci6fvb7pz79pdh"; + type = "gem"; + }; + version = "1.6.0"; + }; + 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 = "14jmfibzvhqxhvhphj3g83d70ya16p7s4i43wir48hnaxkaqrm85"; + type = "gem"; + }; + version = "2.1.0"; + }; + cocoapods-no-dev-schemes = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "14w8yqs3r6pg06zpv58mc9vzfxhp3ka4mfhnc2p7vmyhy4nmcdza"; + type = "gem"; + }; + version = "1.0.1"; + }; + cocoapods-open = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1z9x1cqrz4zc6yd08clawi8gg7ip8vbhkh9lkrdkzw7i6lqyrp0j"; + type = "gem"; + }; + version = "0.0.8"; + }; + cocoapods-packager = { + dependencies = ["cocoapods"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1083zv9pyqyqal6dk3kvfxdmylbll6078z5zw03m4j5jcz3m8nbm"; + type = "gem"; + }; + version = "1.5.0"; + }; + cocoapods-packager-pro = { + dependencies = ["cocoapods"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1sjnlnqrc3fvc33c3lg3h6y8n969isjswxg2jdc1kfc3x0cakawl"; + type = "gem"; + }; + version = "1.5.4"; + }; + cocoapods-playgrounds = { + dependencies = ["cocoapods"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0jsc489j6dh3mczzs880vc6jvzd8yjqrszmbbnkz9azndak3mhln"; + type = "gem"; + }; + version = "1.2.2"; + }; + cocoapods-plugins = { + dependencies = ["nap"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "16na82sfyc8801qs1n22nwq486s4j7yj6rj7fcp8cbxmj371fpbj"; + type = "gem"; + }; + version = "1.0.0"; + }; + cocoapods-prune-localizations = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1hvpl56rnblmdbj40sysvk56j5hx5kdpqry00raw2p184sb5k4cf"; + type = "gem"; + }; + version = "0.3.1"; + }; + cocoapods-rome = { + dependencies = ["cocoapods" "fourflusher"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1z5z49m5aww7q301bn5dzb6fzq6lcj6fvqibpg5ys1r0c41lsj0l"; + type = "gem"; + }; + version = "1.0.1"; + }; + cocoapods-search = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "02wmy5rbjk29c65zn62bffxv30qs11slql23qx65snkm0vd93mn6"; + type = "gem"; + }; + version = "1.0.0"; + }; + cocoapods-sorted-search = { + dependencies = ["cocoapods" "hashie" "osx_keychain" "ruby-progressbar" "typhoeus"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1da86mjq4spfsx6xjk7qylvj5423ai9y39g9xxfl9r6h8i54dmpp"; + type = "gem"; + }; + version = "0.2.4"; + }; + cocoapods-static-swift-framework = { + dependencies = ["cocoapods"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "12hhh25bj5dyz6rwc5jgarlld35vmgn43qk5lq9kfrpcli2ynhp2"; + type = "gem"; + }; + version = "0.5"; + }; + cocoapods-stats = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1xhdh5v94p6l612rwrk290nd2hdfx8lbaqfbkmj34md218kilqww"; + type = "gem"; + }; + version = "1.1.0"; + }; + cocoapods-tdfire-binary = { + dependencies = ["cocoapods" "cocoapods-bin" "cocoapods-packager-pro"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "10idp7yr2zni6zhpj1pqkj4wkk5g48f5iizjb20i8minj52l64m0"; + type = "gem"; + }; + version = "2.0.9"; + }; + cocoapods-testing = { + dependencies = ["xctasks"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0f7w4gxr45m42ca6fpbq38jfzii00xysz12vcc68myvi8x0krr5l"; + type = "gem"; + }; + version = "0.2.0"; + }; + cocoapods-trunk = { + dependencies = ["nap" "netrc"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0vrwsgaq3nf7v3pwksgqy0mhswrp3ipczrc96vl3ii2pcc9ilwkw"; + type = "gem"; + }; + version = "1.4.1"; + }; + cocoapods-try = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1gf2zjmcjhh9psq15yfy82wz5jnlihf5bcw79f8hlv4cnqyspncj"; + type = "gem"; + }; + version = "1.1.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 = "1ln4kywj4bx32qyqvr0byi3g4fk8yj026n00xch782x0147f8lka"; + type = "gem"; + }; + version = "0.0.11"; + }; + 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 = "15vav4bhcc2x3jmi3izb11l4d9f3xv8hp2fszb7iqmpsccv1pz4y"; + type = "gem"; + }; + version = "1.1.2"; + }; + colorator = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0f7wvpam948cglrciyqd798gdc6z3cfijciavd0dfixgaypmvy72"; + type = "gem"; + }; + version = "1.1.0"; + }; + 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 = "1x07r23s7836cpp5z9yrlbpljcxpax14yw4fy4bnp6crhr6x24an"; + type = "gem"; + }; + version = "1.1.5"; + }; + crass = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "030sc98kjrb36rh7g21qsbdfxrj6knsjkx0mn3b7gig8zknwhp2f"; + type = "gem"; + }; + version = "1.0.5"; + }; + curb = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0s27g4nkdf8wipzyxx87nnw43ps8xqg30sqz86ay7dvmmpkd786k"; + type = "gem"; + }; + version = "0.9.10"; + }; + curses = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0hic9kq09dhh8jqjx3k1991rnqhlj3glz82w0g7ndcri52m1hgqg"; + type = "gem"; + }; + version = "1.3.2"; + }; + daemons = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0l5gai3vd4g7aqff0k1mp41j9zcsvm2rbwmqn115a325k9r7pf4w"; + type = "gem"; + }; + version = "1.3.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 = "1nff0nai8h8786xix92f3k5wjb51gqd9gkibmah2bvrcwyn9qiw5"; + type = "gem"; + }; + version = "1.3.1"; + }; + diff-lcs = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "18w22bjz424gzafv6nzv98h0aqkwz3d9xhm7cbr1wfbyas8zayza"; + type = "gem"; + }; + version = "1.3"; + }; + 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 = "0qrwiyagxzl8zlx3dafb0ay8l14ib7imb2rsmx70i5cp420v8gif"; + type = "gem"; + }; + version = "1.3.2"; + }; + 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 = "17hkd62ig9b0czv192kqdfq7gw0a8hgq07yclri6myc8y5lmfin5"; + type = "gem"; + }; + version = "2.7.5"; + }; + em-websocket = { + dependencies = ["eventmachine" "http_parser.rb"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1bsw8vjz0z267j40nhbmrvfz7dvacq4p0pagvyp17jif6mj6v7n3"; + type = "gem"; + }; + version = "0.5.1"; + }; + erubis = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1fj827xqjs91yqsydf0zmfyw9p4l2jz5yikg3mppz6d7fi8kyrb3"; + type = "gem"; + }; + version = "2.7.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 = "0gggrgkcq839mamx7a8jbnp2h7x2ykfn34ixwskwb0lzx2ak17g9"; + type = "gem"; + }; + version = "0.12.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 = "0nn8wk7j22ly4lzdp5pnm7qsrjxbgspiyxkw70g1qf9bn6pslmxr"; + type = "gem"; + }; + version = "0.71.1"; + }; + faraday = { + dependencies = ["multipart-post"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1gggz3vvvkdrxil2fwpaaslv1z5bxzwra4wnybf20np58v1iv9w8"; + type = "gem"; + }; + version = "0.17.1"; + }; + ffi = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0j8pzj8raxbir5w5k6s7a042sb5k02pg0f8s4na1r5lan901j00p"; + type = "gem"; + }; + version = "1.10.0"; + }; + 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 = "1s1jxlrbq4jhwkiy5gq429v87m1l602b2gppw0ikbax7rnv30s9x"; + type = "gem"; + }; + version = "2.2.0"; + }; + 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 = "1gc26phrwlmlqrmz4bagq1wd5b7g64avpx0ghxr9xdxcvmlii0l0"; + type = "gem"; + }; + version = "0.2.5"; + }; + forwardable-extended = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "15zcqfxfvsnprwm8agia85x64vjzr2w0xn9vxfnxzgcv8s699v0v"; + type = "gem"; + }; + version = "2.6.0"; + }; + fourflusher = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1afabh3g3gwj0ad53fs62waks815xcckf7pkci76l6vrghffcg8v"; + type = "gem"; + }; + version = "2.3.1"; + }; + 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 = "0194gzn0kialfh0j7crllvp808r64sg6dh297x69b0av21ar5pam"; + type = "gem"; + }; + version = "3.4.1"; + }; + gh_inspector = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0f8r9byajj3bi2c7c5sqrc7m0zrv3nblfcd4782lw5l73cbsgk04"; + type = "gem"; + }; + version = "1.1.3"; + }; + gio2 = { + dependencies = ["gobject-introspection"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1l3jpgbdvb55xhcmpkcqgwx5068dfyi8kijfvzhbqh96ng0p1m7g"; + type = "gem"; + }; + version = "3.4.1"; + }; + gitlab-markup = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0rqf3jmyn78r3ysy3bjyx7s4yv3xipxlmqlmbyrbksna19rrx08d"; + type = "gem"; + }; + version = "1.7.0"; + }; + glib2 = { + dependencies = ["native-package-installer" "pkg-config"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "18clyn0fp0h5alnkf9i2bqd6wvl78h468pdbzs1csqnba8vw4q1c"; + type = "gem"; + }; + version = "3.4.1"; + }; + globalid = { + dependencies = ["activesupport"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1zkxndvck72bfw235bd9nl2ii0lvs5z88q14706cmn702ww2mxv1"; + type = "gem"; + }; + version = "0.4.2"; + }; + gobject-introspection = { + dependencies = ["glib2"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1a3x8qiisbax3x0izj8l5w66r53ba5ma53ax2jhdbhbvaxx3d02n"; + type = "gem"; + }; + version = "3.4.1"; + }; + gpgme = { + dependencies = ["mini_portile2"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0jbqajngi5ndqfarw9dxkhbphva0j71jav5wfym3fsiisvk5gg6p"; + type = "gem"; + }; + version = "2.0.19"; + }; + gtk2 = { + dependencies = ["atk" "gdk_pixbuf2" "pango"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "17az8g0n1yzz90kdbjg2hpabi04qccda7v6lin76bs637ivfg2md"; + type = "gem"; + }; + version = "3.4.1"; + }; + hashie = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0drkv8a70akprcnbxvd08hzp2bgd5g4s5g752f8599ks1g6a7wj1"; + type = "gem"; + }; + version = "4.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"; + }; + 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 = "004cgs4xg5n6byjs7qld0xhsjq3n6ydfh897myr2mibvh6fjc49g"; + type = "gem"; + }; + version = "1.0.3"; + }; + "http_parser.rb" = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "15nidriy0v5yqfjsgsra51wmknxci2n2grliz78sf9pga3n0l7gi"; + type = "gem"; + }; + version = "0.6.0"; + }; + 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 = "038qvz7kd3cfxk8bvagqhakx68pfbnmghpdkx7573wbf0maqp9a3"; + type = "gem"; + }; + version = "0.9.5"; + }; + 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 = "07vblcyk3g72sbq12xz7xj28snpxnh3sbcnxy8bglqbfqqhvmawr"; + type = "gem"; + }; + version = "0.1.0"; + }; + jaro_winkler = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1y8l6k34svmdyqxya3iahpwbpvmn3fswhwsvrz0nk1wyb8yfihsh"; + type = "gem"; + }; + version = "1.5.4"; + }; + jbuilder = { + dependencies = ["activesupport"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "03adzsc2hfd0lvprm45s52bkxpnpnw8r9prcx8zx1aw2a8lzp9r7"; + type = "gem"; + }; + version = "2.9.1"; + }; + jekyll = { + dependencies = ["addressable" "colorator" "em-websocket" "i18n" "jekyll-sass-converter" "jekyll-watch" "kramdown" "kramdown-parser-gfm" "liquid" "mercenary" "pathutil" "rouge" "safe_yaml" "terminal-table"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0fpckw5nf4hfr5vhhdlmaxxp5lkdmc1vyqnmijwvy9fmjn4c87aa"; + type = "gem"; + }; + version = "4.0.0"; + }; + jekyll-sass-converter = { + dependencies = ["sassc"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0xjzqpp35qr2vnf2zpak0srn773mp21glcq81a0iqpnrva7h80m3"; + type = "gem"; + }; + version = "2.0.1"; + }; + jekyll-watch = { + dependencies = ["listen"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1qd7hy1kl87fl7l0frw5qbn22x7ayfzlv9a5ca1m59g0ym1ysi5w"; + type = "gem"; + }; + version = "2.2.1"; + }; + jmespath = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1d4wac0dcd1jf6kc57891glih9w57552zgqswgy74d1xhgnk0ngf"; + type = "gem"; + }; + version = "1.4.0"; + }; + json = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0nrmw2r4nfxlfgprfgki3hjifgrcrs3l5zvm3ca3gb4743yr25mn"; + type = "gem"; + }; + version = "2.3.0"; + }; + jwt = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "01zg1vp3lyl3flyjdkrcc93ghf833qgfgh2p1biqfhkzz11r129c"; + type = "gem"; + }; + version = "2.2.1"; + }; + kramdown = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1dl840bvx8d9nq6lg3mxqyvbiqnr6lk3jfsm6r8zhz7p5srmd688"; + type = "gem"; + }; + version = "2.1.0"; + }; + kramdown-parser-gfm = { + dependencies = ["kramdown"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0a8pb3v951f4x7h968rqfsa19c8arz21zw1vaj42jza22rap8fgv"; + type = "gem"; + }; + version = "1.1.0"; + }; + libv8 = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1jivcckillfvd4n2jnsnnlf93z3gpvqbwsczs0fvv9hc90zpj7yh"; + type = "gem"; + }; + version = "7.3.492.27.1"; + }; + libxml-ruby = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1r7m7zipkpam8ns4ys4qyh7yj3is3dy7ky6qwnw557pvpgx0aqrd"; + type = "gem"; + }; + version = "3.1.0"; + }; + liquid = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0zhg5ha8zy8zw9qr3fl4wgk4r5940n4128xm2pn4shpbzdbsj5by"; + type = "gem"; + }; + version = "4.0.3"; + }; + listen = { + dependencies = ["rb-fsevent" "rb-inotify"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1w923wmdi3gyiky0asqdw5dnh3gcjs2xyn82ajvjfjwh6sn0clgi"; + type = "gem"; + }; + version = "3.2.1"; + }; + loofah = { + dependencies = ["crass" "nokogiri"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1g7ps9m3s14cajhxrfgbzahv9i3gy47s4hqrv3mpybpj5cyr0srn"; + type = "gem"; + }; + version = "2.4.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"; + }; + markaby = { + dependencies = ["builder"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1j4jc31ycydbkh5h3q6zwidzpavg3g5mbb5lqyaczd3jrq78rd7i"; + type = "gem"; + }; + version = "0.9.0"; + }; + 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 = "1pviwzvdqd90gn6y7illcdd9adapw8fczml933p5vl739dkvl3lq"; + type = "gem"; + }; + version = "0.9.2"; + }; + mime-types = { + dependencies = ["mime-types-data"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1zj12l9qk62anvk9bjvandpa6vy4xslil15wl6wlivyf51z773vh"; + type = "gem"; + }; + version = "3.3.1"; + }; + mime-types-data = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "18x61fc36951vw7f74gq8cyybdpxvyg5d0azvqhrs82ddw3v16xh"; + type = "gem"; + }; + version = "3.2019.1009"; + }; + mini_magick = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0qy09qrd5bwh8mkbj514n5vcw9ni73218h9s3zmvbpmdwrnzi8j4"; + type = "gem"; + }; + version = "4.9.5"; + }; + mini_mime = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1axm0rxyx3ss93wbmfkm78a6x03l8y4qy60rhkkiq0aza0vwq3ha"; + type = "gem"; + }; + version = "1.0.2"; + }; + mini_portile2 = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "15zplpfw3knqifj9bpf604rb3wc1vhq6363pd6lvhayng8wql5vy"; + type = "gem"; + }; + version = "2.4.0"; + }; + minitest = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0w16p7cvslh3hxd3cia8jg4pd85z7rz7xqb16vh42gj4rijn8rmi"; + type = "gem"; + }; + version = "5.13.0"; + }; + molinillo = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1hh40z1adl4lw16dj4hxgabx4rr28mgqycih1y1d91bwww0jjdg6"; + type = "gem"; + }; + version = "0.6.6"; + }; + msgpack = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1qr2mkm2i3m76zarvy7qgjl9596hmvjrg7x6w42vx8cfsbf5p0y1"; + type = "gem"; + }; + version = "1.3.1"; + }; + multi_json = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0xy54mjf7xg41l8qrg1bqri75agdqmxap9z466fjismc1rn2jwfr"; + type = "gem"; + }; + version = "1.14.1"; + }; + multipart-post = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1zgw9zlwh2a6i1yvhhc4a84ry1hv824d6g2iw2chs3k5aylpmpfj"; + type = "gem"; + }; + version = "2.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 = "0ajfyaqjw3dzykk612yw8sm21savfqy292hgps8h8l4lvxww1lz6"; + type = "gem"; + }; + version = "0.2.6"; + }; + 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 = "0piclgf6pw7hr10x57x0hn675djyna4sb3xc97yb9vh66wkx1fl0"; + type = "gem"; + }; + version = "1.0.9"; + }; + ncursesw = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1nc14wls1yiigz593vw7580hb99lf4n485axapiz6sqpg1jnlhcr"; + type = "gem"; + }; + version = "1.4.10"; + }; + net-scp = { + dependencies = ["net-ssh"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0nkf3my587f0izqw0dl3zl24c3lnrw9y5xrq9vb0lhgymmgcav9g"; + type = "gem"; + }; + version = "2.0.0"; + }; + net-ssh = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "101wd2px9lady54aqmkibvy4j62zk32w0rjz4vnigyg974fsga40"; + type = "gem"; + }; + version = "5.2.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 = "0gnmvbryr521r135yz5bv8354m7xn6miiapfgpg1bnwsvxz8xj6c"; + type = "gem"; + }; + version = "2.5.2"; + }; + nokogiri = { + dependencies = ["mini_portile2"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0r0qpgf80h764k176yr63gqbs2z0xbsp8vlvs2a79d5r9vs83kln"; + type = "gem"; + }; + version = "1.10.7"; + }; + 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 = "09lb0a9y4q7946jaf53li1v4cb6ksfb5bq5wb15yn8ja6wf9n427"; + type = "gem"; + }; + version = "4.3.0"; + }; + pango = { + dependencies = ["cairo-gobject" "gobject-introspection"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1d0cn50qgpifrcv8qx72wi6l9xalw3ryngbfmm9xpg9vx5rl1qbp"; + type = "gem"; + }; + version = "3.4.1"; + }; + parallel = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "12jijkap4akzdv11lm08dglsc8jmc87xcgq6947i1s3qb69f4zn2"; + type = "gem"; + }; + version = "1.19.1"; + }; + parser = { + dependencies = ["ast"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "10siyp14d88jwcfj45kkk3nwl4wyr2r5ajb7vy4iwh1gxmhvi727"; + type = "gem"; + }; + version = "2.7.0.0"; + }; + pathutil = { + dependencies = ["forwardable-extended"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "12fm93ljw9fbxmv2krki5k5wkvr7560qy8p4spvb9jiiaqv78fz4"; + type = "gem"; + }; + version = "0.16.2"; + }; + 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 = "0h4iarqdych6v4jm5s0ywkc01qspadz8sf6qn7pkqmszq4iqv67q"; + type = "gem"; + }; + version = "0.13.0"; + }; + pg = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "15pa9qy7ngig21zgnvzwaxiy4rc7wbibna5050jjpgal9drgvpyy"; + type = "gem"; + }; + version = "1.2.0"; + }; + pkg-config = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1cxdpr2wlz9b587avlq04a1da5fz1vdw8jvr6lx23mcq7mqh2xcx"; + type = "gem"; + }; + version = "1.4.0"; + }; + polyglot = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1bqnxwyip623d8pr29rg6m8r0hdg08fpr2yb74f46rn1wgsnxmjr"; + type = "gem"; + }; + version = "0.3.5"; + }; + pry = { + dependencies = ["coderay" "method_source"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "00rm71x0r1jdycwbs83lf9l6p494m99asakbvqxh8rz7zwnlzg69"; + type = "gem"; + }; + version = "0.12.2"; + }; + pry-byebug = { + dependencies = ["byebug" "pry"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1aqz4gz8z44k6svpvcsfrqbigcpjd2kwvfm77yq3v8yzkhjrx0zi"; + type = "gem"; + }; + version = "3.7.0"; + }; + pry-doc = { + dependencies = ["pry" "yard"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "14lwb5dxfibcqbjygzvnf8ry0mayx48fk20qhg06214sll0sp0kv"; + type = "gem"; + }; + version = "1.0.0"; + }; + public_suffix = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0ww6577yhgszvc0p33qg9nb7n03fyadvl14v2kbpm4rpf0q4i6gz"; + type = "gem"; + }; + version = "4.0.2"; + }; + puma = { + dependencies = ["nio4r"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0v6zai6sinw5r1lchm278mm3dr8x5vi8pwmybwv9lz1kz02fk2g3"; + type = "gem"; + }; + version = "4.3.1"; + }; + rack = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1riq0z408dwvqcqrpq05bp2w879l4sjxzb4cbrbx55kpi6h2g1cj"; + type = "gem"; + }; + version = "1.6.12"; + }; + rack-protection = { + dependencies = ["rack"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0my0wlw4a5l3hs79jkx2xzv7djhajgf8d28k8ai1ddlnxxb0v7ss"; + type = "gem"; + }; + version = "1.5.5"; + }; + rack-test = { + dependencies = ["rack"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0h6x5jq24makgv2fq5qqgjlrk74dxfy62jif9blk43llw8ib2q7z"; + type = "gem"; + }; + version = "0.6.3"; + }; + rails = { + dependencies = ["actionmailer" "actionpack" "actionview" "activejob" "activemodel" "activerecord" "activesupport" "railties" "sprockets-rails"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1ywvis59dd3v8qapi9ix6743zgk07l21x1cd6nb1ddpahxhm7dml"; + type = "gem"; + }; + version = "4.2.11.1"; + }; + rails-deprecated_sanitizer = { + dependencies = ["activesupport"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0qxymchzdxww8bjsxj05kbf86hsmrjx40r41ksj0xsixr2gmhbbj"; + type = "gem"; + }; + version = "1.0.3"; + }; + rails-dom-testing = { + dependencies = ["activesupport" "nokogiri" "rails-deprecated_sanitizer"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0wssfqpn00byhvp2372p99mphkcj8qx6pf6646avwr9ifvq0q1x6"; + type = "gem"; + }; + version = "1.0.9"; + }; + rails-html-sanitizer = { + dependencies = ["loofah"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1icpqmxbppl4ynzmn6dx7wdil5hhq6fz707m9ya6d86c7ys8sd4f"; + type = "gem"; + }; + version = "1.3.0"; + }; + railties = { + dependencies = ["actionpack" "activesupport" "rake" "thor"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1bjf21z9maiiazc1if56nnh9xmgbkcqlpznv34f40a1hsvgk1d1m"; + type = "gem"; + }; + version = "4.2.11.1"; + }; + rainbow = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0bb2fpjspydr6x0s8pn1pqkzmxszvkfapv0p4627mywl7ky4zkhk"; + type = "gem"; + }; + version = "3.0.0"; + }; + rake = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0jcabbgnjc788chx31sihc5pgbqnlc1c75wakmqlbjdm8jns2m9b"; + type = "gem"; + }; + version = "10.5.0"; + }; + rb-fsevent = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1lm1k7wpz69jx7jrc92w3ggczkjyjbfziq5mg62vjnxmzs383xx8"; + type = "gem"; + }; + version = "0.10.3"; + }; + 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 = "0lvz1vk2l3chnz6zdp4xmh6w2z75rndhgbravbxgvw8ff4snsxa7"; + type = "gem"; + }; + version = "7.1.0"; + }; + re2 = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "00wf9k1hkv3z3nfkrnfyyfq9ah0l7k14awqys3h2hqz4c21pqd2i"; + type = "gem"; + }; + version = "1.1.1"; + }; + redcarpet = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0skcyx1h8b5ms0rp2zm3ql6g322b8c1adnkwkqyv7z3kypb4bm7k"; + type = "gem"; + }; + version = "3.5.0"; + }; + redis = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "08v2y91q1pmv12g9zsvwj66w3s8j9d82yrmxgyv4y4gz380j3wyh"; + type = "gem"; + }; + version = "4.1.3"; + }; + redis-rack = { + dependencies = ["rack" "redis-store"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1pa19ydbk0l6wilwbxcjn6knfs4ffgj0rhaaldrlhf76pjgkaiqb"; + type = "gem"; + }; + version = "2.0.6"; + }; + redis-store = { + dependencies = ["redis"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1isqzzds9kszc2nn8jiy8ikry01qspn7637ba9z2k6sk7vky46d9"; + type = "gem"; + }; + version = "1.8.1"; + }; + 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"; + }; + rmagick = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "06ya2zpz2g3g4c90bmd1z11qkajls3srq5b7cswrjq8ima568ja0"; + type = "gem"; + }; + version = "4.0.0"; + }; + rouge = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0k5jrp0qc9p61mfcwyn1a7dajmkw04z6y76wa8a0axh1v2wrw8ld"; + type = "gem"; + }; + version = "3.14.0"; + }; + 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 = "1hzsig4pi9ybr0xl5540m1swiyxa74c8h09225y5sdh2rjkkg84h"; + type = "gem"; + }; + version = "3.9.0"; + }; + rspec-core = { + dependencies = ["rspec-support"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0gppalb2ynj0xk7vp8kk5pwzihmiqc8l4prpy4n9spclq7iqkspq"; + type = "gem"; + }; + version = "3.9.0"; + }; + rspec-expectations = { + dependencies = ["diff-lcs" "rspec-support"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1gjqfb39da6gywdcp4h77738r7khbrn2v4y45589z25bj4z9paf0"; + type = "gem"; + }; + version = "3.9.0"; + }; + rspec-mocks = { + dependencies = ["diff-lcs" "rspec-support"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0q9f8nrxhs4k2vl3bnm3pi5s44v9pnvjwirjnwji3sxzf68c2xjf"; + type = "gem"; + }; + version = "3.9.0"; + }; + rspec-support = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "18080h06kqayyr6dpw4c62l0wav09ihkd6skinsln13kmq0cv0mx"; + type = "gem"; + }; + version = "3.9.0"; + }; + rubocop = { + dependencies = ["jaro_winkler" "parallel" "parser" "rainbow" "ruby-progressbar" "unicode-display_width"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1p1bhsfscasp57l5di9hsx8jl325kfjswhd2mlzq74hj3gdws4x0"; + type = "gem"; + }; + version = "0.78.0"; + }; + rubocop-performance = { + dependencies = ["rubocop"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1fk9nd3b24avgsqp726hy2pl1iyfjrh6jni97wkky6kqy0lq6zq2"; + type = "gem"; + }; + version = "1.5.2"; + }; + ruby-graphviz = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1jzbs0jhaz77azsc30gsfg89fy44vsr565jcj4axhc65n1fmhs90"; + type = "gem"; + }; + version = "1.2.4"; + }; + ruby-libvirt = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0d754d6pgdqyq52pl9hp0x38q1vn3vf9nz4nm5gqdj5i4fw7pba6"; + type = "gem"; + }; + version = "0.7.1"; + }; + ruby-lxc = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "08pnghqp15fwylq6w2qh7x1ikkiq87irpy0z03n0gma4gdzzx2qa"; + type = "gem"; + }; + version = "1.2.3"; + }; + ruby-macho = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0lhdjn91jkifsy2hzq2hgcm0pp8pbik87m58zmw1ifh6hkp9adjb"; + type = "gem"; + }; + version = "1.4.0"; + }; + ruby-progressbar = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1k77i0d4wsn23ggdd2msrcwfy0i376cglfqypkk2q77r2l3408zf"; + type = "gem"; + }; + version = "1.10.1"; + }; + 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 = "14hzfsbx7n0jsm6bxif99kbhlmxr4s7g6xvml6xbqphlqbmy5d43"; + type = "gem"; + }; + version = "2.0.16"; + }; + 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 = "1gz0ri0pa2xr7b6bf66yjc2wfvk51f4gi6yk7bklwl1nr65zc4gz"; + type = "gem"; + }; + version = "2.0.0"; + }; + rugged = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0rdidxgpk1b6y1jq9v77lcx5khq0s9q0s253lr8x57d3hk43iskx"; + type = "gem"; + }; + version = "0.28.4.1"; + }; + safe_yaml = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0j7qv63p0vqcd838i2iy2f76c3dgwzkiz1d1xkg7n0pbnxj2vb56"; + type = "gem"; + }; + version = "1.0.5"; + }; + sassc = { + dependencies = ["ffi"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "09bnid7r5z5hcin5hykvpvv8xig27wbbckxwis60z2aaxq4j9siz"; + type = "gem"; + }; + version = "2.2.1"; + }; + 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 = "0wxkmgjnb8nskvqqwxihhbc1x8dhbbrcq70zxwqbyy5hvf4dh88f"; + type = "gem"; + }; + version = "0.10.0"; + }; + sequel = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0vrbwwxvmdb7q1sdc0jnhlf826l74n9880xy5li1qabr0hyrmf1j"; + type = "gem"; + }; + version = "5.27.0"; + }; + sequel_pg = { + dependencies = ["pg" "sequel"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1y010rfdgpkw1yspqchjqdp7n8yahscyw98g3l2pw56nzbqipjb8"; + type = "gem"; + }; + version = "1.12.2"; + }; + simplecov = { + dependencies = ["docile" "json" "simplecov-html"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1135k46nik05sdab30yxb8264lqiz01c8v000g16cl9pjc4mxrdw"; + type = "gem"; + }; + version = "0.17.1"; + }; + simplecov-html = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1lihraa4rgxk8wbfl77fy9sf0ypk31iivly8vl3w04srd7i0clzn"; + type = "gem"; + }; + version = "0.10.2"; + }; + sinatra = { + dependencies = ["rack" "rack-protection" "tilt"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0byxzl7rx3ki0xd7aiv1x8mbah7hzd8f81l65nq8857kmgzj1jqq"; + type = "gem"; + }; + version = "1.4.8"; + }; + slather = { + dependencies = ["CFPropertyList" "activesupport" "clamp" "nokogiri" "xcodeproj"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0v4wll10mwmynj2v2g71kgr1psck3qglhz2mnrw2n281v30jxyyn"; + type = "gem"; + }; + version = "2.4.7"; + }; + slop = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0hv64fpbdwyswqhnq8bia66vlsz72yjqm00lvlhh4dnjjivdjcy5"; + type = "gem"; + }; + version = "4.7.0"; + }; + snappy = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "00zzs25sm78zs3rifc02z54cp3f03r9dq5ilzykyq1ykvbv65vw4"; + type = "gem"; + }; + version = "0.0.17"; + }; + sprockets = { + dependencies = ["concurrent-ruby" "rack"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0jm37zpvvm1arxjwrd6am0wrdbfhrhc5y0l4p2i3p11z04bsvgap"; + type = "gem"; + }; + version = "4.0.0"; + }; + sprockets-rails = { + dependencies = ["actionpack" "activesupport" "sprockets"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0ab42pm8p5zxpv3sfraq45b9lj39cz9mrpdirm30vywzrwwkm5p1"; + type = "gem"; + }; + version = "3.2.1"; + }; + sqlite3 = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0lja01cp9xd5m6vmx99zwn4r7s97r1w5cb76gqd8xhbm1wxyzf78"; + type = "gem"; + }; + version = "1.4.2"; + }; + taglib-ruby = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0r8g7zdncc6243d000jn0grc1n70rn9mx16vggy3q7c4wgsa37xi"; + type = "gem"; + }; + version = "0.7.1"; + }; + 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 = "1xbhkmyhlxwzshaqa7swy2bx6vd64mm0wrr8g3jywvxy7hg0cwkm"; + type = "gem"; + }; + version = "1.0.1"; + }; + thread_safe = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0nmhcgq6cgz44srylra07bmaw99f5271l0dpsvl5f75m44l0gmwy"; + type = "gem"; + }; + version = "0.3.6"; + }; + thrift = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "02p107kwx7jnkh6fpdgvaji0xdg6xkaarngkqjml6s4zny4m8slv"; + type = "gem"; + }; + version = "0.11.0.0"; + }; + tilt = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0rn8z8hda4h41a64l0zhkiwz2vxw9b1nb70gl37h1dg2k874yrlv"; + type = "gem"; + }; + version = "2.0.10"; + }; + tiny_tds = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0z2n1qwad86zkcmmq883bw8rgidjsqjphrbqf1mwyfi5y22jhxfp"; + type = "gem"; + }; + version = "2.1.2"; + }; + treetop = { + dependencies = ["polyglot"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0g31pijhnv7z960sd09lckmw9h8rs3wmc8g4ihmppszxqm99zpv7"; + type = "gem"; + }; + version = "1.6.10"; + }; + typhoeus = { + dependencies = ["ethon"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0cni8b1idcp0dk8kybmxydadhfpaj3lbs99w5kjibv8bsmip2zi5"; + type = "gem"; + }; + version = "1.3.1"; + }; + tzinfo = { + dependencies = ["thread_safe"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "04f18jdv6z3zn3va50rqq35nj3izjpb72fnf21ixm7vanq6nc4fp"; + type = "gem"; + }; + version = "1.2.6"; + }; + 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 = "1ll6w64ibh81qwvjx19h8nj7mngxgffg7aigjx11klvf5k2g4nxf"; + type = "gem"; + }; + version = "0.0.7.6"; + }; + unicode-display_width = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "08kfiniak1pvg3gn5k6snpigzvhvhyg7slmm0s2qx5zkj62c1z2w"; + type = "gem"; + }; + version = "1.6.0"; + }; + uuid4r = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0qlcxzn8pnql34pcdrkd20kdla3k6n2sspaxp3lwwx8a87jnzbc3"; + type = "gem"; + }; + version = "0.2.0"; + }; + whois = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "177qbah62yhy2q7znlrs49jwabw7vpd9frv6hw6mm0bxj5fn7prg"; + type = "gem"; + }; + version = "5.0.0"; + }; + xcodeproj = { + dependencies = ["CFPropertyList" "atomos" "claide" "colored2" "nanaimo"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1h9iba53mrb663qdqzpfbdwkwzqv7hndd0df71yr2kj2hzwjmkvb"; + type = "gem"; + }; + version = "1.14.0"; + }; + xctasks = { + dependencies = ["nokogiri" "rake"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1m01vnmdy9m4hn85ajji5v595faqsy8d3a0r646q79vphw1fikj1"; + type = "gem"; + }; + version = "0.6.0"; + }; + yard = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0rxqwry3h2hjz069f0kfr140wgx1khgljnqf112dk5x9rm4l0xny"; + type = "gem"; + }; + version = "0.9.20"; + }; + ZenTest = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0vkqgajgwmmf2dxfj9h4zs94v3rlvmvb1hcm4wid57dj79y7a0ak"; + type = "gem"; + }; + version = "4.12.0"; + }; + zookeeper = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1blww00r5za6vl46psaldxpllsxll78ms8rrs6qfwb1iaa8rla2d"; + type = "gem"; + }; + version = "1.4.11"; + }; +}
\ No newline at end of file diff --git a/infra/libkookie/nixpkgs/pkgs/top-level/splice.nix b/infra/libkookie/nixpkgs/pkgs/top-level/splice.nix new file mode 100644 index 000000000000..a093442d3698 --- /dev/null +++ b/infra/libkookie/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 = throw "`valueHostHost` unimplemented: pass manually rather than relying on splice."; + 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; }) + // { 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 = {}; + 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/infra/libkookie/nixpkgs/pkgs/top-level/stage.nix b/infra/libkookie/nixpkgs/pkgs/top-level/stage.nix new file mode 100644 index 000000000000..58b0300cc79c --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/top-level/stage.nix @@ -0,0 +1,249 @@ +/* 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; a dirty hack that should be removed + 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 self; in res // { + stdenvAdapters = res; + }; + + trivialBuilders = self: super: + import ../build-support/trivial-builders.nix { + inherit lib; inherit (self) stdenv stdenvNoCC; inherit (self.pkgsBuildHost.xorg) lndir; + inherit (self) runtimeShell; + }; + + 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; + inherit (hostPlatform) system; + }; + + 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.rasberryPi.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; + + # 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 import ./stage.nix (args // { overlays = args.overlays ++ extraOverlays; }); + + # 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; + crossOverlays = [ (import ./static.nix) ]; + } // 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; + }.${stdenv.hostPlatform.parsed.abi.name} + or lib.systems.parse.abis.musl; + }; + }; + }); + }; + + # 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/infra/libkookie/nixpkgs/pkgs/top-level/static.nix b/infra/libkookie/nixpkgs/pkgs/top-level/static.nix new file mode 100644 index 000000000000..865e5cf2900e --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/top-level/static.nix @@ -0,0 +1,312 @@ +# Overlay that builds static packages. + +# Not all packages will build but support is done on a +# best effort basic. +# +# Note on Darwin/macOS: Apple does not provide a static libc +# so any attempts at static binaries are going to be very +# unsupported. +# +# Basic things like pkgsStatic.hello should work out of the box. More +# complicated things will need to be fixed with overrides. + +self: super: let + inherit (super.stdenvAdapters) makeStaticBinaries + makeStaticLibraries + propagateBuildInputs; + inherit (super.lib) foldl optional flip id composeExtensions optionalAttrs optionalString; + inherit (super) makeSetupHook; + + # Best effort static binaries. Will still be linked to libSystem, + # but more portable than Nix store binaries. + makeStaticDarwin = stdenv_: let stdenv = stdenv_.override { + # extraBuildInputs are dropped in cross.nix, but darwin still needs them + extraBuildInputs = [ self.buildPackages.darwin.CF ]; + }; in stdenv // { + mkDerivation = args: stdenv.mkDerivation (args // { + NIX_CFLAGS_LINK = toString (args.NIX_CFLAGS_LINK or "") + + optionalString stdenv.cc.isGNU " -static-libgcc"; + nativeBuildInputs = (args.nativeBuildInputs or []) ++ [ (makeSetupHook { + substitutions = { + libsystem = "${stdenv.cc.libc}/lib/libSystem.B.dylib"; + }; + } ../stdenv/darwin/portable-libsystem.sh) ]; + }); + }; + + staticAdapters = [ makeStaticLibraries propagateBuildInputs ] + + # Apple does not provide a static version of libSystem or crt0.o + # So we can’t build static binaries without extensive hacks. + ++ optional (!super.stdenv.hostPlatform.isDarwin) makeStaticBinaries + + ++ optional super.stdenv.hostPlatform.isDarwin makeStaticDarwin + + # Glibc doesn’t come with static runtimes by default. + # ++ optional (super.stdenv.hostPlatform.libc == "glibc") ((flip overrideInStdenv) [ self.stdenv.glibc.static ]) + ; + + # Force everything to link statically. + haskellStaticAdapter = self: super: { + mkDerivation = attrs: super.mkDerivation (attrs // { + enableSharedLibraries = false; + enableSharedExecutables = false; + enableStaticLibraries = true; + }); + }; + + removeUnknownConfigureFlags = f: with self.lib; + remove "--disable-shared" + (remove "--enable-static" f); + + ocamlFixPackage = b: + b.overrideAttrs (o: { + configurePlatforms = [ ]; + configureFlags = removeUnknownConfigureFlags (o.configureFlags or [ ]); + buildInputs = o.buildInputs ++ o.nativeBuildInputs or [ ]; + propagatedNativeBuildInputs = o.propagatedBuildInputs or [ ]; + }); + + ocamlStaticAdapter = _: super: + self.lib.mapAttrs + (_: p: if p ? overrideAttrs then ocamlFixPackage p else p) + super + // { + lablgtk = null; # Currently xlibs cause infinite recursion + ocaml = ((super.ocaml.override { useX11 = false; }).overrideAttrs (o: { + configurePlatforms = [ ]; + dontUpdateAutotoolsGnuConfigScripts = true; + })).overrideDerivation (o: { + preConfigure = '' + configureFlagsArray+=("-cc" "$CC" "-as" "$AS" "-partialld" "$LD -r") + ''; + configureFlags = (removeUnknownConfigureFlags o.configureFlags) ++ [ + "--no-shared-libs" + "-host ${o.stdenv.hostPlatform.config}" + "-target ${o.stdenv.targetPlatform.config}" + ]; + }); + }; + +in { + stdenv = foldl (flip id) super.stdenv staticAdapters; + gcc49Stdenv = foldl (flip id) super.gcc49Stdenv staticAdapters; + gcc6Stdenv = foldl (flip id) super.gcc6Stdenv staticAdapters; + gcc7Stdenv = foldl (flip id) super.gcc7Stdenv staticAdapters; + gcc8Stdenv = foldl (flip id) super.gcc8Stdenv staticAdapters; + gcc9Stdenv = foldl (flip id) super.gcc9Stdenv staticAdapters; + clangStdenv = foldl (flip id) super.clangStdenv staticAdapters; + libcxxStdenv = foldl (flip id) super.libcxxStdenv staticAdapters; + + haskell = super.haskell // { + packageOverrides = composeExtensions + (super.haskell.packageOverrides or (_: _: {})) + haskellStaticAdapter; + }; + + nghttp2 = super.nghttp2.override { + enableApp = false; + }; + + ncurses = super.ncurses.override { + enableStatic = true; + }; + libxml2 = super.libxml2.override ({ + enableShared = false; + enableStatic = true; + } // optionalAttrs super.stdenv.hostPlatform.isDarwin { + pythonSupport = false; + }); + zlib = super.zlib.override { + static = true; + shared = false; + splitStaticOutput = false; + + # Don’t use new stdenv zlib because + # it doesn’t like the --disable-shared flag + stdenv = super.stdenv; + }; + xz = super.xz.override { + enableStatic = true; + }; + busybox = super.busybox.override { + enableStatic = true; + }; + libiberty = super.libiberty.override { + staticBuild = true; + }; + libpfm = super.libpfm.override { + enableShared = false; + }; + ipmitool = super.ipmitool.override { + static = true; + }; + neon = super.neon.override { + static = true; + shared = false; + }; + fmt = super.fmt.override { + enableShared = false; + }; + gifsicle = super.gifsicle.override { + static = true; + }; + bzip2 = super.bzip2.override { + linkStatic = true; + }; + optipng = super.optipng.override { + static = true; + }; + openblas = super.openblas.override { + enableStatic = true; + enableShared = false; + }; + mkl = super.mkl.override { enableStatic = true; }; + nix = super.nix.override { enableStatic = true; }; + openssl = (super.openssl_1_1.override { static = true; }).overrideAttrs (o: { + # OpenSSL doesn't like the `--enable-static` / `--disable-shared` flags. + configureFlags = (removeUnknownConfigureFlags o.configureFlags); + }); + arrow-cpp = super.arrow-cpp.override { + enableShared = false; + }; + boost = super.boost.override { + enableStatic = true; + enableShared = false; + + # Don’t use new stdenv for boost because it doesn’t like the + # --disable-shared flag + stdenv = super.stdenv; + }; + thrift = super.thrift.override { + static = true; + twisted = null; + }; + gmp = super.gmp.override { + withStatic = true; + }; + gflags = super.gflags.override { + enableShared = false; + }; + cdo = super.cdo.override { + enable_all_static = true; + }; + gsm = super.gsm.override { + staticSupport = true; + }; + crc32c = super.crc32c.override { + staticOnly = true; + }; + parted = super.parted.override { + enableStatic = true; + }; + libiconvReal = super.libiconvReal.override { + enableShared = false; + enableStatic = true; + }; + perl = super.perl.override { + # Don’t use new stdenv zlib because + # it doesn’t like the --disable-shared flag + stdenv = super.stdenv; + }; + woff2 = super.woff2.override { + static = true; + }; + snappy = super.snappy.override { + static = true; + }; + lz4 = super.lz4.override { + enableShared = false; + enableStatic = true; + }; + libressl = super.libressl.override { + buildShared = false; + }; + libjpeg_turbo = super.libjpeg_turbo.override { + enableStatic = true; + enableShared = false; + }; + + darwin = super.darwin // { + libiconv = super.darwin.libiconv.override { + enableShared = false; + enableStatic = true; + }; + }; + + kmod = super.kmod.override { + withStatic = true; + }; + + curl = super.curl.override { + # a very sad story: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=439039 + gssSupport = false; + }; + + e2fsprogs = super.e2fsprogs.override { + shared = false; + }; + + brotli = super.brotli.override { + staticOnly = true; + }; + + zstd = super.zstd.override { + static = true; + }; + + llvmPackages_8 = super.llvmPackages_8 // { + libraries = super.llvmPackages_8.libraries // rec { + libcxxabi = super.llvmPackages_8.libraries.libcxxabi.override { + enableShared = false; + }; + libcxx = super.llvmPackages_8.libraries.libcxx.override { + enableShared = false; + inherit libcxxabi; + }; + libunwind = super.llvmPackages_8.libraries.libunwind.override { + enableShared = false; + }; + }; + }; + + ocaml-ng = self.lib.mapAttrs (_: set: + if set ? overrideScope' then set.overrideScope' ocamlStaticAdapter else set + ) super.ocaml-ng; + + python27 = super.python27.override { static = true; }; + python36 = super.python36.override { static = true; }; + python37 = super.python37.override { static = true; }; + python38 = super.python38.override { static = true; }; + python39 = super.python39.override { static = true; }; + python3Minimal = super.python3Minimal.override { static = true; }; + + + libev = super.libev.override { static = true; }; + + libexecinfo = super.libexecinfo.override { enableShared = false; }; + + xorg = super.xorg.overrideScope' (xorgself: xorgsuper: { + libX11 = xorgsuper.libX11.overrideAttrs (attrs: { + depsBuildBuild = attrs.depsBuildBuild ++ [ (self.buildPackages.stdenv.cc.libc.static or null) ]; + }); + xauth = xorgsuper.xauth.overrideAttrs (attrs: { + # missing transitive dependencies + preConfigure = attrs.preConfigure or "" + '' + export NIX_CFLAGS_LINK="$NIX_CFLAGS_LINK -lxcb -lXau -lXdmcp" + ''; + }); + xdpyinfo = xorgsuper.xdpyinfo.overrideAttrs (attrs: { + # missing transitive dependencies + preConfigure = attrs.preConfigure or "" + '' + export NIX_CFLAGS_LINK="$NIX_CFLAGS_LINK -lXau -lXdmcp" + ''; + }); + libxcb = xorgsuper.libxcb.overrideAttrs (attrs: { + configureFlags = attrs.configureFlags ++ [ "--disable-shared" ]; + }); + libXi= xorgsuper.libXi.overrideAttrs (attrs: { + configureFlags = attrs.configureFlags ++ [ "--disable-shared" ]; + }); + }); +} diff --git a/infra/libkookie/nixpkgs/pkgs/top-level/unix-tools.nix b/infra/libkookie/nixpkgs/pkgs/top-level/unix-tools.nix new file mode 100644 index 000000000000..cdad9de61f41 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/top-level/unix-tools.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}-${version}" { + 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-${version}" {} '' + 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.utillinux; + darwin = pkgs.darwin.text_cmds; + }; + column = { + linux = pkgs.utillinux; + darwin = pkgs.netbsd.column; + }; + eject = { + linux = pkgs.utillinux; + }; + 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.utillinux; + darwin = pkgs.getopt; + }; + fdisk = { + linux = pkgs.utillinux; + darwin = pkgs.darwin.diskdev_cmds; + }; + fsck = { + linux = pkgs.utillinux; + darwin = pkgs.darwin.diskdev_cmds; + }; + hexdump = { + linux = pkgs.utillinux; + 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.utillinux; + }; + more = { + linux = pkgs.utillinux; + darwin = more_compat; + }; + mount = { + linux = pkgs.utillinux; + 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.utillinux; + 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.utillinux; + darwin = pkgs.darwin.diskdev_cmds; + }; + whereis = { + linux = pkgs.utillinux; + darwin = pkgs.darwin.shell_cmds; + }; + wall = { + linux = pkgs.utillinux; + }; + 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.utillinux; + 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 ]; + utillinux = [ fsck fdisk getopt hexdump mount + script umount whereis write col column ]; + nettools = [ arp hostname ifconfig netstat route ]; + }; +in bins // compat diff --git a/infra/libkookie/nixpkgs/pkgs/top-level/wine-packages.nix b/infra/libkookie/nixpkgs/pkgs/top-level/wine-packages.nix new file mode 100644 index 000000000000..88ea6a00f8c1 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/top-level/wine-packages.nix @@ -0,0 +1,54 @@ +{ stdenv, config, callPackage, wineBuild }: + +rec { + fonts = callPackage ../misc/emulators/wine/fonts.nix {}; + minimal = callPackage ../misc/emulators/wine { + wineRelease = config.wine.release or "stable"; + inherit wineBuild; + }; + + base = minimal.override { + pngSupport = true; + jpegSupport = true; + tiffSupport = true; + gettextSupport = true; + fontconfigSupport = true; + alsaSupport = true; + openglSupport = true; + vulkanSupport = stdenv.isLinux; + tlsSupport = true; + cupsSupport = true; + dbusSupport = true; + cairoSupport = true; + cursesSupport = true; + saneSupport = true; + pulseaudioSupport = config.pulseaudio or stdenv.isLinux; + udevSupport = true; + xineramaSupport = true; + xmlSupport = true; + sdlSupport = true; + }; + + full = base.override { + gtkSupport = true; + gstreamerSupport = true; + colorManagementSupport = true; + mpg123Support = true; + openalSupport = true; + openclSupport = true; + odbcSupport = true; + netapiSupport = true; + vaSupport = true; + pcapSupport = true; + v4lSupport = true; + gsmSupport = true; + gphoto2Support = true; + ldapSupport = true; + faudioSupport = true; + vkd3dSupport = true; + }; + + stable = base.override { wineRelease = "stable"; }; + unstable = base.override { wineRelease = "unstable"; }; + staging = base.override { wineRelease = "staging"; }; +} |