diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix
index 1da72ed7de5..002d8c435e2 100644
--- a/maintainers/maintainer-list.nix
+++ b/maintainers/maintainer-list.nix
@@ -2879,6 +2879,12 @@
githubId = 5918766;
name = "Franz Thoma";
};
+ fooker = {
+ email = "fooker@lab.sh";
+ github = "fooker";
+ githubId = 405105;
+ name = "Dustin Frisch";
+ };
forkk = {
email = "forkk@forkk.net";
github = "forkk";
@@ -7995,6 +8001,12 @@
githubId = 65870;
name = "Сухарик";
};
+ SuperSandro2000 = {
+ email = "sandro.jaeckel@gmail.com";
+ github = "SuperSandro2000";
+ githubId = 7258858;
+ name = "Sandro Jäckel";
+ };
SuprDewd = {
email = "suprdewd@gmail.com";
github = "SuprDewd";
diff --git a/nixos/lib/test-driver/test-driver.py b/nixos/lib/test-driver/test-driver.py
index dc11eaa1982..612bb02aaa9 100644
--- a/nixos/lib/test-driver/test-driver.py
+++ b/nixos/lib/test-driver/test-driver.py
@@ -773,7 +773,8 @@ class Machine:
retry(window_is_visible)
def sleep(self, secs: int) -> None:
- time.sleep(secs)
+ # We want to sleep in *guest* time, not *host* time.
+ self.succeed(f"sleep {secs}")
def forward_port(self, host_port: int = 8080, guest_port: int = 80) -> None:
"""Forward a TCP port on the host to a TCP port on the guest.
diff --git a/nixos/modules/services/databases/postgresql.nix b/nixos/modules/services/databases/postgresql.nix
index c726a08e34f..5056d50153f 100644
--- a/nixos/modules/services/databases/postgresql.nix
+++ b/nixos/modules/services/databases/postgresql.nix
@@ -11,23 +11,23 @@ let
then cfg.package
else cfg.package.withPackages (_: cfg.extraPlugins);
+ toStr = value:
+ if true == value then "yes"
+ else if false == value then "no"
+ else if isString value then "'${lib.replaceStrings ["'"] ["''"] value}'"
+ else toString value;
+
# The main PostgreSQL configuration file.
- configFile = pkgs.writeText "postgresql.conf"
- ''
- hba_file = '${pkgs.writeText "pg_hba.conf" cfg.authentication}'
- ident_file = '${pkgs.writeText "pg_ident.conf" cfg.identMap}'
- log_destination = 'stderr'
- log_line_prefix = '${cfg.logLinePrefix}'
- listen_addresses = '${if cfg.enableTCPIP then "*" else "localhost"}'
- port = ${toString cfg.port}
- ${cfg.extraConfig}
- '';
+ configFile = pkgs.writeText "postgresql.conf" (concatStringsSep "\n" (mapAttrsToList (n: v: "${n} = ${toStr v}") cfg.settings));
groupAccessAvailable = versionAtLeast postgresql.version "11.0";
in
{
+ imports = [
+ (mkRemovedOptionModule [ "services" "postgresql" "extraConfig" ] "Use services.postgresql.settings instead.")
+ ];
###### interface
@@ -212,10 +212,28 @@ in
'';
};
- extraConfig = mkOption {
- type = types.lines;
- default = "";
- description = "Additional text to be appended to postgresql.conf.";
+ settings = mkOption {
+ type = with types; attrsOf (oneOf [ bool float int str ]);
+ default = {};
+ description = ''
+ PostgreSQL configuration. Refer to
+
+ for an overview of postgresql.conf.
+
+
+ String values will automatically be enclosed in single quotes. Single quotes will be
+ escaped with two single quotes as described by the upstream documentation linked above.
+
+ '';
+ example = literalExample ''
+ {
+ log_connections = true;
+ log_statement = "all";
+ logging_collector = true
+ log_disconnections = true
+ log_destination = lib.mkForce "syslog";
+ }
+ '';
};
recoveryConfig = mkOption {
@@ -245,6 +263,16 @@ in
config = mkIf cfg.enable {
+ services.postgresql.settings =
+ {
+ hba_file = "${pkgs.writeText "pg_hba.conf" cfg.authentication}";
+ ident_file = "${pkgs.writeText "pg_ident.conf" cfg.identMap}";
+ log_destination = "stderr";
+ log_line_prefix = cfg.logLinePrefix;
+ listen_addresses = if cfg.enableTCPIP then "*" else "localhost";
+ port = cfg.port;
+ };
+
services.postgresql.package =
# Note: when changing the default, make it conditional on
# ‘system.stateVersion’ to maintain compatibility with existing
diff --git a/nixos/modules/services/misc/redmine.nix b/nixos/modules/services/misc/redmine.nix
index 0e71cf92569..1313bdaccc4 100644
--- a/nixos/modules/services/misc/redmine.nix
+++ b/nixos/modules/services/misc/redmine.nix
@@ -1,12 +1,12 @@
{ config, lib, pkgs, ... }:
let
- inherit (lib) mkDefault mkEnableOption mkIf mkOption types;
+ inherit (lib) mkBefore mkDefault mkEnableOption mkIf mkOption mkRemovedOptionModule types;
inherit (lib) concatStringsSep literalExample mapAttrsToList;
- inherit (lib) optional optionalAttrs optionalString singleton versionAtLeast;
+ inherit (lib) optional optionalAttrs optionalString;
cfg = config.services.redmine;
-
+ format = pkgs.formats.yaml {};
bundle = "${cfg.package}/share/redmine/bin/bundle";
databaseYml = pkgs.writeText "database.yml" ''
@@ -20,24 +20,8 @@ let
${optionalString (cfg.database.type == "mysql2" && cfg.database.socket != null) "socket: ${cfg.database.socket}"}
'';
- configurationYml = pkgs.writeText "configuration.yml" ''
- default:
- scm_subversion_command: ${pkgs.subversion}/bin/svn
- scm_mercurial_command: ${pkgs.mercurial}/bin/hg
- scm_git_command: ${pkgs.gitAndTools.git}/bin/git
- scm_cvs_command: ${pkgs.cvs}/bin/cvs
- scm_bazaar_command: ${pkgs.breezy}/bin/bzr
- scm_darcs_command: ${pkgs.darcs}/bin/darcs
-
- ${cfg.extraConfig}
- '';
-
- additionalEnvironment = pkgs.writeText "additional_environment.rb" ''
- config.logger = Logger.new("${cfg.stateDir}/log/production.log", 14, 1048576)
- config.logger.level = Logger::INFO
-
- ${cfg.extraEnv}
- '';
+ configurationYml = format.generate "configuration.yml" cfg.settings;
+ additionalEnvironment = pkgs.writeText "additional_environment.rb" cfg.extraEnv;
unpackTheme = unpack "theme";
unpackPlugin = unpack "plugin";
@@ -56,8 +40,13 @@ let
pgsqlLocal = cfg.database.createLocally && cfg.database.type == "postgresql";
in
-
{
+ imports = [
+ (mkRemovedOptionModule [ "services" "redmine" "extraConfig" ] "Use services.redmine.settings instead.")
+ (mkRemovedOptionModule [ "services" "redmine" "database" "password" ] "Use services.redmine.database.passwordFile instead.")
+ ];
+
+ # interface
options = {
services.redmine = {
enable = mkEnableOption "Redmine";
@@ -93,21 +82,24 @@ in
description = "The state directory, logs and plugins are stored here.";
};
- extraConfig = mkOption {
- type = types.lines;
- default = "";
+ settings = mkOption {
+ type = format.type;
+ default = {};
description = ''
- Extra configuration in configuration.yml.
-
- See
+ Redmine configuration (configuration.yml). Refer to
+
for details.
'';
example = literalExample ''
- email_delivery:
- delivery_method: smtp
- smtp_settings:
- address: mail.example.com
- port: 25
+ {
+ email_delivery = {
+ delivery_method = "smtp";
+ smtp_settings = {
+ address = "mail.example.com";
+ port = 25;
+ };
+ };
+ }
'';
};
@@ -186,16 +178,6 @@ in
description = "Database user.";
};
- password = mkOption {
- type = types.str;
- default = "";
- description = ''
- The password corresponding to .
- Warning: this is stored in cleartext in the Nix store!
- Use instead.
- '';
- };
-
passwordFile = mkOption {
type = types.nullOr types.path;
default = null;
@@ -226,11 +208,12 @@ in
};
};
+ # implementation
config = mkIf cfg.enable {
assertions = [
- { assertion = cfg.database.passwordFile != null || cfg.database.password != "" || cfg.database.socket != null;
- message = "one of services.redmine.database.socket, services.redmine.database.passwordFile, or services.redmine.database.password must be set";
+ { assertion = cfg.database.passwordFile != null || cfg.database.socket != null;
+ message = "one of services.redmine.database.socket or services.redmine.database.passwordFile must be set";
}
{ assertion = cfg.database.createLocally -> cfg.database.user == cfg.user;
message = "services.redmine.database.user must be set to ${cfg.user} if services.redmine.database.createLocally is set true";
@@ -243,6 +226,22 @@ in
}
];
+ services.redmine.settings = {
+ production = {
+ scm_subversion_command = "${pkgs.subversion}/bin/svn";
+ scm_mercurial_command = "${pkgs.mercurial}/bin/hg";
+ scm_git_command = "${pkgs.gitAndTools.git}/bin/git";
+ scm_cvs_command = "${pkgs.cvs}/bin/cvs";
+ scm_bazaar_command = "${pkgs.breezy}/bin/bzr";
+ scm_darcs_command = "${pkgs.darcs}/bin/darcs";
+ };
+ };
+
+ services.redmine.extraEnv = mkBefore ''
+ config.logger = Logger.new("${cfg.stateDir}/log/production.log", 14, 1048576)
+ config.logger.level = Logger::INFO
+ '';
+
services.mysql = mkIf mysqlLocal {
enable = true;
package = mkDefault pkgs.mariadb;
@@ -338,7 +337,7 @@ in
# handle database.passwordFile & permissions
- DBPASS=$(head -n1 ${cfg.database.passwordFile})
+ DBPASS=${optionalString (cfg.database.passwordFile != null) "$(head -n1 ${cfg.database.passwordFile})"}
cp -f ${databaseYml} "${cfg.stateDir}/config/database.yml"
sed -e "s,#dbpass#,$DBPASS,g" -i "${cfg.stateDir}/config/database.yml"
chmod 440 "${cfg.stateDir}/config/database.yml"
@@ -379,17 +378,6 @@ in
redmine.gid = config.ids.gids.redmine;
};
- warnings = optional (cfg.database.password != "")
- ''config.services.redmine.database.password will be stored as plaintext
- in the Nix store. Use database.passwordFile instead.'';
-
- # Create database passwordFile default when password is configured.
- services.redmine.database.passwordFile =
- (mkDefault (toString (pkgs.writeTextFile {
- name = "redmine-database-password";
- text = cfg.database.password;
- })));
-
};
}
diff --git a/nixos/modules/services/networking/networkmanager.nix b/nixos/modules/services/networking/networkmanager.nix
index cc789897b29..17c549d42c3 100644
--- a/nixos/modules/services/networking/networkmanager.nix
+++ b/nixos/modules/services/networking/networkmanager.nix
@@ -458,7 +458,7 @@ in {
systemd.services.NetworkManager-dispatcher = {
wantedBy = [ "network.target" ];
- restartTriggers = [ configFile ];
+ restartTriggers = [ configFile overrideNameserversScript ];
# useful binaries for user-specified hooks
path = [ pkgs.iproute pkgs.utillinux pkgs.coreutils ];
diff --git a/nixos/tests/postgresql-wal-receiver.nix b/nixos/tests/postgresql-wal-receiver.nix
index 3be95187fe2..432b46234f9 100644
--- a/nixos/tests/postgresql-wal-receiver.nix
+++ b/nixos/tests/postgresql-wal-receiver.nix
@@ -14,13 +14,10 @@ let
baseBackupDir = "/tmp/pg_basebackup";
walBackupDir = "/tmp/pg_wal";
atLeast12 = lib.versionAtLeast pkg.version "12.0";
- restoreCommand = ''
- restore_command = 'cp ${walBackupDir}/%f %p'
- '';
recoveryFile = if atLeast12
then pkgs.writeTextDir "recovery.signal" ""
- else pkgs.writeTextDir "recovery.conf" "${restoreCommand}";
+ else pkgs.writeTextDir "recovery.conf" "restore_command = 'cp ${walBackupDir}/%f %p'";
in {
name = "postgresql-wal-receiver-${postgresqlPackage}";
@@ -30,14 +27,17 @@ let
services.postgresql = {
package = pkg;
enable = true;
- extraConfig = ''
- wal_level = archive # alias for replica on pg >= 9.6
- max_wal_senders = 10
- max_replication_slots = 10
- '' + lib.optionalString atLeast12 ''
- ${restoreCommand}
- recovery_end_command = 'touch recovery.done'
- '';
+ settings = lib.mkMerge [
+ {
+ wal_level = "archive"; # alias for replica on pg >= 9.6
+ max_wal_senders = 10;
+ max_replication_slots = 10;
+ }
+ (lib.mkIf atLeast12 {
+ restore_command = "cp ${walBackupDir}/%f %p";
+ recovery_end_command = "touch recovery.done";
+ })
+ ];
authentication = ''
host replication ${replicationUser} all trust
'';
diff --git a/pkgs/applications/audio/faust/faust2.nix b/pkgs/applications/audio/faust/faust2.nix
index 9bf4d3a5704..515f8a6f9af 100644
--- a/pkgs/applications/audio/faust/faust2.nix
+++ b/pkgs/applications/audio/faust/faust2.nix
@@ -5,8 +5,7 @@
, pkgconfig
, cmake
, llvm
-# TODO: put back when it builds again
-# , emscripten
+, emscripten
, openssl
, libsndfile
, libmicrohttpd
@@ -47,7 +46,7 @@ let
inherit src;
nativeBuildInputs = [ makeWrapper pkgconfig cmake vim which ];
- buildInputs = [ llvm /*emscripten*/ openssl libsndfile libmicrohttpd gnutls libtasn1 p11-kit ];
+ buildInputs = [ llvm emscripten openssl libsndfile libmicrohttpd gnutls libtasn1 p11-kit ];
passthru = {
diff --git a/pkgs/applications/audio/mopidy/iris.nix b/pkgs/applications/audio/mopidy/iris.nix
index 796812a9bd0..467ba6fe3f7 100644
--- a/pkgs/applications/audio/mopidy/iris.nix
+++ b/pkgs/applications/audio/mopidy/iris.nix
@@ -14,7 +14,7 @@ python3Packages.buildPythonApplication rec {
] ++ (with python3Packages; [
configobj
requests
- tornado_4
+ tornado
]);
# no tests implemented
diff --git a/pkgs/applications/audio/mopidy/mopidy.nix b/pkgs/applications/audio/mopidy/mopidy.nix
index ae65d9b2f6e..28216020b78 100644
--- a/pkgs/applications/audio/mopidy/mopidy.nix
+++ b/pkgs/applications/audio/mopidy/mopidy.nix
@@ -21,7 +21,7 @@ pythonPackages.buildPythonApplication rec {
];
propagatedBuildInputs = with pythonPackages; [
- gst-python pygobject3 pykka tornado_4 requests setuptools
+ gst-python pygobject3 pykka tornado requests setuptools
] ++ stdenv.lib.optional (!stdenv.isDarwin) dbus-python;
# There are no tests
diff --git a/pkgs/applications/networking/cluster/luigi/default.nix b/pkgs/applications/networking/cluster/luigi/default.nix
index f69082bff3a..98b71cfe112 100644
--- a/pkgs/applications/networking/cluster/luigi/default.nix
+++ b/pkgs/applications/networking/cluster/luigi/default.nix
@@ -1,15 +1,22 @@
-{ lib, python3Packages }:
+{ lib, python3 }:
-python3Packages.buildPythonApplication rec {
+let
+ python = python3.override {
+ self = python;
+ packageOverrides = self: super: {
+ tornado = super.tornado_5;
+ };
+ };
+in with python.pkgs; buildPythonApplication rec {
pname = "luigi";
version = "3.0.1";
- src = python3Packages.fetchPypi {
+ src = fetchPypi {
inherit pname version;
sha256 = "02c480f5pjgqsvqnkaw7f6n4nhdspmhq5w7lw8sgg2v3jghg8n7i";
};
- propagatedBuildInputs = with python3Packages; [ dateutil tornado_4 python-daemon boto3 ];
+ propagatedBuildInputs = [ dateutil tornado_5 python-daemon boto3 ];
# Requires tox, hadoop, and google cloud
doCheck = false;
diff --git a/pkgs/applications/radio/noaa-apt/default.nix b/pkgs/applications/radio/noaa-apt/default.nix
new file mode 100644
index 00000000000..55703ea44d6
--- /dev/null
+++ b/pkgs/applications/radio/noaa-apt/default.nix
@@ -0,0 +1,64 @@
+{ lib
+, rustPlatform
+, fetchFromGitHub
+, pkg-config
+, atk
+, cairo
+, gdk-pixbuf
+, glib
+, gtk3
+, openssl
+, pango
+}:
+
+rustPlatform.buildRustPackage rec {
+ pname = "noaa-apt";
+ version = "1.2.0";
+
+ src = fetchFromGitHub {
+ owner = "martinber";
+ repo = "noaa-apt";
+ rev = "v${version}";
+ sha256 = "0fqki4a9c54rixdz5bpswvn433f9saw6yazgw4av3xdd7g2fdvvj";
+ };
+
+ nativeBuildInputs = [
+ pkg-config
+ ];
+
+ buildInputs = [
+ atk
+ cairo
+ gdk-pixbuf
+ glib
+ gtk3
+ openssl
+ pango
+ ];
+
+ cargoSha256 = "1pzcq31inazmc9cz31fspzqkp0lpkjid8ai3g17sin1pfzby5jlh";
+
+ preBuild = ''
+ # Used by macro pointing to resource location at compile time.
+ export NOAA_APT_RES_DIR=$out/share/noaa-apt
+ '';
+
+ postInstall = ''
+ # Resources.
+ mkdir -p $out/share/noaa-apt
+ cp -R $src/res/* $out/share/noaa-apt/
+
+ # Desktop icon.
+ install -Dm644 -t $out/share/applications $src/debian/ar.com.mbernardi.noaa-apt.desktop
+ install -Dm644 -t $out/share/icons/hicolor/48x48/apps $src/debian/noaa-apt.png
+ install -Dm644 -t $out/share/icons/hicolor/scalable/apps $src/debian/noaa-apt.svg
+ '';
+
+ meta = with lib; {
+ description = "NOAA APT image decoder.";
+ homepage = "http://noaa-apt.mbernardi.com.ar/";
+ license = licenses.gpl3Only;
+ maintainers = with maintainers; [ trepetti ];
+ changelog = "https://github.com/martinber/noaa-apt/releases/tag/v${version}";
+ };
+}
diff --git a/pkgs/applications/science/math/rofi-calc/default.nix b/pkgs/applications/science/math/rofi-calc/default.nix
index 84adb2358d2..40b2711ff65 100644
--- a/pkgs/applications/science/math/rofi-calc/default.nix
+++ b/pkgs/applications/science/math/rofi-calc/default.nix
@@ -12,13 +12,13 @@
stdenv.mkDerivation rec {
pname = "rofi-calc";
- version = "1.7";
+ version = "1.8";
src = fetchFromGitHub {
owner = "svenstaro";
repo = pname;
rev = "v${version}";
- sha256 = "046x2zpvza7n0m81s75qkvmnpkvsvvyqqqjxcqzj7by0llpqs7wa";
+ sha256 = "0vwb9c3xvd2cms6cw8j8parg7w4bsxvvrd1wgggr8sz2p8rrvy5p";
};
nativeBuildInputs = [
diff --git a/pkgs/development/compilers/binaryen/0001-Get-rid-of-git-dependency.patch b/pkgs/development/compilers/binaryen/0001-Get-rid-of-git-dependency.patch
deleted file mode 100644
index 79b053592a9..00000000000
--- a/pkgs/development/compilers/binaryen/0001-Get-rid-of-git-dependency.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From 1c6af6c68ba3f49ae9e942844c739e934339d3b9 Mon Sep 17 00:00:00 2001
-From: Maximilian Bosch
-Date: Sat, 14 Mar 2020 00:37:31 +0100
-Subject: [PATCH] Get rid of git dependency
-
----
- CMakeLists.txt | 15 +--------------
- 1 file changed, 1 insertion(+), 14 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 4acf703e1..4e9bd60b5 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -7,20 +7,7 @@ IF(NOT CMAKE_BUILD_TYPE)
- SET(CMAKE_BUILD_TYPE "Release")
- ENDIF()
-
--FIND_PACKAGE(Git QUIET REQUIRED)
--EXECUTE_PROCESS(COMMAND
-- "${GIT_EXECUTABLE}" --git-dir=${CMAKE_CURRENT_SOURCE_DIR}/.git describe --tags
-- RESULT_VARIABLE
-- GIT_HASH_RESULT
-- OUTPUT_VARIABLE
-- GIT_HASH
-- OUTPUT_STRIP_TRAILING_WHITESPACE)
--IF(${GIT_HASH_RESULT})
-- MESSAGE(WARNING "Error running git describe to determine version")
-- SET(BINARYEN_VERSION_INFO "(unable to determine version)")
--ELSE()
-- SET(BINARYEN_VERSION_INFO "${GIT_HASH}")
--ENDIF()
-+SET(BINARYEN_VERSION_INFO "@emscriptenv@")
- CONFIGURE_FILE(config.h.in config.h)
-
- OPTION(BUILD_STATIC_LIB "Build as a static library" OFF)
---
-2.25.0
-
diff --git a/pkgs/development/compilers/binaryen/default.nix b/pkgs/development/compilers/binaryen/default.nix
index e9dc939b5ed..6de4e0fb304 100644
--- a/pkgs/development/compilers/binaryen/default.nix
+++ b/pkgs/development/compilers/binaryen/default.nix
@@ -1,38 +1,23 @@
-{ stdenv, cmake, python3, fetchFromGitHub, emscriptenRev ? null, substituteAll }:
-
-let
- defaultVersion = "95";
-
- # Map from git revs to SHA256 hashes
- sha256s = {
- version_95 = "1w4js9bm5qv5aws8bzz4f0n3ni2l7h4fidkq9v5bldf0zxncy8m3";
- "1.39.1" = "0ygm9m5322h4vfpf3j63q32qxk2l26yk62hh7dkb49j51zwl1y3y";
- };
-in
+{ stdenv, cmake, python3, fetchFromGitHub, fetchpatch, emscripten }:
stdenv.mkDerivation rec {
- version = if emscriptenRev == null
- then defaultVersion
- else "emscripten-${emscriptenRev}";
- rev = if emscriptenRev == null
- then "version_${version}"
- else emscriptenRev;
pname = "binaryen";
+ version = "96";
src = fetchFromGitHub {
owner = "WebAssembly";
repo = "binaryen";
- sha256 =
- if builtins.hasAttr rev sha256s
- then builtins.getAttr rev sha256s
- else null;
- inherit rev;
+ rev = "version_${version}";
+ sha256 = "1mqpb6yy87aifpbcy0lczi3bp6kddrwi6d0g6lrhjrdxx2kvbdag";
};
- patches = stdenv.lib.optional (emscriptenRev != null) (substituteAll {
- src = ./0001-Get-rid-of-git-dependency.patch;
- emscriptenv = "1.39.1";
- });
+ patches = [
+ # Adds --minimize-wasm-changes option required by emscripten 2.0.1
+ (fetchpatch {
+ url = "https://patch-diff.githubusercontent.com/raw/WebAssembly/binaryen/pull/3044.patch";
+ sha256 = "1hdbc9h9zhh2d3bl4sqv6v9psfmny715612bwpjdln0ibdvc129s";
+ })
+ ];
nativeBuildInputs = [ cmake python3 ];
@@ -43,4 +28,8 @@ stdenv.mkDerivation rec {
maintainers = with maintainers; [ asppsa ];
license = licenses.asl20;
};
+
+ passthru.tests = {
+ inherit emscripten;
+ };
}
diff --git a/pkgs/development/compilers/closure/default.nix b/pkgs/development/compilers/closure/default.nix
index 2ee1223a53b..7c0d42f1864 100644
--- a/pkgs/development/compilers/closure/default.nix
+++ b/pkgs/development/compilers/closure/default.nix
@@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
pname = "closure-compiler";
- version = "20200614";
+ version = "20200719";
src = fetchurl {
url = "https://dl.google.com/closure-compiler/compiler-${version}.tar.gz";
- sha256 = "0a54y2d9nfg60knfv34kf6sdsh065dzam86l3wprf8gvqffxxcli";
+ sha256 = "18095i98mk5kc1vpaf6gvmvhiyl2x4zrcwd7ix5l98jydldiz7wx";
};
sourceRoot = ".";
diff --git a/pkgs/development/compilers/emscripten/default.nix b/pkgs/development/compilers/emscripten/default.nix
index cd5142acce8..ac13f955930 100644
--- a/pkgs/development/compilers/emscripten/default.nix
+++ b/pkgs/development/compilers/emscripten/default.nix
@@ -1,63 +1,104 @@
-{ emscriptenVersion, stdenv, fetchFromGitHub, emscriptenfastcomp, python, nodejs, closurecompiler
-, jre, binaryen, enableWasm ? true , cmake
+{ stdenv, fetchFromGitHub, python3, nodejs, closurecompiler
+, jre, binaryen
+, llvmPackages_11
+, symlinkJoin, makeWrapper
+, mkYarnModules
}:
-let
- rev = emscriptenVersion;
- appdir = "share/emscripten";
- binaryenVersioned = binaryen.override { emscriptenRev = rev; };
-in
+stdenv.mkDerivation rec {
+ pname = "emscripten";
+ version = "2.0.1";
-stdenv.mkDerivation {
- name = "emscripten-${rev}";
+ llvmEnv = symlinkJoin {
+ name = "emscripten-llvm-${version}";
+ paths = with llvmPackages_11; [ clang-unwrapped lld llvm ];
+ };
+
+ nodeModules = mkYarnModules {
+ name = "emscripten-node-modules-${version}";
+ inherit pname version;
+ # it is vitally important the the package.json has name and version fields
+ packageJSON = ./package.json;
+ yarnLock = ./yarn.lock;
+ yarnNix = ./yarn.nix;
+ };
src = fetchFromGitHub {
owner = "emscripten-core";
repo = "emscripten";
- sha256 = "1j3f0hpy05qskaiyv75l7wv4n0nzxhrh9b296zchx3f6f9h2rghq";
- inherit rev;
+ sha256 = "06dsd819qjv4n2ihrz1mpn5aigmbv0gpkm7iw06wrqx30nzphnpk";
+ rev = version;
};
- buildInputs = [ nodejs cmake python ];
+ nativeBuildInputs = [ makeWrapper ];
+ buildInputs = [ nodejs python3 ];
+
+ buildPhase = ''
+ patchShebangs .
- buildCommand = ''
- mkdir -p $out/${appdir}
- cp -r $src/* $out/${appdir}
- chmod -R +w $out/${appdir}
- grep -rl '^#!/usr.*python' $out/${appdir} | xargs sed -i -s 's@^#!/usr.*python.*@#!${python}/bin/python@'
- sed -i -e "s,EM_CONFIG = '~/.emscripten',EM_CONFIG = '$out/${appdir}/config'," $out/${appdir}/tools/shared.py
- sed -i -e 's,^.*did not see a source tree above the LLVM.*$, return True,' $out/${appdir}/tools/shared.py
- sed -i -e 's,def check_sanity(force=False):,def check_sanity(force=False):\n return,' $out/${appdir}/tools/shared.py
# fixes cmake support
- sed -i -e "s/print \('emcc (Emscript.*\)/sys.stderr.write(\1); sys.stderr.flush()/g" $out/${appdir}/emcc.py
- mkdir $out/bin
- ln -s $out/${appdir}/{em++,em-config,emar,embuilder.py,emcc,emcmake,emconfigure,emlink.py,emmake,emranlib,emrun,emscons} $out/bin
+ sed -i -e "s/print \('emcc (Emscript.*\)/sys.stderr.write(\1); sys.stderr.flush()/g" emcc.py
- echo "EMSCRIPTEN_ROOT = '$out/${appdir}'" > $out/${appdir}/config
- echo "LLVM_ROOT = '${emscriptenfastcomp}/bin'" >> $out/${appdir}/config
- echo "PYTHON = '${python}/bin/python'" >> $out/${appdir}/config
- echo "NODE_JS = '${nodejs}/bin/node'" >> $out/${appdir}/config
- echo "JS_ENGINES = [NODE_JS]" >> $out/${appdir}/config
- echo "COMPILER_ENGINE = NODE_JS" >> $out/${appdir}/config
- echo "CLOSURE_COMPILER = '${closurecompiler}/share/java/closure-compiler-v${closurecompiler.version}.jar'" >> $out/${appdir}/config
- echo "JAVA = '${jre}/bin/java'" >> $out/${appdir}/config
+ # disables cache in user home, use installation directory instead
+ sed -i '/^def/!s/root_is_writable()/True/' tools/shared.py
+ sed -i "/^def check_sanity/a\\ return" tools/shared.py
+
+ # required for wasm2c
+ ln -s ${nodeModules}/node_modules .
+
+ echo "EMSCRIPTEN_ROOT = '$appdir'" > .emscripten
+ echo "LLVM_ROOT = '${llvmEnv}/bin'" >> .emscripten
+ echo "NODE_JS = '${nodejs}/bin/node'" >> .emscripten
+ echo "JS_ENGINES = [NODE_JS]" >> .emscripten
+ echo "CLOSURE_COMPILER = ['${closurecompiler}/bin/closure-compiler']" >> .emscripten
+ echo "JAVA = '${jre}/bin/java'" >> .emscripten
# to make the test(s) below work
- echo "SPIDERMONKEY_ENGINE = []" >> $out/${appdir}/config
- ''
- + stdenv.lib.optionalString enableWasm ''
- echo "BINARYEN_ROOT = '${binaryenVersioned}'" >> $out/share/emscripten/config
- ''
- +
- ''
- echo "--------------- running test -----------------"
- # quick hack to get the test working
- HOME=$TMPDIR
- cp $out/${appdir}/config $HOME/.emscripten
- export PATH=$PATH:$out/bin
+ # echo "SPIDERMONKEY_ENGINE = []" >> .emscripten
+ echo "BINARYEN_ROOT = '${binaryen}'" >> .emscripten
- #export EMCC_DEBUG=2
- ${python}/bin/python $src/tests/runner.py test_hello_world
- echo "--------------- /running test -----------------"
+ # make emconfigure/emcmake use the correct (wrapped) binaries
+ sed -i "s|^EMCC =.*|EMCC='$out/bin/emcc'|" tools/shared.py
+ sed -i "s|^EMXX =.*|EMXX='$out/bin/em++'|" tools/shared.py
+ sed -i "s|^EMAR =.*|EMAR='$out/bin/emar'|" tools/shared.py
+ sed -i "s|^EMRANLIB =.*|EMRANLIB='$out/bin/emranlib'|" tools/shared.py
+
+ # The tests use the C compiler to compile generated C code,
+ # use the wrapped compiler
+ sed -i 's/shared.CLANG_CC/"cc"/' tests/runner.py
+ '';
+
+ installPhase = ''
+ appdir=$out/share/emscripten
+ mkdir -p $appdir
+ cp -r . $appdir
+ chmod -R +w $appdir
+
+ mkdir -p $out/bin
+ for b in em++ em-config emar embuilder.py emcc emcmake emconfigure emlink.py emmake emranlib emrun emscons; do
+ makeWrapper $appdir/$b $out/bin/$b \
+ --set NODE_PATH ${nodeModules}/node_modules \
+ --set EM_EXCLUSIVE_CACHE_ACCESS 1 \
+ --set PYTHON ${python3}/bin/python
+ done
+
+ # precompile libc (etc.) in all variants:
+ pushd $TMPDIR
+ echo 'int main() { return 42; }' >test.c
+ for LTO in -flto ""; do
+ # wasm2c doesn't work with PIC
+ $out/bin/emcc -s WASM2C -s STANDALONE_WASM $LTO test.c
+
+ for RELOCATABLE in "" "-s RELOCATABLE"; do
+ $out/bin/emcc $RELOCATABLE $LTO test.c
+ done
+ done
+ popd
+
+ export PYTHON=${python3}/bin/python
+ export NODE_PATH=${nodeModules}/node_modules
+ pushd $appdir
+ python tests/runner.py test_hello_world
+ popd
'';
meta = with stdenv.lib; {
diff --git a/pkgs/development/compilers/emscripten/fastcomp/default.nix b/pkgs/development/compilers/emscripten/fastcomp/default.nix
deleted file mode 100644
index 57496d28860..00000000000
--- a/pkgs/development/compilers/emscripten/fastcomp/default.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-{ newScope, stdenv, binutils, wrapCCWith, symlinkJoin }:
-let
- callPackage = newScope (self // {inherit stdenv;});
-
- self = {
- emscriptenfastcomp-unwrapped = callPackage ./emscripten-fastcomp.nix {};
- emscriptenfastcomp-wrapped = wrapCCWith {
- cc = self.emscriptenfastcomp-unwrapped;
- # Never want Apple's cctools for WASM target
- bintools = binutils;
- libc = stdenv.cc.libc;
- extraBuildCommands = ''
- # hardening flags break WASM support
- cat > $out/nix-support/add-hardening.sh
- '';
- };
- emscriptenfastcomp = symlinkJoin {
- name = "emscriptenfastcomp-${stdenv.lib.getVersion self.emscriptenfastcomp-unwrapped}";
- paths = [ self.emscriptenfastcomp-wrapped self.emscriptenfastcomp-unwrapped ];
- preferLocalBuild = false;
- allowSubstitutes = true;
- postBuild = ''
- # replace unwrapped clang-3.9 binary by wrapper
- ln -sf $out/bin/clang $out/bin/clang-[0-9]*
- '';
- };
- };
-in self
diff --git a/pkgs/development/compilers/emscripten/fastcomp/emscripten-fastcomp.nix b/pkgs/development/compilers/emscripten/fastcomp/emscripten-fastcomp.nix
deleted file mode 100644
index f8f06e24f8b..00000000000
--- a/pkgs/development/compilers/emscripten/fastcomp/emscripten-fastcomp.nix
+++ /dev/null
@@ -1,53 +0,0 @@
-{ emscriptenVersion, stdenv, fetchFromGitHub, cmake, python, gtest, gccForLibs, ... }:
-
-let
- rev = emscriptenVersion;
-in
-stdenv.mkDerivation rec {
- name = "emscripten-fastcomp-${rev}";
-
- src = fetchFromGitHub {
- owner = "emscripten-core";
- repo = "emscripten-fastcomp";
- sha256 = "0bd0l5k2fa4k0nax2cpxi003pqffqivx4z4m2j5xdha1a12sid8i";
- inherit rev;
- };
-
- srcFL = fetchFromGitHub {
- owner = "emscripten-core";
- repo = "emscripten-fastcomp-clang";
- sha256 = "1iw2qplhp489qzw0rma73sab7asnm27g4m95sr36c6kq9cq6agri";
- inherit rev;
- };
-
- nativeBuildInputs = [ cmake python gtest ];
- preConfigure = ''
- cp -Lr ${srcFL} tools/clang
- chmod +w -R tools/clang
- '';
- cmakeFlags = [
- "-DCMAKE_BUILD_TYPE=Release"
- "-DLLVM_TARGETS_TO_BUILD='X86;JSBackend'"
- "-DLLVM_INCLUDE_EXAMPLES=OFF"
- "-DLLVM_INCLUDE_TESTS=ON"
- #"-DLLVM_CONFIG=${llvm}/bin/llvm-config"
- "-DLLVM_BUILD_TESTS=ON"
- "-DCLANG_INCLUDE_TESTS=ON"
- ] ++ (stdenv.lib.optional stdenv.isLinux
- # necessary for clang to find crtend.o
- "-DGCC_INSTALL_PREFIX=${gccForLibs}"
- );
- enableParallelBuilding = true;
-
- passthru = {
- isClang = true;
- };
-
- meta = with stdenv.lib; {
- homepage = "https://github.com/emscripten-core/emscripten-fastcomp";
- description = "Emscripten LLVM";
- platforms = platforms.all;
- maintainers = with maintainers; [ qknight matthewbauer ];
- license = stdenv.lib.licenses.ncsa;
- };
-}
diff --git a/pkgs/development/compilers/emscripten/package.json b/pkgs/development/compilers/emscripten/package.json
new file mode 100644
index 00000000000..039d215efcd
--- /dev/null
+++ b/pkgs/development/compilers/emscripten/package.json
@@ -0,0 +1,15 @@
+{
+ "name": "emscripten",
+ "version": "2.0.1",
+ "private": true,
+ "devDependencies": {
+ "ws": "~0.4.28"
+ },
+ "dependencies": {
+ "google-closure-compiler": "20200224.0.0",
+ "html-minifier-terser": "5.0.2",
+ "source-map": "0.5.6",
+ "wasm2c": "1.0.0",
+ "acorn": "7.3.1"
+ }
+}
diff --git a/pkgs/development/compilers/emscripten/yarn.lock b/pkgs/development/compilers/emscripten/yarn.lock
new file mode 100644
index 00000000000..079b254a472
--- /dev/null
+++ b/pkgs/development/compilers/emscripten/yarn.lock
@@ -0,0 +1,346 @@
+# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
+# yarn lockfile v1
+
+
+acorn@7.3.1:
+ version "7.3.1"
+ resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.3.1.tgz#85010754db53c3fbaf3b9ea3e083aa5c5d147ffd"
+ integrity sha512-tLc0wSnatxAQHVHUapaHdz72pi9KUyHjq5KyHjGg9Y8Ifdc79pTh2XvI6I1/chZbnM7QtNKzh66ooDogPZSleA==
+
+ansi-styles@^3.2.1:
+ version "3.2.1"
+ resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d"
+ integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==
+ dependencies:
+ color-convert "^1.9.0"
+
+buffer-from@^1.0.0:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef"
+ integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==
+
+camel-case@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-3.0.0.tgz#ca3c3688a4e9cf3a4cda777dc4dcbc713249cf73"
+ integrity sha1-yjw2iKTpzzpM2nd9xNy8cTJJz3M=
+ dependencies:
+ no-case "^2.2.0"
+ upper-case "^1.1.1"
+
+chalk@2.x:
+ version "2.4.2"
+ resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424"
+ integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==
+ dependencies:
+ ansi-styles "^3.2.1"
+ escape-string-regexp "^1.0.5"
+ supports-color "^5.3.0"
+
+clean-css@^4.2.1:
+ version "4.2.3"
+ resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-4.2.3.tgz#507b5de7d97b48ee53d84adb0160ff6216380f78"
+ integrity sha512-VcMWDN54ZN/DS+g58HYL5/n4Zrqe8vHJpGA8KdgUXFU4fuP/aHNw8eld9SyEIyabIMJX/0RaY/fplOo5hYLSFA==
+ dependencies:
+ source-map "~0.6.0"
+
+clone-buffer@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/clone-buffer/-/clone-buffer-1.0.0.tgz#e3e25b207ac4e701af721e2cb5a16792cac3dc58"
+ integrity sha1-4+JbIHrE5wGvch4staFnksrD3Fg=
+
+clone-stats@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/clone-stats/-/clone-stats-1.0.0.tgz#b3782dff8bb5474e18b9b6bf0fdfe782f8777680"
+ integrity sha1-s3gt/4u1R04Yuba/D9/ngvh3doA=
+
+clone@^2.1.1:
+ version "2.1.2"
+ resolved "https://registry.yarnpkg.com/clone/-/clone-2.1.2.tgz#1b7f4b9f591f1e8f83670401600345a02887435f"
+ integrity sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=
+
+cloneable-readable@^1.0.0:
+ version "1.1.3"
+ resolved "https://registry.yarnpkg.com/cloneable-readable/-/cloneable-readable-1.1.3.tgz#120a00cb053bfb63a222e709f9683ea2e11d8cec"
+ integrity sha512-2EF8zTQOxYq70Y4XKtorQupqF0m49MBz2/yf5Bj+MHjvpG3Hy7sImifnqD6UA+TKYxeSV+u6qqQPawN5UvnpKQ==
+ dependencies:
+ inherits "^2.0.1"
+ process-nextick-args "^2.0.0"
+ readable-stream "^2.3.5"
+
+color-convert@^1.9.0:
+ version "1.9.3"
+ resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8"
+ integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==
+ dependencies:
+ color-name "1.1.3"
+
+color-name@1.1.3:
+ version "1.1.3"
+ resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25"
+ integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=
+
+commander@^2.20.0:
+ version "2.20.3"
+ resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33"
+ integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==
+
+commander@^4.0.0:
+ version "4.1.1"
+ resolved "https://registry.yarnpkg.com/commander/-/commander-4.1.1.tgz#9fd602bd936294e9e9ef46a3f4d6964044b18068"
+ integrity sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==
+
+commander@~2.1.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/commander/-/commander-2.1.0.tgz#d121bbae860d9992a3d517ba96f56588e47c6781"
+ integrity sha1-0SG7roYNmZKj1Re6lvVliOR8Z4E=
+
+core-util-is@~1.0.0:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"
+ integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=
+
+escape-string-regexp@^1.0.5:
+ version "1.0.5"
+ resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
+ integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=
+
+google-closure-compiler-java@^20200224.0.0:
+ version "20200224.0.0"
+ resolved "https://registry.yarnpkg.com/google-closure-compiler-java/-/google-closure-compiler-java-20200224.0.0.tgz#03d71aefd0a07010fd8a7057d09c76f6729767bc"
+ integrity sha512-palFcDoScauZjWIsGDzMK6h+IctcRb55I3wJX8Ko/DTSz72xwadRdKm0lGt8OoYL7SKEO+IjgD7s8XrAGpLnlQ==
+
+google-closure-compiler-js@^20200224.0.0:
+ version "20200224.0.0"
+ resolved "https://registry.yarnpkg.com/google-closure-compiler-js/-/google-closure-compiler-js-20200224.0.0.tgz#cf4b598abf7be686c683e530529756805b8af500"
+ integrity sha512-70VKN0kbnTRtu2dqxDjWZQGfEQIHj7b7oUUCsYPO5oEXCDfgxNc13oYUJXvrTONLRWlHCNl/I8FNrVOwZ3gY/g==
+
+google-closure-compiler-linux@^20200224.0.0:
+ version "20200224.0.0"
+ resolved "https://registry.yarnpkg.com/google-closure-compiler-linux/-/google-closure-compiler-linux-20200224.0.0.tgz#d9608b224b4d8f38d4d34e99a24da54bca6b1902"
+ integrity sha512-/BaE889EPrXWOKJVolA9++e99xBDMzeFBf7zF7nBB8PUmU5DlvtsoLL82xnT6nbZC1ktHaETlVx+vYGju8zKBQ==
+
+google-closure-compiler-osx@^20200224.0.0:
+ version "20200224.0.0"
+ resolved "https://registry.yarnpkg.com/google-closure-compiler-osx/-/google-closure-compiler-osx-20200224.0.0.tgz#aee62d8b878a662fc73b92419603168c0c3a35ed"
+ integrity sha512-WXVNW9nPUqjvCe38mUIlBGEPVPCTKLtdaXC+q+kQdonkJFHNrpdyYWa746Y8cNP/byQyDNpPsqcKseZTLh17sQ==
+
+google-closure-compiler-windows@^20200224.0.0:
+ version "20200224.0.0"
+ resolved "https://registry.yarnpkg.com/google-closure-compiler-windows/-/google-closure-compiler-windows-20200224.0.0.tgz#cae323b898625ca57b0e87aaddde021a414dda58"
+ integrity sha512-l6w2D8r9+GC9CQTAYEMAuNI996Zb6YV5qG7+FR0gCoL6h6S3Mc7mi87bafgwaicsVcmmHE/9kCBuW4ZyTMs5Fg==
+
+google-closure-compiler@20200224.0.0:
+ version "20200224.0.0"
+ resolved "https://registry.yarnpkg.com/google-closure-compiler/-/google-closure-compiler-20200224.0.0.tgz#ec0e708d9716a48e12fff43fe37fa5cec732a283"
+ integrity sha512-V81dRYygdHbZtOtU16VX26xAdJBB1UZyfSg3OTzdNl3l/xEIx1D/L7TYUqjeTXsxcy+JruJ/UfUlIJAOaMRTog==
+ dependencies:
+ chalk "2.x"
+ google-closure-compiler-java "^20200224.0.0"
+ google-closure-compiler-js "^20200224.0.0"
+ minimist "1.x"
+ vinyl "2.x"
+ vinyl-sourcemaps-apply "^0.2.0"
+ optionalDependencies:
+ google-closure-compiler-linux "^20200224.0.0"
+ google-closure-compiler-osx "^20200224.0.0"
+ google-closure-compiler-windows "^20200224.0.0"
+
+has-flag@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd"
+ integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0=
+
+he@^1.2.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f"
+ integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==
+
+html-minifier-terser@5.0.2:
+ version "5.0.2"
+ resolved "https://registry.yarnpkg.com/html-minifier-terser/-/html-minifier-terser-5.0.2.tgz#0e67a0b062ae1dd0719fc73199479298f807ae16"
+ integrity sha512-VAaitmbBuHaPKv9bj47XKypRhgDxT/cDLvsPiiF7w+omrN3K0eQhpigV9Z1ilrmHa9e0rOYcD6R/+LCDADGcnQ==
+ dependencies:
+ camel-case "^3.0.0"
+ clean-css "^4.2.1"
+ commander "^4.0.0"
+ he "^1.2.0"
+ param-case "^2.1.1"
+ relateurl "^0.2.7"
+ terser "^4.3.9"
+
+inherits@^2.0.1, inherits@~2.0.3:
+ version "2.0.4"
+ resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"
+ integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
+
+isarray@~1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11"
+ integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=
+
+lower-case@^1.1.1:
+ version "1.1.4"
+ resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-1.1.4.tgz#9a2cabd1b9e8e0ae993a4bf7d5875c39c42e8eac"
+ integrity sha1-miyr0bno4K6ZOkv31YdcOcQujqw=
+
+minimist@1.x:
+ version "1.2.5"
+ resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602"
+ integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==
+
+nan@~1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/nan/-/nan-1.0.0.tgz#ae24f8850818d662fcab5acf7f3b95bfaa2ccf38"
+ integrity sha1-riT4hQgY1mL8q1rPfzuVv6oszzg=
+
+no-case@^2.2.0:
+ version "2.3.2"
+ resolved "https://registry.yarnpkg.com/no-case/-/no-case-2.3.2.tgz#60b813396be39b3f1288a4c1ed5d1e7d28b464ac"
+ integrity sha512-rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ==
+ dependencies:
+ lower-case "^1.1.1"
+
+options@>=0.0.5:
+ version "0.0.6"
+ resolved "https://registry.yarnpkg.com/options/-/options-0.0.6.tgz#ec22d312806bb53e731773e7cdaefcf1c643128f"
+ integrity sha1-7CLTEoBrtT5zF3Pnza788cZDEo8=
+
+param-case@^2.1.1:
+ version "2.1.1"
+ resolved "https://registry.yarnpkg.com/param-case/-/param-case-2.1.1.tgz#df94fd8cf6531ecf75e6bef9a0858fbc72be2247"
+ integrity sha1-35T9jPZTHs915r75oIWPvHK+Ikc=
+ dependencies:
+ no-case "^2.2.0"
+
+process-nextick-args@^2.0.0, process-nextick-args@~2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2"
+ integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==
+
+readable-stream@^2.3.5:
+ version "2.3.7"
+ resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57"
+ integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==
+ dependencies:
+ core-util-is "~1.0.0"
+ inherits "~2.0.3"
+ isarray "~1.0.0"
+ process-nextick-args "~2.0.0"
+ safe-buffer "~5.1.1"
+ string_decoder "~1.1.1"
+ util-deprecate "~1.0.1"
+
+relateurl@^0.2.7:
+ version "0.2.7"
+ resolved "https://registry.yarnpkg.com/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9"
+ integrity sha1-VNvzd+UUQKypCkzSdGANP/LYiKk=
+
+remove-trailing-separator@^1.0.1:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef"
+ integrity sha1-wkvOKig62tW8P1jg1IJJuSN52O8=
+
+replace-ext@^1.0.0:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/replace-ext/-/replace-ext-1.0.1.tgz#2d6d996d04a15855d967443631dd5f77825b016a"
+ integrity sha512-yD5BHCe7quCgBph4rMQ+0KkIRKwWCrHDOX1p1Gp6HwjPM5kVoCdKGNhN7ydqqsX6lJEnQDKZ/tFMiEdQ1dvPEw==
+
+safe-buffer@~5.1.0, safe-buffer@~5.1.1:
+ version "5.1.2"
+ resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d"
+ integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==
+
+source-map-support@~0.5.12:
+ version "0.5.19"
+ resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.19.tgz#a98b62f86dcaf4f67399648c085291ab9e8fed61"
+ integrity sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==
+ dependencies:
+ buffer-from "^1.0.0"
+ source-map "^0.6.0"
+
+source-map@0.5.6:
+ version "0.5.6"
+ resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.6.tgz#75ce38f52bf0733c5a7f0c118d81334a2bb5f412"
+ integrity sha1-dc449SvwczxafwwRjYEzSiu19BI=
+
+source-map@^0.5.1:
+ version "0.5.7"
+ resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc"
+ integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=
+
+source-map@^0.6.0, source-map@~0.6.0, source-map@~0.6.1:
+ version "0.6.1"
+ resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263"
+ integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==
+
+string_decoder@~1.1.1:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8"
+ integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==
+ dependencies:
+ safe-buffer "~5.1.0"
+
+supports-color@^5.3.0:
+ version "5.5.0"
+ resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f"
+ integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==
+ dependencies:
+ has-flag "^3.0.0"
+
+terser@^4.3.9:
+ version "4.8.0"
+ resolved "https://registry.yarnpkg.com/terser/-/terser-4.8.0.tgz#63056343d7c70bb29f3af665865a46fe03a0df17"
+ integrity sha512-EAPipTNeWsb/3wLPeup1tVPaXfIaU68xMnVdPafIL1TV05OhASArYyIfFvnvJCNrR2NIOvDVNNTFRa+Re2MWyw==
+ dependencies:
+ commander "^2.20.0"
+ source-map "~0.6.1"
+ source-map-support "~0.5.12"
+
+tinycolor@0.x:
+ version "0.0.1"
+ resolved "https://registry.yarnpkg.com/tinycolor/-/tinycolor-0.0.1.tgz#320b5a52d83abb5978d81a3e887d4aefb15a6164"
+ integrity sha1-MgtaUtg6u1l42Bo+iH1K77FaYWQ=
+
+upper-case@^1.1.1:
+ version "1.1.3"
+ resolved "https://registry.yarnpkg.com/upper-case/-/upper-case-1.1.3.tgz#f6b4501c2ec4cdd26ba78be7222961de77621598"
+ integrity sha1-9rRQHC7EzdJrp4vnIilh3ndiFZg=
+
+util-deprecate@~1.0.1:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
+ integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=
+
+vinyl-sourcemaps-apply@^0.2.0:
+ version "0.2.1"
+ resolved "https://registry.yarnpkg.com/vinyl-sourcemaps-apply/-/vinyl-sourcemaps-apply-0.2.1.tgz#ab6549d61d172c2b1b87be5c508d239c8ef87705"
+ integrity sha1-q2VJ1h0XLCsbh75cUI0jnI74dwU=
+ dependencies:
+ source-map "^0.5.1"
+
+vinyl@2.x:
+ version "2.2.0"
+ resolved "https://registry.yarnpkg.com/vinyl/-/vinyl-2.2.0.tgz#d85b07da96e458d25b2ffe19fece9f2caa13ed86"
+ integrity sha512-MBH+yP0kC/GQ5GwBqrTPTzEfiiLjta7hTtvQtbxBgTeSXsmKQRQecjibMbxIXzVT3Y9KJK+drOz1/k+vsu8Nkg==
+ dependencies:
+ clone "^2.1.1"
+ clone-buffer "^1.0.0"
+ clone-stats "^1.0.0"
+ cloneable-readable "^1.0.0"
+ remove-trailing-separator "^1.0.1"
+ replace-ext "^1.0.0"
+
+wasm2c@1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/wasm2c/-/wasm2c-1.0.0.tgz#761671e141c46b8a7c6c54429db1e6bfa3cd0ec0"
+ integrity sha512-4SIESF2JNxrry6XFa/UQcsQibn+bxPkQ/oqixiXz2o8fsMl8J4vtvhH/evgbi8vZajAlaukuihEcQTWb9tVLUA==
+
+ws@~0.4.28:
+ version "0.4.32"
+ resolved "https://registry.yarnpkg.com/ws/-/ws-0.4.32.tgz#787a6154414f3c99ed83c5772153b20feb0cec32"
+ integrity sha1-eHphVEFPPJntg8V3IVOyD+sM7DI=
+ dependencies:
+ commander "~2.1.0"
+ nan "~1.0.0"
+ options ">=0.0.5"
+ tinycolor "0.x"
diff --git a/pkgs/development/compilers/emscripten/yarn.nix b/pkgs/development/compilers/emscripten/yarn.nix
new file mode 100644
index 00000000000..af01d9c6869
--- /dev/null
+++ b/pkgs/development/compilers/emscripten/yarn.nix
@@ -0,0 +1,437 @@
+{ fetchurl, fetchgit, linkFarm, runCommandNoCC, gnutar }: rec {
+ offline_cache = linkFarm "offline" packages;
+ packages = [
+ {
+ name = "acorn___acorn_7.3.1.tgz";
+ path = fetchurl {
+ name = "acorn___acorn_7.3.1.tgz";
+ url = "https://registry.yarnpkg.com/acorn/-/acorn-7.3.1.tgz";
+ sha1 = "85010754db53c3fbaf3b9ea3e083aa5c5d147ffd";
+ };
+ }
+ {
+ name = "ansi_styles___ansi_styles_3.2.1.tgz";
+ path = fetchurl {
+ name = "ansi_styles___ansi_styles_3.2.1.tgz";
+ url = "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz";
+ sha1 = "41fbb20243e50b12be0f04b8dedbf07520ce841d";
+ };
+ }
+ {
+ name = "buffer_from___buffer_from_1.1.1.tgz";
+ path = fetchurl {
+ name = "buffer_from___buffer_from_1.1.1.tgz";
+ url = "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz";
+ sha1 = "32713bc028f75c02fdb710d7c7bcec1f2c6070ef";
+ };
+ }
+ {
+ name = "camel_case___camel_case_3.0.0.tgz";
+ path = fetchurl {
+ name = "camel_case___camel_case_3.0.0.tgz";
+ url = "https://registry.yarnpkg.com/camel-case/-/camel-case-3.0.0.tgz";
+ sha1 = "ca3c3688a4e9cf3a4cda777dc4dcbc713249cf73";
+ };
+ }
+ {
+ name = "chalk___chalk_2.4.2.tgz";
+ path = fetchurl {
+ name = "chalk___chalk_2.4.2.tgz";
+ url = "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz";
+ sha1 = "cd42541677a54333cf541a49108c1432b44c9424";
+ };
+ }
+ {
+ name = "clean_css___clean_css_4.2.3.tgz";
+ path = fetchurl {
+ name = "clean_css___clean_css_4.2.3.tgz";
+ url = "https://registry.yarnpkg.com/clean-css/-/clean-css-4.2.3.tgz";
+ sha1 = "507b5de7d97b48ee53d84adb0160ff6216380f78";
+ };
+ }
+ {
+ name = "clone_buffer___clone_buffer_1.0.0.tgz";
+ path = fetchurl {
+ name = "clone_buffer___clone_buffer_1.0.0.tgz";
+ url = "https://registry.yarnpkg.com/clone-buffer/-/clone-buffer-1.0.0.tgz";
+ sha1 = "e3e25b207ac4e701af721e2cb5a16792cac3dc58";
+ };
+ }
+ {
+ name = "clone_stats___clone_stats_1.0.0.tgz";
+ path = fetchurl {
+ name = "clone_stats___clone_stats_1.0.0.tgz";
+ url = "https://registry.yarnpkg.com/clone-stats/-/clone-stats-1.0.0.tgz";
+ sha1 = "b3782dff8bb5474e18b9b6bf0fdfe782f8777680";
+ };
+ }
+ {
+ name = "clone___clone_2.1.2.tgz";
+ path = fetchurl {
+ name = "clone___clone_2.1.2.tgz";
+ url = "https://registry.yarnpkg.com/clone/-/clone-2.1.2.tgz";
+ sha1 = "1b7f4b9f591f1e8f83670401600345a02887435f";
+ };
+ }
+ {
+ name = "cloneable_readable___cloneable_readable_1.1.3.tgz";
+ path = fetchurl {
+ name = "cloneable_readable___cloneable_readable_1.1.3.tgz";
+ url = "https://registry.yarnpkg.com/cloneable-readable/-/cloneable-readable-1.1.3.tgz";
+ sha1 = "120a00cb053bfb63a222e709f9683ea2e11d8cec";
+ };
+ }
+ {
+ name = "color_convert___color_convert_1.9.3.tgz";
+ path = fetchurl {
+ name = "color_convert___color_convert_1.9.3.tgz";
+ url = "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz";
+ sha1 = "bb71850690e1f136567de629d2d5471deda4c1e8";
+ };
+ }
+ {
+ name = "color_name___color_name_1.1.3.tgz";
+ path = fetchurl {
+ name = "color_name___color_name_1.1.3.tgz";
+ url = "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz";
+ sha1 = "a7d0558bd89c42f795dd42328f740831ca53bc25";
+ };
+ }
+ {
+ name = "commander___commander_2.20.3.tgz";
+ path = fetchurl {
+ name = "commander___commander_2.20.3.tgz";
+ url = "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz";
+ sha1 = "fd485e84c03eb4881c20722ba48035e8531aeb33";
+ };
+ }
+ {
+ name = "commander___commander_4.1.1.tgz";
+ path = fetchurl {
+ name = "commander___commander_4.1.1.tgz";
+ url = "https://registry.yarnpkg.com/commander/-/commander-4.1.1.tgz";
+ sha1 = "9fd602bd936294e9e9ef46a3f4d6964044b18068";
+ };
+ }
+ {
+ name = "commander___commander_2.1.0.tgz";
+ path = fetchurl {
+ name = "commander___commander_2.1.0.tgz";
+ url = "https://registry.yarnpkg.com/commander/-/commander-2.1.0.tgz";
+ sha1 = "d121bbae860d9992a3d517ba96f56588e47c6781";
+ };
+ }
+ {
+ name = "core_util_is___core_util_is_1.0.2.tgz";
+ path = fetchurl {
+ name = "core_util_is___core_util_is_1.0.2.tgz";
+ url = "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz";
+ sha1 = "b5fd54220aa2bc5ab57aab7140c940754503c1a7";
+ };
+ }
+ {
+ name = "escape_string_regexp___escape_string_regexp_1.0.5.tgz";
+ path = fetchurl {
+ name = "escape_string_regexp___escape_string_regexp_1.0.5.tgz";
+ url = "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz";
+ sha1 = "1b61c0562190a8dff6ae3bb2cf0200ca130b86d4";
+ };
+ }
+ {
+ name = "google_closure_compiler_java___google_closure_compiler_java_20200224.0.0.tgz";
+ path = fetchurl {
+ name = "google_closure_compiler_java___google_closure_compiler_java_20200224.0.0.tgz";
+ url = "https://registry.yarnpkg.com/google-closure-compiler-java/-/google-closure-compiler-java-20200224.0.0.tgz";
+ sha1 = "03d71aefd0a07010fd8a7057d09c76f6729767bc";
+ };
+ }
+ {
+ name = "google_closure_compiler_js___google_closure_compiler_js_20200224.0.0.tgz";
+ path = fetchurl {
+ name = "google_closure_compiler_js___google_closure_compiler_js_20200224.0.0.tgz";
+ url = "https://registry.yarnpkg.com/google-closure-compiler-js/-/google-closure-compiler-js-20200224.0.0.tgz";
+ sha1 = "cf4b598abf7be686c683e530529756805b8af500";
+ };
+ }
+ {
+ name = "google_closure_compiler_linux___google_closure_compiler_linux_20200224.0.0.tgz";
+ path = fetchurl {
+ name = "google_closure_compiler_linux___google_closure_compiler_linux_20200224.0.0.tgz";
+ url = "https://registry.yarnpkg.com/google-closure-compiler-linux/-/google-closure-compiler-linux-20200224.0.0.tgz";
+ sha1 = "d9608b224b4d8f38d4d34e99a24da54bca6b1902";
+ };
+ }
+ {
+ name = "google_closure_compiler_osx___google_closure_compiler_osx_20200224.0.0.tgz";
+ path = fetchurl {
+ name = "google_closure_compiler_osx___google_closure_compiler_osx_20200224.0.0.tgz";
+ url = "https://registry.yarnpkg.com/google-closure-compiler-osx/-/google-closure-compiler-osx-20200224.0.0.tgz";
+ sha1 = "aee62d8b878a662fc73b92419603168c0c3a35ed";
+ };
+ }
+ {
+ name = "google_closure_compiler_windows___google_closure_compiler_windows_20200224.0.0.tgz";
+ path = fetchurl {
+ name = "google_closure_compiler_windows___google_closure_compiler_windows_20200224.0.0.tgz";
+ url = "https://registry.yarnpkg.com/google-closure-compiler-windows/-/google-closure-compiler-windows-20200224.0.0.tgz";
+ sha1 = "cae323b898625ca57b0e87aaddde021a414dda58";
+ };
+ }
+ {
+ name = "google_closure_compiler___google_closure_compiler_20200224.0.0.tgz";
+ path = fetchurl {
+ name = "google_closure_compiler___google_closure_compiler_20200224.0.0.tgz";
+ url = "https://registry.yarnpkg.com/google-closure-compiler/-/google-closure-compiler-20200224.0.0.tgz";
+ sha1 = "ec0e708d9716a48e12fff43fe37fa5cec732a283";
+ };
+ }
+ {
+ name = "has_flag___has_flag_3.0.0.tgz";
+ path = fetchurl {
+ name = "has_flag___has_flag_3.0.0.tgz";
+ url = "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz";
+ sha1 = "b5d454dc2199ae225699f3467e5a07f3b955bafd";
+ };
+ }
+ {
+ name = "he___he_1.2.0.tgz";
+ path = fetchurl {
+ name = "he___he_1.2.0.tgz";
+ url = "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz";
+ sha1 = "84ae65fa7eafb165fddb61566ae14baf05664f0f";
+ };
+ }
+ {
+ name = "html_minifier_terser___html_minifier_terser_5.0.2.tgz";
+ path = fetchurl {
+ name = "html_minifier_terser___html_minifier_terser_5.0.2.tgz";
+ url = "https://registry.yarnpkg.com/html-minifier-terser/-/html-minifier-terser-5.0.2.tgz";
+ sha1 = "0e67a0b062ae1dd0719fc73199479298f807ae16";
+ };
+ }
+ {
+ name = "inherits___inherits_2.0.4.tgz";
+ path = fetchurl {
+ name = "inherits___inherits_2.0.4.tgz";
+ url = "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz";
+ sha1 = "0fa2c64f932917c3433a0ded55363aae37416b7c";
+ };
+ }
+ {
+ name = "isarray___isarray_1.0.0.tgz";
+ path = fetchurl {
+ name = "isarray___isarray_1.0.0.tgz";
+ url = "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz";
+ sha1 = "bb935d48582cba168c06834957a54a3e07124f11";
+ };
+ }
+ {
+ name = "lower_case___lower_case_1.1.4.tgz";
+ path = fetchurl {
+ name = "lower_case___lower_case_1.1.4.tgz";
+ url = "https://registry.yarnpkg.com/lower-case/-/lower-case-1.1.4.tgz";
+ sha1 = "9a2cabd1b9e8e0ae993a4bf7d5875c39c42e8eac";
+ };
+ }
+ {
+ name = "minimist___minimist_1.2.5.tgz";
+ path = fetchurl {
+ name = "minimist___minimist_1.2.5.tgz";
+ url = "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz";
+ sha1 = "67d66014b66a6a8aaa0c083c5fd58df4e4e97602";
+ };
+ }
+ {
+ name = "nan___nan_1.0.0.tgz";
+ path = fetchurl {
+ name = "nan___nan_1.0.0.tgz";
+ url = "https://registry.yarnpkg.com/nan/-/nan-1.0.0.tgz";
+ sha1 = "ae24f8850818d662fcab5acf7f3b95bfaa2ccf38";
+ };
+ }
+ {
+ name = "no_case___no_case_2.3.2.tgz";
+ path = fetchurl {
+ name = "no_case___no_case_2.3.2.tgz";
+ url = "https://registry.yarnpkg.com/no-case/-/no-case-2.3.2.tgz";
+ sha1 = "60b813396be39b3f1288a4c1ed5d1e7d28b464ac";
+ };
+ }
+ {
+ name = "options___options_0.0.6.tgz";
+ path = fetchurl {
+ name = "options___options_0.0.6.tgz";
+ url = "https://registry.yarnpkg.com/options/-/options-0.0.6.tgz";
+ sha1 = "ec22d312806bb53e731773e7cdaefcf1c643128f";
+ };
+ }
+ {
+ name = "param_case___param_case_2.1.1.tgz";
+ path = fetchurl {
+ name = "param_case___param_case_2.1.1.tgz";
+ url = "https://registry.yarnpkg.com/param-case/-/param-case-2.1.1.tgz";
+ sha1 = "df94fd8cf6531ecf75e6bef9a0858fbc72be2247";
+ };
+ }
+ {
+ name = "process_nextick_args___process_nextick_args_2.0.1.tgz";
+ path = fetchurl {
+ name = "process_nextick_args___process_nextick_args_2.0.1.tgz";
+ url = "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz";
+ sha1 = "7820d9b16120cc55ca9ae7792680ae7dba6d7fe2";
+ };
+ }
+ {
+ name = "readable_stream___readable_stream_2.3.7.tgz";
+ path = fetchurl {
+ name = "readable_stream___readable_stream_2.3.7.tgz";
+ url = "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz";
+ sha1 = "1eca1cf711aef814c04f62252a36a62f6cb23b57";
+ };
+ }
+ {
+ name = "relateurl___relateurl_0.2.7.tgz";
+ path = fetchurl {
+ name = "relateurl___relateurl_0.2.7.tgz";
+ url = "https://registry.yarnpkg.com/relateurl/-/relateurl-0.2.7.tgz";
+ sha1 = "54dbf377e51440aca90a4cd274600d3ff2d888a9";
+ };
+ }
+ {
+ name = "remove_trailing_separator___remove_trailing_separator_1.1.0.tgz";
+ path = fetchurl {
+ name = "remove_trailing_separator___remove_trailing_separator_1.1.0.tgz";
+ url = "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz";
+ sha1 = "c24bce2a283adad5bc3f58e0d48249b92379d8ef";
+ };
+ }
+ {
+ name = "replace_ext___replace_ext_1.0.1.tgz";
+ path = fetchurl {
+ name = "replace_ext___replace_ext_1.0.1.tgz";
+ url = "https://registry.yarnpkg.com/replace-ext/-/replace-ext-1.0.1.tgz";
+ sha1 = "2d6d996d04a15855d967443631dd5f77825b016a";
+ };
+ }
+ {
+ name = "safe_buffer___safe_buffer_5.1.2.tgz";
+ path = fetchurl {
+ name = "safe_buffer___safe_buffer_5.1.2.tgz";
+ url = "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz";
+ sha1 = "991ec69d296e0313747d59bdfd2b745c35f8828d";
+ };
+ }
+ {
+ name = "source_map_support___source_map_support_0.5.19.tgz";
+ path = fetchurl {
+ name = "source_map_support___source_map_support_0.5.19.tgz";
+ url = "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.19.tgz";
+ sha1 = "a98b62f86dcaf4f67399648c085291ab9e8fed61";
+ };
+ }
+ {
+ name = "source_map___source_map_0.5.6.tgz";
+ path = fetchurl {
+ name = "source_map___source_map_0.5.6.tgz";
+ url = "https://registry.yarnpkg.com/source-map/-/source-map-0.5.6.tgz";
+ sha1 = "75ce38f52bf0733c5a7f0c118d81334a2bb5f412";
+ };
+ }
+ {
+ name = "source_map___source_map_0.5.7.tgz";
+ path = fetchurl {
+ name = "source_map___source_map_0.5.7.tgz";
+ url = "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz";
+ sha1 = "8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc";
+ };
+ }
+ {
+ name = "source_map___source_map_0.6.1.tgz";
+ path = fetchurl {
+ name = "source_map___source_map_0.6.1.tgz";
+ url = "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz";
+ sha1 = "74722af32e9614e9c287a8d0bbde48b5e2f1a263";
+ };
+ }
+ {
+ name = "string_decoder___string_decoder_1.1.1.tgz";
+ path = fetchurl {
+ name = "string_decoder___string_decoder_1.1.1.tgz";
+ url = "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz";
+ sha1 = "9cf1611ba62685d7030ae9e4ba34149c3af03fc8";
+ };
+ }
+ {
+ name = "supports_color___supports_color_5.5.0.tgz";
+ path = fetchurl {
+ name = "supports_color___supports_color_5.5.0.tgz";
+ url = "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz";
+ sha1 = "e2e69a44ac8772f78a1ec0b35b689df6530efc8f";
+ };
+ }
+ {
+ name = "terser___terser_4.8.0.tgz";
+ path = fetchurl {
+ name = "terser___terser_4.8.0.tgz";
+ url = "https://registry.yarnpkg.com/terser/-/terser-4.8.0.tgz";
+ sha1 = "63056343d7c70bb29f3af665865a46fe03a0df17";
+ };
+ }
+ {
+ name = "tinycolor___tinycolor_0.0.1.tgz";
+ path = fetchurl {
+ name = "tinycolor___tinycolor_0.0.1.tgz";
+ url = "https://registry.yarnpkg.com/tinycolor/-/tinycolor-0.0.1.tgz";
+ sha1 = "320b5a52d83abb5978d81a3e887d4aefb15a6164";
+ };
+ }
+ {
+ name = "upper_case___upper_case_1.1.3.tgz";
+ path = fetchurl {
+ name = "upper_case___upper_case_1.1.3.tgz";
+ url = "https://registry.yarnpkg.com/upper-case/-/upper-case-1.1.3.tgz";
+ sha1 = "f6b4501c2ec4cdd26ba78be7222961de77621598";
+ };
+ }
+ {
+ name = "util_deprecate___util_deprecate_1.0.2.tgz";
+ path = fetchurl {
+ name = "util_deprecate___util_deprecate_1.0.2.tgz";
+ url = "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz";
+ sha1 = "450d4dc9fa70de732762fbd2d4a28981419a0ccf";
+ };
+ }
+ {
+ name = "vinyl_sourcemaps_apply___vinyl_sourcemaps_apply_0.2.1.tgz";
+ path = fetchurl {
+ name = "vinyl_sourcemaps_apply___vinyl_sourcemaps_apply_0.2.1.tgz";
+ url = "https://registry.yarnpkg.com/vinyl-sourcemaps-apply/-/vinyl-sourcemaps-apply-0.2.1.tgz";
+ sha1 = "ab6549d61d172c2b1b87be5c508d239c8ef87705";
+ };
+ }
+ {
+ name = "vinyl___vinyl_2.2.0.tgz";
+ path = fetchurl {
+ name = "vinyl___vinyl_2.2.0.tgz";
+ url = "https://registry.yarnpkg.com/vinyl/-/vinyl-2.2.0.tgz";
+ sha1 = "d85b07da96e458d25b2ffe19fece9f2caa13ed86";
+ };
+ }
+ {
+ name = "wasm2c___wasm2c_1.0.0.tgz";
+ path = fetchurl {
+ name = "wasm2c___wasm2c_1.0.0.tgz";
+ url = "https://registry.yarnpkg.com/wasm2c/-/wasm2c-1.0.0.tgz";
+ sha1 = "761671e141c46b8a7c6c54429db1e6bfa3cd0ec0";
+ };
+ }
+ {
+ name = "ws___ws_0.4.32.tgz";
+ path = fetchurl {
+ name = "ws___ws_0.4.32.tgz";
+ url = "https://registry.yarnpkg.com/ws/-/ws-0.4.32.tgz";
+ sha1 = "787a6154414f3c99ed83c5772153b20feb0cec32";
+ };
+ }
+ ];
+}
diff --git a/pkgs/development/python-modules/django/1_11.nix b/pkgs/development/python-modules/django/1_11.nix
deleted file mode 100644
index b38962f4efa..00000000000
--- a/pkgs/development/python-modules/django/1_11.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-{ stdenv, buildPythonPackage, fetchurl, substituteAll,
- geos, gdal, pytz,
- withGdal ? false
-}:
-
-buildPythonPackage rec {
- pname = "Django";
- version = "1.11.28";
-
- src = fetchurl {
- url = "https://www.djangoproject.com/m/releases/1.11/${pname}-${version}.tar.gz";
- sha256 = "1ss1jyip7mlbfjn27m0j6wx80s8h4ksg6g5annkgwigp8xgy6g5k";
- };
-
- patches = stdenv.lib.optionals withGdal [
- (substituteAll {
- src = ./1.10-gis-libs.template.patch;
- geos = geos;
- gdal = gdal;
- extension = stdenv.hostPlatform.extensions.sharedLibrary;
- })
- ];
-
- propagatedBuildInputs = [ pytz ];
-
- # too complicated to setup
- doCheck = false;
-
- meta = with stdenv.lib; {
- description = "A high-level Python Web framework";
- homepage = "https://www.djangoproject.com/";
- license = licenses.bsd3;
- };
-}
diff --git a/pkgs/development/python-modules/kombu/default.nix b/pkgs/development/python-modules/kombu/default.nix
index 73c8485ae7a..560cd4383b1 100644
--- a/pkgs/development/python-modules/kombu/default.nix
+++ b/pkgs/development/python-modules/kombu/default.nix
@@ -12,11 +12,11 @@
buildPythonPackage rec {
pname = "kombu";
- version = "5.0.0";
+ version = "4.6.11";
src = fetchPypi {
inherit pname version;
- sha256 = "7c949fe33573a971f06c8836ca025390088f3747533b78438f9a57344a142b59";
+ sha256 = "ca1b45faac8c0b18493d02a8571792f3c40291cf2bcf1f55afed3d8f3aa7ba74";
};
postPatch = ''
diff --git a/pkgs/development/python-modules/ludios_wpull/default.nix b/pkgs/development/python-modules/ludios_wpull/default.nix
index 7bea2b04bbd..e87146f6fbc 100644
--- a/pkgs/development/python-modules/ludios_wpull/default.nix
+++ b/pkgs/development/python-modules/ludios_wpull/default.nix
@@ -8,15 +8,16 @@
, lxml
, namedlist
, sqlalchemy
-, tornado_4
+, tornado
, Yapsy
+, pythonAtLeast
}:
buildPythonPackage rec {
pname = "ludios_wpull";
version = "3.0.7";
- disabled = !isPy3k;
+ disabled = (!isPy3k) || (pythonAtLeast "3.8");
src = fetchFromGitHub {
rev = version;
@@ -25,7 +26,7 @@ buildPythonPackage rec {
sha256 = "1j96avm0ynbazypzp766wh26n4qc73y7wgsiqfrdfl6x7rx20wgf";
};
- propagatedBuildInputs = [ chardet dnspython html5-parser lxml namedlist sqlalchemy tornado_4 Yapsy ];
+ propagatedBuildInputs = [ chardet dnspython html5-parser lxml namedlist sqlalchemy tornado Yapsy ];
# Test suite has tests that fail on all platforms
doCheck = false;
@@ -35,5 +36,6 @@ buildPythonPackage rec {
homepage = "https://github.com/ludios/wpull";
license = lib.licenses.gpl3;
maintainers = with lib.maintainers; [ ivan ];
+ broken = lib.versions.major tornado.version != "4";
};
}
diff --git a/pkgs/development/python-modules/mathlibtools/default.nix b/pkgs/development/python-modules/mathlibtools/default.nix
new file mode 100644
index 00000000000..f9c1cf6839f
--- /dev/null
+++ b/pkgs/development/python-modules/mathlibtools/default.nix
@@ -0,0 +1,26 @@
+{ lib, buildPythonPackage, fetchPypi, PyGithub, GitPython, toml, click, tqdm,
+ paramiko, networkx, pydot, pyyaml }:
+
+buildPythonPackage rec {
+ pname = "mathlibtools";
+ version = "0.0.10";
+
+ src = fetchPypi {
+ inherit pname version;
+ sha256 = "0d708bgsxjhhchqc56afi1h7k87vbfn7v40f4y1zlv7hsjc69s36";
+ };
+
+ propagatedBuildInputs = [
+ PyGithub GitPython toml click tqdm paramiko networkx pydot pyyaml
+ ];
+
+ # requires internet access
+ doCheck = false;
+
+ meta = with lib; {
+ homepage = "https://github.com/leanprover-community/mathlib-tools";
+ description = "leanproject is a supporting tool for Lean's mathlib";
+ license = licenses.asl20;
+ maintainers = with maintainers; [ gebner ];
+ };
+}
diff --git a/pkgs/development/python-modules/nix-prefetch-github/default.nix b/pkgs/development/python-modules/nix-prefetch-github/default.nix
index 6ee4d937cfb..67873f929ad 100644
--- a/pkgs/development/python-modules/nix-prefetch-github/default.nix
+++ b/pkgs/development/python-modules/nix-prefetch-github/default.nix
@@ -15,17 +15,13 @@
buildPythonPackage rec {
pname = "nix-prefetch-github";
- version = "2.4";
+ version = "3.0";
src = fetchPypi {
inherit pname version;
- sha256 = "sha256-PVB/cL0NVB5pHxRMjg8TLatvIvHjfCvaRWBanVHYT+E=";
+ sha256 = "sha256-EN+EbVXUaf+id5UsK4EBm/9k9FYaH79g08kblvW60XA=";
};
- # The tests for this package require nix and network access. That's
- # why we cannot execute them inside the building process.
- doCheck = false;
-
propagatedBuildInputs = [
attrs
click
@@ -34,6 +30,9 @@ buildPythonPackage rec {
];
checkInputs = [ pytestCheckHook pytest-black pytestcov pytest-isort git ];
+ checkPhase = ''
+ pytest -m 'not network'
+ '';
# latest version of isort will cause tests to fail
# ignore tests which are impure
diff --git a/pkgs/development/python-modules/pure-eval/default.nix b/pkgs/development/python-modules/pure-eval/default.nix
new file mode 100644
index 00000000000..d7e92f09784
--- /dev/null
+++ b/pkgs/development/python-modules/pure-eval/default.nix
@@ -0,0 +1,27 @@
+{ lib, buildPythonPackage, fetchFromGitHub, setuptools_scm, toml, pytest }:
+
+buildPythonPackage rec {
+ pname = "pure_eval";
+ version = "0.1.0";
+
+ src = fetchFromGitHub {
+ owner = "alexmojaki";
+ repo = pname;
+ rev = "v${version}";
+ sha256 = "1d3gpc9mrmwdk6l87x7ll23vwv6l8l2iqvi63r86j7bj5s8m2ci8";
+ };
+
+ SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+ buildInputs = [ setuptools_scm ];
+ propagatedBuildInputs = [ toml ];
+
+ checkInputs = [ pytest ];
+
+ meta = with lib; {
+ description = "Safely evaluate AST nodes without side effects";
+ homepage = "http://github.com/alexmojaki/pure_eval";
+ license = licenses.mit;
+ maintainers = with maintainers; [ gebner ];
+ };
+}
diff --git a/pkgs/development/python-modules/pyside2/default.nix b/pkgs/development/python-modules/pyside2/default.nix
index f9d07be5796..6d8b828fb95 100644
--- a/pkgs/development/python-modules/pyside2/default.nix
+++ b/pkgs/development/python-modules/pyside2/default.nix
@@ -3,11 +3,11 @@
stdenv.mkDerivation rec {
pname = "pyside2";
- version = "5.14.2";
+ version = "5.15.0";
src = fetchurl {
url = "https://download.qt.io/official_releases/QtForPython/pyside2/PySide2-${version}-src/pyside-setup-opensource-src-${version}.tar.xz";
- sha256 = "1cwjpv8qmjksi7cj4naw54h2afphw44chrf1pmfjamyyj8vz6ykw";
+ sha256 = "0s3bgddcsf6w297nyxv08xpc2nnr3sli980p24nf4xivvr9yxkgi";
};
patches = [
diff --git a/pkgs/development/python-modules/pytorch/default.nix b/pkgs/development/python-modules/pytorch/default.nix
index 0aea3b38b5a..a767a913abb 100644
--- a/pkgs/development/python-modules/pytorch/default.nix
+++ b/pkgs/development/python-modules/pytorch/default.nix
@@ -4,7 +4,7 @@
openMPISupport ? false, openmpi ? null,
buildDocs ? false,
cudaArchList ? null,
- numpy, pyyaml, cffi, click, typing, cmake, oneDNN, hypothesis, numactl, psutil,
+ numpy, pyyaml, cffi, click, typing, cmake, hypothesis, numactl, psutil,
linkFarm, symlinkJoin,
# virtual pkg that consistently instantiates blas across nixpkgs
@@ -159,9 +159,9 @@ in buildPythonPackage rec {
USE_MKL = blas.implementation == "mkl";
- # Unlike MKL, MKLDNN is FOSS, so we enable support for it by default. Note
- # that this was renamed to dnnl and then renamed again to oneDNN upstream, but
- # pytorch still calls it by the old name mkldnn.
+ # Unlike MKL, oneDNN (née MKLDNN) is FOSS, so we enable support for
+ # it by default. PyTorch currently uses its own vendored version
+ # of oneDNN through Intel iDeep.
USE_MKLDNN = mklDnnSupport;
USE_MKLDNN_CBLAS = mklDnnSupport;
@@ -210,7 +210,7 @@ in buildPythonPackage rec {
ninja
] ++ lib.optionals cudaSupport [ cudatoolkit_joined ];
- buildInputs = [ blas blas.provider oneDNN ]
+ buildInputs = [ blas blas.provider ]
++ lib.optionals cudaSupport [ cudnn magma nccl ]
++ lib.optionals stdenv.isLinux [ numactl ];
diff --git a/pkgs/development/python-modules/rq/default.nix b/pkgs/development/python-modules/rq/default.nix
index b0d06b014c7..66ca024b2bb 100644
--- a/pkgs/development/python-modules/rq/default.nix
+++ b/pkgs/development/python-modules/rq/default.nix
@@ -1,13 +1,15 @@
-{ stdenv, fetchPypi, buildPythonPackage, isPy27, click, redis }:
+{ stdenv, fetchFromGitHub, buildPythonPackage, isPy27, click, redis }:
buildPythonPackage rec {
pname = "rq";
- version = "1.5.0";
+ version = "1.5.1";
disabled = isPy27;
- src = fetchPypi {
- inherit pname version;
- sha256 = "370fc800903c226b898a10174e069a23077b74b22297b4b20e925ca82fcd9471";
+ src = fetchFromGitHub {
+ owner = "rq";
+ repo = "rq";
+ rev = "v${version}";
+ sha256 = "0i7yyw828wdvl7ap4gb7jhm4p94502is3xxrgrdgwwp0l1rac004";
};
# test require a running redis rerver, which is something we can't do yet
diff --git a/pkgs/development/python-modules/sentry-sdk/default.nix b/pkgs/development/python-modules/sentry-sdk/default.nix
index f99527d070a..8aa61748af8 100644
--- a/pkgs/development/python-modules/sentry-sdk/default.nix
+++ b/pkgs/development/python-modules/sentry-sdk/default.nix
@@ -19,6 +19,9 @@
, urllib3
, trytond
, werkzeug
+, executing
+, pure-eval
+, asttokens
}:
buildPythonPackage rec {
@@ -30,7 +33,8 @@ buildPythonPackage rec {
sha256 = "e12eb1c2c01cd9e9cfe70608dbda4ef451f37ef0b7cbb92e5d43f87c341d6334";
};
- checkInputs = [ django flask tornado bottle rq falcon sqlalchemy werkzeug trytond ]
+ checkInputs = [ django flask tornado bottle rq falcon sqlalchemy werkzeug trytond
+ executing pure-eval asttokens ]
++ stdenv.lib.optionals isPy3k [ celery pyramid sanic aiohttp ];
propagatedBuildInputs = [ urllib3 certifi ];
diff --git a/pkgs/development/python-modules/tldextract/default.nix b/pkgs/development/python-modules/tldextract/default.nix
index 8be197e5ca5..b7df857533a 100644
--- a/pkgs/development/python-modules/tldextract/default.nix
+++ b/pkgs/development/python-modules/tldextract/default.nix
@@ -1,4 +1,4 @@
-{ lib, fetchPypi, buildPythonPackage
+{ lib, fetchPypi, buildPythonPackage, setuptools_scm
, requests, requests-file, idna, pytest
, responses
}:
@@ -14,6 +14,7 @@ buildPythonPackage rec {
propagatedBuildInputs = [ requests requests-file idna ];
checkInputs = [ pytest responses ];
+ nativeBuildInputs = [ setuptools_scm ];
meta = {
homepage = "https://github.com/john-kurkowski/tldextract";
diff --git a/pkgs/development/python-modules/trimesh/default.nix b/pkgs/development/python-modules/trimesh/default.nix
index 7d749ea4a9b..f9a2dfa6af3 100644
--- a/pkgs/development/python-modules/trimesh/default.nix
+++ b/pkgs/development/python-modules/trimesh/default.nix
@@ -2,11 +2,11 @@
buildPythonPackage rec {
pname = "trimesh";
- version = "3.7.14";
+ version = "3.8.4";
src = fetchPypi {
inherit pname version;
- sha256 = "bd3d88fc179d6dfd6d47f63dec4bb8da204c070e78cb2b483f86b33886bf627b";
+ sha256 = "50d2e74f2047a50d097a394fb11b12443f764dfc7145140d5029f7019dea6d4d";
};
propagatedBuildInputs = [ numpy ];
diff --git a/pkgs/development/tools/parsing/tree-sitter/default.nix b/pkgs/development/tools/parsing/tree-sitter/default.nix
index 51af3acdacd..b91acdca688 100644
--- a/pkgs/development/tools/parsing/tree-sitter/default.nix
+++ b/pkgs/development/tools/parsing/tree-sitter/default.nix
@@ -55,13 +55,16 @@ in rustPlatform.buildRustPackage {
# needed for the tests
rm -rf test/fixtures/grammars
ln -s ${grammars} test/fixtures/grammars
+
+ # These functions do not appear in the source code
+ sed -i /_ts_query_context/d lib/binding_web/exports.json
+ sed -i /___assert_fail/d lib/binding_web/exports.json
'';
# Compile web assembly with emscripten. The --debug flag prevents us from
# minifying the JavaScript; passing it allows us to side-step more Node
# JS dependencies for installation.
preBuild = ''
- HOME=/tmp
bash ./script/build-wasm --debug
'';
diff --git a/pkgs/development/tools/rust/cargo-embed/default.nix b/pkgs/development/tools/rust/cargo-embed/default.nix
new file mode 100644
index 00000000000..dafcd1ded2f
--- /dev/null
+++ b/pkgs/development/tools/rust/cargo-embed/default.nix
@@ -0,0 +1,27 @@
+{ stdenv, lib
+, rustPlatform, fetchFromGitHub
+, libusb1, pkg-config, rustfmt }:
+
+rustPlatform.buildRustPackage rec {
+ pname = "cargo-embed";
+ version = "0.8.0";
+
+ src = fetchFromGitHub {
+ owner = "probe-rs";
+ repo = pname;
+ rev = "v${version}";
+ sha256 = "0klkgl7c42vhqxj6svw26lcr7rccq89bl17jn3p751x6281zvr35";
+ };
+
+ cargoSha256 = "0w21q2fpr077m8jr24ld3qjimwk1m4fy9dh14fq9nv5xd4f5s8n8";
+
+ nativeBuildInputs = [ pkg-config rustfmt ];
+ buildInputs = [ libusb1 ];
+
+ meta = with lib; {
+ description = "A cargo extension for working with microcontrollers.";
+ homepage = "http://probe.rs/";
+ license = with licenses; [ asl20 /* or */ mit ];
+ maintainers = with maintainers; [ fooker ];
+ };
+}
diff --git a/pkgs/development/tools/rust/cargo-flash/default.nix b/pkgs/development/tools/rust/cargo-flash/default.nix
new file mode 100644
index 00000000000..d4844de21a0
--- /dev/null
+++ b/pkgs/development/tools/rust/cargo-flash/default.nix
@@ -0,0 +1,27 @@
+{ stdenv, lib
+, rustPlatform, fetchFromGitHub
+, libusb1, pkg-config, rustfmt }:
+
+rustPlatform.buildRustPackage rec {
+ pname = "cargo-flash";
+ version = "0.8.0";
+
+ src = fetchFromGitHub {
+ owner = "probe-rs";
+ repo = pname;
+ rev = "v${version}";
+ sha256 = "1bcpv1r4pdpp22w7za7kdy7jl487x3nlwxiz6sqq3iq6wq3j9zj0";
+ };
+
+ cargoSha256 = "1pf117fgw9x9diksqv58cw7i0kzmp25yj73y5ll69sk46b6z4j90";
+
+ nativeBuildInputs = [ pkg-config rustfmt ];
+ buildInputs = [ libusb1 ];
+
+ meta = with lib; {
+ description = "A cargo extension for working with microcontrollers.";
+ homepage = "http://probe.rs/";
+ license = with licenses; [ asl20 /* or */ mit ];
+ maintainers = with maintainers; [ fooker ];
+ };
+}
diff --git a/pkgs/servers/tegola/default.nix b/pkgs/servers/tegola/default.nix
index 24e25f0c137..ecb7fdd4888 100644
--- a/pkgs/servers/tegola/default.nix
+++ b/pkgs/servers/tegola/default.nix
@@ -2,7 +2,7 @@
buildGoPackage rec {
pname = "tegola";
- version = "0.11.2";
+ version = "0.12.0";
goPackagePath = "github.com/go-spatial/tegola";
@@ -10,9 +10,11 @@ buildGoPackage rec {
owner = "go-spatial";
repo = pname;
rev = "v${version}";
- sha256 = "0xrjs0py08q9i31rl0cxi6idncrrgqwcspqks3c5vd9i65yqc6fv";
+ sha256 = "1bm791cis6bqgvhkk6n03kdxh0y9fdkhsx4rgmv7pm3zzdd7b17r";
};
+ buildFlagsArray = [ "-ldflags=-s -w -X ${goPackagePath}/cmd/tegola/cmd.Version=${version}" ];
+
meta = with stdenv.lib; {
homepage = "https://www.tegola.io/";
description = "Mapbox Vector Tile server";
diff --git a/pkgs/tools/admin/salt/default.nix b/pkgs/tools/admin/salt/default.nix
index 35d65b5e657..83b69b12fea 100644
--- a/pkgs/tools/admin/salt/default.nix
+++ b/pkgs/tools/admin/salt/default.nix
@@ -23,7 +23,7 @@ python3.pkgs.buildPythonApplication rec {
pyyaml
pyzmq
requests
- tornado_4
+ tornado
] ++ extraInputs;
patches = [ ./fix-libcrypto-loading.patch ];
diff --git a/pkgs/tools/admin/salt/pepper/default.nix b/pkgs/tools/admin/salt/pepper/default.nix
index e2cfa806f95..0c6e9dc0ab2 100644
--- a/pkgs/tools/admin/salt/pepper/default.nix
+++ b/pkgs/tools/admin/salt/pepper/default.nix
@@ -1,19 +1,19 @@
{ lib
-, pythonPackages
+, python3Packages
, salt
}:
-pythonPackages.buildPythonApplication rec {
+python3Packages.buildPythonApplication rec {
pname = "salt-pepper";
version = "0.7.5";
- src = pythonPackages.fetchPypi {
+ src = python3Packages.fetchPypi {
inherit pname version;
sha256 = "1wh6yidwdk8jvjpr5g3azhqgsk24c5rlzmw6l86dmi0mpvmxm94w";
};
- buildInputs = with pythonPackages; [ setuptools setuptools_scm salt ];
- checkInputs = with pythonPackages; [
- pytest mock pyzmq pytest-rerunfailures pytestcov cherrypy tornado_4
+ buildInputs = with python3Packages; [ setuptools setuptools_scm salt ];
+ checkInputs = with python3Packages; [
+ pytest mock pyzmq pytest-rerunfailures pytestcov cherrypy tornado
];
meta = with lib; {
@@ -21,5 +21,6 @@ pythonPackages.buildPythonApplication rec {
homepage = "https://github.com/saltstack/pepper";
maintainers = [ maintainers.pierrer ];
license = licenses.asl20;
+ broken = true; # ModuleNotFoundError: No module named 'pytestsalt'
};
}
diff --git a/pkgs/tools/backup/grab-site/default.nix b/pkgs/tools/backup/grab-site/default.nix
index 81e16ad005b..e69823ab45d 100644
--- a/pkgs/tools/backup/grab-site/default.nix
+++ b/pkgs/tools/backup/grab-site/default.nix
@@ -1,6 +1,14 @@
-{ stdenv, python3Packages, fetchFromGitHub }:
+{ stdenv, python37, fetchFromGitHub }:
-python3Packages.buildPythonApplication rec {
+let
+ python = python37.override {
+ self = python;
+ packageOverrides = self: super: {
+ tornado = super.tornado_4;
+ };
+ };
+
+in with python.pkgs; buildPythonApplication rec {
version = "2.1.19";
name = "grab-site-${version}";
@@ -11,7 +19,7 @@ python3Packages.buildPythonApplication rec {
sha256 = "1v1hnhv5knzdl0kj3574ccwlh171vcb7faddp095ycdmiiybalk4";
};
- propagatedBuildInputs = with python3Packages; [
+ propagatedBuildInputs = [
click ludios_wpull manhole lmdb autobahn fb-re2 websockets cchardet
];
diff --git a/pkgs/tools/networking/circus/default.nix b/pkgs/tools/networking/circus/default.nix
index 82c9db90432..ea03f8878b2 100644
--- a/pkgs/tools/networking/circus/default.nix
+++ b/pkgs/tools/networking/circus/default.nix
@@ -1,7 +1,14 @@
-{ stdenv, python3Packages }:
+{ stdenv, python3 }:
let
- inherit (python3Packages) buildPythonApplication fetchPypi iowait psutil pyzmq tornado_4 mock;
+ python = python3.override {
+ self = python;
+ packageOverrides = self: super: {
+ tornado = super.tornado_4;
+ };
+ };
+
+ inherit (python.pkgs) buildPythonApplication fetchPypi iowait psutil pyzmq tornado mock six;
in
buildPythonApplication rec {
@@ -23,7 +30,7 @@ buildPythonApplication rec {
doCheck = false; # weird error
- propagatedBuildInputs = [ iowait psutil pyzmq tornado_4 ];
+ propagatedBuildInputs = [ iowait psutil pyzmq tornado six ];
meta = with stdenv.lib; {
description = "A process and socket manager";
diff --git a/pkgs/tools/security/rustscan/default.nix b/pkgs/tools/security/rustscan/default.nix
new file mode 100644
index 00000000000..2a2e8c7ec6c
--- /dev/null
+++ b/pkgs/tools/security/rustscan/default.nix
@@ -0,0 +1,37 @@
+{ lib
+, fetchFromGitHub
+, rustPlatform
+, nmap
+}:
+
+rustPlatform.buildRustPackage rec {
+ pname = "rustscan";
+ version = "1.8.0";
+
+ src = fetchFromGitHub {
+ owner = "RustScan";
+ repo = pname;
+ rev = "${version}";
+ sha256 = "0rkqsh4i58cf18ad97yr4f68s5jg6z0ybz4bw8607lz7cjkfvjay";
+ };
+
+ cargoSha256 = "0mj214f2md7kjknmcayc5dcfmlk2b8mqkn7kxzdis8qv9a5xcbk8";
+
+ postPatch = ''
+ substituteInPlace src/main.rs \
+ --replace 'Command::new("nmap")' 'Command::new("${nmap}/bin/nmap")'
+ '';
+
+ checkFlags = [
+ "--skip=infer_ulimit_lowering_no_panic"
+ "--skip=google_dns_runs"
+ "--skip=parse_correct_ips_or_hosts"
+ ];
+
+ meta = with lib; {
+ description = "Faster Nmap Scanning with Rust";
+ homepage = "https://github.com/RustScan/RustScan";
+ license = licenses.gpl3Only;
+ maintainers = [ maintainers.SuperSandro2000 ];
+ };
+}
diff --git a/pkgs/tools/system/htop/default.nix b/pkgs/tools/system/htop/default.nix
index c9adf5377e2..e95dece2c96 100644
--- a/pkgs/tools/system/htop/default.nix
+++ b/pkgs/tools/system/htop/default.nix
@@ -1,24 +1,22 @@
-{ lib, fetchurl, stdenv, ncurses,
+{ lib, fetchFromGitHub, stdenv, autoreconfHook, ncurses,
IOKit, python3 }:
stdenv.mkDerivation rec {
pname = "htop";
- version = "2.2.0";
+ version = "3.0.0";
- src = fetchurl {
- url = "https://hisham.hm/htop/releases/${version}/${pname}-${version}.tar.gz";
- sha256 = "0mrwpb3cpn3ai7ar33m31yklj64c3pp576vh1naqff6f21pq5mnr";
+ src = fetchFromGitHub {
+ owner = "htop-dev";
+ repo = pname;
+ rev = version;
+ sha256 = "096gdnpaszs5rfp7qj8npi2jkvdqpp8mznn89f97ykrg6pgagwq4";
};
- nativeBuildInputs = [ python3 ];
+ nativeBuildInputs = [ autoreconfHook python3 ];
buildInputs =
[ ncurses ] ++
lib.optionals stdenv.isDarwin [ IOKit ];
- prePatch = ''
- patchShebangs scripts/MakeHeader.py
- '';
-
meta = with stdenv.lib; {
description = "An interactive process viewer for Linux";
homepage = "https://hisham.hm/htop/";
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 08b55eae214..e55fcbe5fda 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -3372,14 +3372,8 @@ in
cholmod-extra = callPackage ../development/libraries/science/math/cholmod-extra { };
- emscriptenVersion = "1.39.1";
-
emscripten = callPackage ../development/compilers/emscripten { };
- emscriptenfastcompPackages = dontRecurseIntoAttrs (callPackage ../development/compilers/emscripten/fastcomp { });
-
- emscriptenfastcomp = emscriptenfastcompPackages.emscriptenfastcomp;
-
emscriptenPackages = recurseIntoAttrs (callPackage ./emscripten-packages.nix { });
emscriptenStdenv = stdenv // { mkDerivation = buildEmscriptenPackage; };
@@ -4586,7 +4580,7 @@ in
isync = callPackage ../tools/networking/isync { };
- itm-tools = callPackage ../development/tools/misc/itm-tools { };
+ itm-tools = callPackage ../development/tools/misc/itm-tools { };
ix = callPackage ../tools/misc/ix { };
@@ -4891,7 +4885,7 @@ in
asciidoc = asciidoc-full;
imagemagick = imagemagick7Big;
};
-
+
kristall = libsForQt5.callPackage ../applications/networking/browsers/kristall { };
kzipmix = pkgsi686Linux.callPackage ../tools/compression/kzipmix { };
@@ -6712,6 +6706,8 @@ in
inherit (darwin.apple_sdk.frameworks) Security;
};
+ rustscan = callPackage ../tools/security/rustscan { };
+
rw = callPackage ../tools/misc/rw { };
rxp = callPackage ../tools/text/xml/rxp { };
@@ -8123,6 +8119,7 @@ in
inherit (yarn2nix-moretea)
yarn2nix
mkYarnPackage
+ mkYarnModules
fixup_yarn_lock;
yasr = callPackage ../applications/audio/yasr { };
@@ -9575,7 +9572,9 @@ in
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;
};
@@ -12527,9 +12526,7 @@ in
gperftools = callPackage ../development/libraries/gperftools { };
- grab-site = callPackage ../tools/backup/grab-site {
- python3Packages = python37Packages;
- };
+ grab-site = callPackage ../tools/backup/grab-site { };
grib-api = callPackage ../development/libraries/grib-api { };
@@ -21004,7 +21001,7 @@ in
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 { };
@@ -21938,6 +21935,8 @@ in
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 {};
@@ -26012,6 +26011,7 @@ in
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;};
@@ -27587,7 +27587,7 @@ in
sequeler = callPackage ../applications/misc/sequeler { };
sequelpro = callPackage ../applications/misc/sequelpro {};
-
+
snowsql = callPackage ../applications/misc/snowsql {};
sidequest = callPackage ../applications/misc/sidequest {};
diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 2f5fffe5f9c..c85ca5a3c5a 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -12875,10 +12875,10 @@ let
Mojolicious = buildPerlPackage {
pname = "Mojolicious";
- version = "8.55";
+ version = "8.58";
src = fetchurl {
- url = "mirror://cpan/authors/id/S/SR/SRI/Mojolicious-8.55.tar.gz";
- sha256 = "116f79a8jvdk0zfj34gp3idhxgk4l8qq4ka6pwhdp8pmks969w0x";
+ url = "mirror://cpan/authors/id/S/SR/SRI/Mojolicious-8.58.tar.gz";
+ sha256 = "0543m2g1pjm06b0yr4cffw70ki76762ria65zvrjccc2zk69pwvy";
};
meta = {
homepage = "https://mojolicious.org";
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index e3148fbaaa4..286ac476fb4 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -992,6 +992,8 @@ in {
matchpy = callPackage ../development/python-modules/matchpy { };
+ mathlibtools = callPackage ../development/python-modules/mathlibtools {};
+
maxminddb = callPackage ../development/python-modules/maxminddb { };
mininet-python = (toPythonModule (pkgs.mininet.override{ inherit python; })).py;
@@ -1164,6 +1166,8 @@ in {
pure-python-adb-homeassistant = callPackage ../development/python-modules/pure-python-adb-homeassistant { };
+ pure-eval = callPackage ../development/python-modules/pure-eval {};
+
purl = callPackage ../development/python-modules/purl { };
pyclipper = callPackage ../development/python-modules/pyclipper { };
@@ -2894,9 +2898,7 @@ in {
# Alias that we should deprecate
dateutil = self.python-dateutil;
- debugpy = callPackage ../development/python-modules/debugpy {
- django = if isPy27 then self.django_1_11 else self.django;
- };
+ debugpy = callPackage ../development/python-modules/debugpy { };
decorator = callPackage ../development/python-modules/decorator { };
@@ -3756,10 +3758,6 @@ in {
django_lts = self.django_2_2;
- django_1_11 = callPackage ../development/python-modules/django/1_11.nix {
- gdal = self.gdal;
- };
-
django_2_2 = callPackage ../development/python-modules/django/2_2.nix { };
django-allauth = callPackage ../development/python-modules/django-allauth { };
@@ -6939,8 +6937,12 @@ in {
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 { };
+
tokenlib = callPackage ../development/python-modules/tokenlib { };
tunigo = callPackage ../development/python-modules/tunigo { };