diff --git a/.github/stale.yml b/.github/stale.yml
index afa307926fe..606d5637cc5 100644
--- a/.github/stale.yml
+++ b/.github/stale.yml
@@ -17,7 +17,7 @@ pulls:
If this is still important to you and you'd like to remove the stale label, we ask that you leave a comment. Your comment can be as simple as "still important to me". But there's a bit more you can do:
- If you received an approval by an unpriviledged maintainer and you are just waiting for a merge, you can @ mention someone with merge permissions and ask them to help. You might be able to find someone relevant by using [Git blame](https://git-scm.com/docs/git-blame) on the relevant files, or via [GitHub's web interface](https://docs.github.com/en/github/managing-files-in-a-repository/tracking-changes-in-a-file). You can see if someone's a member of the [nixpkgs-committers](https://github.com/orgs/NixOS/teams/nixpkgs-committers) team, by hovering with the mouse over their username on the web interface, or by searching them directly on [the list](https://github.com/orgs/NixOS/teams/nixpkgs-committers).
+ If you received an approval by an unprivileged maintainer and you are just waiting for a merge, you can @ mention someone with merge permissions and ask them to help. You might be able to find someone relevant by using [Git blame](https://git-scm.com/docs/git-blame) on the relevant files, or via [GitHub's web interface](https://docs.github.com/en/github/managing-files-in-a-repository/tracking-changes-in-a-file). You can see if someone's a member of the [nixpkgs-committers](https://github.com/orgs/NixOS/teams/nixpkgs-committers) team, by hovering with the mouse over their username on the web interface, or by searching them directly on [the list](https://github.com/orgs/NixOS/teams/nixpkgs-committers).
If your PR wasn't reviewed at all, it might help to find someone who's perhaps a user of the package or module you are changing, or alternatively, ask once more for a review by the maintainer of the package/module this is about. If you don't know any, you can use [Git blame](https://git-scm.com/docs/git-blame) on the relevant files, or [GitHub's web interface](https://docs.github.com/en/github/managing-files-in-a-repository/tracking-changes-in-a-file) to find someone who touched the relevant files in the past.
diff --git a/doc/builders/packages/citrix.xml b/doc/builders/packages/citrix.xml
index c629dc9ee50..16f1bc6f8f2 100644
--- a/doc/builders/packages/citrix.xml
+++ b/doc/builders/packages/citrix.xml
@@ -4,34 +4,36 @@
Citrix Workspace
-
-
- Please note that the citrix_receiver package has been deprecated since its development was discontinued by upstream and has been replaced by the citrix workspace app.
-
-
- Citrix Receiver and Citrix Workspace App are a remote desktop viewers which provide access to XenDesktop installations.
+ The Citrix Workspace App is a remote desktop viewer which provides access to XenDesktop installations.
Basic usage
- The tarball archive needs to be downloaded manually as the license agreements of the vendor for Citrix Receiver or Citrix Workspace need to be accepted first. Then run nix-prefetch-url file://$PWD/linuxx64-$version.tar.gz . With the archive available in the store the package can be built and installed with Nix.
+ The tarball archive needs to be downloaded manually as the license agreements of the vendor for Citrix Workspace needs to be accepted first. Then run nix-prefetch-url file://$PWD/linuxx64-$version.tar.gz . With the archive available in the store the package can be built and installed with Nix.
+
-
- Caution with nix-shell installs
-
- It's recommended to install Citrix Receiver and/or Citrix Workspace using nix-env -i or globally to ensure that the .desktop files are installed properly into $XDG_CONFIG_DIRS . Otherwise it won't be possible to open .ica files automatically from the browser to start a Citrix connection.
-
-
+
+ Citrix Selfservice
+
+ The selfservice is an application managing Citrix desktops and applications. Please note that this feature only works with at least citrix_workspace_20_06_0 and later versions.
+
+
+ In order to set this up, you first have to download the .cr file from the Netscaler Gateway. After that you can configure the selfservice like this:
+
+ $ storebrowse -C ~/Downloads/receiverconfig.cr
+ $ selfservice
+
+
Custom certificates
- The Citrix Workspace App in nixpkgs trust several certificates from the Mozilla database by default. However several companies using Citrix might require their own corporate certificate. On distros with imperative packaging these certs can be stored easily in $ICAROOT , however this directory is a store path in nixpkgs . In order to work around this issue the package provides a simple mechanism to add custom certificates without rebuilding the entire package using symlinkJoin :
+ The Citrix Workspace App in nixpkgs trusts several certificates from the Mozilla database by default. However several companies using Citrix might require their own corporate certificate. On distros with imperative packaging these certs can be stored easily in $ICAROOT , however this directory is a store path in nixpkgs . In order to work around this issue the package provides a simple mechanism to add custom certificates without rebuilding the entire package using symlinkJoin :
{ config.allowUnfree = true; };
let extraCerts = [ ./custom-cert-1.pem ./custom-cert-2.pem /* ... */ ]; in
diff --git a/doc/languages-frameworks/perl.xml b/doc/languages-frameworks/perl.xml
index d9b6b2721c6..ff0f350e99c 100644
--- a/doc/languages-frameworks/perl.xml
+++ b/doc/languages-frameworks/perl.xml
@@ -3,159 +3,193 @@
xml:id="sec-language-perl">
Perl
-
- Nixpkgs provides a function buildPerlPackage , a generic package builder function for any Perl package that has a standard Makefile.PL . It’s implemented in pkgs/development/perl-modules/generic .
-
-
-
- Perl packages from CPAN are defined in pkgs/top-level/perl-packages.nix , rather than pkgs/all-packages.nix . Most Perl packages are so straight-forward to build that they are defined here directly, rather than having a separate function for each package called from perl-packages.nix . However, more complicated packages should be put in a separate file, typically in pkgs/development/perl-modules . Here is an example of the former:
-
-ClassC3 = buildPerlPackage rec {
- name = "Class-C3-0.21";
- src = fetchurl {
- url = "mirror://cpan/authors/id/F/FL/FLORA/${name}.tar.gz";
- sha256 = "1bl8z095y4js66pwxnm7s853pi9czala4sqc743fdlnk27kq94gz";
- };
-};
-
- Note the use of mirror://cpan/ , and the ${name} in the URL definition to ensure that the name attribute is consistent with the source that we’re actually downloading. Perl packages are made available in all-packages.nix through the variable perlPackages . For instance, if you have a package that needs ClassC3 , you would typically write
-
-foo = import ../path/to/foo.nix {
- inherit stdenv fetchurl ...;
- inherit (perlPackages) ClassC3;
-};
-
- in all-packages.nix . You can test building a Perl package as follows:
-
-$ nix-build -A perlPackages.ClassC3
-
- buildPerlPackage adds perl- to the start of the name attribute, so the package above is actually called perl-Class-C3-0.21 . So to install it, you can say:
-
-$ nix-env -i perl-Class-C3
-
- (Of course you can also install using the attribute name: nix-env -i -A perlPackages.ClassC3 .)
-
-
-
- So what does buildPerlPackage do? It does the following:
-
-
-
- In the configure phase, it calls perl Makefile.PL to generate a Makefile. You can set the variable makeMakerFlags to pass flags to Makefile.PL
-
-
-
-
- It adds the contents of the PERL5LIB environment variable to #! .../bin/perl line of Perl scripts as -Idir flags. This ensures that a script can find its dependencies. (This can cause this shebang line to become too long for Darwin to handle; see the note below.)
-
-
-
-
- In the fixup phase, it writes the propagated build inputs (propagatedBuildInputs ) to the file $out/nix-support/propagated-user-env-packages . nix-env recursively installs all packages listed in this file when you install a package that has it. This ensures that a Perl package can find its dependencies.
-
-
-
-
-
-
- buildPerlPackage is built on top of stdenv , so everything can be customised in the usual way. For instance, the BerkeleyDB module has a preConfigure hook to generate a configuration file used by Makefile.PL :
-
-{ buildPerlPackage, fetchurl, db }:
-
-buildPerlPackage rec {
- name = "BerkeleyDB-0.36";
-
- src = fetchurl {
- url = "mirror://cpan/authors/id/P/PM/PMQS/${name}.tar.gz";
- sha256 = "07xf50riarb60l1h6m2dqmql8q5dij619712fsgw7ach04d8g3z1";
- };
-
- preConfigure = ''
- echo "LIB = ${db.out}/lib" > config.in
- echo "INCLUDE = ${db.dev}/include" >> config.in
- '';
-}
-
-
-
-
- Dependencies on other Perl packages can be specified in the buildInputs and propagatedBuildInputs attributes. If something is exclusively a build-time dependency, use buildInputs ; if it’s (also) a runtime dependency, use propagatedBuildInputs . For instance, this builds a Perl module that has runtime dependencies on a bunch of other modules:
-
-ClassC3Componentised = buildPerlPackage rec {
- name = "Class-C3-Componentised-1.0004";
- src = fetchurl {
- url = "mirror://cpan/authors/id/A/AS/ASH/${name}.tar.gz";
- sha256 = "0xql73jkcdbq4q9m0b0rnca6nrlvf5hyzy8is0crdk65bynvs8q1";
- };
- propagatedBuildInputs = [
- ClassC3 ClassInspector TestException MROCompat
- ];
-};
-
-
-
-
- On Darwin, if a script has too many -Idir flags in its first line (its “shebang line”), it will not run. This can be worked around by calling the shortenPerlShebang function from the postInstall phase:
-
-{ stdenv, buildPerlPackage, fetchurl, shortenPerlShebang }:
-
-ImageExifTool = buildPerlPackage {
- pname = "Image-ExifTool";
- version = "11.50";
-
- src = fetchurl {
- url = "https://www.sno.phy.queensu.ca/~phil/exiftool/Image-ExifTool-11.50.tar.gz";
- sha256 = "0d8v48y94z8maxkmw1rv7v9m0jg2dc8xbp581njb6yhr7abwqdv3";
- };
-
- buildInputs = stdenv.lib.optional stdenv.isDarwin shortenPerlShebang;
- postInstall = stdenv.lib.optional stdenv.isDarwin ''
- shortenPerlShebang $out/bin/exiftool
- '';
-};
-
- This will remove the -I flags from the shebang line, rewrite them in the use lib form, and put them on the next line instead. This function can be given any number of Perl scripts as arguments; it will modify them in-place.
-
-
-
- Generation from CPAN
+
+ Running perl programs on the shell
- Nix expressions for Perl packages can be generated (almost) automatically from CPAN. This is done by the program nix-generate-from-cpan , which can be installed as follows:
+ When executing a Perl script, it is possible you get an error such as ./myscript.pl: bad interpreter: /usr/bin/perl: no such file or directory . This happens when the script expects Perl to be installed at /usr/bin/perl , which is not the case when using Perl from nixpkgs. You can fix the script by changing the first line to:
+
+ #!/usr/bin/env perl
+
+ to take the Perl installation from the PATH environment variable, or invoke Perl directly with:
+
+ $ perl ./myscript.pl
+
-
-$ nix-env -i nix-generate-from-cpan
-
+
+ When the script is using a Perl library that is not installed globally, you might get an error such as Can't locate DB_File.pm in @INC (you may need to install the DB_File module) . In that case, you can use nix-shell to start an ad-hoc shell with that library installed, for instance:
+
+ $ nix-shell -p perl perlPackages.DBFile --run ./myscript.pl
+
+
- This program takes a Perl module name, looks it up on CPAN, fetches and unpacks the corresponding package, and prints a Nix expression on standard output. For example:
-
-$ nix-generate-from-cpan XML::Simple
- XMLSimple = buildPerlPackage rec {
- name = "XML-Simple-2.22";
- src = fetchurl {
- url = "mirror://cpan/authors/id/G/GR/GRANTM/${name}.tar.gz";
- sha256 = "b9450ef22ea9644ae5d6ada086dc4300fa105be050a2030ebd4efd28c198eb49";
- };
- propagatedBuildInputs = [ XMLNamespaceSupport XMLSAX XMLSAXExpat ];
- meta = {
- description = "An API for simple XML files";
- license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
- };
- };
-
- The output can be pasted into pkgs/top-level/perl-packages.nix or wherever else you need it.
+ If you are always using the script in places where nix-shell is available, you can embed the nix-shell invocation in the shebang like this:
+
+ #!/usr/bin/env nix-shell
+ #! nix-shell -i perl -p perl perlPackages.DBFile
+
-
- Cross-compiling modules
+
+ Packaging Perl programs
- Nixpkgs has experimental support for cross-compiling Perl modules. In many cases, it will just work out of the box, even for modules with native extensions. Sometimes, however, the Makefile.PL for a module may (indirectly) import a native module. In that case, you will need to make a stub for that module that will satisfy the Makefile.PL and install it into lib/perl5/site_perl/cross_perl/${perl.version} . See the postInstall for DBI for an example.
+ Nixpkgs provides a function buildPerlPackage , a generic package builder function for any Perl package that has a standard Makefile.PL . It’s implemented in pkgs/development/perl-modules/generic .
+
+
+ Perl packages from CPAN are defined in pkgs/top-level/perl-packages.nix , rather than pkgs/all-packages.nix . Most Perl packages are so straight-forward to build that they are defined here directly, rather than having a separate function for each package called from perl-packages.nix . However, more complicated packages should be put in a separate file, typically in pkgs/development/perl-modules . Here is an example of the former:
+
+ ClassC3 = buildPerlPackage rec {
+ name = "Class-C3-0.21";
+ src = fetchurl {
+ url = "mirror://cpan/authors/id/F/FL/FLORA/${name}.tar.gz";
+ sha256 = "1bl8z095y4js66pwxnm7s853pi9czala4sqc743fdlnk27kq94gz";
+ };
+ };
+
+ Note the use of mirror://cpan/ , and the ${name} in the URL definition to ensure that the name attribute is consistent with the source that we’re actually downloading. Perl packages are made available in all-packages.nix through the variable perlPackages . For instance, if you have a package that needs ClassC3 , you would typically write
+
+ foo = import ../path/to/foo.nix {
+ inherit stdenv fetchurl ...;
+ inherit (perlPackages) ClassC3;
+ };
+
+ in all-packages.nix . You can test building a Perl package as follows:
+
+ $ nix-build -A perlPackages.ClassC3
+
+ buildPerlPackage adds perl- to the start of the name attribute, so the package above is actually called perl-Class-C3-0.21 . So to install it, you can say:
+
+ $ nix-env -i perl-Class-C3
+
+ (Of course you can also install using the attribute name: nix-env -i -A perlPackages.ClassC3 .)
+
+
+
+ So what does buildPerlPackage do? It does the following:
+
+
+
+ In the configure phase, it calls perl Makefile.PL to generate a Makefile. You can set the variable makeMakerFlags to pass flags to Makefile.PL
+
+
+
+
+ It adds the contents of the PERL5LIB environment variable to #! .../bin/perl line of Perl scripts as -Idir flags. This ensures that a script can find its dependencies. (This can cause this shebang line to become too long for Darwin to handle; see the note below.)
+
+
+
+
+ In the fixup phase, it writes the propagated build inputs (propagatedBuildInputs ) to the file $out/nix-support/propagated-user-env-packages . nix-env recursively installs all packages listed in this file when you install a package that has it. This ensures that a Perl package can find its dependencies.
+
+
+
+
+
+
+ buildPerlPackage is built on top of stdenv , so everything can be customised in the usual way. For instance, the BerkeleyDB module has a preConfigure hook to generate a configuration file used by Makefile.PL :
+
+ { buildPerlPackage, fetchurl, db }:
+
+ buildPerlPackage rec {
+ name = "BerkeleyDB-0.36";
+
+ src = fetchurl {
+ url = "mirror://cpan/authors/id/P/PM/PMQS/${name}.tar.gz";
+ sha256 = "07xf50riarb60l1h6m2dqmql8q5dij619712fsgw7ach04d8g3z1";
+ };
+
+ preConfigure = ''
+ echo "LIB = ${db.out}/lib" > config.in
+ echo "INCLUDE = ${db.dev}/include" >> config.in
+ '';
+ }
+
+
+
+
+ Dependencies on other Perl packages can be specified in the buildInputs and propagatedBuildInputs attributes. If something is exclusively a build-time dependency, use buildInputs ; if it’s (also) a runtime dependency, use propagatedBuildInputs . For instance, this builds a Perl module that has runtime dependencies on a bunch of other modules:
+
+ ClassC3Componentised = buildPerlPackage rec {
+ name = "Class-C3-Componentised-1.0004";
+ src = fetchurl {
+ url = "mirror://cpan/authors/id/A/AS/ASH/${name}.tar.gz";
+ sha256 = "0xql73jkcdbq4q9m0b0rnca6nrlvf5hyzy8is0crdk65bynvs8q1";
+ };
+ propagatedBuildInputs = [
+ ClassC3 ClassInspector TestException MROCompat
+ ];
+ };
+
+
+
+
+ On Darwin, if a script has too many -Idir flags in its first line (its “shebang line”), it will not run. This can be worked around by calling the shortenPerlShebang function from the postInstall phase:
+
+ { stdenv, buildPerlPackage, fetchurl, shortenPerlShebang }:
+
+ ImageExifTool = buildPerlPackage {
+ pname = "Image-ExifTool";
+ version = "11.50";
+
+ src = fetchurl {
+ url = "https://www.sno.phy.queensu.ca/~phil/exiftool/Image-ExifTool-11.50.tar.gz";
+ sha256 = "0d8v48y94z8maxkmw1rv7v9m0jg2dc8xbp581njb6yhr7abwqdv3";
+ };
+
+ buildInputs = stdenv.lib.optional stdenv.isDarwin shortenPerlShebang;
+ postInstall = stdenv.lib.optional stdenv.isDarwin ''
+ shortenPerlShebang $out/bin/exiftool
+ '';
+ };
+
+ This will remove the -I flags from the shebang line, rewrite them in the use lib form, and put them on the next line instead. This function can be given any number of Perl scripts as arguments; it will modify them in-place.
+
+
+
+ Generation from CPAN
+
+
+ Nix expressions for Perl packages can be generated (almost) automatically from CPAN. This is done by the program nix-generate-from-cpan , which can be installed as follows:
+
+
+
+ $ nix-env -i nix-generate-from-cpan
+
+
+
+ This program takes a Perl module name, looks it up on CPAN, fetches and unpacks the corresponding package, and prints a Nix expression on standard output. For example:
+
+ $ nix-generate-from-cpan XML::Simple
+ XMLSimple = buildPerlPackage rec {
+ name = "XML-Simple-2.22";
+ src = fetchurl {
+ url = "mirror://cpan/authors/id/G/GR/GRANTM/${name}.tar.gz";
+ sha256 = "b9450ef22ea9644ae5d6ada086dc4300fa105be050a2030ebd4efd28c198eb49";
+ };
+ propagatedBuildInputs = [ XMLNamespaceSupport XMLSAX XMLSAXExpat ];
+ meta = {
+ description = "An API for simple XML files";
+ license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
+ };
+ };
+
+ The output can be pasted into pkgs/top-level/perl-packages.nix or wherever else you need it.
+
+
+
+
+ Cross-compiling modules
+
+
+ Nixpkgs has experimental support for cross-compiling Perl modules. In many cases, it will just work out of the box, even for modules with native extensions. Sometimes, however, the Makefile.PL for a module may (indirectly) import a native module. In that case, you will need to make a stub for that module that will satisfy the Makefile.PL and install it into lib/perl5/site_perl/cross_perl/${perl.version} . See the postInstall for DBI for an example.
+
+
diff --git a/doc/stdenv/meta.xml b/doc/stdenv/meta.xml
index 45f7834eb2c..9cef9360002 100644
--- a/doc/stdenv/meta.xml
+++ b/doc/stdenv/meta.xml
@@ -155,17 +155,17 @@ hello-2.3 A program that produces a familiar, friendly greeting
- Single license referenced by attribute (preferred) stdenv.lib.licenses.gpl3 .
+ Single license referenced by attribute (preferred) stdenv.lib.licenses.gpl3Only .
- Single license referenced by its attribute shortName (frowned upon) "gpl3" .
+ Single license referenced by its attribute shortName (frowned upon) "gpl3Only" .
- Single license referenced by its attribute spdxId (frowned upon) "GPL-3.0" .
+ Single license referenced by its attribute spdxId (frowned upon) "GPL-3.0-only" .
diff --git a/doc/using/configuration.xml b/doc/using/configuration.xml
index 690bb3d34a1..b670f78f28b 100644
--- a/doc/using/configuration.xml
+++ b/doc/using/configuration.xml
@@ -162,10 +162,10 @@
- The following example configuration blacklists the gpl3 and agpl3 licenses:
+ The following example configuration blacklists the gpl3Only and agpl3Only licenses:
{
- blacklistedLicenses = with stdenv.lib.licenses; [ agpl3 gpl3 ];
+ blacklistedLicenses = with stdenv.lib.licenses; [ agpl3Only gpl3Only ];
}
diff --git a/lib/licenses.nix b/lib/licenses.nix
index ed4d80fffac..2c6da3a865f 100644
--- a/lib/licenses.nix
+++ b/lib/licenses.nix
@@ -28,7 +28,7 @@ lib.mapAttrs (n: v: v // { shortName = n; }) {
fullName = "Academic Free License v3.0";
};
- agpl3 = spdx {
+ agpl3Only = spdx {
spdxId = "AGPL-3.0-only";
fullName = "GNU Affero General Public License v3.0 only";
};
@@ -281,12 +281,12 @@ lib.mapAttrs (n: v: v // { shortName = n; }) {
fullName = "European Union Public License 1.2";
};
- fdl11 = spdx {
+ fdl11Only = spdx {
spdxId = "GFDL-1.1-only";
fullName = "GNU Free Documentation License v1.1 only";
};
- fdl12 = spdx {
+ fdl12Only = spdx {
spdxId = "GFDL-1.2-only";
fullName = "GNU Free Documentation License v1.2 only";
};
@@ -296,7 +296,7 @@ lib.mapAttrs (n: v: v // { shortName = n; }) {
fullName = "GNU Free Documentation License v1.2 or later";
};
- fdl13 = spdx {
+ fdl13Only = spdx {
spdxId = "GFDL-1.3-only";
fullName = "GNU Free Documentation License v1.3 only";
};
@@ -327,7 +327,7 @@ lib.mapAttrs (n: v: v // { shortName = n; }) {
free = false;
};
- gpl1 = spdx {
+ gpl1Only = spdx {
spdxId = "GPL-1.0-only";
fullName = "GNU General Public License v1.0 only";
};
@@ -337,7 +337,7 @@ lib.mapAttrs (n: v: v // { shortName = n; }) {
fullName = "GNU General Public License v1.0 or later";
};
- gpl2 = spdx {
+ gpl2Only = spdx {
spdxId = "GPL-2.0-only";
fullName = "GNU General Public License v2.0 only";
};
@@ -362,7 +362,7 @@ lib.mapAttrs (n: v: v // { shortName = n; }) {
fullName = "GNU General Public License v2.0 or later";
};
- gpl3 = spdx {
+ gpl3Only = spdx {
spdxId = "GPL-3.0-only";
fullName = "GNU General Public License v3.0 only";
};
@@ -437,7 +437,7 @@ lib.mapAttrs (n: v: v // { shortName = n; }) {
fullName = "JasPer License";
};
- lgpl2 = spdx {
+ lgpl2Only = spdx {
spdxId = "LGPL-2.0-only";
fullName = "GNU Library General Public License v2 only";
};
@@ -447,7 +447,7 @@ lib.mapAttrs (n: v: v // { shortName = n; }) {
fullName = "GNU Library General Public License v2 or later";
};
- lgpl21 = spdx {
+ lgpl21Only = spdx {
spdxId = "LGPL-2.1-only";
fullName = "GNU Lesser General Public License v2.1 only";
};
@@ -457,7 +457,7 @@ lib.mapAttrs (n: v: v // { shortName = n; }) {
fullName = "GNU Lesser General Public License v2.1 or later";
};
- lgpl3 = spdx {
+ lgpl3Only = spdx {
spdxId = "LGPL-3.0-only";
fullName = "GNU Lesser General Public License v3.0 only";
};
@@ -782,4 +782,16 @@ lib.mapAttrs (n: v: v // { shortName = n; }) {
spdxId = "ZPL-2.1";
fullName = "Zope Public License 2.1";
};
+} // {
+ # TODO: remove legacy aliases
+ agpl3 = lib.licenses.agpl3Only;
+ fdl11 = lib.licenses.fdl11Only;
+ fdl12 = lib.licenses.fdl12Only;
+ fdl13 = lib.licenses.fdl13Only;
+ gpl1 = lib.licenses.gpl1Only;
+ gpl2 = lib.licenses.gpl2Only;
+ gpl3 = lib.licenses.gpl3Only;
+ lgpl2 = lib.licenses.lgpl2Only;
+ lgpl21 = lib.licenses.lgpl21Only;
+ lgpl3 = lib.licenses.lgpl3Only;
}
diff --git a/lib/sources.nix b/lib/sources.nix
index ed9bce48530..776fcc32052 100644
--- a/lib/sources.nix
+++ b/lib/sources.nix
@@ -145,10 +145,14 @@ rec {
# packed-refs file, so we have to grep through it:
then
let fileContent = readFile packedRefsName;
- matchRef = match (".*\n([^\n ]*) " + file + "\n.*") fileContent;
- in if matchRef == null
+ matchRef = builtins.match "([a-z0-9]+) ${file}";
+ isRef = s: builtins.isString s && (matchRef s) != null;
+ # there is a bug in libstdc++ leading to stackoverflow for long strings:
+ # https://github.com/NixOS/nix/issues/2147#issuecomment-659868795
+ refs = builtins.filter isRef (builtins.split "\n" fileContent);
+ in if refs == []
then throw ("Could not find " + file + " in " + packedRefsName)
- else lib.head matchRef
+ else lib.head (matchRef (lib.head refs))
else throw ("Not a .git directory: " + path);
in readCommitFromFile "HEAD";
diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix
index 8514e426f7d..8e77ec4ff31 100644
--- a/maintainers/maintainer-list.nix
+++ b/maintainers/maintainer-list.nix
@@ -4803,6 +4803,12 @@
githubId = 34683288;
name = "Luke Bentley-Fox";
};
+ lukegb = {
+ email = "nix@lukegb.com";
+ github = "lukegb";
+ githubId = 246745;
+ name = "Luke Granger-Brown";
+ };
lukego = {
email = "luke@snabb.co";
github = "lukego";
@@ -9127,4 +9133,10 @@
github = "tfmoraes";
githubId = 351108;
};
+ deifactor = {
+ name = "Ash Zahlen";
+ email = "ext0l@riseup.net";
+ github = "deifactor";
+ githubId = 30192992;
+ };
}
diff --git a/maintainers/scripts/update.nix b/maintainers/scripts/update.nix
index 66ea18ddf62..9568c6cbbcc 100755
--- a/maintainers/scripts/update.nix
+++ b/maintainers/scripts/update.nix
@@ -9,7 +9,13 @@
# TODO: add assert statements
let
- pkgs = import ./../../default.nix (if include-overlays then { } else { overlays = []; });
+ pkgs = import ./../../default.nix (
+ if include-overlays == false then
+ { overlays = []; }
+ else if include-overlays == true then
+ { } # Let Nixpkgs include overlays impurely.
+ else { overlays = include-overlays; }
+ );
inherit (pkgs) lib;
diff --git a/nixos/doc/manual/configuration/configuration.xml b/nixos/doc/manual/configuration/configuration.xml
index 507d28814ea..6eb8f50baca 100644
--- a/nixos/doc/manual/configuration/configuration.xml
+++ b/nixos/doc/manual/configuration/configuration.xml
@@ -18,6 +18,7 @@
+
diff --git a/nixos/doc/manual/configuration/gpu-accel.xml b/nixos/doc/manual/configuration/gpu-accel.xml
new file mode 100644
index 00000000000..61229390d07
--- /dev/null
+++ b/nixos/doc/manual/configuration/gpu-accel.xml
@@ -0,0 +1,104 @@
+
+ GPU acceleration
+
+
+ NixOS provides various APIs that benefit from GPU hardware
+ acceleration, such as VA-API and VDPAU for video playback; OpenGL and
+ Vulkan for 3D graphics; and OpenCL for general-purpose computing.
+ This chapter describes how to set up GPU hardware acceleration (as far
+ as this is not done automatically) and how to verify that hardware
+ acceleration is indeed used.
+
+
+
+ Most of the aforementioned APIs are agnostic with regards to which
+ display server is used. Consequently, these instructions should apply
+ both to the X Window System and Wayland compositors.
+
+
+
+ OpenCL
+
+
+ OpenCL is a
+ general compute API. It is used by various applications such as
+ Blender and Darktable to accelerate certain operations.
+
+
+
+ OpenCL applications load drivers through the Installable Client
+ Driver (ICD) mechanism. In this mechanism, an ICD file
+ specifies the path to the OpenCL driver for a particular GPU family.
+ In NixOS, there are two ways to make ICD files visible to the ICD
+ loader. The first is through the OCL_ICD_VENDORS
+ environment variable. This variable can contain a directory which
+ is scanned by the ICL loader for ICD files. For example:
+
+ $ export \
+ OCL_ICD_VENDORS=`nix-build '<nixpkgs>' --no-out-link -A rocm-opencl-icd`/etc/OpenCL/vendors/
+
+
+
+ The second mechanism is to add the OpenCL driver package to
+ . This links the
+ ICD file under /run/opengl-driver , where it will
+ be visible to the ICD loader.
+
+
+
+ The proper installation of OpenCL drivers can be verified through
+ the clinfo command of the clinfo
+ package. This command will report the number of hardware devides
+ that is found and give detailed information for each device:
+
+
+ $ clinfo | head -n3
+Number of platforms 1
+Platform Name AMD Accelerated Parallel Processing
+Platform Vendor Advanced Micro Devices, Inc.
+
+
+ AMD
+
+
+ Modern AMD Graphics
+ Core Next (GCN) GPUs are supported through the
+ rocm-opencl-icd package. Adding this package to
+ enables OpenCL
+ support. However, OpenCL Image support is provided through the
+ non-free rocm-runtime-ext package. This package can
+ be added to the same configuration option, but requires that
+ allowUnfree option is is enabled for nixpkgs. Full
+ OpenCL support on supported AMD GPUs is thus enabled as follows:
+
+ = [
+ rocm-opencl-icd
+ rocm-runtime-ext
+];
+
+
+
+ It is also possible to use the OpenCL Image extension without a
+ system-wide installation of the rocm-runtime-ext
+ package by setting the ROCR_EXT_DIR environment
+ variable to the directory that contains the extension:
+
+ $ export \
+ROCR_EXT_DIR=`nix-build '<nixpkgs>' --no-out-link -A rocm-runtime-ext`/lib/rocm-runtime-ext
+
+
+
+ With either approach, you can verify that OpenCL Image support
+ is indeed working with the clinfo command:
+
+ $ clinfo | grep Image
+ Image support Yes
+
+
+
+
diff --git a/nixos/doc/manual/development/writing-nixos-tests.xml b/nixos/doc/manual/development/writing-nixos-tests.xml
index ff37b3b2f6f..d9dc3cd5e2a 100644
--- a/nixos/doc/manual/development/writing-nixos-tests.xml
+++ b/nixos/doc/manual/development/writing-nixos-tests.xml
@@ -390,7 +390,7 @@ start_all()
Copies a file from host to machine, e.g.,
- copy_file_from_host("myfile", "/etc/my/important/file") .
+ copy_from_host("myfile", "/etc/my/important/file") .
The first argument is the file on the host. The file needs to be
diff --git a/nixos/modules/config/fonts/fontconfig.nix b/nixos/modules/config/fonts/fontconfig.nix
index ac2a024eaa8..52d284f739b 100644
--- a/nixos/modules/config/fonts/fontconfig.nix
+++ b/nixos/modules/config/fonts/fontconfig.nix
@@ -214,15 +214,7 @@ let
# fontconfig default config files
ln -s ${supportPkg.out}/etc/fonts/conf.d/*.conf \
$support_folder/
- ln -s ${latestPkg.out}/etc/fonts/conf.d/*.conf \
- $latest_folder/
-
- # update latest 51-local.conf path to look at the latest local.conf
- rm $latest_folder/51-local.conf
-
- substitute ${latestPkg.out}/etc/fonts/conf.d/51-local.conf \
- $latest_folder/51-local.conf \
- --replace local.conf /etc/fonts/${latestVersion}/local.conf
+ # Latest fontconfig is configured to look for the upstream defaults inside the package.
# 00-nixos-cache.conf
ln -s ${cacheConfSupport} \
@@ -236,7 +228,11 @@ let
# 50-user.conf
${optionalString (!cfg.includeUserConf) ''
rm $support_folder/50-user.conf
- rm $latest_folder/50-user.conf
+ ''}
+ # Since latest fontconfig looks for default files inside the package,
+ # we had to move this one elsewhere to be able to exclude it here.
+ ${optionalString cfg.includeUserConf ''
+ ln -s ${latestPkg.out}/etc/fonts/conf.d.bak/50-user.conf $latest_folder/50-user.conf
''}
# local.conf (indirect priority 51)
diff --git a/nixos/modules/services/misc/matrix-synapse.xml b/nixos/modules/services/misc/matrix-synapse.xml
index 2f2ac27eeb9..fbfa838b168 100644
--- a/nixos/modules/services/misc/matrix-synapse.xml
+++ b/nixos/modules/services/misc/matrix-synapse.xml
@@ -14,9 +14,9 @@
This chapter will show you how to set up your own, self-hosted Matrix
homeserver using the Synapse reference homeserver, and how to serve your own
- copy of the Riot web client. See the
+ copy of the Element web client. See the
Try
- Matrix Now! overview page for links to Riot Apps for Android and iOS,
+ Matrix Now! overview page for links to Element Apps for Android and iOS,
desktop clients, as well as bridges to other networks and other projects
around Matrix.
@@ -84,7 +84,7 @@ in {
"m.homeserver" = { "base_url" = "https://${fqdn}"; };
"m.identity_server" = { "base_url" = "https://vector.im"; };
};
- # ACAO required to allow riot-web on any URL to request this json file
+ # ACAO required to allow element-web on any URL to request this json file
in ''
add_header Content-Type application/json;
add_header Access-Control-Allow-Origin *;
@@ -98,7 +98,7 @@ in {
forceSSL = true;
# Or do a redirect instead of the 404, or whatever is appropriate for you.
- # But do not put a Matrix Web client here! See the Riot Web section below.
+ # But do not put a Matrix Web client here! See the Element web section below.
locations."/".extraConfig = ''
return 404;
'';
@@ -171,17 +171,19 @@ Success!
option until a better solution for NixOS is in place.
-
- Riot Web Client
+
+ Element (formerly known as Riot) Web Client
- Riot Web is
+ Element Web is
the reference web client for Matrix and developed by the core team at
- matrix.org. The following snippet can be optionally added to the code before
+ matrix.org. Element was formerly known as Riot.im, see the
+ Element introductory blog post
+ for more information. The following snippet can be optionally added to the code before
to complete the synapse installation with a web client served at
- https://riot.myhostname.example.org
and
- https://riot.example.org
. Alternatively, you can use the hosted
- copy at https://riot.im/app,
+ https://element.myhostname.example.org
and
+ https://element.example.org
. Alternatively, you can use the hosted
+ copy at https://app.element.io/,
or use other web clients or native client applications. Due to the
/.well-known urls set up done above, many clients should
fill in the required connection details automatically when you enter your
@@ -191,14 +193,14 @@ Success!
featureset.
{
- services.nginx.virtualHosts."riot.${fqdn}" = {
+ services.nginx.virtualHosts."element.${fqdn}" = {
enableACME = true;
forceSSL = true;
serverAliases = [
- "riot.${config.networking.domain}"
+ "element.${config.networking.domain}"
];
- root = pkgs.riot-web.override {
+ root = pkgs.element-web.override {
conf = {
default_server_config."m.homeserver" = {
"base_url" = "${config.networking.domain}";
@@ -212,13 +214,13 @@ Success!
- Note that the Riot developers do not recommend running Riot and your Matrix
+ Note that the Element developers do not recommend running Element and your Matrix
homeserver on the same fully-qualified domain name for security reasons. In
the example, this means that you should not reuse the
- myhostname.example.org virtualHost to also serve Riot,
+ myhostname.example.org virtualHost to also serve Element,
but instead serve it on a different subdomain, like
- riot.example.org in the example. See the
- Riot
+ element.example.org in the example. See the
+ Element
Important Security Notes for more information on this subject.
diff --git a/nixos/modules/services/monitoring/prometheus/exporters.nix b/nixos/modules/services/monitoring/prometheus/exporters.nix
index c4aedd7e23b..59748efe0de 100644
--- a/nixos/modules/services/monitoring/prometheus/exporters.nix
+++ b/nixos/modules/services/monitoring/prometheus/exporters.nix
@@ -34,6 +34,7 @@ let
"mail"
"mikrotik"
"minio"
+ "modemmanager"
"nextcloud"
"nginx"
"node"
diff --git a/nixos/modules/services/monitoring/prometheus/exporters/modemmanager.nix b/nixos/modules/services/monitoring/prometheus/exporters/modemmanager.nix
new file mode 100644
index 00000000000..86ea98b94e4
--- /dev/null
+++ b/nixos/modules/services/monitoring/prometheus/exporters/modemmanager.nix
@@ -0,0 +1,33 @@
+{ config, lib, pkgs, options }:
+
+with lib;
+
+let
+ cfg = config.services.prometheus.exporters.modemmanager;
+in
+{
+ port = 9539;
+ extraOpts = {
+ refreshRate = mkOption {
+ type = types.str;
+ default = "5s";
+ description = ''
+ How frequently ModemManager will refresh the extended signal quality
+ information for each modem. The duration should be specified in seconds
+ ("5s"), minutes ("1m"), or hours ("1h").
+ '';
+ };
+ };
+ serviceOpts = {
+ serviceConfig = {
+ # Required in order to authenticate with ModemManager via D-Bus.
+ SupplementaryGroups = "networkmanager";
+ ExecStart = ''
+ ${pkgs.prometheus-modemmanager-exporter}/bin/modemmanager_exporter \
+ -addr ${cfg.listenAddress}:${toString cfg.port} \
+ -rate ${cfg.refreshRate} \
+ ${concatStringsSep " \\\n " cfg.extraFlags}
+ '';
+ };
+ };
+}
diff --git a/nixos/modules/services/web-apps/moodle.nix b/nixos/modules/services/web-apps/moodle.nix
index 1196780cf6e..f45eaa24d54 100644
--- a/nixos/modules/services/web-apps/moodle.nix
+++ b/nixos/modules/services/web-apps/moodle.nix
@@ -40,7 +40,7 @@ let
$CFG->disableupdateautodeploy = true;
$CFG->pathtogs = '${pkgs.ghostscript}/bin/gs';
- $CFG->pathtophp = '${pkgs.php}/bin/php';
+ $CFG->pathtophp = '${phpExt}/bin/php';
$CFG->pathtodu = '${pkgs.coreutils}/bin/du';
$CFG->aspellpath = '${pkgs.aspell}/bin/aspell';
$CFG->pathtodot = '${pkgs.graphviz}/bin/dot';
@@ -55,6 +55,9 @@ let
mysqlLocal = cfg.database.createLocally && cfg.database.type == "mysql";
pgsqlLocal = cfg.database.createLocally && cfg.database.type == "pgsql";
+
+ phpExt = pkgs.php.withExtensions
+ ({ enabled, all }: with all; [ iconv mbstring curl openssl tokenizer xmlrpc soap ctype zip gd simplexml dom intl json sqlite3 pgsql pdo_sqlite pdo_pgsql pdo_odbc pdo_mysql pdo mysqli session zlib xmlreader fileinfo ]);
in
{
# interface
@@ -222,6 +225,7 @@ in
services.phpfpm.pools.moodle = {
inherit user group;
+ phpPackage = phpExt;
phpEnv.MOODLE_CONFIG = "${moodleConfig}";
phpOptions = ''
zend_extension = opcache.so
@@ -263,13 +267,13 @@ in
after = optional mysqlLocal "mysql.service" ++ optional pgsqlLocal "postgresql.service";
environment.MOODLE_CONFIG = moodleConfig;
script = ''
- ${pkgs.php}/bin/php ${cfg.package}/share/moodle/admin/cli/check_database_schema.php && rc=$? || rc=$?
+ ${phpExt}/bin/php ${cfg.package}/share/moodle/admin/cli/check_database_schema.php && rc=$? || rc=$?
- [ "$rc" == 1 ] && ${pkgs.php}/bin/php ${cfg.package}/share/moodle/admin/cli/upgrade.php \
+ [ "$rc" == 1 ] && ${phpExt}/bin/php ${cfg.package}/share/moodle/admin/cli/upgrade.php \
--non-interactive \
--allow-unstable
- [ "$rc" == 2 ] && ${pkgs.php}/bin/php ${cfg.package}/share/moodle/admin/cli/install_database.php \
+ [ "$rc" == 2 ] && ${phpExt}/bin/php ${cfg.package}/share/moodle/admin/cli/install_database.php \
--agree-license \
--adminpass=${cfg.initialPassword}
@@ -289,7 +293,7 @@ in
serviceConfig = {
User = user;
Group = group;
- ExecStart = "${pkgs.php}/bin/php ${cfg.package}/share/moodle/admin/cli/cron.php";
+ ExecStart = "${phpExt}/bin/php ${cfg.package}/share/moodle/admin/cli/cron.php";
};
};
diff --git a/nixos/modules/system/boot/stage-1.nix b/nixos/modules/system/boot/stage-1.nix
index d551466f52e..63005b26f6f 100644
--- a/nixos/modules/system/boot/stage-1.nix
+++ b/nixos/modules/system/boot/stage-1.nix
@@ -111,8 +111,8 @@ let
copy_bin_and_libs ${pkgs.utillinux}/sbin/blkid
# Copy dmsetup and lvm.
- copy_bin_and_libs ${pkgs.lvm2}/sbin/dmsetup
- copy_bin_and_libs ${pkgs.lvm2}/sbin/lvm
+ copy_bin_and_libs ${getBin pkgs.lvm2}/bin/dmsetup
+ copy_bin_and_libs ${getBin pkgs.lvm2}/bin/lvm
# Add RAID mdadm tool.
copy_bin_and_libs ${pkgs.mdadm}/sbin/mdadm
@@ -235,7 +235,7 @@ let
--replace cdrom_id ${extraUtils}/bin/cdrom_id \
--replace ${pkgs.coreutils}/bin/basename ${extraUtils}/bin/basename \
--replace ${pkgs.utillinux}/bin/blkid ${extraUtils}/bin/blkid \
- --replace ${pkgs.lvm2}/sbin ${extraUtils}/bin \
+ --replace ${getBin pkgs.lvm2}/bin ${extraUtils}/bin \
--replace ${pkgs.mdadm}/sbin ${extraUtils}/sbin \
--replace ${pkgs.bash}/bin/sh ${extraUtils}/bin/sh \
--replace ${udev} ${extraUtils}
diff --git a/nixos/modules/tasks/lvm.nix b/nixos/modules/tasks/lvm.nix
index d56a8a2f63a..b8f7a01e44e 100644
--- a/nixos/modules/tasks/lvm.nix
+++ b/nixos/modules/tasks/lvm.nix
@@ -1,17 +1,70 @@
{ config, lib, pkgs, ... }:
with lib;
-
-{
-
- ###### implementation
-
- config = mkIf (!config.boot.isContainer) {
-
- environment.systemPackages = [ pkgs.lvm2 ];
-
- services.udev.packages = [ pkgs.lvm2 ];
-
+let
+ cfg = config.services.lvm;
+in {
+ options.services.lvm = {
+ package = mkOption {
+ type = types.package;
+ default = if cfg.dmeventd.enable then pkgs.lvm2_dmeventd else pkgs.lvm2;
+ internal = true;
+ defaultText = "pkgs.lvm2";
+ description = ''
+ This option allows you to override the LVM package that's used on the system
+ (udev rules, tmpfiles, systemd services).
+ Defaults to pkgs.lvm2, or pkgs.lvm2_dmeventd if dmeventd is enabled.
+ '';
+ };
+ dmeventd.enable = mkEnableOption "the LVM dmevent daemon";
+ boot.thin.enable = mkEnableOption "support for booting from ThinLVs";
};
+ config = mkMerge [
+ (mkIf (!config.boot.isContainer) {
+ environment.etc."tmpfiles.d/lvm2.conf".source = "${cfg.package}/lib/tmpfiles.d/lvm2.conf";
+ environment.systemPackages = [ cfg.package ];
+ systemd.packages = [ cfg.package ];
+
+ # TODO: update once https://github.com/NixOS/nixpkgs/pull/93006 was merged
+ services.udev.packages = [ cfg.package.out ];
+ })
+ (mkIf cfg.dmeventd.enable {
+ systemd.sockets."dm-event".wantedBy = [ "sockets.target" ];
+ systemd.services."lvm2-monitor".wantedBy = [ "sysinit.target" ];
+
+ environment.etc."lvm/lvm.conf".text = ''
+ dmeventd/executable = "${cfg.package}/bin/dmeventd"
+ '';
+ })
+ (mkIf cfg.boot.thin.enable {
+ boot.initrd = {
+ kernelModules = [ "dm-snapshot" "dm-thin-pool" ];
+
+ extraUtilsCommands = ''
+ copy_bin_and_libs ${pkgs.thin-provisioning-tools}/bin/pdata_tools
+ copy_bin_and_libs ${pkgs.thin-provisioning-tools}/bin/thin_check
+ '';
+ };
+
+ environment.etc."lvm/lvm.conf".text = ''
+ global/thin_check_executable = "${pkgs.thin-provisioning-tools}/bin/thin_check"
+ '';
+ })
+ (mkIf (cfg.dmeventd.enable || cfg.boot.thin.enable) {
+ boot.initrd.preLVMCommands = ''
+ mkdir -p /etc/lvm
+ cat << EOF >> /etc/lvm/lvm.conf
+ ${optionalString cfg.boot.thin.enable ''
+ global/thin_check_executable = "$(command -v thin_check)"
+ ''}
+ ${optionalString cfg.dmeventd.enable ''
+ dmeventd/executable = "$(command -v false)"
+ activation/monitoring = 0
+ ''}
+ EOF
+ '';
+ })
+ ];
+
}
diff --git a/nixos/modules/virtualisation/docker.nix b/nixos/modules/virtualisation/docker.nix
index 7d196a46276..d87ada35a0a 100644
--- a/nixos/modules/virtualisation/docker.nix
+++ b/nixos/modules/virtualisation/docker.nix
@@ -149,6 +149,7 @@ in
###### implementation
config = mkIf cfg.enable (mkMerge [{
+ boot.kernelModules = [ "bridge" "veth" ];
environment.systemPackages = [ cfg.package ]
++ optional cfg.enableNvidia pkgs.nvidia-docker;
users.groups.docker.gid = config.ids.gids.docker;
diff --git a/nixos/tests/docker-tools.nix b/nixos/tests/docker-tools.nix
index 21512be201a..5ce67695de4 100644
--- a/nixos/tests/docker-tools.nix
+++ b/nixos/tests/docker-tools.nix
@@ -30,8 +30,45 @@ import ./make-test-python.nix ({ pkgs, ... }: {
)
docker.succeed("docker run --rm ${examples.bash.imageName} bash --version")
+ # Check imageTag attribute matches image
+ docker.succeed("docker images --format '{{.Tag}}' | grep -F '${examples.bash.imageTag}'")
docker.succeed("docker rmi ${examples.bash.imageName}")
+ # The remaining combinations
+ with subtest("Ensure imageTag attribute matches image"):
+ docker.succeed(
+ "docker load --input='${examples.bashNoTag}'"
+ )
+ docker.succeed(
+ "docker images --format '{{.Tag}}' | grep -F '${examples.bashNoTag.imageTag}'"
+ )
+ docker.succeed("docker rmi ${examples.bashNoTag.imageName}:${examples.bashNoTag.imageTag}")
+
+ docker.succeed(
+ "docker load --input='${examples.bashNoTagLayered}'"
+ )
+ docker.succeed(
+ "docker images --format '{{.Tag}}' | grep -F '${examples.bashNoTagLayered.imageTag}'"
+ )
+ docker.succeed("docker rmi ${examples.bashNoTagLayered.imageName}:${examples.bashNoTagLayered.imageTag}")
+
+ docker.succeed(
+ "${examples.bashNoTagStreamLayered} | docker load"
+ )
+ docker.succeed(
+ "docker images --format '{{.Tag}}' | grep -F '${examples.bashNoTagStreamLayered.imageTag}'"
+ )
+ docker.succeed(
+ "docker rmi ${examples.bashNoTagStreamLayered.imageName}:${examples.bashNoTagStreamLayered.imageTag}"
+ )
+
+ docker.succeed(
+ "docker load --input='${examples.nixLayered}'"
+ )
+ docker.succeed("docker images --format '{{.Tag}}' | grep -F '${examples.nixLayered.imageTag}'")
+ docker.succeed("docker rmi ${examples.nixLayered.imageName}")
+
+
with subtest(
"Check if the nix store is correctly initialized by listing "
"dependencies of the installed Nix binary"
diff --git a/nixos/tests/installer.nix b/nixos/tests/installer.nix
index eef9abebf9f..22132073142 100644
--- a/nixos/tests/installer.nix
+++ b/nixos/tests/installer.nix
@@ -64,7 +64,7 @@ let
# a test script fragment `createPartitions', which must create
# partitions and filesystems.
testScriptFun = { bootLoader, createPartitions, grubVersion, grubDevice, grubUseEfi
- , grubIdentifier, preBootCommands, extraConfig
+ , grubIdentifier, preBootCommands, postBootCommands, extraConfig
, testSpecialisationConfig
}:
let iface = if grubVersion == 1 then "ide" else "virtio";
@@ -216,6 +216,7 @@ let
machine = create_machine_named("boot-after-rebuild-switch")
${preBootCommands}
machine.wait_for_unit("network.target")
+ ${postBootCommands}
machine.shutdown()
# Tests for validating clone configuration entries in grub menu
@@ -238,6 +239,7 @@ let
with subtest("Set grub to boot the second configuration"):
machine.succeed("grub-reboot 1")
+ ${postBootCommands}
machine.shutdown()
# Reboot Machine
@@ -252,12 +254,13 @@ let
with subtest("We should find a file named /etc/gitconfig"):
machine.succeed("test -e /etc/gitconfig")
+ ${postBootCommands}
machine.shutdown()
'';
makeInstallerTest = name:
- { createPartitions, preBootCommands ? "", extraConfig ? ""
+ { createPartitions, preBootCommands ? "", postBootCommands ? "", extraConfig ? ""
, extraInstallerConfig ? {}
, bootLoader ? "grub" # either "grub" or "systemd-boot"
, grubVersion ? 2, grubDevice ? "/dev/vda", grubIdentifier ? "uuid", grubUseEfi ? false
@@ -335,7 +338,7 @@ let
};
testScript = testScriptFun {
- inherit bootLoader createPartitions preBootCommands
+ inherit bootLoader createPartitions preBootCommands postBootCommands
grubVersion grubDevice grubIdentifier grubUseEfi extraConfig
testSpecialisationConfig;
};
@@ -552,16 +555,26 @@ in {
+ " mkpart primary 2048M -1s" # PV2
+ " set 2 lvm on",
"udevadm settle",
+ "sleep 1",
"pvcreate /dev/vda1 /dev/vda2",
+ "sleep 1",
"vgcreate MyVolGroup /dev/vda1 /dev/vda2",
+ "sleep 1",
"lvcreate --size 1G --name swap MyVolGroup",
+ "sleep 1",
"lvcreate --size 2G --name nixos MyVolGroup",
+ "sleep 1",
"mkswap -f /dev/MyVolGroup/swap -L swap",
"swapon -L swap",
"mkfs.xfs -L nixos /dev/MyVolGroup/nixos",
"mount LABEL=nixos /mnt",
)
'';
+ postBootCommands = ''
+ assert "loaded active" in machine.succeed(
+ "systemctl list-units 'lvm2-pvscan@*' -ql --no-legend | tee /dev/stderr"
+ )
+ '';
};
# Boot off an encrypted root partition with the default LUKS header format
diff --git a/nixos/tests/kubernetes/base.nix b/nixos/tests/kubernetes/base.nix
index 86de9455e73..8cfac10b6dc 100644
--- a/nixos/tests/kubernetes/base.nix
+++ b/nixos/tests/kubernetes/base.nix
@@ -9,7 +9,6 @@ with pkgs.lib;
let
mkKubernetesBaseTest =
{ name, domain ? "my.zyx", test, machines
- , pkgs ? import { inherit system; }
, extraConfiguration ? null }:
let
masterName = head (filter (machineName: any (role: role == "master") machines.${machineName}.roles) (attrNames machines));
diff --git a/nixos/tests/podman.nix b/nixos/tests/podman.nix
index aea1516c4f7..cd8c2b4308c 100644
--- a/nixos/tests/podman.nix
+++ b/nixos/tests/podman.nix
@@ -68,7 +68,7 @@ import ./make-test-python.nix (
podman.succeed(su_cmd("tar cv --files-from /dev/null | podman import - scratchimg"))
podman.succeed(
su_cmd(
- "podman run --cgroup-manager=cgroupfs --runtime=crun -d --name=sleeping -v /nix/store:/nix/store -v /run/current-system/sw/bin:/bin scratchimg /bin/sleep 10"
+ "podman run --runtime=crun -d --name=sleeping -v /nix/store:/nix/store -v /run/current-system/sw/bin:/bin scratchimg /bin/sleep 10"
)
)
podman.succeed(su_cmd("podman ps | grep sleeping"))
diff --git a/nixos/tests/prometheus-exporters.nix b/nixos/tests/prometheus-exporters.nix
index 75c4ca12db2..b912e3425e0 100644
--- a/nixos/tests/prometheus-exporters.nix
+++ b/nixos/tests/prometheus-exporters.nix
@@ -363,6 +363,31 @@ let
'';
};
+ modemmanager = {
+ exporterConfig = {
+ enable = true;
+ refreshRate = "10s";
+ };
+ metricProvider = {
+ # ModemManager is installed when NetworkManager is enabled. Ensure it is
+ # started and is wanted by NM and the exporter to start everything up
+ # in the right order.
+ networking.networkmanager.enable = true;
+ systemd.services.ModemManager = {
+ enable = true;
+ wantedBy = [ "NetworkManager.service" "prometheus-modemmanager-exporter.service" ];
+ };
+ };
+ exporterTest = ''
+ wait_for_unit("ModemManager.service")
+ wait_for_unit("prometheus-modemmanager-exporter.service")
+ wait_for_open_port(9539)
+ succeed(
+ "curl -sSf http://localhost:9539/metrics | grep -q 'modemmanager_info'"
+ )
+ '';
+ };
+
nextcloud = {
exporterConfig = {
enable = true;
diff --git a/nixos/tests/systemd.nix b/nixos/tests/systemd.nix
index ce950be4846..a653932fb37 100644
--- a/nixos/tests/systemd.nix
+++ b/nixos/tests/systemd.nix
@@ -104,6 +104,11 @@ import ./make-test-python.nix ({ pkgs, ... }: {
re.search(r"^Filesystem state: *clean$", extinfo, re.MULTILINE) is not None
), ("File system was not cleanly unmounted: " + extinfo)
+ # Regression test for https://github.com/NixOS/nixpkgs/pull/91232
+ with subtest("setting transient hostnames works"):
+ machine.succeed("hostnamectl set-hostname --transient machine-transient")
+ machine.fail("hostnamectl set-hostname machine-all")
+
with subtest("systemd-shutdown works"):
machine.shutdown()
machine.wait_for_unit("multi-user.target")
diff --git a/pkgs/applications/audio/audacious/default.nix b/pkgs/applications/audio/audacious/default.nix
index ba000d1ffb4..c441a2f9f3f 100644
--- a/pkgs/applications/audio/audacious/default.nix
+++ b/pkgs/applications/audio/audacious/default.nix
@@ -1,39 +1,40 @@
-{ stdenv, fetchurl, pkgconfig, wrapGAppsHook, gettext, glib, gtk3
-, libmowgli, dbus-glib, libxml2, xorg, gnome3, alsaLib
-, libpulseaudio, libjack2, fluidsynth, libmad, libogg, libvorbis
-, libcdio, libcddb, flac, ffmpeg_3, mpg123, libcue, libmms, libbs2b
-, libsndfile, libmodplug, libsamplerate, soxr, lirc, curl, wavpack
-, neon, faad2, lame, libnotify, libsidplayfp
+{
+ mkDerivation, lib, fetchurl, fetchpatch,
+ gettext, pkgconfig,
+ qtbase,
+ alsaLib, curl, faad2, ffmpeg, flac, fluidsynth, gdk-pixbuf, lame, libbs2b,
+ libcddb, libcdio, libcdio-paranoia, libcue, libjack2, libmad, libmms, libmodplug,
+ libmowgli, libnotify, libogg, libpulseaudio, libsamplerate, libsidplayfp,
+ libsndfile, libvorbis, libxml2, lirc, mpg123, neon, qtmultimedia, soxr,
+ wavpack, openmpt123
}:
-stdenv.mkDerivation rec {
+mkDerivation rec {
pname = "audacious";
- version = "3.9";
+ version = "4.0.5";
src = fetchurl {
- url = "https://distfiles.audacious-media-player.org/audacious-${version}-gtk3.tar.bz2";
- sha256 = "0dc7fg0v2l2j4h9cz1baz7rf4n0a5jgk09qvsj806sh6jp7w6ipm";
+ url = "http://distfiles.audacious-media-player.org/audacious-${version}.tar.bz2";
+ sha256 = "028zjgz0p7ys15lk2a30m5zcv9xrx3ga50wjsh4m4zxilgkakbji";
};
-
pluginsSrc = fetchurl {
- url = "http://distfiles.audacious-media-player.org/audacious-plugins-${version}-gtk3.tar.bz2";
- sha256 = "1gck37c5pnzxdhrnb1g75b5hi31s2dc952wifxns45pkdlayrmra";
+ url = "http://distfiles.audacious-media-player.org/audacious-plugins-${version}.tar.bz2";
+ sha256 = "0ny5w1agr9jaz5w3wyyxf1ygmzmd1sivaf97lcm4z4w6529520lz";
};
- nativeBuildInputs = [
- pkgconfig wrapGAppsHook
- ];
+ nativeBuildInputs = [ gettext pkgconfig ];
buildInputs = [
- gettext glib gtk3 libmowgli dbus-glib libxml2
- xorg.libXcomposite gnome3.adwaita-icon-theme alsaLib libjack2
- libpulseaudio fluidsynth libmad libogg libvorbis libcdio
- libcddb flac ffmpeg_3 mpg123 libcue libmms libbs2b libsndfile
- libmodplug libsamplerate soxr lirc curl wavpack neon faad2
- lame libnotify libsidplayfp
- ];
+ # Core dependencies
+ qtbase
- configureFlags = [ "--enable-statusicon" ];
+ # Plugin dependencies
+ alsaLib curl faad2 ffmpeg flac fluidsynth gdk-pixbuf lame libbs2b libcddb
+ libcdio libcdio-paranoia libcue libjack2 libmad libmms libmodplug libmowgli
+ libnotify libogg libpulseaudio libsamplerate libsidplayfp libsndfile
+ libvorbis libxml2 lirc mpg123 neon qtmultimedia soxr wavpack
+ openmpt123
+ ];
# Here we build both audacious and audacious-plugins in one
# derivations, since they really expect to be in the same prefix.
@@ -44,10 +45,8 @@ stdenv.mkDerivation rec {
source $stdenv/setup
genericBuild
)
-
# Then build the plugins.
(
- dontWrapGApps=true
nativeBuildInputs="$out $nativeBuildInputs" # to find audacious
source $stdenv/setup
rm -rfv audacious-*
@@ -56,12 +55,10 @@ stdenv.mkDerivation rec {
)
'';
- enableParallelBuilding = true;
-
- meta = with stdenv.lib; {
+ meta = with lib; {
description = "Audio player";
homepage = "https://audacious-media-player.org/";
- maintainers = with maintainers; [ eelco ramkromberg ];
+ maintainers = with maintainers; [ eelco ramkromberg ttuegel ];
platforms = with platforms; linux;
license = with licenses; [
bsd2 bsd3 #https://github.com/audacious-media-player/audacious/blob/master/COPYING
diff --git a/pkgs/applications/audio/audacious/qt-5.nix b/pkgs/applications/audio/audacious/qt-5.nix
deleted file mode 100644
index 5c5cd65b412..00000000000
--- a/pkgs/applications/audio/audacious/qt-5.nix
+++ /dev/null
@@ -1,92 +0,0 @@
-{
- mkDerivation, lib, fetchurl, fetchpatch,
- gettext, pkgconfig,
- qtbase,
- alsaLib, curl, faad2, ffmpeg_3, flac, fluidsynth, gdk-pixbuf, lame, libbs2b,
- libcddb, libcdio, libcue, libjack2, libmad, libmms, libmodplug,
- libmowgli, libnotify, libogg, libpulseaudio, libsamplerate, libsidplayfp,
- libsndfile, libvorbis, libxml2, lirc, mpg123, neon, qtmultimedia, soxr,
- wavpack
-}:
-
-let
- version = "3.9";
- sources = {
- "audacious-${version}" = fetchurl {
- url = "http://distfiles.audacious-media-player.org/audacious-${version}.tar.bz2";
- sha256 = "0pmhrhsjhqnrq3zh4rhfys5jas53ph5ijkq010dxg1n779kl901d";
- };
-
- "audacious-plugins-${version}" = fetchurl {
- url = "http://distfiles.audacious-media-player.org/audacious-plugins-${version}.tar.bz2";
- sha256 = "1f17r7ar0mngcf7z41s6xh073vjafw3i7iy9ijb0cd6bi48g5xwb";
- };
- };
-
- qt510_plugins_patch = fetchpatch {
- url = "https://github.com/audacious-media-player/audacious-plugins/commit/971f7ff7c3d8a0b9b420bf4fd19ab97755607637.patch";
- sha256 = "15fy37syj9ygl2ibkkz3g3b9wd22vk9bjfmvqhhkpxphry2zwb17";
- };
-in
-
-mkDerivation {
- inherit version;
- name = "audacious-qt5-${version}";
-
- sourceFiles = lib.attrValues sources;
- sourceRoots = lib.attrNames sources;
-
- nativeBuildInputs = [ gettext pkgconfig ];
-
- inherit qt510_plugins_patch;
-
- buildInputs = [
- # Core dependencies
- qtbase
-
- # Plugin dependencies
- alsaLib curl faad2 ffmpeg_3 flac fluidsynth gdk-pixbuf lame libbs2b libcddb
- libcdio libcue libjack2 libmad libmms libmodplug libmowgli
- libnotify libogg libpulseaudio libsamplerate libsidplayfp libsndfile
- libvorbis libxml2 lirc mpg123 neon qtmultimedia soxr wavpack
- ];
-
- configureFlags = [ "--enable-qt" "--disable-gtk" ];
-
- # Here we build both audacious and audacious-plugins in one
- # derivations, since they really expect to be in the same prefix.
- # This is slighly tricky.
- builder = builtins.toFile "builder.sh" ''
- sourceFiles=( $sourceFiles )
- sourceRoots=( $sourceRoots )
- for (( i=0 ; i < ''${#sourceFiles[*]} ; i++ )); do
-
- (
- # only patch the plugins
- if [ "$i" -eq "1" ]; then
- patches=( $qt510_plugins_patch )
- fi
- src=''${sourceFiles[$i]}
- sourceRoot=''${sourceRoots[$i]}
- source $stdenv/setup
- genericBuild
- )
-
- if [ $i == 0 ]; then
- nativeBuildInputs="$out $nativeBuildInputs"
- fi
-
- done
- '';
-
- meta = with lib; {
- description = "Audio player";
- homepage = "https://audacious-media-player.org/";
- maintainers = with maintainers; [ ttuegel ];
- platforms = with platforms; linux;
- license = with licenses; [
- bsd2 bsd3 #https://github.com/audacious-media-player/audacious/blob/master/COPYING
- gpl2 gpl3 lgpl2Plus #http://redmine.audacious-media-player.org/issues/46
- ];
- };
-}
diff --git a/pkgs/applications/audio/guitarix/default.nix b/pkgs/applications/audio/guitarix/default.nix
index 9b8475006cc..d74f1c8728f 100644
--- a/pkgs/applications/audio/guitarix/default.nix
+++ b/pkgs/applications/audio/guitarix/default.nix
@@ -42,16 +42,13 @@ in
stdenv.mkDerivation rec {
pname = "guitarix";
- version = "0.40.0";
+ version = "0.41.0";
src = fetchurl {
url = "mirror://sourceforge/guitarix/guitarix2-${version}.tar.xz";
- sha256 = "0q9050499hcj19hvbxb069vxh5yclawjg04vryh46lxm4sfy9g57";
+ sha256 = "0qsfbyrrpb3bbdyq68k28mjql7kglxh8nqcw9jvja28x6x9ik5a0";
};
- # see: https://sourceforge.net/p/guitarix/bugs/105
- patches = [ ./fix-build.patch ];
-
nativeBuildInputs = [
gettext
hicolor-icon-theme
@@ -101,8 +98,6 @@ stdenv.mkDerivation rec {
"--no-desktop-update"
"--enable-nls"
"--install-roboto-font"
- "--includeresampler"
- "--includeconvolver"
] ++ optional optimizationSupport "--optimization";
meta = with stdenv.lib; {
diff --git a/pkgs/applications/audio/guitarix/fix-build.patch b/pkgs/applications/audio/guitarix/fix-build.patch
deleted file mode 100644
index 4a0e4267776..00000000000
--- a/pkgs/applications/audio/guitarix/fix-build.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/src/LV2/xputty/xfilepicker.cpp
-+++ b/src/LV2/xputty/xfilepicker.cpp
-@@ -191,6 +191,6 @@
- filepicker->selected_file = NULL;
- filepicker->path = NULL;
- filepicker->filter = NULL;
-- asprintf(&filepicker->path, path);
-+ asprintf(&filepicker->path, "%s", path);
- assert(filepicker->path != NULL);
- }
diff --git a/pkgs/applications/audio/jackmix/default.nix b/pkgs/applications/audio/jackmix/default.nix
index c3a46439ba7..ad01a3ff76e 100644
--- a/pkgs/applications/audio/jackmix/default.nix
+++ b/pkgs/applications/audio/jackmix/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, pkgconfig, scons, qt4, lash, libjack2, jack ? libjack2 }:
+{ stdenv, fetchurl, pkgconfig, sconsPackages, qt4, lash, libjack2, jack ? libjack2 }:
stdenv.mkDerivation {
name = "jackmix-0.5.2";
@@ -9,7 +9,7 @@ stdenv.mkDerivation {
patches = [ ./no_error.patch ];
- nativeBuildInputs = [ scons.py2 pkgconfig ];
+ nativeBuildInputs = [ sconsPackages.scons_3_1_2 pkgconfig ];
buildInputs = [
qt4
lash
diff --git a/pkgs/applications/audio/mixxx/default.nix b/pkgs/applications/audio/mixxx/default.nix
index e1d1585cacc..84e445e8538 100644
--- a/pkgs/applications/audio/mixxx/default.nix
+++ b/pkgs/applications/audio/mixxx/default.nix
@@ -3,7 +3,7 @@
, libid3tag, libmad, libopus, libshout, libsndfile, libusb1, libvorbis
, libGLU, libxcb, lilv, lv2, opusfile
, pkgconfig, portaudio, portmidi, protobuf, qtbase, qtscript, qtsvg
-, qtx11extras, rubberband, scons, sqlite, taglib, upower, vamp-plugin-sdk
+, qtx11extras, rubberband, sconsPackages, sqlite, taglib, upower, vamp-plugin-sdk
}:
let
@@ -28,7 +28,7 @@ mkDerivation rec {
sha256 = "1dj9li8av9b2kbm76jvvbdmihy1pyrw0s4xd7dd524wfhwr1llxr";
};
- nativeBuildInputs = [ scons.py2 ];
+ nativeBuildInputs = [ sconsPackages.scons_3_1_2 ];
buildInputs = [
chromaprint fftw flac faad2 glibcLocales mp4v2 libid3tag libmad libopus libshout241 libsndfile
libusb1 libvorbis libxcb libGLU lilv lv2 opusfile pkgconfig portaudio portmidi protobuf qtbase qtscript qtsvg
diff --git a/pkgs/applications/audio/ncspot/default.nix b/pkgs/applications/audio/ncspot/default.nix
index 895e673d453..f284dd3dac1 100644
--- a/pkgs/applications/audio/ncspot/default.nix
+++ b/pkgs/applications/audio/ncspot/default.nix
@@ -14,16 +14,16 @@ let
in
rustPlatform.buildRustPackage rec {
pname = "ncspot";
- version = "0.1.4";
+ version = "0.2.0";
src = fetchFromGitHub {
owner = "hrkfdn";
repo = "ncspot";
- rev = version;
- sha256 = "02g2lamabkwayhm56498pfvl9g0xx2vsan2j48ssrwjx6rwmlh7n";
+ rev = "v${version}";
+ sha256 = "0b2g5bd04zh1hcrhkgd2srx9gl94da4gpy9arjcvrldschjxjza1";
};
- cargoSha256 = "07gw2az11lpldwpb792l64b7xlarvx77364rn4i8g6a5271zahz3";
+ cargoSha256 = "1gbhvmg7jfmx0b694rdr3s2zs33d4s645gw1lrxvwffif4mg8fy9";
cargoBuildFlags = [ "--no-default-features" "--features" "${lib.concatStringsSep "," features}" ];
diff --git a/pkgs/applications/audio/rhvoice/default.nix b/pkgs/applications/audio/rhvoice/default.nix
index 7a0a8a59a08..a29fcf383b8 100644
--- a/pkgs/applications/audio/rhvoice/default.nix
+++ b/pkgs/applications/audio/rhvoice/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, pkgconfig, fetchFromGitHub, scons
+{ stdenv, lib, pkgconfig, fetchFromGitHub, sconsPackages
, python, glibmm, libpulseaudio, libao }:
let
@@ -15,7 +15,7 @@ in stdenv.mkDerivation {
};
nativeBuildInputs = [
- scons.py2 pkgconfig
+ sconsPackages.scons_3_1_2 pkgconfig
];
buildInputs = [
diff --git a/pkgs/applications/audio/strawberry/default.nix b/pkgs/applications/audio/strawberry/default.nix
index 4a195b4c345..ba3c9c4de83 100644
--- a/pkgs/applications/audio/strawberry/default.nix
+++ b/pkgs/applications/audio/strawberry/default.nix
@@ -35,13 +35,13 @@
mkDerivation rec {
pname = "strawberry";
- version = "0.6.12";
+ version = "0.6.13";
src = fetchFromGitHub {
owner = "jonaski";
repo = pname;
rev = version;
- sha256 = "0p09xp7andfg0gvarzc979pwglr0xjj1c0cziqj0c9z7p1v0fkws";
+ sha256 = "1v0334aivqyqx611cmhgshknzmrgyynbmxcg70qzrs2lyybw2fc1";
};
buildInputs = [
diff --git a/pkgs/applications/editors/android-studio/common.nix b/pkgs/applications/editors/android-studio/common.nix
index 1a6904b2176..7e519af58e3 100644
--- a/pkgs/applications/editors/android-studio/common.nix
+++ b/pkgs/applications/editors/android-studio/common.nix
@@ -198,7 +198,8 @@ in runCommand
# binaries are also distributed as proprietary software (unlike the
# source-code itself).
platforms = [ "x86_64-linux" ];
- maintainers = with maintainers; [ primeos ];
+ maintainers = with maintainers; ([ ]
+ ++ optional (channel == "stable") primeos);
};
}
''
diff --git a/pkgs/applications/editors/android-studio/default.nix b/pkgs/applications/editors/android-studio/default.nix
index a64b361f8a7..0d3157e30cf 100644
--- a/pkgs/applications/editors/android-studio/default.nix
+++ b/pkgs/applications/editors/android-studio/default.nix
@@ -8,9 +8,9 @@ let
inherit (gnome2) GConf gnome_vfs;
};
stableVersion = {
- version = "4.0.0.16"; # "Android Studio 4.0"
- build = "193.6514223";
- sha256Hash = "1sqj64vddwfrr9821habfz7dms9csvbp7b8gf1d027188b2lvh3h";
+ version = "4.0.1.0"; # "Android Studio 4.0.1"
+ build = "193.6626763";
+ sha256Hash = "15vm7fvi8c286wx9f28z6ysvm8wqqda759qql0zy9simwx22gy7j";
};
betaVersion = {
version = "4.0.0.16"; # "Android Studio 4.0"
diff --git a/pkgs/applications/editors/vim/common.nix b/pkgs/applications/editors/vim/common.nix
index 47e71e2da4d..5be7078173e 100644
--- a/pkgs/applications/editors/vim/common.nix
+++ b/pkgs/applications/editors/vim/common.nix
@@ -1,12 +1,12 @@
{ lib, fetchFromGitHub }:
rec {
- version = "8.2.0701";
+ version = "8.2.1123";
src = fetchFromGitHub {
owner = "vim";
repo = "vim";
rev = "v${version}";
- sha256 = "1cbh2nhbvhp4kclc9fd8gqij2vi11c5zwdwn1nzg805k06hwmsrp";
+ sha256 = "01fgfm5pnmbq12z84d7g3x0iq5gj1irdyihx41c4r2bww55v5q0c";
};
enableParallelBuilding = true;
diff --git a/pkgs/applications/graphics/darktable/default.nix b/pkgs/applications/graphics/darktable/default.nix
index c32766134a9..6327548dc14 100644
--- a/pkgs/applications/graphics/darktable/default.nix
+++ b/pkgs/applications/graphics/darktable/default.nix
@@ -34,8 +34,6 @@ stdenv.mkDerivation rec {
"-DUSE_KWALLET=OFF"
];
- # Doc has high risk of collisions
- postInstall = "rm -r $out/share/doc";
# darktable changed its rpath handling in commit
# 83c70b876af6484506901e6b381304ae0d073d3c and as a result the
@@ -45,6 +43,10 @@ stdenv.mkDerivation rec {
libPathEnvVar = if stdenv.isDarwin then "DYLD_LIBRARY_PATH" else "LD_LIBRARY_PATH";
libPathPrefix = "$out/lib/darktable" + stdenv.lib.optionalString stdenv.isLinux ":${ocl-icd}/lib";
in ''
+ for f in $out/share/darktable/kernels/*.cl; do
+ sed -r "s|#include \"(.*)\"|#include \"$out/share/darktable/kernels/\1\"|g" -i "$f"
+ done
+
gappsWrapperArgs+=(
--prefix ${libPathEnvVar} ":" "${libPathPrefix}"
)
diff --git a/pkgs/applications/graphics/drawio/default.nix b/pkgs/applications/graphics/drawio/default.nix
index 0f0e418d7e0..69764daedeb 100644
--- a/pkgs/applications/graphics/drawio/default.nix
+++ b/pkgs/applications/graphics/drawio/default.nix
@@ -11,11 +11,11 @@
stdenv.mkDerivation rec {
pname = "drawio";
- version = "13.3.9";
+ version = "13.4.5";
src = fetchurl {
url = "https://github.com/jgraph/drawio-desktop/releases/download/v${version}/draw.io-x86_64-${version}.rpm";
- sha256 = "1i1idjy80x6a0w40lziivyhg8nnlbpri7xdqxikxy982vffgihwp";
+ sha256 = "1vp5krgj0xzhkiidj658ij6j10d2p97l1nifx0nrqysblcz2km3g";
};
nativeBuildInputs = [
diff --git a/pkgs/applications/graphics/fluxus/default.nix b/pkgs/applications/graphics/fluxus/default.nix
index a53eb806bcf..f560ad45c57 100644
--- a/pkgs/applications/graphics/fluxus/default.nix
+++ b/pkgs/applications/graphics/fluxus/default.nix
@@ -18,7 +18,7 @@
, openal
, openssl
, racket
-, scons
+, sconsPackages
, zlib
}:
let
@@ -69,7 +69,7 @@ stdenv.mkDerivation rec {
openssl.dev
racket
];
- nativeBuildInputs = [ scons.py2 ];
+ nativeBuildInputs = [ sconsPackages.scons_3_1_2 ];
patches = [ ./fix-build.patch ];
sconsFlags = [
diff --git a/pkgs/applications/graphics/nomacs/default.nix b/pkgs/applications/graphics/nomacs/default.nix
index 67e95aec758..8104b41374a 100644
--- a/pkgs/applications/graphics/nomacs/default.nix
+++ b/pkgs/applications/graphics/nomacs/default.nix
@@ -18,13 +18,13 @@
mkDerivation rec {
pname = "nomacs";
- version = "3.14.2";
+ version = "3.15.1616";
src = fetchFromGitHub {
owner = "nomacs";
repo = "nomacs";
rev = version;
- sha256 = "1vms13kyg7cpqi2hxvrrhlnl7cq92ijr7dm1kl5ryglpcagqv811";
+ sha256 = "0g1saqf31zncqdiwk7aaf951j3g33bg0vcjcr5mvg600jxiinw8j";
};
enableParallelBuilding = true;
diff --git a/pkgs/applications/graphics/xfractint/default.nix b/pkgs/applications/graphics/xfractint/default.nix
index 8d36e4630dc..5c7b4c22a38 100644
--- a/pkgs/applications/graphics/xfractint/default.nix
+++ b/pkgs/applications/graphics/xfractint/default.nix
@@ -1,11 +1,11 @@
{stdenv, fetchurl, libX11, libXft}:
stdenv.mkDerivation rec {
pname = "xfractint";
- version = "20.04p14";
+ version = "20.04p15";
# or fetchFromGitHub(owner,repo,rev) or fetchgit(rev)
src = fetchurl {
url = "https://www.fractint.net/ftp/current/linux/xfractint-${version}.tar.gz";
- sha256 = "0jdqr639z862qrswwk5srmv4fj5d7rl8kcscpn6mlkx4jvjmca0f";
+ sha256 = "1wv2hgyjvrjxzqxb55vz65ra80p24j8sd34llykk2qlx73x8f3nk";
};
buildInputs = [libX11 libXft];
diff --git a/pkgs/applications/misc/tut/default.nix b/pkgs/applications/misc/tut/default.nix
index 4ff3a06e0b4..dbe5b971edd 100644
--- a/pkgs/applications/misc/tut/default.nix
+++ b/pkgs/applications/misc/tut/default.nix
@@ -2,7 +2,7 @@
buildGoPackage rec {
pname = "tut";
- version = "0.0.10";
+ version = "0.0.13";
goPackagePath = "github.com/RasmusLindroth/tut";
goDeps = ./deps.nix;
@@ -11,7 +11,7 @@ buildGoPackage rec {
owner = "RasmusLindroth";
repo = pname;
rev = version;
- sha256 = "09l6dmzrvcpix3wg4djs6zk3ql6b6lfhd8z9aglbi6fix4pm8565";
+ sha256 = "085qiv9q2hzv1v6qmbddra23acsmmkbwmjqc3cp81gfgl893z7sm";
};
meta = with stdenv.lib; {
diff --git a/pkgs/applications/networking/browsers/amfora/default.nix b/pkgs/applications/networking/browsers/amfora/default.nix
new file mode 100644
index 00000000000..bbfef294cca
--- /dev/null
+++ b/pkgs/applications/networking/browsers/amfora/default.nix
@@ -0,0 +1,22 @@
+{ lib, fetchFromGitHub, buildGoModule }:
+
+buildGoModule rec {
+ pname = "amfora";
+ version = "1.3.0";
+
+ src = fetchFromGitHub {
+ owner = "makeworld-the-better-one";
+ repo = "amfora";
+ rev = "v${version}";
+ sha256 = "0bnjwsyi6l9p27rajwh0nq53zi4km7qpgyb08q17j0vd87gpdhka";
+ };
+
+ vendorSha256 = "1rj2m3rg8ixclj5jr0nmp266vwj1mg5ampxn04i3wgaayy49dbdi";
+
+ meta = with lib; {
+ description = "A fancy terminal browser for the Gemini protocol";
+ homepage = "https://github.com/makeworld-the-better-one/amfora";
+ license = with licenses; [ gpl3 ];
+ maintainers = with maintainers; [ deifactor ];
+ };
+}
diff --git a/pkgs/applications/networking/browsers/brave/default.nix b/pkgs/applications/networking/browsers/brave/default.nix
index 7924d0b59ac..5a8171a40a4 100644
--- a/pkgs/applications/networking/browsers/brave/default.nix
+++ b/pkgs/applications/networking/browsers/brave/default.nix
@@ -86,11 +86,11 @@ in
stdenv.mkDerivation rec {
pname = "brave";
- version = "1.10.97";
+ version = "1.11.97";
src = fetchurl {
url = "https://github.com/brave/brave-browser/releases/download/v${version}/brave-browser_${version}_amd64.deb";
- sha256 = "1qwk75k8km2sy7l3m4k5m383sl75dph4dyrp8hd65x5hnpip67yi";
+ sha256 = "1wmjwk98fvzy5slyqpzpnn1mx663q3pvcyr3fzcinf6v971vz3q2";
};
dontConfigure = true;
diff --git a/pkgs/applications/networking/browsers/chromium/default.nix b/pkgs/applications/networking/browsers/chromium/default.nix
index 8efc09ce6f8..d9a1398d090 100644
--- a/pkgs/applications/networking/browsers/chromium/default.nix
+++ b/pkgs/applications/networking/browsers/chromium/default.nix
@@ -1,5 +1,5 @@
{ newScope, config, stdenv, llvmPackages_9, llvmPackages_10
-, makeWrapper, ed
+, makeWrapper, ed, gnugrep
, glib, gtk3, gnome3, gsettings-desktop-schemas, gn, fetchgit
, libva ? null
, pipewire_0_2
@@ -187,7 +187,7 @@ in stdenv.mkDerivation {
'' + ''
# libredirect causes chromium to deadlock on startup
- export LD_PRELOAD="\$(echo -n "\$LD_PRELOAD" | tr ':' '\n' | grep -v /lib/libredirect\\\\.so$ | tr '\n' ':')"
+ export LD_PRELOAD="\$(echo -n "\$LD_PRELOAD" | tr ':' '\n' | ${gnugrep}/bin/grep -v /lib/libredirect\\\\.so$ | tr '\n' ':')"
export XDG_DATA_DIRS=$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH\''${XDG_DATA_DIRS:+:}\$XDG_DATA_DIRS
diff --git a/pkgs/applications/networking/browsers/firefox/packages.nix b/pkgs/applications/networking/browsers/firefox/packages.nix
index e551cd8b2ea..4580910cf7b 100644
--- a/pkgs/applications/networking/browsers/firefox/packages.nix
+++ b/pkgs/applications/networking/browsers/firefox/packages.nix
@@ -1,4 +1,4 @@
-{ config, stdenv, lib, callPackage, fetchurl }:
+{ config, stdenv, lib, callPackage, fetchurl, nss_3_44 }:
let
common = opts: callPackage (import ./common.nix opts) {};
@@ -33,7 +33,7 @@ rec {
};
};
- firefox-esr-68 = common rec {
+ firefox-esr-68 = (common rec {
pname = "firefox-esr";
ffversion = "68.10.0esr";
src = fetchurl {
@@ -53,5 +53,11 @@ rec {
versionSuffix = "esr";
versionKey = "ffversion";
};
+ }).override {
+ # Mozilla unfortunately doesn't support building with latest NSS anymore;
+ # instead they provide ESR releases for NSS:
+ # https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/NSS_Releases
+ nss = nss_3_44;
};
+
}
diff --git a/pkgs/applications/networking/browsers/qutebrowser/default.nix b/pkgs/applications/networking/browsers/qutebrowser/default.nix
index 6256f4039b8..f65ae2f4695 100644
--- a/pkgs/applications/networking/browsers/qutebrowser/default.nix
+++ b/pkgs/applications/networking/browsers/qutebrowser/default.nix
@@ -61,7 +61,7 @@ in mkDerivationWith python3Packages.buildPythonApplication rec {
dontWrapQtApps = true;
postPatch = ''
- substituteInPlace qutebrowser/app.py --subst-var-by qutebrowser "$out/bin/qutebrowser"
+ substituteInPlace qutebrowser/misc/quitter.py --subst-var-by qutebrowser "$out/bin/qutebrowser"
sed -i "s,/usr/share/,$out/share/,g" qutebrowser/utils/standarddir.py
'' + lib.optionalString withPdfReader ''
diff --git a/pkgs/applications/networking/browsers/qutebrowser/fix-restart.patch b/pkgs/applications/networking/browsers/qutebrowser/fix-restart.patch
index d54a37fe71f..828fa5e107c 100644
--- a/pkgs/applications/networking/browsers/qutebrowser/fix-restart.patch
+++ b/pkgs/applications/networking/browsers/qutebrowser/fix-restart.patch
@@ -1,4 +1,4 @@
-diff --git a/quitter.py b/quitterb.py
+diff --git a/quitter.py b/quitter.py
index a42b9d0..f544ccb 100644
--- a/qutebrowser/misc/quitter.py
+++ b/qutebrowser/misc/quitter.py
diff --git a/pkgs/applications/networking/cluster/kubernetes/default.nix b/pkgs/applications/networking/cluster/kubernetes/default.nix
index 7dcff328226..0e9e34fd261 100644
--- a/pkgs/applications/networking/cluster/kubernetes/default.nix
+++ b/pkgs/applications/networking/cluster/kubernetes/default.nix
@@ -15,13 +15,13 @@ with lib;
stdenv.mkDerivation rec {
pname = "kubernetes";
- version = "1.18.5";
+ version = "1.18.6";
src = fetchFromGitHub {
owner = "kubernetes";
repo = "kubernetes";
rev = "v${version}";
- sha256 = "0pl7dzq5giwkzfyg4pzm8y76fnd62gaa6d4hswvgn87czab37lr6";
+ sha256 = "0ijcssalzb0gx23va23q6q6haj2m9dy36l9i7lq1726m75fa5yjv";
};
nativeBuildInputs = [ removeReferencesTo makeWrapper which go rsync go-bindata ];
diff --git a/pkgs/applications/networking/instant-messengers/riot/riot-desktop-package.json b/pkgs/applications/networking/instant-messengers/element/element-desktop-package.json
similarity index 83%
rename from pkgs/applications/networking/instant-messengers/riot/riot-desktop-package.json
rename to pkgs/applications/networking/instant-messengers/element/element-desktop-package.json
index f3e7732686f..0a0983af000 100644
--- a/pkgs/applications/networking/instant-messengers/riot/riot-desktop-package.json
+++ b/pkgs/applications/networking/instant-messengers/element/element-desktop-package.json
@@ -1,10 +1,10 @@
{
- "name": "riot-desktop",
- "productName": "Riot",
+ "name": "element-desktop",
+ "productName": "Element (Riot)",
"main": "src/electron-main.js",
- "version": "1.6.7",
+ "version": "1.7.1",
"description": "A feature-rich client for Matrix.org",
- "author": "New Vector Ltd.",
+ "author": "Element",
"repository": {
"type": "git",
"url": "https://github.com/vector-im/riot-desktop"
@@ -38,8 +38,8 @@
},
"devDependencies": {
"asar": "^2.0.1",
- "electron-builder": "^22.3.2",
- "electron-builder-squirrel-windows": "^22.3.2",
+ "electron-builder": "^22.7.0",
+ "electron-builder-squirrel-windows": "^22.7.0",
"electron-devtools-installer": "^2.2.4",
"electron-notarize": "^0.2.0",
"eslint": "^5.8.0",
@@ -48,22 +48,22 @@
"find-npm-prefix": "^1.0.2",
"fs-extra": "^8.1.0",
"glob": "^7.1.6",
- "matrix-js-sdk": "7.0.0",
+ "matrix-js-sdk": "7.1.0",
"mkdirp": "^1.0.3",
"needle": "^2.5.0",
"node-pre-gyp": "^0.15.0",
- "npm": "^6.13.7",
+ "npm": "^6.14.6",
"rimraf": "^3.0.2",
"semver": "^7.1.3",
"tar": "^6.0.1"
},
"hakDependencies": {
- "matrix-seshat": "^1.3.3",
+ "matrix-seshat": "^2.1.0",
"keytar": "^5.6.0"
},
"build": {
"appId": "im.riot.app",
- "electronVersion": "8.0.3",
+ "electronVersion": "9.0.5",
"files": [
"package.json",
{
@@ -82,9 +82,9 @@
"linux": {
"target": "deb",
"category": "Network;InstantMessaging;Chat",
- "maintainer": "support@riot.im",
+ "maintainer": "support@element.io",
"desktop": {
- "StartupWMClass": "riot"
+ "StartupWMClass": "element"
}
},
"mac": {
@@ -100,12 +100,13 @@
"directories": {
"output": "dist"
},
+ "afterPack": "scripts/electron_afterPack",
"afterSign": "scripts/electron_afterSign",
"protocols": [
{
- "name": "riot",
+ "name": "element",
"schemes": [
- "riot"
+ "element"
]
}
]
diff --git a/pkgs/applications/networking/instant-messengers/riot/riot-desktop-yarndeps.nix b/pkgs/applications/networking/instant-messengers/element/element-desktop-yarndeps.nix
similarity index 94%
rename from pkgs/applications/networking/instant-messengers/riot/riot-desktop-yarndeps.nix
rename to pkgs/applications/networking/instant-messengers/element/element-desktop-yarndeps.nix
index 2fa0303ae05..d46c1445ec3 100644
--- a/pkgs/applications/networking/instant-messengers/riot/riot-desktop-yarndeps.nix
+++ b/pkgs/applications/networking/instant-messengers/element/element-desktop-yarndeps.nix
@@ -1,14 +1,6 @@
{ fetchurl, fetchgit, linkFarm, runCommandNoCC, gnutar }: rec {
offline_cache = linkFarm "offline" packages;
packages = [
- {
- name = "7zip_bin___7zip_bin_4.0.2.tgz";
- path = fetchurl {
- name = "7zip_bin___7zip_bin_4.0.2.tgz";
- url = "https://registry.yarnpkg.com/7zip-bin/-/7zip-bin-4.0.2.tgz";
- sha1 = "6abbdc22f33cab742053777a26db2e25ca527179";
- };
- }
{
name = "7zip_bin___7zip_bin_5.0.3.tgz";
path = fetchurl {
@@ -50,11 +42,11 @@
};
}
{
- name = "_develar_schema_utils___schema_utils_2.1.0.tgz";
+ name = "_develar_schema_utils___schema_utils_2.6.5.tgz";
path = fetchurl {
- name = "_develar_schema_utils___schema_utils_2.1.0.tgz";
- url = "https://registry.yarnpkg.com/@develar/schema-utils/-/schema-utils-2.1.0.tgz";
- sha1 = "eceb1695bfbed6f6bb84666d5d3abe5e1fd54e17";
+ name = "_develar_schema_utils___schema_utils_2.6.5.tgz";
+ url = "https://registry.yarnpkg.com/@develar/schema-utils/-/schema-utils-2.6.5.tgz";
+ sha1 = "3ece22c5838402419a6e0425f85742b961d9b6c6";
};
}
{
@@ -98,11 +90,11 @@
};
}
{
- name = "_types_fs_extra___fs_extra_8.0.1.tgz";
+ name = "_types_fs_extra___fs_extra_9.0.1.tgz";
path = fetchurl {
- name = "_types_fs_extra___fs_extra_8.0.1.tgz";
- url = "https://registry.yarnpkg.com/@types/fs-extra/-/fs-extra-8.0.1.tgz";
- sha1 = "a2378d6e7e8afea1564e44aafa2e207dadf77686";
+ name = "_types_fs_extra___fs_extra_9.0.1.tgz";
+ url = "https://registry.yarnpkg.com/@types/fs-extra/-/fs-extra-9.0.1.tgz";
+ sha1 = "91c8fc4c51f6d5dbe44c2ca9ab09310bd00c7918";
};
}
{
@@ -121,6 +113,22 @@
sha1 = "7cc1358c9c18e71f6c020e410962971863232cf5";
};
}
+ {
+ name = "_types_yargs_parser___yargs_parser_15.0.0.tgz";
+ path = fetchurl {
+ name = "_types_yargs_parser___yargs_parser_15.0.0.tgz";
+ url = "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-15.0.0.tgz";
+ sha1 = "cb3f9f741869e20cce330ffbeb9271590483882d";
+ };
+ }
+ {
+ name = "_types_yargs___yargs_15.0.5.tgz";
+ path = fetchurl {
+ name = "_types_yargs___yargs_15.0.5.tgz";
+ url = "https://registry.yarnpkg.com/@types/yargs/-/yargs-15.0.5.tgz";
+ sha1 = "947e9a6561483bdee9adffc983e91a6902af8b79";
+ };
+ }
{
name = "JSONStream___JSONStream_1.3.5.tgz";
path = fetchurl {
@@ -193,6 +201,14 @@
sha1 = "d3cea04d6b017b2894ad69040fec8b623eb4bd52";
};
}
+ {
+ name = "ajv___ajv_6.12.2.tgz";
+ path = fetchurl {
+ name = "ajv___ajv_6.12.2.tgz";
+ url = "https://registry.yarnpkg.com/ajv/-/ajv-6.12.2.tgz";
+ sha1 = "c629c5eced17baf314437918d2da88c99d5958cd";
+ };
+ }
{
name = "another_json___another_json_0.2.0.tgz";
path = fetchurl {
@@ -290,27 +306,19 @@
};
}
{
- name = "app_builder_bin___app_builder_bin_3.5.2.tgz";
+ name = "app_builder_bin___app_builder_bin_3.5.9.tgz";
path = fetchurl {
- name = "app_builder_bin___app_builder_bin_3.5.2.tgz";
- url = "https://registry.yarnpkg.com/app-builder-bin/-/app-builder-bin-3.5.2.tgz";
- sha1 = "fba56e6e9ef76fcd37816738c5f9a0b3992d7183";
+ name = "app_builder_bin___app_builder_bin_3.5.9.tgz";
+ url = "https://registry.yarnpkg.com/app-builder-bin/-/app-builder-bin-3.5.9.tgz";
+ sha1 = "a3ac0c25286bac68357321cb2eaf7128b0bc0a4f";
};
}
{
- name = "app_builder_lib___app_builder_lib_22.3.2.tgz";
+ name = "app_builder_lib___app_builder_lib_22.7.0.tgz";
path = fetchurl {
- name = "app_builder_lib___app_builder_lib_22.3.2.tgz";
- url = "https://registry.yarnpkg.com/app-builder-lib/-/app-builder-lib-22.3.2.tgz";
- sha1 = "d43e0bdff91d484c0bd07d7248043dbb2665b8ac";
- };
- }
- {
- name = "app_builder_lib___app_builder_lib_22.3.3.tgz";
- path = fetchurl {
- name = "app_builder_lib___app_builder_lib_22.3.3.tgz";
- url = "https://registry.yarnpkg.com/app-builder-lib/-/app-builder-lib-22.3.3.tgz";
- sha1 = "9a95a3c14f69fb6131834dd840fba561191c9998";
+ name = "app_builder_lib___app_builder_lib_22.7.0.tgz";
+ url = "https://registry.yarnpkg.com/app-builder-lib/-/app-builder-lib-22.7.0.tgz";
+ sha1 = "ccd3e7ece2d46bc209423a77aa142f74aaf65db0";
};
}
{
@@ -346,11 +354,11 @@
};
}
{
- name = "archiver___archiver_3.1.1.tgz";
+ name = "archiver___archiver_4.0.1.tgz";
path = fetchurl {
- name = "archiver___archiver_3.1.1.tgz";
- url = "https://registry.yarnpkg.com/archiver/-/archiver-3.1.1.tgz";
- sha1 = "9db7819d4daf60aec10fe86b16cb9258ced66ea0";
+ name = "archiver___archiver_4.0.1.tgz";
+ url = "https://registry.yarnpkg.com/archiver/-/archiver-4.0.1.tgz";
+ sha1 = "3f722b121777e361ca9fad374ecda38e77e63c7f";
};
}
{
@@ -425,6 +433,14 @@
sha1 = "8bd8b024b0ec9b1c01cccb9af9db29bd717dfaf3";
};
}
+ {
+ name = "async___async_0.9.2.tgz";
+ path = fetchurl {
+ name = "async___async_0.9.2.tgz";
+ url = "https://registry.yarnpkg.com/async/-/async-0.9.2.tgz";
+ sha1 = "aea74d5e61c1f899613bf64bda66d4c78f2fd17d";
+ };
+ }
{
name = "async___async_2.6.3.tgz";
path = fetchurl {
@@ -441,6 +457,14 @@
sha1 = "c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79";
};
}
+ {
+ name = "at_least_node___at_least_node_1.0.0.tgz";
+ path = fetchurl {
+ name = "at_least_node___at_least_node_1.0.0.tgz";
+ url = "https://registry.yarnpkg.com/at-least-node/-/at-least-node-1.0.0.tgz";
+ sha1 = "602cd4b46e844ad4effc92a8011a3c46e0238dc2";
+ };
+ }
{
name = "auto_launch___auto_launch_5.0.5.tgz";
path = fetchurl {
@@ -514,11 +538,11 @@
};
}
{
- name = "bl___bl_3.0.0.tgz";
+ name = "bl___bl_4.0.2.tgz";
path = fetchurl {
- name = "bl___bl_3.0.0.tgz";
- url = "https://registry.yarnpkg.com/bl/-/bl-3.0.0.tgz";
- sha1 = "3611ec00579fd18561754360b21e9f784500ff88";
+ name = "bl___bl_4.0.2.tgz";
+ url = "https://registry.yarnpkg.com/bl/-/bl-4.0.2.tgz";
+ sha1 = "52b71e9088515d0606d9dd9cc7aa48dc1f98e73a";
};
}
{
@@ -618,27 +642,27 @@
};
}
{
- name = "builder_util_runtime___builder_util_runtime_8.6.0.tgz";
+ name = "buffer___buffer_5.6.0.tgz";
path = fetchurl {
- name = "builder_util_runtime___builder_util_runtime_8.6.0.tgz";
- url = "https://registry.yarnpkg.com/builder-util-runtime/-/builder-util-runtime-8.6.0.tgz";
- sha1 = "b7007c30126da9a90e99932128d2922c8c178649";
+ name = "buffer___buffer_5.6.0.tgz";
+ url = "https://registry.yarnpkg.com/buffer/-/buffer-5.6.0.tgz";
+ sha1 = "a31749dc7d81d84db08abf937b6b8c4033f62786";
};
}
{
- name = "builder_util___builder_util_22.3.2.tgz";
+ name = "builder_util_runtime___builder_util_runtime_8.7.1.tgz";
path = fetchurl {
- name = "builder_util___builder_util_22.3.2.tgz";
- url = "https://registry.yarnpkg.com/builder-util/-/builder-util-22.3.2.tgz";
- sha1 = "23c61aaf0f0006f994087b33a26e47cdaec7aa8d";
+ name = "builder_util_runtime___builder_util_runtime_8.7.1.tgz";
+ url = "https://registry.yarnpkg.com/builder-util-runtime/-/builder-util-runtime-8.7.1.tgz";
+ sha1 = "23c808cddd650d4376a7a1518ec1e80e85c10f00";
};
}
{
- name = "builder_util___builder_util_22.3.3.tgz";
+ name = "builder_util___builder_util_22.7.0.tgz";
path = fetchurl {
- name = "builder_util___builder_util_22.3.3.tgz";
- url = "https://registry.yarnpkg.com/builder-util/-/builder-util-22.3.3.tgz";
- sha1 = "62f0527ceaa1a2e4a60596a9b38ad1ffe3e20ae6";
+ name = "builder_util___builder_util_22.7.0.tgz";
+ url = "https://registry.yarnpkg.com/builder-util/-/builder-util-22.7.0.tgz";
+ sha1 = "0776a66e6d6e408a78bed7f17a7ad22516d9e7f0";
};
}
{
@@ -745,6 +769,14 @@
sha1 = "3f73c2bf526591f574cc492c51e2456349f844e4";
};
}
+ {
+ name = "chalk___chalk_4.1.0.tgz";
+ path = fetchurl {
+ name = "chalk___chalk_4.1.0.tgz";
+ url = "https://registry.yarnpkg.com/chalk/-/chalk-4.1.0.tgz";
+ sha1 = "4e14870a618d9e2edd97dd8345fd9d9dc315646a";
+ };
+ }
{
name = "chardet___chardet_0.7.0.tgz";
path = fetchurl {
@@ -970,11 +1002,11 @@
};
}
{
- name = "compress_commons___compress_commons_2.1.1.tgz";
+ name = "compress_commons___compress_commons_3.0.0.tgz";
path = fetchurl {
- name = "compress_commons___compress_commons_2.1.1.tgz";
- url = "https://registry.yarnpkg.com/compress-commons/-/compress-commons-2.1.1.tgz";
- sha1 = "9410d9a534cf8435e3fbbb7c6ce48de2dc2f0610";
+ name = "compress_commons___compress_commons_3.0.0.tgz";
+ url = "https://registry.yarnpkg.com/compress-commons/-/compress-commons-3.0.0.tgz";
+ sha1 = "833944d84596e537224dd91cf92f5246823d4f1d";
};
}
{
@@ -1169,6 +1201,14 @@
sha1 = "3b72260255109c6b589cee050f1d516139664791";
};
}
+ {
+ name = "debug___debug_4.2.0.tgz";
+ path = fetchurl {
+ name = "debug___debug_4.2.0.tgz";
+ url = "https://registry.yarnpkg.com/debug/-/debug-4.2.0.tgz";
+ sha1 = "7f150f93920e94c58f5574c2fd01a3110effe7f1";
+ };
+ }
{
name = "debuglog___debuglog_1.0.1.tgz";
path = fetchurl {
@@ -1298,11 +1338,11 @@
};
}
{
- name = "dmg_builder___dmg_builder_22.3.2.tgz";
+ name = "dmg_builder___dmg_builder_22.7.0.tgz";
path = fetchurl {
- name = "dmg_builder___dmg_builder_22.3.2.tgz";
- url = "https://registry.yarnpkg.com/dmg-builder/-/dmg-builder-22.3.2.tgz";
- sha1 = "4c052f75d601e3358da1ff9d7d57738e1c01b157";
+ name = "dmg_builder___dmg_builder_22.7.0.tgz";
+ url = "https://registry.yarnpkg.com/dmg-builder/-/dmg-builder-22.7.0.tgz";
+ sha1 = "ead7e7c046cbdc52d29d302a4455f6668cdf7d45";
};
}
{
@@ -1394,27 +1434,27 @@
};
}
{
- name = "ejs___ejs_3.0.1.tgz";
+ name = "ejs___ejs_3.1.3.tgz";
path = fetchurl {
- name = "ejs___ejs_3.0.1.tgz";
- url = "https://registry.yarnpkg.com/ejs/-/ejs-3.0.1.tgz";
- sha1 = "30c8f6ee9948502cc32e85c37a3f8b39b5a614a5";
+ name = "ejs___ejs_3.1.3.tgz";
+ url = "https://registry.yarnpkg.com/ejs/-/ejs-3.1.3.tgz";
+ sha1 = "514d967a8894084d18d3d47bd169a1c0560f093d";
};
}
{
- name = "electron_builder_squirrel_windows___electron_builder_squirrel_windows_22.3.3.tgz";
+ name = "electron_builder_squirrel_windows___electron_builder_squirrel_windows_22.7.0.tgz";
path = fetchurl {
- name = "electron_builder_squirrel_windows___electron_builder_squirrel_windows_22.3.3.tgz";
- url = "https://registry.yarnpkg.com/electron-builder-squirrel-windows/-/electron-builder-squirrel-windows-22.3.3.tgz";
- sha1 = "0a417af35c83b067096bd3217b6b7bd75c6c48a9";
+ name = "electron_builder_squirrel_windows___electron_builder_squirrel_windows_22.7.0.tgz";
+ url = "https://registry.yarnpkg.com/electron-builder-squirrel-windows/-/electron-builder-squirrel-windows-22.7.0.tgz";
+ sha1 = "8d6f09d541c039f52202935c66d592c38575ceff";
};
}
{
- name = "electron_builder___electron_builder_22.3.2.tgz";
+ name = "electron_builder___electron_builder_22.7.0.tgz";
path = fetchurl {
- name = "electron_builder___electron_builder_22.3.2.tgz";
- url = "https://registry.yarnpkg.com/electron-builder/-/electron-builder-22.3.2.tgz";
- sha1 = "902d150fc0670cb90213262e5e0aa3c4f299ffa4";
+ name = "electron_builder___electron_builder_22.7.0.tgz";
+ url = "https://registry.yarnpkg.com/electron-builder/-/electron-builder-22.7.0.tgz";
+ sha1 = "a42d08a1654ffc2f7d9e2860829d3cc55d4a0c81";
};
}
{
@@ -1434,19 +1474,11 @@
};
}
{
- name = "electron_publish___electron_publish_22.3.2.tgz";
+ name = "electron_publish___electron_publish_22.7.0.tgz";
path = fetchurl {
- name = "electron_publish___electron_publish_22.3.2.tgz";
- url = "https://registry.yarnpkg.com/electron-publish/-/electron-publish-22.3.2.tgz";
- sha1 = "d2e60caf7a9643fe57e501c20acaf32c737b1c50";
- };
- }
- {
- name = "electron_publish___electron_publish_22.3.3.tgz";
- path = fetchurl {
- name = "electron_publish___electron_publish_22.3.3.tgz";
- url = "https://registry.yarnpkg.com/electron-publish/-/electron-publish-22.3.3.tgz";
- sha1 = "7d1e757a20ce0558fdc42900b6e3d773fdae9d9e";
+ name = "electron_publish___electron_publish_22.7.0.tgz";
+ url = "https://registry.yarnpkg.com/electron-publish/-/electron-publish-22.7.0.tgz";
+ sha1 = "d92ba7c4007c9ac1dd070593e48028184fb2dc19";
};
}
{
@@ -1753,6 +1785,14 @@
sha1 = "7b05218ddf9667bf7f370bf7fdb2cb15fdd0aa49";
};
}
+ {
+ name = "fast_deep_equal___fast_deep_equal_3.1.3.tgz";
+ path = fetchurl {
+ name = "fast_deep_equal___fast_deep_equal_3.1.3.tgz";
+ url = "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz";
+ sha1 = "3a7d56b559d6cbc3eb512325244e619a65c6c525";
+ };
+ }
{
name = "fast_json_stable_stringify___fast_json_stable_stringify_2.0.0.tgz";
path = fetchurl {
@@ -1801,6 +1841,14 @@
sha1 = "257a078384d1db8087bc449d107d52a52672b9e9";
};
}
+ {
+ name = "filelist___filelist_1.0.1.tgz";
+ path = fetchurl {
+ name = "filelist___filelist_1.0.1.tgz";
+ url = "https://registry.yarnpkg.com/filelist/-/filelist-1.0.1.tgz";
+ sha1 = "f10d1a3ae86c1694808e8f20906f43d4c9132dbb";
+ };
+ }
{
name = "find_npm_prefix___find_npm_prefix_1.0.2.tgz";
path = fetchurl {
@@ -1905,6 +1953,14 @@
sha1 = "49d43c45a88cd9677668cb7be1b46efdb8d2e1c0";
};
}
+ {
+ name = "fs_extra___fs_extra_9.0.1.tgz";
+ path = fetchurl {
+ name = "fs_extra___fs_extra_9.0.1.tgz";
+ url = "https://registry.yarnpkg.com/fs-extra/-/fs-extra-9.0.1.tgz";
+ sha1 = "910da0062437ba4c39fedd863f1675ccfefcb9fc";
+ };
+ }
{
name = "fs_minipass___fs_minipass_1.2.7.tgz";
path = fetchurl {
@@ -2097,6 +2153,14 @@
sha1 = "4a12ff1b60376ef09862c2093edd908328be8423";
};
}
+ {
+ name = "graceful_fs___graceful_fs_4.2.4.tgz";
+ path = fetchurl {
+ name = "graceful_fs___graceful_fs_4.2.4.tgz";
+ url = "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.4.tgz";
+ sha1 = "2256bde14d3632958c465ebc96dc467ca07a29fb";
+ };
+ }
{
name = "har_schema___har_schema_2.0.0.tgz";
path = fetchurl {
@@ -2170,11 +2234,19 @@
};
}
{
- name = "hosted_git_info___hosted_git_info_3.0.2.tgz";
+ name = "hosted_git_info___hosted_git_info_2.8.8.tgz";
path = fetchurl {
- name = "hosted_git_info___hosted_git_info_3.0.2.tgz";
- url = "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-3.0.2.tgz";
- sha1 = "8b7e3bd114b59b51786f8bade0f39ddc80275a97";
+ name = "hosted_git_info___hosted_git_info_2.8.8.tgz";
+ url = "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.8.tgz";
+ sha1 = "7539bd4bc1e0e0a895815a2e0262420b12858488";
+ };
+ }
+ {
+ name = "hosted_git_info___hosted_git_info_3.0.4.tgz";
+ path = fetchurl {
+ name = "hosted_git_info___hosted_git_info_3.0.4.tgz";
+ url = "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-3.0.4.tgz";
+ sha1 = "be4973eb1fd2737b11c9c7c19380739bb249f60d";
};
}
{
@@ -2626,11 +2698,11 @@
};
}
{
- name = "isbinaryfile___isbinaryfile_4.0.4.tgz";
+ name = "isbinaryfile___isbinaryfile_4.0.6.tgz";
path = fetchurl {
- name = "isbinaryfile___isbinaryfile_4.0.4.tgz";
- url = "https://registry.yarnpkg.com/isbinaryfile/-/isbinaryfile-4.0.4.tgz";
- sha1 = "6803f81a8944201c642b6e17da041e24deb78712";
+ name = "isbinaryfile___isbinaryfile_4.0.6.tgz";
+ url = "https://registry.yarnpkg.com/isbinaryfile/-/isbinaryfile-4.0.6.tgz";
+ sha1 = "edcb62b224e2b4710830b67498c8e4e5a4d2610b";
};
}
{
@@ -2649,6 +2721,14 @@
sha1 = "47e63f7af55afa6f92e1500e690eb8b8529c099a";
};
}
+ {
+ name = "jake___jake_10.8.2.tgz";
+ path = fetchurl {
+ name = "jake___jake_10.8.2.tgz";
+ url = "https://registry.yarnpkg.com/jake/-/jake-10.8.2.tgz";
+ sha1 = "ebc9de8558160a66d82d0eadc6a2e58fbc500a7b";
+ };
+ }
{
name = "jimp___jimp_0.2.28.tgz";
path = fetchurl {
@@ -2681,6 +2761,14 @@
sha1 = "aff151b30bfdfa8e49e05da22e7415e9dfa37847";
};
}
+ {
+ name = "js_yaml___js_yaml_3.14.0.tgz";
+ path = fetchurl {
+ name = "js_yaml___js_yaml_3.14.0.tgz";
+ url = "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.0.tgz";
+ sha1 = "a7a34170f26a21bb162424d8adacb4113a69e482";
+ };
+ }
{
name = "jsbn___jsbn_0.1.1.tgz";
path = fetchurl {
@@ -2738,11 +2826,11 @@
};
}
{
- name = "json5___json5_2.1.1.tgz";
+ name = "json5___json5_2.1.3.tgz";
path = fetchurl {
- name = "json5___json5_2.1.1.tgz";
- url = "https://registry.yarnpkg.com/json5/-/json5-2.1.1.tgz";
- sha1 = "81b6cb04e9ba496f1c7005d07b4368a2638f90b6";
+ name = "json5___json5_2.1.3.tgz";
+ url = "https://registry.yarnpkg.com/json5/-/json5-2.1.3.tgz";
+ sha1 = "c9b0f7fa9233bfe5807fe66fcf3a5617ed597d43";
};
}
{
@@ -2761,6 +2849,14 @@
sha1 = "8771aae0799b64076b76640fca058f9c10e33ecb";
};
}
+ {
+ name = "jsonfile___jsonfile_6.0.1.tgz";
+ path = fetchurl {
+ name = "jsonfile___jsonfile_6.0.1.tgz";
+ url = "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.0.1.tgz";
+ sha1 = "98966cba214378c8c84b82e085907b40bf614179";
+ };
+ }
{
name = "jsonparse___jsonparse_1.3.1.tgz";
path = fetchurl {
@@ -3074,11 +3170,11 @@
};
}
{
- name = "lodash___lodash_4.17.15.tgz";
+ name = "lodash___lodash_4.17.19.tgz";
path = fetchurl {
- name = "lodash___lodash_4.17.15.tgz";
- url = "https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz";
- sha1 = "b447f6670a0455bbfeedd11392eff330ea097548";
+ name = "lodash___lodash_4.17.19.tgz";
+ url = "https://registry.yarnpkg.com/lodash/-/lodash-4.17.19.tgz";
+ sha1 = "e48ddedbe30b3321783c5b4301fbd353bc1e4a4b";
};
}
{
@@ -3154,11 +3250,11 @@
};
}
{
- name = "matrix_js_sdk___matrix_js_sdk_7.0.0.tgz";
+ name = "matrix_js_sdk___matrix_js_sdk_7.1.0.tgz";
path = fetchurl {
- name = "matrix_js_sdk___matrix_js_sdk_7.0.0.tgz";
- url = "https://registry.yarnpkg.com/matrix-js-sdk/-/matrix-js-sdk-7.0.0.tgz";
- sha1 = "da2b24e57574379c3d8f7065eb68ea6c479d9806";
+ name = "matrix_js_sdk___matrix_js_sdk_7.1.0.tgz";
+ url = "https://registry.yarnpkg.com/matrix-js-sdk/-/matrix-js-sdk-7.1.0.tgz";
+ sha1 = "b3e3304e890df45c827706831748935168ee839f";
};
}
{
@@ -3210,11 +3306,11 @@
};
}
{
- name = "mime___mime_2.4.4.tgz";
+ name = "mime___mime_2.4.6.tgz";
path = fetchurl {
- name = "mime___mime_2.4.4.tgz";
- url = "https://registry.yarnpkg.com/mime/-/mime-2.4.4.tgz";
- sha1 = "bd7b91135fc6b01cde3e9bae33d659b63d8857e5";
+ name = "mime___mime_2.4.6.tgz";
+ url = "https://registry.yarnpkg.com/mime/-/mime-2.4.6.tgz";
+ sha1 = "e5b407c90db442f2beb5b162373d07b69affa4d1";
};
}
{
@@ -3425,6 +3521,14 @@
sha1 = "8e31260a7af4a2e2f994b0673d4e0b3866156332";
};
}
+ {
+ name = "node_gyp___node_gyp_5.1.1.tgz";
+ path = fetchurl {
+ name = "node_gyp___node_gyp_5.1.1.tgz";
+ url = "https://registry.yarnpkg.com/node-gyp/-/node-gyp-5.1.1.tgz";
+ sha1 = "eb915f7b631c937d282e33aed44cb7a025f62a3e";
+ };
+ }
{
name = "node_pre_gyp___node_pre_gyp_0.15.0.tgz";
path = fetchurl {
@@ -3441,6 +3545,14 @@
sha1 = "d0d4685afd5415193c8c7505602d0d17cd64474d";
};
}
+ {
+ name = "nopt___nopt_4.0.3.tgz";
+ path = fetchurl {
+ name = "nopt___nopt_4.0.3.tgz";
+ url = "https://registry.yarnpkg.com/nopt/-/nopt-4.0.3.tgz";
+ sha1 = "a375cad9d02fd921278d954c2254d5aa57e15e48";
+ };
+ }
{
name = "normalize_package_data___normalize_package_data_2.5.0.tgz";
path = fetchurl {
@@ -3553,6 +3665,14 @@
sha1 = "8272a71c19634d0dce9c35a5daf8ee589cbb0f52";
};
}
+ {
+ name = "npm_profile___npm_profile_4.0.4.tgz";
+ path = fetchurl {
+ name = "npm_profile___npm_profile_4.0.4.tgz";
+ url = "https://registry.yarnpkg.com/npm-profile/-/npm-profile-4.0.4.tgz";
+ sha1 = "28ee94390e936df6d084263ee2061336a6a1581b";
+ };
+ }
{
name = "npm_registry_fetch___npm_registry_fetch_4.0.2.tgz";
path = fetchurl {
@@ -3561,6 +3681,14 @@
sha1 = "2b1434f93ccbe6b6385f8e45f45db93e16921d7a";
};
}
+ {
+ name = "npm_registry_fetch___npm_registry_fetch_4.0.5.tgz";
+ path = fetchurl {
+ name = "npm_registry_fetch___npm_registry_fetch_4.0.5.tgz";
+ url = "https://registry.yarnpkg.com/npm-registry-fetch/-/npm-registry-fetch-4.0.5.tgz";
+ sha1 = "cb87cf7f25bfb048d6c3ee19d115bebf93ea5bfa";
+ };
+ }
{
name = "npm_run_path___npm_run_path_2.0.2.tgz";
path = fetchurl {
@@ -3578,11 +3706,11 @@
};
}
{
- name = "npm___npm_6.13.7.tgz";
+ name = "npm___npm_6.14.6.tgz";
path = fetchurl {
- name = "npm___npm_6.13.7.tgz";
- url = "https://registry.yarnpkg.com/npm/-/npm-6.13.7.tgz";
- sha1 = "9533a3ddc57f9792db8a8b303efabaf878047841";
+ name = "npm___npm_6.14.6.tgz";
+ url = "https://registry.yarnpkg.com/npm/-/npm-6.14.6.tgz";
+ sha1 = "1a81ce1fac2bf5457dbf6342ceed503627ff228f";
};
}
{
@@ -4242,11 +4370,11 @@
};
}
{
- name = "read_config_file___read_config_file_5.0.1.tgz";
+ name = "read_config_file___read_config_file_6.0.0.tgz";
path = fetchurl {
- name = "read_config_file___read_config_file_5.0.1.tgz";
- url = "https://registry.yarnpkg.com/read-config-file/-/read-config-file-5.0.1.tgz";
- sha1 = "ead3df0d9822cc96006ca16322eaa79dac8591c2";
+ name = "read_config_file___read_config_file_6.0.0.tgz";
+ url = "https://registry.yarnpkg.com/read-config-file/-/read-config-file-6.0.0.tgz";
+ sha1 = "224b5dca6a5bdc1fb19e63f89f342680efdb9299";
};
}
{
@@ -4321,6 +4449,14 @@
sha1 = "a51c26754658e0a3c21dbf59163bd45ba6f447fc";
};
}
+ {
+ name = "readable_stream___readable_stream_3.6.0.tgz";
+ path = fetchurl {
+ name = "readable_stream___readable_stream_3.6.0.tgz";
+ url = "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz";
+ sha1 = "337bbda3adc0706bd3e024426a286d4b4b2c9198";
+ };
+ }
{
name = "readable_stream___readable_stream_1.1.14.tgz";
path = fetchurl {
@@ -4601,6 +4737,14 @@
sha1 = "e4345ce73071c53f336445cfc19efb1c311df2a6";
};
}
+ {
+ name = "semver___semver_7.3.2.tgz";
+ path = fetchurl {
+ name = "semver___semver_7.3.2.tgz";
+ url = "https://registry.yarnpkg.com/semver/-/semver-7.3.2.tgz";
+ sha1 = "604962b052b81ed0786aae84389ffba70ffd3938";
+ };
+ }
{
name = "set_blocking___set_blocking_2.0.0.tgz";
path = fetchurl {
@@ -4698,11 +4842,11 @@
};
}
{
- name = "source_map_support___source_map_support_0.5.16.tgz";
+ name = "source_map_support___source_map_support_0.5.19.tgz";
path = fetchurl {
- name = "source_map_support___source_map_support_0.5.16.tgz";
- url = "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.16.tgz";
- sha1 = "0ae069e7fe3ba7538c64c98515e35339eac5a042";
+ 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";
};
}
{
@@ -4994,11 +5138,11 @@
};
}
{
- name = "tar_stream___tar_stream_2.1.0.tgz";
+ name = "tar_stream___tar_stream_2.1.2.tgz";
path = fetchurl {
- name = "tar_stream___tar_stream_2.1.0.tgz";
- url = "https://registry.yarnpkg.com/tar-stream/-/tar-stream-2.1.0.tgz";
- sha1 = "d1aaa3661f05b38b5acc9b7020efdca5179a2cc3";
+ name = "tar_stream___tar_stream_2.1.2.tgz";
+ url = "https://registry.yarnpkg.com/tar-stream/-/tar-stream-2.1.2.tgz";
+ sha1 = "6d5ef1a7e5783a95ff70b69b97455a5968dc1325";
};
}
{
@@ -5018,11 +5162,11 @@
};
}
{
- name = "temp_file___temp_file_3.3.6.tgz";
+ name = "temp_file___temp_file_3.3.7.tgz";
path = fetchurl {
- name = "temp_file___temp_file_3.3.6.tgz";
- url = "https://registry.yarnpkg.com/temp-file/-/temp-file-3.3.6.tgz";
- sha1 = "bd7a1951338bf93b59380b498ec1804d5b76c449";
+ name = "temp_file___temp_file_3.3.7.tgz";
+ url = "https://registry.yarnpkg.com/temp-file/-/temp-file-3.3.7.tgz";
+ sha1 = "686885d635f872748e384e871855958470aeb18a";
};
}
{
@@ -5257,6 +5401,14 @@
sha1 = "b646f69be3942dabcecc9d6639c80dc105efaa66";
};
}
+ {
+ name = "universalify___universalify_1.0.0.tgz";
+ path = fetchurl {
+ name = "universalify___universalify_1.0.0.tgz";
+ url = "https://registry.yarnpkg.com/universalify/-/universalify-1.0.0.tgz";
+ sha1 = "b61a1da173e8435b2fe3c67d29b9adf8594bd16d";
+ };
+ }
{
name = "unpipe___unpipe_1.0.0.tgz";
path = fetchurl {
@@ -5626,11 +5778,11 @@
};
}
{
- name = "yargs_parser___yargs_parser_16.1.0.tgz";
+ name = "yargs_parser___yargs_parser_18.1.3.tgz";
path = fetchurl {
- name = "yargs_parser___yargs_parser_16.1.0.tgz";
- url = "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-16.1.0.tgz";
- sha1 = "73747d53ae187e7b8dbe333f95714c76ea00ecf1";
+ name = "yargs_parser___yargs_parser_18.1.3.tgz";
+ url = "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-18.1.3.tgz";
+ sha1 = "be68c4975c6b2abf469236b0c870362fab09a7b0";
};
}
{
@@ -5658,11 +5810,11 @@
};
}
{
- name = "yargs___yargs_15.1.0.tgz";
+ name = "yargs___yargs_15.3.1.tgz";
path = fetchurl {
- name = "yargs___yargs_15.1.0.tgz";
- url = "https://registry.yarnpkg.com/yargs/-/yargs-15.1.0.tgz";
- sha1 = "e111381f5830e863a89550bd4b136bb6a5f37219";
+ name = "yargs___yargs_15.3.1.tgz";
+ url = "https://registry.yarnpkg.com/yargs/-/yargs-15.3.1.tgz";
+ sha1 = "9505b472763963e54afe60148ad27a330818e98b";
};
}
{
@@ -5674,11 +5826,11 @@
};
}
{
- name = "zip_stream___zip_stream_2.1.2.tgz";
+ name = "zip_stream___zip_stream_3.0.1.tgz";
path = fetchurl {
- name = "zip_stream___zip_stream_2.1.2.tgz";
- url = "https://registry.yarnpkg.com/zip-stream/-/zip-stream-2.1.2.tgz";
- sha1 = "841efd23214b602ff49c497cba1a85d8b5fbc39c";
+ name = "zip_stream___zip_stream_3.0.1.tgz";
+ url = "https://registry.yarnpkg.com/zip-stream/-/zip-stream-3.0.1.tgz";
+ sha1 = "cb8db9d324a76c09f9b76b31a12a48638b0b9708";
};
}
];
diff --git a/pkgs/applications/networking/instant-messengers/riot/riot-desktop.nix b/pkgs/applications/networking/instant-messengers/element/element-desktop.nix
similarity index 51%
rename from pkgs/applications/networking/instant-messengers/riot/riot-desktop.nix
rename to pkgs/applications/networking/instant-messengers/element/element-desktop.nix
index 42f8ce60fd3..9faaba11700 100644
--- a/pkgs/applications/networking/instant-messengers/riot/riot-desktop.nix
+++ b/pkgs/applications/networking/instant-messengers/element/element-desktop.nix
@@ -1,44 +1,44 @@
{ stdenv, fetchFromGitHub
, makeWrapper, makeDesktopItem, mkYarnPackage
-, electron_7, riot-web
+, electron_9, element-web
}:
# Notes for maintainers:
-# * versions of `riot-web` and `riot-desktop` should be kept in sync.
-# * the Yarn dependency expression must be updated with `./update-riot-desktop.sh `
+# * versions of `element-web` and `element-desktop` should be kept in sync.
+# * the Yarn dependency expression must be updated with `./update-element-desktop.sh `
let
- executableName = "riot-desktop";
- version = "1.6.7";
+ executableName = "element-desktop";
+ version = "1.7.1";
src = fetchFromGitHub {
owner = "vector-im";
repo = "riot-desktop";
rev = "v${version}";
- sha256 = "0l1ih7rkb0nnc79607kkg0k69j9kwqrczhgkqzsmvqxjz7pk9kgn";
+ sha256 = "0sl45mxgp0sngxnba8ilsghzgv6cv36ggah1k2204ggzby13blg6";
};
- electron = electron_7;
+ electron = electron_9;
in mkYarnPackage rec {
- name = "riot-desktop-${version}";
+ name = "element-desktop-${version}";
inherit version src;
- packageJSON = ./riot-desktop-package.json;
- yarnNix = ./riot-desktop-yarndeps.nix;
+ packageJSON = ./element-desktop-package.json;
+ yarnNix = ./element-desktop-yarndeps.nix;
nativeBuildInputs = [ makeWrapper ];
installPhase = ''
# resources
- mkdir -p "$out/share/riot"
- ln -s '${riot-web}' "$out/share/riot/webapp"
- cp -r './deps/riot-desktop' "$out/share/riot/electron"
- cp -r './deps/riot-desktop/res/img' "$out/share/riot"
- rm "$out/share/riot/electron/node_modules"
- cp -r './node_modules' "$out/share/riot/electron"
+ mkdir -p "$out/share/element"
+ ln -s '${element-web}' "$out/share/element/webapp"
+ cp -r './deps/element-desktop' "$out/share/element/electron"
+ cp -r './deps/element-desktop/res/img' "$out/share/element"
+ rm "$out/share/element/electron/node_modules"
+ cp -r './node_modules' "$out/share/element/electron"
# icons
- for icon in $out/share/riot/electron/build/icons/*.png; do
+ for icon in $out/share/element/electron/build/icons/*.png; do
mkdir -p "$out/share/icons/hicolor/$(basename $icon .png)/apps"
- ln -s "$icon" "$out/share/icons/hicolor/$(basename $icon .png)/apps/riot.png"
+ ln -s "$icon" "$out/share/icons/hicolor/$(basename $icon .png)/apps/element.png"
done
# desktop item
@@ -47,36 +47,33 @@ in mkYarnPackage rec {
# executable wrapper
makeWrapper '${electron}/bin/electron' "$out/bin/${executableName}" \
- --add-flags "$out/share/riot/electron"
+ --add-flags "$out/share/element/electron"
'';
- # Do not attempt generating a tarball for riot-web again.
+ # Do not attempt generating a tarball for element-web again.
# note: `doDist = false;` does not work.
distPhase = ''
true
'';
# The desktop item properties should be kept in sync with data from upstream:
- # * productName and description from
- # https://github.com/vector-im/riot-web/blob/develop/electron_app/package.json
- # * category and StartupWMClass from the build.linux section of
- # https://github.com/vector-im/riot-web/blob/develop/package.json
+ # https://github.com/vector-im/riot-desktop/blob/develop/package.json
desktopItem = makeDesktopItem {
- name = "riot";
+ name = "element-desktop";
exec = executableName;
- icon = "riot";
- desktopName = "Riot";
+ icon = "element";
+ desktopName = "Element (Riot)";
genericName = "Matrix Client";
comment = meta.description;
categories = "Network;InstantMessaging;Chat;";
extraEntries = ''
- StartupWMClass=riot
+ StartupWMClass=element
'';
};
meta = with stdenv.lib; {
description = "A feature-rich client for Matrix.org";
- homepage = "https://about.riot.im/";
+ homepage = "https://element.io/";
license = licenses.asl20;
maintainers = teams.matrix.members;
inherit (electron.meta) platforms;
diff --git a/pkgs/applications/networking/instant-messengers/riot/riot-web.nix b/pkgs/applications/networking/instant-messengers/element/element-web.nix
similarity index 71%
rename from pkgs/applications/networking/instant-messengers/riot/riot-web.nix
rename to pkgs/applications/networking/instant-messengers/element/element-web.nix
index fc8351e73e6..9284af07fe1 100644
--- a/pkgs/applications/networking/instant-messengers/riot/riot-web.nix
+++ b/pkgs/applications/networking/instant-messengers/element/element-web.nix
@@ -1,22 +1,22 @@
{ lib, stdenv, fetchurl, writeText, jq, conf ? {} }:
# Note for maintainers:
-# Versions of `riot-web` and `riot-desktop` should be kept in sync.
+# Versions of `element-web` and `element-desktop` should be kept in sync.
let
noPhoningHome = {
disable_guests = true; # disable automatic guest account registration at matrix.org
piwik = false; # disable analytics
};
- configOverrides = writeText "riot-config-overrides.json" (builtins.toJSON (noPhoningHome // conf));
+ configOverrides = writeText "element-config-overrides.json" (builtins.toJSON (noPhoningHome // conf));
in stdenv.mkDerivation rec {
- pname = "riot-web";
- version = "1.6.8";
+ pname = "element-web";
+ version = "1.7.1";
src = fetchurl {
url = "https://github.com/vector-im/riot-web/releases/download/v${version}/riot-v${version}.tar.gz";
- sha256 = "09jazixxaq9fcw3qld73hpknw7pcjg3b94hhgipl3zyn6dvqk3xv";
+ sha256 = "1axmf5h0k709kbpgh3ldsf6f8k9n2q623pk4j0nrshlxa9ighsay";
};
installPhase = ''
@@ -31,7 +31,7 @@ in stdenv.mkDerivation rec {
meta = {
description = "A glossy Matrix collaboration client for the web";
- homepage = "http://riot.im/";
+ homepage = "https://element.io/";
maintainers = stdenv.lib.teams.matrix.members;
license = stdenv.lib.licenses.asl20;
platforms = stdenv.lib.platforms.all;
diff --git a/pkgs/applications/networking/instant-messengers/element/update-element-desktop.sh b/pkgs/applications/networking/instant-messengers/element/update-element-desktop.sh
new file mode 100755
index 00000000000..ecca3018e76
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/element/update-element-desktop.sh
@@ -0,0 +1,17 @@
+#!/usr/bin/env nix-shell
+#!nix-shell -I nixpkgs=../../../../../ -i bash -p wget yarn2nix
+
+set -euo pipefail
+
+if [ "$#" -ne 1 ] || [[ "$1" == -* ]]; then
+ echo "Regenerates the Yarn dependency lock files for the element-desktop package."
+ echo "Usage: $0 "
+ exit 1
+fi
+
+RIOT_WEB_SRC="https://raw.githubusercontent.com/vector-im/riot-desktop/$1"
+
+wget "$RIOT_WEB_SRC/package.json" -O element-desktop-package.json
+wget "$RIOT_WEB_SRC/yarn.lock" -O element-desktop-yarndeps.lock
+yarn2nix --lockfile=element-desktop-yarndeps.lock > element-desktop-yarndeps.nix
+rm element-desktop-yarndeps.lock
diff --git a/pkgs/applications/networking/instant-messengers/riot/update-riot-desktop.sh b/pkgs/applications/networking/instant-messengers/riot/update-riot-desktop.sh
deleted file mode 100755
index d6e7259f19b..00000000000
--- a/pkgs/applications/networking/instant-messengers/riot/update-riot-desktop.sh
+++ /dev/null
@@ -1,17 +0,0 @@
-#!/usr/bin/env nix-shell
-#!nix-shell -I nixpkgs=../../../../../ -i bash -p wget yarn2nix
-
-set -euo pipefail
-
-if [ "$#" -ne 1 ] || [[ "$1" == -* ]]; then
- echo "Regenerates the Yarn dependency lock files for the riot-desktop package."
- echo "Usage: $0 "
- exit 1
-fi
-
-RIOT_WEB_SRC="https://raw.githubusercontent.com/vector-im/riot-desktop/$1"
-
-wget "$RIOT_WEB_SRC/package.json" -O riot-desktop-package.json
-wget "$RIOT_WEB_SRC/yarn.lock" -O riot-desktop-yarndeps.lock
-yarn2nix --lockfile=riot-desktop-yarndeps.lock > riot-desktop-yarndeps.nix
-rm riot-desktop-yarndeps.lock
diff --git a/pkgs/applications/networking/instant-messengers/swift-im/default.nix b/pkgs/applications/networking/instant-messengers/swift-im/default.nix
index 953ce2809c4..c520835b1f0 100644
--- a/pkgs/applications/networking/instant-messengers/swift-im/default.nix
+++ b/pkgs/applications/networking/instant-messengers/swift-im/default.nix
@@ -1,4 +1,4 @@
-{ mkDerivation, stdenv, fetchurl, pkgconfig, qttools, scons
+{ mkDerivation, stdenv, fetchurl, pkgconfig, qttools, sconsPackages
, GConf, avahi, boost, hunspell, libXScrnSaver, libedit, libidn, libnatpmp, libxml2
, lua, miniupnpc, openssl, qtbase, qtmultimedia, qtsvg, qtwebkit, qtx11extras, zlib
}:
@@ -14,7 +14,7 @@ mkDerivation rec {
patches = [ ./qt-5.11.patch ./scons.patch ];
- nativeBuildInputs = [ pkgconfig qttools scons.py2 ];
+ nativeBuildInputs = [ pkgconfig qttools sconsPackages.scons_3_1_2 ];
buildInputs = [
GConf avahi boost hunspell libXScrnSaver libedit libidn libnatpmp libxml2
diff --git a/pkgs/applications/networking/mailreaders/claws-mail/default.nix b/pkgs/applications/networking/mailreaders/claws-mail/default.nix
index 5f5e66597ac..a000cad4708 100644
--- a/pkgs/applications/networking/mailreaders/claws-mail/default.nix
+++ b/pkgs/applications/networking/mailreaders/claws-mail/default.nix
@@ -30,11 +30,11 @@ with stdenv.lib;
stdenv.mkDerivation rec {
pname = "claws-mail";
- version = "3.17.5";
+ version = "3.17.6";
src = fetchurl {
url = "http://www.claws-mail.org/download.php?file=releases/claws-mail-${version}.tar.xz";
- sha256 = "1gjrmdmhc7zzilrlss9yl86ybv9sra8v0qi7mkwv7d9azidx5kns";
+ sha256 = "1s05qw0r0gqwvvkxvrrwbjkbi61dvilixiwrpgcq21qc9csc9r0m";
};
outputs = [ "out" "dev" ];
diff --git a/pkgs/applications/networking/p2p/transmission/default.nix b/pkgs/applications/networking/p2p/transmission/default.nix
index 9d37f1f4398..ab4fc0908ba 100644
--- a/pkgs/applications/networking/p2p/transmission/default.nix
+++ b/pkgs/applications/networking/p2p/transmission/default.nix
@@ -57,9 +57,6 @@ in stdenv.mkDerivation {
++ lib.optionals enableQt [ qt5.wrapQtAppsHook ]
;
- # Doc has high risk of collisions
- postInstall = "rm -r $out/share/doc";
-
buildInputs = [
openssl
curl
diff --git a/pkgs/applications/networking/remote/citrix-workspace/default.nix b/pkgs/applications/networking/remote/citrix-workspace/default.nix
index d9582d3b307..3a6054db354 100644
--- a/pkgs/applications/networking/remote/citrix-workspace/default.nix
+++ b/pkgs/applications/networking/remote/citrix-workspace/default.nix
@@ -1,232 +1,25 @@
-{ stdenv
-, lib
-, fetchurl
-, requireFile
-, makeWrapper
-, libredirect
-, busybox
-, file
-, makeDesktopItem
-, tzdata
-, cacert
-, dconf
-, glib
-, gtk2
-, atk
-, gdk-pixbuf
-, cairo
-, pango
-, gnome3
-, xorg
-, libpng12
-, freetype
-, fontconfig
-, gtk_engines
-, alsaLib
-, zlib
-, version ? "20.06.0"
-}:
+{ lib, callPackage }:
+
+# For detailed information about the Citrix source-tarball, please refer to the OEM
+# reference guide: https://developer-docs.citrix.com/projects/workspace-app-for-linux-oem-guide/en/latest/
let
- versionInfo = let
- supportedVersions = {
- "19.12.0" = {
- major = "19";
- minor = "12";
- patch = "0";
- x64hash = "1si5mkxbgb8m99bkvgc3l80idjfdp0kby6pv47s07nn43dbr1j7a";
- x86hash = "07rfp90ksnvr8zv7ix7f0z6a59n48s7bd4kqbzilfwxgs4ddqmcy";
- x64suffix = "19";
- x86suffix = "19";
- homepage = "https://www.citrix.com/downloads/workspace-app/legacy-workspace-app-for-linux/workspace-app-for-linux-1912.html";
- };
+ inherit (callPackage ./sources.nix { }) supportedVersions unsupportedVersions;
+ mkCitrix = callPackage ./generic.nix { };
- "20.04.0" = {
- major = "20";
- minor = "04";
- patch = "0";
- x64hash = "E923592216F9541173846F932784E6C062CB09C9E8858219C7489607BF82A0FB";
- x86hash = "A2E2E1882723DA6796E68916B3BB2B44DD575A83DEB03CA90A262F6C81B1A53F";
- x64suffix = "21";
- x86suffix = "21";
- homepage = "https://www.citrix.com/de-de/downloads/workspace-app/legacy-workspace-app-for-linux/workspace-app-for-linux-2004.html";
- };
+ toAttrName = x: "citrix_workspace_${builtins.replaceStrings [ "." ] [ "_" ] x}";
- "20.06.0" = {
- major = "20";
- minor = "06";
- patch = "0";
- x64hash = "1kpfcfg95mpprlca6cccnjlsqbj3xvv77cn3fc5msd304nsi9x1v";
- x86hash = "1di29hrimbw3myjnf2nn26a14klidhdwvjqla6yxhwd3s6lil194";
- x64suffix = "15";
- x86suffix = "15";
- homepage = "https://www.citrix.com/de-de/downloads/workspace-app/linux/workspace-app-for-linux-latest.html";
- };
- };
+ unsupported = lib.listToAttrs (
+ map (x: lib.nameValuePair (toAttrName x) (throw ''
+ Citrix Workspace at version ${x} is not supported anymore!
- # The lifespans of Citrix products can be found here:
- # https://www.citrix.com/support/product-lifecycle/milestones/receiver.html
- deprecatedVersions = let
- versions = [ "19.6.0" "19.8.0" "19.10.0" ];
- in
- lib.listToAttrs
- (lib.forEach versions
- (v: lib.nameValuePair v (throw ''
- Unsupported citrix_workspace version: ${v}
+ Actively supported releases are listed here:
+ https://www.citrix.com/en-gb/support/product-lifecycle/milestones/receiver.html
+ '')) unsupportedVersions
+ );
- Actively supported releases are listed here:
- https://www.citrix.com/en-gb/support/product-lifecycle/milestones/receiver.html
- '')));
- in
- deprecatedVersions // supportedVersions;
-
- citrixWorkspaceForVersion = { major, minor, patch, x64hash, x86hash, x64suffix, x86suffix, homepage }:
- stdenv.mkDerivation rec {
- pname = "citrix-workspace";
- version = "${major}.${minor}.${patch}";
- inherit homepage;
-
- prefixWithBitness = if stdenv.is64bit then "linuxx64" else "linuxx86";
-
- preferLocalBuild = true;
-
- src = requireFile rec {
- name = if stdenv.is64bit then "${prefixWithBitness}-${version}.${x64suffix}.tar.gz" else "${prefixWithBitness}-${version}.${x86suffix}.tar.gz";
- sha256 = if stdenv.is64bit then x64hash else x86hash;
- message = ''
- In order to use Citrix Workspace, you need to comply with the Citrix EULA and download
- the ${if stdenv.is64bit then "64-bit" else "32-bit"} binaries, .tar.gz from:
-
- ${homepage}
-
- (if you do not find version ${version} there, try at
- https://www.citrix.com/downloads/workspace-app/
-
- Once you have downloaded the file, please use the following command and re-run the
- installation:
-
- nix-prefetch-url file://\$PWD/${name}
- '';
- };
-
- dontBuild = true;
-
- sourceRoot = ".";
-
- buildInputs = [
- makeWrapper
- busybox
- file
- gtk2
- gdk-pixbuf
- ];
-
- libPath = stdenv.lib.makeLibraryPath [
- glib
- gtk2
- atk
- gdk-pixbuf
- cairo
- pango
- dconf
- xorg.libX11
- xorg.libXext
- xorg.libXrender
- xorg.libXinerama
- xorg.libXfixes
- libpng12
- zlib
- gtk_engines
- freetype
- fontconfig
- alsaLib
- stdenv.cc.cc # Fixes: Can not load [..]/opt/citrix-icaclient/lib/ctxh264_fb.so:(null)
- ];
-
- desktopItem = makeDesktopItem {
- name = "wfica";
- desktopName = "Citrix Workspace";
- genericName = "Citrix Workspace";
- exec = "wfica";
- icon = "wfica";
- comment = "Connect to remote Citrix server";
- categories = "GTK;GNOME;X-GNOME-NetworkSettings;Network;";
- mimeType = "application/x-ica";
- };
-
- installPhase = ''
- runHook preInstall
-
- export ICAInstDir="$out/opt/citrix-icaclient"
-
- sed -i \
- -e 's,^main_install_menu$,install_ICA_client,g' \
- -e 's,^integrate_ICA_client(),alias integrate_ICA_client=true\nintegrate_ICA_client_old(),g' \
- -e 's,^ANSWER=""$,ANSWER="$INSTALLER_YES",' \
- -e 's,/bin/true,true,g' \
- ./${prefixWithBitness}/hinst
-
- # Run the installer...
- bash ./${prefixWithBitness}/hinst CDROM "`pwd`"
-
- echo "Deleting broken links..."
- for link in `find $ICAInstDir -type l `
- do
- [ -f "$link" ] || rm -v "$link"
- done
-
- echo "Expanding certificates..."
- # As explained in https://wiki.archlinux.org/index.php/Citrix#Security_Certificates
- pushd "$ICAInstDir/keystore/cacerts"
- awk 'BEGIN {c=0;} /BEGIN CERT/{c++} { print > "cert." c ".pem"}' < ${cacert}/etc/ssl/certs/ca-bundle.crt
- popd
-
- echo "Patching executables..."
- find $ICAInstDir -type f -exec file {} \; |
- grep 'ELF.*executable' |
- cut -f 1 -d : |
- grep -vi '\(.dll\|.so\)$' | # added as a workaround to https://github.com/NixOS/nixpkgs/issues/41729
- while read f
- do
- echo "Patching ELF intrepreter and rpath for $f"
- chmod u+w "$f"
- patchelf \
- --set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) \
- --set-rpath "$ICAInstDir:$libPath" "$f"
- done
-
- echo "Wrapping wfica..."
- mkdir "$out/bin"
-
- makeWrapper "$ICAInstDir/wfica" "$out/bin/wfica" \
- --add-flags "-icaroot $ICAInstDir" \
- --set ICAROOT "$ICAInstDir" \
- --set GTK_PATH "${gtk2.out}/lib/gtk-2.0:${gnome3.gnome-themes-extra}/lib/gtk-2.0" \
- --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
- --set LD_PRELOAD "${libredirect}/lib/libredirect.so" \
- --set LD_LIBRARY_PATH "$libPath" \
- --set NIX_REDIRECTS "/usr/share/zoneinfo=${tzdata}/share/zoneinfo:/etc/zoneinfo=${tzdata}/share/zoneinfo:/etc/timezone=$ICAInstDir/timezone"
-
- echo "We arbitrarily set the timezone to UTC. No known consequences at this point."
- echo UTC > "$ICAInstDir/timezone"
-
- echo "Installing desktop item..."
- mkdir -p $out/share/applications
- cp ${desktopItem}/share/applications/* $out/share/applications
-
- # We introduce a dependency on the source file so that it need not be redownloaded everytime
- echo $src >> "$out/share/workspace_dependencies.pin"
-
- runHook postInstall
- '';
-
- meta = with stdenv.lib; {
- license = stdenv.lib.licenses.unfree;
- inherit homepage;
- description = "Citrix Workspace";
- platforms = platforms.linux;
- maintainers = with maintainers; [ ma27 ];
- };
- };
-
-in citrixWorkspaceForVersion (lib.getAttr version versionInfo)
+ supported = lib.mapAttrs' (
+ attr: versionInfo: lib.nameValuePair (toAttrName attr) (callPackage ./generic.nix versionInfo)
+ ) supportedVersions;
+in
+ supported // unsupported
diff --git a/pkgs/applications/networking/remote/citrix-workspace/generic.nix b/pkgs/applications/networking/remote/citrix-workspace/generic.nix
new file mode 100644
index 00000000000..36ae194a165
--- /dev/null
+++ b/pkgs/applications/networking/remote/citrix-workspace/generic.nix
@@ -0,0 +1,203 @@
+{ stdenv, requireFile, makeWrapper, autoPatchelfHook, wrapGAppsHook, which, more
+, file, atk, alsaLib, cairo, fontconfig, gdk-pixbuf, glib, gnome3, gtk2-x11, gtk3
+, heimdal, krb5, libsoup, libvorbis, speex, openssl, zlib, xorg, pango, gtk2
+, gnome2, nss, nspr, gtk_engines, freetype, dconf, libpng12, libxml2
+, libjpeg, libredirect, tzdata, cacert, systemd, libcxxabi, libcxx, e2fsprogs, symlinkJoin
+
+, homepage, version, prefix, hash
+
+, extraCerts ? []
+}:
+
+let
+ inherit (stdenv) lib;
+
+ openssl' = symlinkJoin {
+ name = "openssl-backwards-compat";
+ nativeBuildInputs = [ makeWrapper ];
+ paths = [ openssl.out ];
+ postBuild = ''
+ ln -sf $out/lib/libcrypto.so $out/lib/libcrypto.so.1.0.0
+ ln -sf $out/lib/libssl.so $out/lib/libssl.so.1.0.0
+ '';
+ };
+in
+
+stdenv.mkDerivation rec {
+ pname = "citrix-workspace";
+ inherit version;
+
+ src = requireFile rec {
+ name = "${prefix}-${version}.tar.gz";
+ sha256 = hash;
+
+ message = ''
+ In order to use Citrix Workspace, you need to comply with the Citrix EULA and download
+ the ${if stdenv.is64bit then "64-bit" else "32-bit"} binaries, .tar.gz from:
+
+ ${homepage}
+
+ (if you do not find version ${version} there, try at
+ https://www.citrix.com/downloads/workspace-app/
+
+ Once you have downloaded the file, please use the following command and re-run the
+ installation:
+
+ nix-prefetch-url file://\$PWD/${name}
+ '';
+ };
+
+ dontBuild = true;
+ dontConfigure = true;
+ sourceRoot = ".";
+ preferLocalBuild = true;
+ passthru.icaroot = "${placeholder "out"}/opt/citrix-icaclient";
+
+ nativeBuildInputs = [
+ autoPatchelfHook
+ file
+ makeWrapper
+ more
+ which
+ wrapGAppsHook
+ ];
+
+ buildInputs = [
+ alsaLib
+ atk
+ cairo
+ dconf
+ fontconfig
+ freetype
+ gdk-pixbuf
+ gnome2.gtkglext
+ gnome3.webkitgtk
+ gtk2
+ gtk2-x11
+ gtk3
+ gtk_engines
+ heimdal
+ krb5
+ libcxx
+ libcxxabi
+ libjpeg
+ libpng12
+ libsoup
+ libvorbis
+ libxml2
+ nspr
+ nss
+ openssl'
+ pango
+ speex
+ systemd.lib
+ stdenv.cc.cc
+ xorg.libXaw
+ xorg.libXmu
+ xorg.libXScrnSaver
+ xorg.libXtst
+ zlib
+ ] ++ lib.optional (lib.versionOlder version "20.04") e2fsprogs;
+
+ runtimeDependencies = [
+ glib
+
+ xorg.libX11
+ xorg.libXScrnSaver
+ xorg.libXext
+ xorg.libXfixes
+ xorg.libXinerama
+ xorg.libXmu
+ xorg.libXrender
+ xorg.libXtst
+ xorg.libxcb
+ ];
+
+ installPhase = let
+ icaFlag = program:
+ if (builtins.match "selfservice(.*)" program) != null then "--icaroot"
+ else "-icaroot";
+ wrap = program: ''
+ wrapProgram $out/opt/citrix-icaclient/${program} \
+ --add-flags "${icaFlag program} $ICAInstDir" \
+ --set ICAROOT "$ICAInstDir" \
+ --prefix LD_LIBRARY_PATH : "$ICAInstDir:$ICAInstDir/lib" \
+ --set LD_PRELOAD "${libredirect}/lib/libredirect.so" \
+ --set NIX_REDIRECTS "/usr/share/zoneinfo=${tzdata}/share/zoneinfo:/etc/zoneinfo=${tzdata}/share/zoneinfo:/etc/timezone=$ICAInstDir/timezone"
+ '';
+ wrapLink = program: ''
+ ${wrap program}
+ ln -sf $out/opt/citrix-icaclient/${program} $out/bin/${baseNameOf program}
+ '';
+
+ copyCert = path: ''
+ cp -v ${path} $out/opt/citrix-icaclient/keystore/cacerts/${baseNameOf path}
+ '';
+
+ mkWrappers = lib.concatMapStringsSep "\n";
+
+ toWrap = [ "wfica" "selfservice" "util/configmgr" "util/conncenter" "util/ctx_rehash" ]
+ ++ lib.optional (lib.versionOlder version "20.06") "selfservice_old";
+ in ''
+ runHook preInstall
+
+ mkdir -p $out/{bin,share/applications}
+ export ICAInstDir="$out/opt/citrix-icaclient"
+ export HOME=$(mktemp -d)
+
+ # Run upstream installer in the store-path.
+ sed -i -e 's,^ANSWER="",ANSWER="$INSTALLER_YES",g' -e 's,/bin/true,true,g' ./linuxx64/hinst
+ ${stdenv.shell} linuxx64/hinst CDROM "$(pwd)"
+
+ ${mkWrappers wrapLink toWrap}
+ ${mkWrappers wrap [ "PrimaryAuthManager" "ServiceRecord" "AuthManagerDaemon" "util/ctxwebhelper" ]}
+
+ ln -sf $ICAInstDir/util/storebrowse $out/bin/storebrowse
+
+ # As explained in https://wiki.archlinux.org/index.php/Citrix#Security_Certificates
+ echo "Expanding certificates..."
+ pushd "$ICAInstDir/keystore/cacerts"
+ awk 'BEGIN {c=0;} /BEGIN CERT/{c++} { print > "cert." c ".pem"}' \
+ < ${cacert}/etc/ssl/certs/ca-bundle.crt
+ popd
+
+ ${mkWrappers copyCert extraCerts}
+
+ # See https://developer-docs.citrix.com/projects/workspace-app-for-linux-oem-guide/en/latest/reference-information/#library-files
+ # Those files are fallbacks to support older libwekit.so and libjpeg.so
+ rm $out/opt/citrix-icaclient/lib/ctxjpeg_fb_8.so
+ rm $out/opt/citrix-icaclient/lib/UIDialogLibWebKit.so
+
+ # We support only Gstreamer 1.0
+ rm $ICAInstDir/util/{gst_aud_{play,read},gst_*0.10,libgstflatstm0.10.so}
+ ln -sf $ICAInstDir/util/gst_play1.0 $ICAInstDir/util/gst_play
+ ln -sf $ICAInstDir/util/gst_read1.0 $ICAInstDir/util/gst_read
+
+ echo "We arbitrarily set the timezone to UTC. No known consequences at this point."
+ echo UTC > "$ICAInstDir/timezone"
+
+ echo "Copy .desktop files."
+ cp $out/opt/citrix-icaclient/desktop/* $out/share/applications/
+
+ # We introduce a dependency on the source file so that it need not be redownloaded everytime
+ echo $src >> "$out/share/workspace_dependencies.pin"
+
+ runHook postInstall
+ '';
+
+ # Make sure that `autoPatchelfHook` is executed before
+ # running `ctx_rehash`.
+ dontAutoPatchelf = true;
+ postFixup = ''
+ autoPatchelf -- "$out"
+ $out/opt/citrix-icaclient/util/ctx_rehash
+ '';
+
+ meta = with lib; {
+ license = licenses.unfree;
+ description = "Citrix Workspace";
+ platforms = platforms.linux;
+ maintainers = with maintainers; [ ma27 ];
+ inherit homepage;
+ };
+}
diff --git a/pkgs/applications/networking/remote/citrix-workspace/sources.nix b/pkgs/applications/networking/remote/citrix-workspace/sources.nix
new file mode 100644
index 00000000000..cc0d8637b90
--- /dev/null
+++ b/pkgs/applications/networking/remote/citrix-workspace/sources.nix
@@ -0,0 +1,58 @@
+{ stdenv, lib }:
+
+let
+ mkVersionInfo = _: { major, minor, patch, x64hash, x86hash, x64suffix, x86suffix, homepage }:
+ { inherit homepage;
+ version = "${major}.${minor}.${patch}.${if stdenv.is64bit then x64suffix else x86suffix}";
+ prefix = "linuxx${if stdenv.is64bit then "64" else "86"}";
+ hash = if stdenv.is64bit then x64hash else x86hash;
+ };
+
+ # Attribute-set with all actively supported versions of the Citrix workspace app
+ # for Linux.
+ #
+ # The latest versions can be found at https://www.citrix.com/de-de/downloads/workspace-app/linux/
+ supportedVersions = lib.mapAttrs mkVersionInfo {
+ "19.12.0" = {
+ major = "19";
+ minor = "12";
+ patch = "0";
+ x64hash = "1si5mkxbgb8m99bkvgc3l80idjfdp0kby6pv47s07nn43dbr1j7a";
+ x86hash = "07rfp90ksnvr8zv7ix7f0z6a59n48s7bd4kqbzilfwxgs4ddqmcy";
+ x64suffix = "19";
+ x86suffix = "19";
+ homepage = "https://www.citrix.com/downloads/workspace-app/legacy-workspace-app-for-linux/workspace-app-for-linux-1912.html";
+ };
+
+ "20.04.0" = {
+ major = "20";
+ minor = "04";
+ patch = "0";
+ x64hash = "E923592216F9541173846F932784E6C062CB09C9E8858219C7489607BF82A0FB";
+ x86hash = "A2E2E1882723DA6796E68916B3BB2B44DD575A83DEB03CA90A262F6C81B1A53F";
+ x64suffix = "21";
+ x86suffix = "21";
+ homepage = "https://www.citrix.com/downloads/workspace-app/linux/workspace-app-for-linux-latest.html";
+ };
+
+ "20.06.0" = {
+ major = "20";
+ minor = "06";
+ patch = "0";
+ x64hash = "1kpfcfg95mpprlca6cccnjlsqbj3xvv77cn3fc5msd304nsi9x1v";
+ x86hash = "1di29hrimbw3myjnf2nn26a14klidhdwvjqla6yxhwd3s6lil194";
+ x64suffix = "15";
+ x86suffix = "15";
+ homepage = "https://www.citrix.com/de-de/downloads/workspace-app/linux/workspace-app-for-linux-latest.html";
+ };
+ };
+
+ # Retain attribute-names for abandoned versions of Citrix workspace to
+ # provide a meaningful error-message if it's attempted to use such an old one.
+ #
+ # The lifespans of Citrix products can be found here:
+ # https://www.citrix.com/support/product-lifecycle/milestones/receiver.html
+ unsupportedVersions = [ "19.6.0" "19.8.0" "19.10.0" ];
+in {
+ inherit supportedVersions unsupportedVersions;
+}
diff --git a/pkgs/applications/networking/remote/citrix-workspace/wrapper.nix b/pkgs/applications/networking/remote/citrix-workspace/wrapper.nix
deleted file mode 100644
index ea475ae6dbc..00000000000
--- a/pkgs/applications/networking/remote/citrix-workspace/wrapper.nix
+++ /dev/null
@@ -1,19 +0,0 @@
-{ citrix_workspace, extraCerts ? [], symlinkJoin }:
-
-let
-
- mkCertCopy = certPath:
- "cp ${certPath} $out/opt/citrix-icaclient/keystore/cacerts/";
-
-in
-
-if builtins.length extraCerts == 0 then citrix_workspace else symlinkJoin {
- name = "citrix-with-extra-certs-${citrix_workspace.version}";
- paths = [ citrix_workspace ];
-
- postBuild = ''
- ${builtins.concatStringsSep "\n" (map mkCertCopy extraCerts)}
-
- sed -i -E "s,-icaroot (.+citrix-icaclient),-icaroot $out/opt/citrix-icaclient," $out/bin/wfica
- '';
-}
diff --git a/pkgs/applications/networking/sniffers/wireshark/default.nix b/pkgs/applications/networking/sniffers/wireshark/default.nix
index d025222b010..8d4a6d73120 100644
--- a/pkgs/applications/networking/sniffers/wireshark/default.nix
+++ b/pkgs/applications/networking/sniffers/wireshark/default.nix
@@ -10,7 +10,7 @@ assert withQt -> qt5 != null;
with stdenv.lib;
let
- version = "3.2.4";
+ version = "3.2.5";
variant = if withQt then "qt" else "cli";
pcap = libpcap.override { withBluez = stdenv.isLinux; };
@@ -21,7 +21,7 @@ in stdenv.mkDerivation {
src = fetchurl {
url = "https://www.wireshark.org/download/src/all-versions/wireshark-${version}.tar.xz";
- sha256 = "1amqgn94g6h6cfnsccm2zb4c73pfv1qmzi1i6h1hnbcyhhg4czfi";
+ sha256 = "0h69m9maq6w5gik4gamv4kfqrr37hmi4kpwh225y1k36awm0b2dx";
};
cmakeFlags = [
diff --git a/pkgs/applications/office/osmo/default.nix b/pkgs/applications/office/osmo/default.nix
index c3a7a5da455..507acb862a9 100644
--- a/pkgs/applications/office/osmo/default.nix
+++ b/pkgs/applications/office/osmo/default.nix
@@ -3,11 +3,11 @@
stdenv.mkDerivation rec {
pname = "osmo";
- version = "0.4.2";
+ version = "0.4.4";
src = fetchurl {
url = "mirror://sourceforge/osmo-pim/${pname}-${version}.tar.gz";
- sha256 = "1gjd4w9jckfpqr9n0bw0w25h3qhfyzw1xvilh3hqdadfinwyal2v";
+ sha256 = "19h3dnjgqbawnvgnycyp4n5b6mjsp5zghn3b69b6f3xa3fyi32qy";
};
nativeBuildInputs = [ pkgconfig gettext wrapGAppsHook ];
diff --git a/pkgs/applications/radio/flrig/default.nix b/pkgs/applications/radio/flrig/default.nix
index 968b2fd0df9..d95d894bdef 100644
--- a/pkgs/applications/radio/flrig/default.nix
+++ b/pkgs/applications/radio/flrig/default.nix
@@ -6,12 +6,12 @@
}:
stdenv.mkDerivation rec {
- version = "1.3.50";
+ version = "1.3.51";
pname = "flrig";
src = fetchurl {
url = "mirror://sourceforge/fldigi/${pname}-${version}.tar.gz";
- sha256 = "0fzrknzzi8kmzmrcfpc8rxr7v4a4ny6z6z5q5qwh95sp2kn2qzp9";
+ sha256 = "0aq4x0ai9q08ypfhzfj2inc4z3q39zq1l6h9as1kil9yn4zbay61";
};
buildInputs = [
diff --git a/pkgs/applications/science/biology/seaview/default.nix b/pkgs/applications/science/biology/seaview/default.nix
index 4192de714d0..dfee9794782 100644
--- a/pkgs/applications/science/biology/seaview/default.nix
+++ b/pkgs/applications/science/biology/seaview/default.nix
@@ -1,12 +1,12 @@
{ stdenv, fetchurl, coreutils, fltk, libjpeg }:
stdenv.mkDerivation rec {
- version = "5.0.2";
+ version = "5.0.4";
pname = "seaview";
src = fetchurl {
url = "ftp://pbil.univ-lyon1.fr/pub/mol_phylogeny/seaview/archive/seaview_${version}.tar.gz";
- sha256 = "0bad0nd18a36g6ysx28j68rbnwqn33ra8inx2lv2igqqcs6i5kif";
+ sha256 = "09yp8467h49qnj7gg0mbcdha4ai3bn6vgs00gb76dd6h3pzfflz1";
};
buildInputs = [ fltk libjpeg ];
diff --git a/pkgs/applications/science/misc/rink/cargo-lock.patch b/pkgs/applications/science/misc/rink/cargo-lock.patch
deleted file mode 100644
index 1fb3c2f4b56..00000000000
--- a/pkgs/applications/science/misc/rink/cargo-lock.patch
+++ /dev/null
@@ -1,2631 +0,0 @@
-diff --git a/Cargo.lock b/Cargo.lock
-new file mode 100644
-index 0000000..17d0ae9
---- /dev/null
-+++ b/Cargo.lock
-@@ -0,0 +1,2625 @@
-+# This file is automatically @generated by Cargo.
-+# It is not intended for manual editing.
-+[[package]]
-+name = "adler32"
-+version = "1.0.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "aho-corasick"
-+version = "0.6.10"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "memchr 2.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "autocfg"
-+version = "0.1.7"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "backtrace"
-+version = "0.3.40"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "backtrace-sys 0.1.32 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rustc-demangle 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "backtrace-sys"
-+version = "0.1.32"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "cc 1.0.48 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "base64"
-+version = "0.9.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "safemem 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "base64"
-+version = "0.10.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "bincode"
-+version = "0.6.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "num-traits 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rustc-serialize 0.3.24 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde 0.8.23 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "bitflags"
-+version = "0.4.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "bitflags"
-+version = "0.7.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "bitflags"
-+version = "1.2.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "bodyparser"
-+version = "0.5.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "iron 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "persistent 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "plugin 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde 0.8.23 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde_json 0.8.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "buf_redux"
-+version = "0.3.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "byteorder"
-+version = "1.3.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "bytes"
-+version = "0.3.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "bytes"
-+version = "0.4.12"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "either 1.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "iovec 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "c2-chacha"
-+version = "0.2.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "ppv-lite86 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "cc"
-+version = "1.0.48"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "cfg-if"
-+version = "0.1.10"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "chrono"
-+version = "0.2.25"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "num 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "chrono"
-+version = "0.4.10"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "num-integer 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "num-traits 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "chrono-humanize"
-+version = "0.0.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "chrono 0.2.25 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "chrono-tz"
-+version = "0.2.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "chrono 0.2.25 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "parse-zoneinfo 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "cloudabi"
-+version = "0.0.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "conduit-mime-types"
-+version = "0.7.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "rustc-serialize 0.3.24 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "cookie"
-+version = "0.12.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "cookie_store"
-+version = "0.7.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "cookie 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "failure 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "publicsuffix 1.5.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde_json 1.0.44 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "try_from 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "core-foundation"
-+version = "0.6.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "core-foundation-sys 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "core-foundation-sys"
-+version = "0.6.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "crc32fast"
-+version = "1.2.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "crossbeam-deque"
-+version = "0.7.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "crossbeam-epoch 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "crossbeam-utils 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "crossbeam-epoch"
-+version = "0.8.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "crossbeam-utils 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "memoffset 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "scopeguard 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "crossbeam-queue"
-+version = "0.1.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "crossbeam-utils 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "crossbeam-utils"
-+version = "0.6.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "crossbeam-utils"
-+version = "0.7.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "dtoa"
-+version = "0.2.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "dtoa"
-+version = "0.4.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "either"
-+version = "1.5.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "encoding"
-+version = "0.2.33"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "encoding-index-japanese 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "encoding-index-korean 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "encoding-index-simpchinese 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "encoding-index-singlebyte 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "encoding-index-tradchinese 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "encoding-index-japanese"
-+version = "1.20141219.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "encoding_index_tests 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "encoding-index-korean"
-+version = "1.20141219.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "encoding_index_tests 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "encoding-index-simpchinese"
-+version = "1.20141219.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "encoding_index_tests 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "encoding-index-singlebyte"
-+version = "1.20141219.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "encoding_index_tests 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "encoding-index-tradchinese"
-+version = "1.20141219.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "encoding_index_tests 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "encoding_index_tests"
-+version = "0.1.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "encoding_rs"
-+version = "0.8.22"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "error"
-+version = "0.1.9"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "traitobject 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "typeable 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "error-chain"
-+version = "0.12.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "failure"
-+version = "0.1.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "backtrace 0.3.40 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "failure_derive 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "failure_derive"
-+version = "0.1.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "proc-macro2 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "syn 1.0.13 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "synstructure 0.12.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "filetime"
-+version = "0.1.15"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "redox_syscall 0.1.56 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "flate2"
-+version = "1.0.13"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "crc32fast 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "miniz_oxide 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "fnv"
-+version = "1.0.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "foreign-types"
-+version = "0.3.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "foreign-types-shared 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "foreign-types-shared"
-+version = "0.1.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "fsevent"
-+version = "0.2.17"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "fsevent-sys 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "fsevent-sys"
-+version = "0.1.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "fuchsia-cprng"
-+version = "0.1.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "fuchsia-zircon"
-+version = "0.3.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "fuchsia-zircon-sys"
-+version = "0.3.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "futures"
-+version = "0.1.29"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "futures-cpupool"
-+version = "0.1.8"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "num_cpus 1.11.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "getrandom"
-+version = "0.1.13"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "wasi 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "glob"
-+version = "0.2.11"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "h2"
-+version = "0.1.26"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "http 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "indexmap 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "string 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "handlebars"
-+version = "0.25.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "lazy_static 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "pest 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "quick-error 1.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "regex 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rustc-serialize 0.3.24 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "handlebars-iron"
-+version = "0.23.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "handlebars 0.25.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "iron 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "notify 3.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "plugin 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rustc-serialize 0.3.24 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "walkdir 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "hermit-abi"
-+version = "0.1.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "http"
-+version = "0.1.21"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "itoa 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "http-body"
-+version = "0.1.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "http 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "tokio-buf 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "httparse"
-+version = "1.3.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "hyper"
-+version = "0.10.16"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "base64 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "httparse 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "language-tags 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "mime 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "num_cpus 1.11.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "traitobject 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "typeable 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "unicase 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "hyper"
-+version = "0.12.35"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "futures-cpupool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "h2 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "http 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "http-body 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "httparse 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "iovec 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "itoa 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "tokio 0.1.22 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "tokio-buf 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "tokio-executor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "tokio-reactor 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "tokio-threadpool 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "tokio-timer 0.2.12 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "want 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "hyper-tls"
-+version = "0.3.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "hyper 0.12.35 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "native-tls 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "idna"
-+version = "0.1.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "unicode-normalization 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "idna"
-+version = "0.2.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "unicode-normalization 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "indexmap"
-+version = "1.3.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "inotify"
-+version = "0.2.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "iovec"
-+version = "0.1.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "ipc-channel"
-+version = "0.5.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "bincode 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "lazy_static 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand 0.3.23 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde 0.8.23 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "uuid 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "irc"
-+version = "0.11.8"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "encoding 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rustc-serialize 0.3.24 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "iron"
-+version = "0.5.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "conduit-mime-types 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "error 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "hyper 0.10.16 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "lazy_static 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "modifier 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "num_cpus 1.11.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "plugin 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "typemap 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "itoa"
-+version = "0.1.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "itoa"
-+version = "0.4.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "json"
-+version = "0.10.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "kernel32-sys"
-+version = "0.2.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "language-tags"
-+version = "0.2.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "lazy_static"
-+version = "0.2.11"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "lazy_static"
-+version = "1.4.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "libc"
-+version = "0.2.66"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "limiter"
-+version = "0.3.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "iron 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "linefeed"
-+version = "0.4.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "nix 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "ole32-sys 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "shell32-sys 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "unicode-normalization 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "unicode-width 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "lock_api"
-+version = "0.3.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "scopeguard 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "log"
-+version = "0.3.9"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "log"
-+version = "0.4.8"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "logger"
-+version = "0.3.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "iron 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "matches"
-+version = "0.1.8"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "maybe-uninit"
-+version = "2.0.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "memchr"
-+version = "0.1.11"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "memchr"
-+version = "2.2.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "memoffset"
-+version = "0.5.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "mime"
-+version = "0.2.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "mime"
-+version = "0.3.14"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "mime_guess"
-+version = "1.8.7"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "mime 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "phf 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "phf_codegen 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "unicase 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "mime_guess"
-+version = "2.0.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "mime 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "unicase 2.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "miniz_oxide"
-+version = "0.3.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "adler32 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "mio"
-+version = "0.5.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "bytes 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "miow 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "nix 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "slab 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "mio"
-+version = "0.6.21"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "iovec 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "miow 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "miow"
-+version = "0.1.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "ws2_32-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "miow"
-+version = "0.2.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "ws2_32-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "modifier"
-+version = "0.1.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "mount"
-+version = "0.3.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "iron 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "sequence_trie 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "multipart"
-+version = "0.8.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "buf_redux 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "memchr 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "mime 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "mime_guess 1.8.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand 0.3.23 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "tempdir 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "native-tls"
-+version = "0.2.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "openssl 0.10.26 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "openssl-probe 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "openssl-sys 0.9.53 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "schannel 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "security-framework 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "security-framework-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "tempfile 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "net2"
-+version = "0.2.33"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "nix"
-+version = "0.5.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "bitflags 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "nix"
-+version = "0.7.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "bitflags 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rustc_version 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "semver 0.1.20 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "notify"
-+version = "3.0.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "filetime 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "fsevent 0.2.17 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "fsevent-sys 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "inotify 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "mio 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "walkdir 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "num"
-+version = "0.1.42"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "num-bigint 0.1.44 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "num-complex 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "num-integer 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "num-iter 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "num-rational 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "num-traits 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "num-bigint"
-+version = "0.1.44"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "num-integer 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "num-traits 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rustc-serialize 0.3.24 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "num-complex"
-+version = "0.1.43"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "num-traits 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rustc-serialize 0.3.24 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "num-integer"
-+version = "0.1.41"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "num-traits 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "num-iter"
-+version = "0.1.39"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "num-integer 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "num-traits 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "num-rational"
-+version = "0.1.42"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "num-bigint 0.1.44 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "num-integer 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "num-traits 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rustc-serialize 0.3.24 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "num-traits"
-+version = "0.1.43"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "num-traits 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "num-traits"
-+version = "0.2.10"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "num_cpus"
-+version = "1.11.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "hermit-abi 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "ole32-sys"
-+version = "0.2.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "openssl"
-+version = "0.10.26"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "foreign-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "openssl-sys 0.9.53 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "openssl-probe"
-+version = "0.1.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "openssl-sys"
-+version = "0.9.53"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cc 1.0.48 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "pkg-config 0.3.17 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "vcpkg 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "params"
-+version = "0.6.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "bodyparser 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "iron 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "multipart 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "num 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "plugin 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde_json 0.8.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "tempdir 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "urlencoded 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "parking_lot"
-+version = "0.9.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "lock_api 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "parking_lot_core 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "parking_lot_core"
-+version = "0.6.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "redox_syscall 0.1.56 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "smallvec 0.6.13 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "parse-zoneinfo"
-+version = "0.1.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "regex 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "percent-encoding"
-+version = "1.0.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "percent-encoding"
-+version = "2.1.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "persistent"
-+version = "0.3.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "iron 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "plugin 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "pest"
-+version = "0.3.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "phf"
-+version = "0.7.24"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "phf_codegen"
-+version = "0.7.24"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "phf_generator 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "phf_generator"
-+version = "0.7.24"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "phf_shared"
-+version = "0.7.24"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "siphasher 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "unicase 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "pkg-config"
-+version = "0.3.17"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "plugin"
-+version = "0.2.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "typemap 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "ppv-lite86"
-+version = "0.2.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "proc-macro2"
-+version = "1.0.7"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "unicode-xid 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "publicsuffix"
-+version = "1.5.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "error-chain 0.12.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "idna 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "regex 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "url 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "quick-error"
-+version = "1.2.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "quote"
-+version = "0.3.15"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "quote"
-+version = "1.0.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "proc-macro2 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "rand"
-+version = "0.3.23"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "rand"
-+version = "0.4.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "rand"
-+version = "0.6.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand_core 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand_hc 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand_isaac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand_jitter 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand_os 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand_pcg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand_xorshift 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "rand"
-+version = "0.7.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "getrandom 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand_chacha 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand_hc 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "rand_chacha"
-+version = "0.1.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "rand_chacha"
-+version = "0.2.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "c2-chacha 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "rand_core"
-+version = "0.3.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "rand_core 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "rand_core"
-+version = "0.4.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "rand_core"
-+version = "0.5.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "getrandom 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "rand_hc"
-+version = "0.1.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "rand_hc"
-+version = "0.2.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "rand_isaac"
-+version = "0.1.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "rand_jitter"
-+version = "0.1.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand_core 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "rand_os"
-+version = "0.1.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand_core 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "rand_pcg"
-+version = "0.1.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand_core 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "rand_xorshift"
-+version = "0.1.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "rdrand"
-+version = "0.4.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "redox_syscall"
-+version = "0.1.56"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "regex"
-+version = "0.2.11"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "aho-corasick 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "memchr 2.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "regex-syntax 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "utf8-ranges 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "regex"
-+version = "1.3.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "regex-syntax 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "regex-syntax"
-+version = "0.5.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "ucd-util 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "regex-syntax"
-+version = "0.6.12"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "remove_dir_all"
-+version = "0.5.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "reqwest"
-+version = "0.9.24"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "base64 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cookie 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cookie_store 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "encoding_rs 0.8.22 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "flate2 1.0.13 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "http 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "hyper 0.12.35 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "hyper-tls 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "mime 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "mime_guess 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "native-tls 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde_json 1.0.44 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde_urlencoded 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "tokio 0.1.22 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "tokio-executor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "tokio-threadpool 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "tokio-timer 0.2.12 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "uuid 0.7.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winreg 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "rink"
-+version = "0.4.4"
-+dependencies = [
-+ "chrono 0.2.25 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "chrono-humanize 0.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "chrono-tz 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "ipc-channel 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "json 0.10.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "linefeed 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "reqwest 0.9.24 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rust-gmp 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde 0.8.23 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde_derive 0.8.23 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "strsim 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "xml-rs 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "rink-irc"
-+version = "0.4.0"
-+dependencies = [
-+ "glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "irc 0.11.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rink 0.4.4",
-+]
-+
-+[[package]]
-+name = "rink-web"
-+version = "0.4.0"
-+dependencies = [
-+ "chrono 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "handlebars 0.25.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "handlebars-iron 0.23.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "ipc-channel 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "iron 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "limiter 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "logger 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "mount 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "params 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rink 0.4.4",
-+ "router 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rustc-serialize 0.3.24 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde 0.8.23 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde_derive 0.8.23 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde_json 0.8.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "staticfile 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "toml 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "route-recognizer"
-+version = "0.1.13"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "router"
-+version = "0.5.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "iron 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "route-recognizer 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "rust-gmp"
-+version = "0.5.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "num-traits 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "rustc-demangle"
-+version = "0.1.16"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "rustc-serialize"
-+version = "0.3.24"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "rustc_version"
-+version = "0.1.7"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "semver 0.1.20 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "rustc_version"
-+version = "0.2.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "ryu"
-+version = "1.0.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "safemem"
-+version = "0.3.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "same-file"
-+version = "0.1.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "schannel"
-+version = "0.1.16"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "scopeguard"
-+version = "1.0.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "security-framework"
-+version = "0.3.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "core-foundation 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "core-foundation-sys 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "security-framework-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "security-framework-sys"
-+version = "0.3.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "core-foundation-sys 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "semver"
-+version = "0.1.20"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "semver"
-+version = "0.9.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "semver-parser"
-+version = "0.7.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "sequence_trie"
-+version = "0.2.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "serde"
-+version = "0.8.23"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "serde"
-+version = "1.0.104"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "serde_derive 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "serde_codegen"
-+version = "0.8.23"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde_codegen_internals 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "syn 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "serde_codegen_internals"
-+version = "0.11.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "syn 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "serde_derive"
-+version = "0.8.23"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "serde_codegen 0.8.23 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "serde_derive"
-+version = "1.0.104"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "proc-macro2 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "syn 1.0.13 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "serde_json"
-+version = "0.8.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "dtoa 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "itoa 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "num-traits 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde 0.8.23 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "serde_json"
-+version = "1.0.44"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "itoa 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "ryu 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "serde_urlencoded"
-+version = "0.5.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "dtoa 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "itoa 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "shell32-sys"
-+version = "0.1.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "siphasher"
-+version = "0.2.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "slab"
-+version = "0.1.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "slab"
-+version = "0.4.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "smallvec"
-+version = "0.6.13"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "maybe-uninit 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "smallvec"
-+version = "1.1.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "staticfile"
-+version = "0.4.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "iron 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "mount 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "string"
-+version = "0.2.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "strsim"
-+version = "0.5.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "syn"
-+version = "0.10.8"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "syn"
-+version = "1.0.13"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "proc-macro2 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "unicode-xid 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "synstructure"
-+version = "0.12.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "proc-macro2 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "syn 1.0.13 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "unicode-xid 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "tempdir"
-+version = "0.3.7"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "remove_dir_all 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "tempfile"
-+version = "3.1.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "redox_syscall 0.1.56 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "remove_dir_all 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "thread_local"
-+version = "0.3.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "time"
-+version = "0.1.42"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "redox_syscall 0.1.56 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "tokio"
-+version = "0.1.22"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "mio 0.6.21 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "num_cpus 1.11.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "tokio-current-thread 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "tokio-executor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "tokio-reactor 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "tokio-threadpool 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "tokio-timer 0.2.12 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "tokio-buf"
-+version = "0.1.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "either 1.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "tokio-current-thread"
-+version = "0.1.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "tokio-executor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "tokio-executor"
-+version = "0.1.9"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "crossbeam-utils 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "tokio-io"
-+version = "0.1.12"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "tokio-reactor"
-+version = "0.1.11"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "crossbeam-utils 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "mio 0.6.21 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "num_cpus 1.11.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "parking_lot 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "tokio-executor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "tokio-sync 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "tokio-sync"
-+version = "0.1.7"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "tokio-tcp"
-+version = "0.1.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "iovec 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "mio 0.6.21 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "tokio-reactor 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "tokio-threadpool"
-+version = "0.1.17"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "crossbeam-deque 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "crossbeam-queue 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "crossbeam-utils 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "num_cpus 1.11.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "tokio-executor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "tokio-timer"
-+version = "0.2.12"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "crossbeam-utils 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "tokio-executor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "toml"
-+version = "0.2.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "rustc-serialize 0.3.24 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde 0.8.23 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "traitobject"
-+version = "0.1.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "try-lock"
-+version = "0.2.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "try_from"
-+version = "0.3.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "typeable"
-+version = "0.1.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "typemap"
-+version = "0.3.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "unsafe-any 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "ucd-util"
-+version = "0.1.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "unicase"
-+version = "1.4.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "unicase"
-+version = "2.6.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "version_check 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "unicode-bidi"
-+version = "0.3.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "unicode-normalization"
-+version = "0.1.11"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "smallvec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "unicode-width"
-+version = "0.1.7"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "unicode-xid"
-+version = "0.0.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "unicode-xid"
-+version = "0.2.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "unsafe-any"
-+version = "0.4.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "traitobject 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "url"
-+version = "1.7.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "url"
-+version = "2.1.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "idna 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "percent-encoding 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "urlencoded"
-+version = "0.5.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "bodyparser 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "iron 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "plugin 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "utf8-ranges"
-+version = "1.0.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "uuid"
-+version = "0.3.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "rand 0.3.23 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "uuid"
-+version = "0.7.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "vcpkg"
-+version = "0.2.8"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "version_check"
-+version = "0.1.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "version_check"
-+version = "0.9.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "void"
-+version = "1.0.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "walkdir"
-+version = "0.1.8"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "walkdir"
-+version = "1.0.7"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "same-file 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "want"
-+version = "0.2.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "try-lock 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "wasi"
-+version = "0.7.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "winapi"
-+version = "0.2.8"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "winapi"
-+version = "0.3.8"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "winapi-build"
-+version = "0.1.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "winapi-i686-pc-windows-gnu"
-+version = "0.4.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "winapi-x86_64-pc-windows-gnu"
-+version = "0.4.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "winreg"
-+version = "0.6.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "ws2_32-sys"
-+version = "0.2.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "xml-rs"
-+version = "0.3.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[metadata]
-+"checksum adler32 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "5d2e7343e7fc9de883d1b0341e0b13970f764c14101234857d2ddafa1cb1cac2"
-+"checksum aho-corasick 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)" = "81ce3d38065e618af2d7b77e10c5ad9a069859b4be3c2250f674af3840d9c8a5"
-+"checksum autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "1d49d90015b3c36167a20fe2810c5cd875ad504b39cff3d4eae7977e6b7c1cb2"
-+"checksum backtrace 0.3.40 (registry+https://github.com/rust-lang/crates.io-index)" = "924c76597f0d9ca25d762c25a4d369d51267536465dc5064bdf0eb073ed477ea"
-+"checksum backtrace-sys 0.1.32 (registry+https://github.com/rust-lang/crates.io-index)" = "5d6575f128516de27e3ce99689419835fce9643a9b215a14d2b5b685be018491"
-+"checksum base64 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0b25d992356d2eb0ed82172f5248873db5560c4721f564b13cb5193bda5e668e"
-+"checksum base64 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)" = "489d6c0ed21b11d038c31b6ceccca973e65d73ba3bd8ecb9a2babf5546164643"
-+"checksum bincode 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "55eb0b7fd108527b0c77860f75eca70214e11a8b4c6ef05148c54c05a25d48ad"
-+"checksum bitflags 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8dead7461c1127cf637931a1e50934eb6eee8bff2f74433ac7909e9afcee04a3"
-+"checksum bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "aad18937a628ec6abcd26d1489012cc0e18c21798210f491af69ded9b881106d"
-+"checksum bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693"
-+"checksum bodyparser 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "6928e817538b74a73d1dd6e9a942a2a35c632a597b6bb14fd009480f859a6bf5"
-+"checksum buf_redux 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "861b9d19b9f5cb40647242d10d0cb0a13de0a96d5ff8c8a01ea324fa3956eb7d"
-+"checksum byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a7c3dd8985a7111efc5c80b44e23ecdd8c007de8ade3b96595387e812b957cf5"
-+"checksum bytes 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c129aff112dcc562970abb69e2508b40850dd24c274761bb50fb8a0067ba6c27"
-+"checksum bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)" = "206fdffcfa2df7cbe15601ef46c813fce0965eb3286db6b56c583b814b51c81c"
-+"checksum c2-chacha 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "214238caa1bf3a496ec3392968969cab8549f96ff30652c9e56885329315f6bb"
-+"checksum cc 1.0.48 (registry+https://github.com/rust-lang/crates.io-index)" = "f52a465a666ca3d838ebbf08b241383421412fe7ebb463527bba275526d89f76"
-+"checksum cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)" = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
-+"checksum chrono 0.2.25 (registry+https://github.com/rust-lang/crates.io-index)" = "9213f7cd7c27e95c2b57c49f0e69b1ea65b27138da84a170133fd21b07659c00"
-+"checksum chrono 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "31850b4a4d6bae316f7a09e691c944c28299298837edc0a03f755618c23cbc01"
-+"checksum chrono-humanize 0.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "92afb1436280b0e4ed573c747ad30a1469cd945c201265b4d01e72cfa598da4f"
-+"checksum chrono-tz 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "45438695f3f154032951a341ecca7ed200714bea615096885c9e86ca9fa3d66b"
-+"checksum cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f"
-+"checksum conduit-mime-types 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)" = "95ca30253581af809925ef68c2641cc140d6183f43e12e0af4992d53768bd7b8"
-+"checksum cookie 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "888604f00b3db336d2af898ec3c1d5d0ddf5e6d462220f2ededc33a87ac4bbd5"
-+"checksum cookie_store 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "46750b3f362965f197996c4448e4a0935e791bf7d6631bfce9ee0af3d24c919c"
-+"checksum core-foundation 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)" = "25b9e03f145fd4f2bf705e07b900cd41fc636598fe5dc452fd0db1441c3f496d"
-+"checksum core-foundation-sys 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e7ca8a5221364ef15ce201e8ed2f609fc312682a8f4e0e3d4aa5879764e0fa3b"
-+"checksum crc32fast 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ba125de2af0df55319f41944744ad91c71113bf74a4646efff39afe1f6842db1"
-+"checksum crossbeam-deque 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c3aa945d63861bfe624b55d153a39684da1e8c0bc8fba932f7ee3a3c16cea3ca"
-+"checksum crossbeam-epoch 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5064ebdbf05ce3cb95e45c8b086f72263f4166b29b97f6baff7ef7fe047b55ac"
-+"checksum crossbeam-queue 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7c979cd6cfe72335896575c6b5688da489e420d36a27a0b9eb0c73db574b4a4b"
-+"checksum crossbeam-utils 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)" = "04973fa96e96579258a5091af6003abde64af786b860f18622b82e026cca60e6"
-+"checksum crossbeam-utils 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ce446db02cdc3165b94ae73111e570793400d0794e46125cc4056c81cbb039f4"
-+"checksum dtoa 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "0dd841b58510c9618291ffa448da2e4e0f699d984d436122372f446dae62263d"
-+"checksum dtoa 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)" = "ea57b42383d091c85abcc2706240b94ab2a8fa1fc81c10ff23c4de06e2a90b5e"
-+"checksum either 1.5.3 (registry+https://github.com/rust-lang/crates.io-index)" = "bb1f6b1ce1c140482ea30ddd3335fc0024ac7ee112895426e0a629a6c20adfe3"
-+"checksum encoding 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)" = "6b0d943856b990d12d3b55b359144ff341533e516d94098b1d3fc1ac666d36ec"
-+"checksum encoding-index-japanese 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)" = "04e8b2ff42e9a05335dbf8b5c6f7567e5591d0d916ccef4e0b1710d32a0d0c91"
-+"checksum encoding-index-korean 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)" = "4dc33fb8e6bcba213fe2f14275f0963fd16f0a02c878e3095ecfdf5bee529d81"
-+"checksum encoding-index-simpchinese 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)" = "d87a7194909b9118fc707194baa434a4e3b0fb6a5a757c73c3adb07aa25031f7"
-+"checksum encoding-index-singlebyte 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)" = "3351d5acffb224af9ca265f435b859c7c01537c0849754d3db3fdf2bfe2ae84a"
-+"checksum encoding-index-tradchinese 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)" = "fd0e20d5688ce3cab59eb3ef3a2083a5c77bf496cb798dc6fcdb75f323890c18"
-+"checksum encoding_index_tests 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "a246d82be1c9d791c5dfde9a2bd045fc3cbba3fa2b11ad558f27d01712f00569"
-+"checksum encoding_rs 0.8.22 (registry+https://github.com/rust-lang/crates.io-index)" = "cd8d03faa7fe0c1431609dfad7bbe827af30f82e1e2ae6f7ee4fca6bd764bc28"
-+"checksum error 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "a6e606f14042bb87cc02ef6a14db6c90ab92ed6f62d87e69377bc759fd7987cc"
-+"checksum error-chain 0.12.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3ab49e9dcb602294bc42f9a7dfc9bc6e936fca4418ea300dbfb84fe16de0b7d9"
-+"checksum failure 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "f8273f13c977665c5db7eb2b99ae520952fe5ac831ae4cd09d80c4c7042b5ed9"
-+"checksum failure_derive 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "0bc225b78e0391e4b8683440bf2e63c2deeeb2ce5189eab46e2b68c6d3725d08"
-+"checksum filetime 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)" = "714653f3e34871534de23771ac7b26e999651a0a228f47beb324dfdf1dd4b10f"
-+"checksum flate2 1.0.13 (registry+https://github.com/rust-lang/crates.io-index)" = "6bd6d6f4752952feb71363cffc9ebac9411b75b87c6ab6058c40c8900cf43c0f"
-+"checksum fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "2fad85553e09a6f881f739c29f0b00b0f01357c743266d478b68951ce23285f3"
-+"checksum foreign-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
-+"checksum foreign-types-shared 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
-+"checksum fsevent 0.2.17 (registry+https://github.com/rust-lang/crates.io-index)" = "c4bbbf71584aeed076100b5665ac14e3d85eeb31fdbb45fbd41ef9a682b5ec05"
-+"checksum fsevent-sys 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "1a772d36c338d07a032d5375a36f15f9a7043bf0cb8ce7cee658e037c6032874"
-+"checksum fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba"
-+"checksum fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82"
-+"checksum fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7"
-+"checksum futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)" = "1b980f2816d6ee8673b6517b52cb0e808a180efc92e5c19d02cdda79066703ef"
-+"checksum futures-cpupool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "ab90cde24b3319636588d0c35fe03b1333857621051837ed769faefb4c2162e4"
-+"checksum getrandom 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "e7db7ca94ed4cd01190ceee0d8a8052f08a247aa1b469a7f68c6a3b71afcf407"
-+"checksum glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "8be18de09a56b60ed0edf84bc9df007e30040691af7acd1c41874faac5895bfb"
-+"checksum h2 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)" = "a5b34c246847f938a410a03c5458c7fee2274436675e76d8b903c08efc29c462"
-+"checksum handlebars 0.25.3 (registry+https://github.com/rust-lang/crates.io-index)" = "15bdf598fc3c2de40c6b340213028301c0d225eea55a2294e6cc148074e557a1"
-+"checksum handlebars-iron 0.23.1 (registry+https://github.com/rust-lang/crates.io-index)" = "1f86cf6ff931aa78e61415ad40c48a9af101b9a888eeed6ecf4f48dc52e80b76"
-+"checksum hermit-abi 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "eff2656d88f158ce120947499e971d743c05dbcbed62e5bd2f38f1698bbc3772"
-+"checksum http 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)" = "d6ccf5ede3a895d8856620237b2f02972c1bbc78d2965ad7fe8838d4a0ed41f0"
-+"checksum http-body 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "6741c859c1b2463a423a1dbce98d418e6c3c3fc720fb0d45528657320920292d"
-+"checksum httparse 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "cd179ae861f0c2e53da70d892f5f3029f9594be0c41dc5269cd371691b1dc2f9"
-+"checksum hyper 0.10.16 (registry+https://github.com/rust-lang/crates.io-index)" = "0a0652d9a2609a968c14be1a9ea00bf4b1d64e2e1f53a1b51b6fff3a6e829273"
-+"checksum hyper 0.12.35 (registry+https://github.com/rust-lang/crates.io-index)" = "9dbe6ed1438e1f8ad955a4701e9a944938e9519f6888d12d8558b645e247d5f6"
-+"checksum hyper-tls 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "3a800d6aa50af4b5850b2b0f659625ce9504df908e9733b635720483be26174f"
-+"checksum idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "38f09e0f0b1fb55fdee1f17470ad800da77af5186a1a76c026b679358b7e844e"
-+"checksum idna 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "02e2673c30ee86b5b96a9cb52ad15718aa1f966f5ab9ad54a8b95d5ca33120a9"
-+"checksum indexmap 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "712d7b3ea5827fcb9d4fda14bf4da5f136f0db2ae9c8f4bd4e2d1c6fde4e6db2"
-+"checksum inotify 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "e8458c07bdbdaf309c80e2c3304d14c3db64e7465d4f07cf589ccb83fd0ff31a"
-+"checksum iovec 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "b2b3ea6ff95e175473f8ffe6a7eb7c00d054240321b84c57051175fe3c1e075e"
-+"checksum ipc-channel 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "675587430ede6756dd03fdfdf9888f22f83855fd131c8451d842a710b059e571"
-+"checksum irc 0.11.8 (registry+https://github.com/rust-lang/crates.io-index)" = "6a45f7136bbfeec4377afc6363b38440ce153d8a61777d56da0c6b1176cf135a"
-+"checksum iron 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2440ae846e7a8c7f9b401db8f6e31b4ea5e7d3688b91761337da7e054520c75b"
-+"checksum itoa 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ae3088ea4baeceb0284ee9eea42f591226e6beaecf65373e41b38d95a1b8e7a1"
-+"checksum itoa 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)" = "501266b7edd0174f8530248f87f99c88fbe60ca4ef3dd486835b8d8d53136f7f"
-+"checksum json 0.10.3 (registry+https://github.com/rust-lang/crates.io-index)" = "f3fb4510c0dbc38f7f43bdbe8b53defae0cd338b81ef416462a0ef69d600165c"
-+"checksum kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d"
-+"checksum language-tags 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a91d884b6667cd606bb5a69aa0c99ba811a115fc68915e7056ec08a46e93199a"
-+"checksum lazy_static 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "76f033c7ad61445c5b347c7382dd1237847eb1bce590fe50365dcb33d546be73"
-+"checksum lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
-+"checksum libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)" = "d515b1f41455adea1313a4a2ac8a8a477634fbae63cc6100e3aebb207ce61558"
-+"checksum limiter 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "cbc5d8bf63416df5331084dd9883b9598582f0d7ad5e42d53e55b05366931676"
-+"checksum linefeed 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1301a570e4e7d2d0f324b7a3fa73eac85b05c81b656a0983b16ebc8c504e53b6"
-+"checksum lock_api 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "79b2de95ecb4691949fea4716ca53cdbcfccb2c612e19644a8bad05edcf9f47b"
-+"checksum log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)" = "e19e8d5c34a3e0e2223db8e060f9e8264aeeb5c5fc64a4ee9965c062211c024b"
-+"checksum log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)" = "14b6052be84e6b71ab17edffc2eeabf5c2c3ae1fdb464aae35ac50c67a44e1f7"
-+"checksum logger 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "92ff59f9a797ff30f711fe6b8489ad424953cee17c206de77d3c5957a9182ba7"
-+"checksum matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08"
-+"checksum maybe-uninit 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "60302e4db3a61da70c0cb7991976248362f30319e88850c487b9b95bbf059e00"
-+"checksum memchr 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)" = "d8b629fb514376c675b98c1421e80b151d3817ac42d7c667717d282761418d20"
-+"checksum memchr 2.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "88579771288728879b57485cc7d6b07d648c9f0141eb955f8ab7f9d45394468e"
-+"checksum memoffset 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)" = "75189eb85871ea5c2e2c15abbdd541185f63b408415e5051f5cac122d8c774b9"
-+"checksum mime 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "ba626b8a6de5da682e1caa06bdb42a335aee5a84db8e5046a3e8ab17ba0a3ae0"
-+"checksum mime 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)" = "dd1d63acd1b78403cc0c325605908475dd9b9a3acbf65ed8bcab97e27014afcf"
-+"checksum mime_guess 1.8.7 (registry+https://github.com/rust-lang/crates.io-index)" = "0d977de9ee851a0b16e932979515c0f3da82403183879811bc97d50bd9cc50f7"
-+"checksum mime_guess 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "1a0ed03949aef72dbdf3116a383d7b38b4768e6f960528cd6a6044aa9ed68599"
-+"checksum miniz_oxide 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "6f3f74f726ae935c3f514300cc6773a0c9492abc5e972d42ba0c0ebb88757625"
-+"checksum mio 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a637d1ca14eacae06296a008fa7ad955347e34efcb5891cfd8ba05491a37907e"
-+"checksum mio 0.6.21 (registry+https://github.com/rust-lang/crates.io-index)" = "302dec22bcf6bae6dfb69c647187f4b4d0fb6f535521f7bc022430ce8e12008f"
-+"checksum miow 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "3e690c5df6b2f60acd45d56378981e827ff8295562fc8d34f573deb267a59cd1"
-+"checksum miow 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "8c1f2f3b1cf331de6896aabf6e9d55dca90356cc9960cca7eaaf408a355ae919"
-+"checksum modifier 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "41f5c9112cb662acd3b204077e0de5bc66305fa8df65c8019d5adb10e9ab6e58"
-+"checksum mount 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "32245731923cd096899502fc4c4317cfd09f121e80e73f7f576cf3777a824256"
-+"checksum multipart 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b16d6498fe5b0c2f6d973fd9753da099948834f96584d628e44a75f0d2955b03"
-+"checksum native-tls 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "4b2df1a4c22fd44a62147fd8f13dd0f95c9d8ca7b2610299b2a2f9cf8964274e"
-+"checksum net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)" = "42550d9fb7b6684a6d404d9fa7250c2eb2646df731d1c06afc06dcee9e1bcf88"
-+"checksum nix 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "bfb3ddedaa14746434a02041940495bf11325c22f6d36125d3bdd56090d50a79"
-+"checksum nix 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a0d95c5fa8b641c10ad0b8887454ebaafa3c92b5cd5350f8fc693adafd178e7b"
-+"checksum notify 3.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "13fdd4a6894329b193f38f03a88823ce721275fdfdb29820c44a30515033524e"
-+"checksum num 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)" = "4703ad64153382334aa8db57c637364c322d3372e097840c72000dabdcf6156e"
-+"checksum num-bigint 0.1.44 (registry+https://github.com/rust-lang/crates.io-index)" = "e63899ad0da84ce718c14936262a41cee2c79c981fc0a0e7c7beb47d5a07e8c1"
-+"checksum num-complex 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)" = "b288631d7878aaf59442cffd36910ea604ecd7745c36054328595114001c9656"
-+"checksum num-integer 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)" = "b85e541ef8255f6cf42bbfe4ef361305c6c135d10919ecc26126c4e5ae94bc09"
-+"checksum num-iter 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "76bd5272412d173d6bf9afdf98db8612bbabc9a7a830b7bfc9c188911716132e"
-+"checksum num-rational 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)" = "ee314c74bd753fc86b4780aa9475da469155f3848473a261d2d18e35245a784e"
-+"checksum num-traits 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)" = "92e5113e9fd4cc14ded8e499429f396a20f98c772a47cc8622a736e1ec843c31"
-+"checksum num-traits 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)" = "d4c81ffc11c212fa327657cb19dd85eb7419e163b5b076bede2bdb5c974c07e4"
-+"checksum num_cpus 1.11.1 (registry+https://github.com/rust-lang/crates.io-index)" = "76dac5ed2a876980778b8b85f75a71b6cbf0db0b1232ee12f826bccb00d09d72"
-+"checksum ole32-sys 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5d2c49021782e5233cd243168edfa8037574afed4eba4bbaf538b3d8d1789d8c"
-+"checksum openssl 0.10.26 (registry+https://github.com/rust-lang/crates.io-index)" = "3a3cc5799d98e1088141b8e01ff760112bbd9f19d850c124500566ca6901a585"
-+"checksum openssl-probe 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "77af24da69f9d9341038eba93a073b1fdaaa1b788221b00a69bce9e762cb32de"
-+"checksum openssl-sys 0.9.53 (registry+https://github.com/rust-lang/crates.io-index)" = "465d16ae7fc0e313318f7de5cecf57b2fbe7511fd213978b457e1c96ff46736f"
-+"checksum params 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "421e9f2c30e80365c9672709be664bfc84f73b088720d1cc1f4e99675814bb37"
-+"checksum parking_lot 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f842b1982eb6c2fe34036a4fbfb06dd185a3f5c8edfaacdf7d1ea10b07de6252"
-+"checksum parking_lot_core 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "b876b1b9e7ac6e1a74a6da34d25c42e17e8862aa409cbbbdcfc8d86c6f3bc62b"
-+"checksum parse-zoneinfo 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "f4ee19a3656dadae35a33467f9714f1228dd34766dbe49e10e656b5296867aea"
-+"checksum percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "31010dd2e1ac33d5b46a5b413495239882813e0369f8ed8a5e266f173602f831"
-+"checksum percent-encoding 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d4fd5641d01c8f18a23da7b6fe29298ff4b55afcccdf78973b24cf3175fee32e"
-+"checksum persistent 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d4c9c94f2ef72dc272c6bcc8157ccf2bc7da14f4c58c69059ac2fc48492d6916"
-+"checksum pest 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "0a6dda33d67c26f0aac90d324ab2eb7239c819fc7b2552fe9faa4fe88441edc8"
-+"checksum phf 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)" = "b3da44b85f8e8dfaec21adae67f95d93244b2ecf6ad2a692320598dcc8e6dd18"
-+"checksum phf_codegen 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)" = "b03e85129e324ad4166b06b2c7491ae27fe3ec353af72e72cd1654c7225d517e"
-+"checksum phf_generator 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)" = "09364cc93c159b8b06b1f4dd8a4398984503483891b0c26b867cf431fb132662"
-+"checksum phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)" = "234f71a15de2288bcb7e3b6515828d22af7ec8598ee6d24c3b526fa0a80b67a0"
-+"checksum pkg-config 0.3.17 (registry+https://github.com/rust-lang/crates.io-index)" = "05da548ad6865900e60eaba7f589cc0783590a92e940c26953ff81ddbab2d677"
-+"checksum plugin 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "1a6a0dc3910bc8db877ffed8e457763b317cf880df4ae19109b9f77d277cf6e0"
-+"checksum ppv-lite86 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "74490b50b9fbe561ac330df47c08f3f33073d2d00c150f719147d7c54522fa1b"
-+"checksum proc-macro2 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)" = "0319972dcae462681daf4da1adeeaa066e3ebd29c69be96c6abb1259d2ee2bcc"
-+"checksum publicsuffix 1.5.4 (registry+https://github.com/rust-lang/crates.io-index)" = "3bbaa49075179162b49acac1c6aa45fb4dafb5f13cf6794276d77bc7fd95757b"
-+"checksum quick-error 1.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0"
-+"checksum quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6e920b65c65f10b2ae65c831a81a073a89edd28c7cce89475bff467ab4167a"
-+"checksum quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "053a8c8bcc71fcce321828dc897a98ab9760bef03a4fc36693c231e5b3216cfe"
-+"checksum rand 0.3.23 (registry+https://github.com/rust-lang/crates.io-index)" = "64ac302d8f83c0c1974bf758f6b041c6c8ada916fbb44a609158ca8b064cc76c"
-+"checksum rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "552840b97013b1a26992c11eac34bdd778e464601a4c2054b5f0bff7c6761293"
-+"checksum rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)" = "6d71dacdc3c88c1fde3885a3be3fbab9f35724e6ce99467f7d9c5026132184ca"
-+"checksum rand 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "3ae1b169243eaf61759b8475a998f0a385e42042370f3a7dbaf35246eacc8412"
-+"checksum rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "556d3a1ca6600bfcbab7c7c91ccb085ac7fbbcd70e008a98742e7847f4f7bcef"
-+"checksum rand_chacha 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "03a2a90da8c7523f554344f921aa97283eadf6ac484a6d2a7d0212fa7f8d6853"
-+"checksum rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b"
-+"checksum rand_core 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9c33a3c44ca05fa6f1807d8e6743f3824e8509beca625669633be0acbdf509dc"
-+"checksum rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19"
-+"checksum rand_hc 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7b40677c7be09ae76218dc623efbf7b18e34bced3f38883af07bb75630a21bc4"
-+"checksum rand_hc 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c"
-+"checksum rand_isaac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ded997c9d5f13925be2a6fd7e66bf1872597f759fd9dd93513dd7e92e5a5ee08"
-+"checksum rand_jitter 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "1166d5c91dc97b88d1decc3285bb0a99ed84b05cfd0bc2341bdf2d43fc41e39b"
-+"checksum rand_os 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "7b75f676a1e053fc562eafbb47838d67c84801e38fc1ba459e8f180deabd5071"
-+"checksum rand_pcg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "abf9b09b01790cfe0364f52bf32995ea3c39f4d2dd011eac241d2914146d0b44"
-+"checksum rand_xorshift 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cbf7e9e623549b0e21f6e97cf8ecf247c1a8fd2e8a992ae265314300b2455d5c"
-+"checksum rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2"
-+"checksum redox_syscall 0.1.56 (registry+https://github.com/rust-lang/crates.io-index)" = "2439c63f3f6139d1b57529d16bc3b8bb855230c8efcc5d3a896c8bea7c3b1e84"
-+"checksum regex 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "9329abc99e39129fcceabd24cf5d85b4671ef7c29c50e972bc5afe32438ec384"
-+"checksum regex 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "dc220bd33bdce8f093101afe22a037b8eb0e5af33592e6a9caafff0d4cb81cbd"
-+"checksum regex-syntax 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)" = "7d707a4fa2637f2dca2ef9fd02225ec7661fe01a53623c1e6515b6916511f7a7"
-+"checksum regex-syntax 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)" = "11a7e20d1cce64ef2fed88b66d347f88bd9babb82845b2b858f3edbf59a4f716"
-+"checksum remove_dir_all 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "4a83fa3702a688b9359eccba92d153ac33fd2e8462f9e0e3fdf155239ea7792e"
-+"checksum reqwest 0.9.24 (registry+https://github.com/rust-lang/crates.io-index)" = "f88643aea3c1343c804950d7bf983bd2067f5ab59db6d613a08e05572f2714ab"
-+"checksum route-recognizer 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "ea509065eb0b3c446acdd0102f0d46567dc30902dc0be91d6552035d92b0f4f8"
-+"checksum router 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b9b1797ff166029cb632237bb5542696e54961b4cf75a324c6f05c9cf0584e4e"
-+"checksum rust-gmp 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c3ddf28998d5730b96a9fe188557953de503d77ff403ae175ad1417921e5d906"
-+"checksum rustc-demangle 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)" = "4c691c0e608126e00913e33f0ccf3727d5fc84573623b8d65b2df340b5201783"
-+"checksum rustc-serialize 0.3.24 (registry+https://github.com/rust-lang/crates.io-index)" = "dcf128d1287d2ea9d80910b5f1120d0b8eede3fbf1abe91c40d39ea7d51e6fda"
-+"checksum rustc_version 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "c5f5376ea5e30ce23c03eb77cbe4962b988deead10910c372b226388b594c084"
-+"checksum rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a"
-+"checksum ryu 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "bfa8506c1de11c9c4e4c38863ccbe02a305c8188e85a05a784c9e11e1c3910c8"
-+"checksum safemem 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "ef703b7cb59335eae2eb93ceb664c0eb7ea6bf567079d843e09420219668e072"
-+"checksum same-file 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "d931a44fdaa43b8637009e7632a02adc4f2b2e0733c08caa4cf00e8da4a117a7"
-+"checksum schannel 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)" = "87f550b06b6cba9c8b8be3ee73f391990116bf527450d2556e9b9ce263b9a021"
-+"checksum scopeguard 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b42e15e59b18a828bbf5c58ea01debb36b9b096346de35d941dcb89009f24a0d"
-+"checksum security-framework 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "8ef2429d7cefe5fd28bd1d2ed41c944547d4ff84776f5935b456da44593a16df"
-+"checksum security-framework-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "e31493fc37615debb8c5090a7aeb4a9730bc61e77ab10b9af59f1a202284f895"
-+"checksum semver 0.1.20 (registry+https://github.com/rust-lang/crates.io-index)" = "d4f410fedcf71af0345d7607d246e7ad15faaadd49d240ee3b24e5dc21a820ac"
-+"checksum semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403"
-+"checksum semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3"
-+"checksum sequence_trie 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c915714ca833b1d4d6b8f6a9d72a3ff632fe45b40a8d184ef79c81bec6327eed"
-+"checksum serde 0.8.23 (registry+https://github.com/rust-lang/crates.io-index)" = "9dad3f759919b92c3068c696c15c3d17238234498bbdcc80f2c469606f948ac8"
-+"checksum serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)" = "414115f25f818d7dfccec8ee535d76949ae78584fc4f79a6f45a904bf8ab4449"
-+"checksum serde_codegen 0.8.23 (registry+https://github.com/rust-lang/crates.io-index)" = "a4c5d8a33087d8984f9535daa62a6498a08f6476050b00ab9339dd847e4c25cc"
-+"checksum serde_codegen_internals 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)" = "afad7924a009f859f380e4a2e3a509a845c2ac66435fcead74a4d983b21ae806"
-+"checksum serde_derive 0.8.23 (registry+https://github.com/rust-lang/crates.io-index)" = "ce44e5f4264b39e9d29c875357b7cc3ebdfb967bb9e22bfb5e44ffa400af5306"
-+"checksum serde_derive 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)" = "128f9e303a5a29922045a830221b8f78ec74a5f544944f3d5984f8ec3895ef64"
-+"checksum serde_json 0.8.6 (registry+https://github.com/rust-lang/crates.io-index)" = "67f7d2e9edc3523a9c8ec8cd6ec481b3a27810aafee3e625d311febd3e656b4c"
-+"checksum serde_json 1.0.44 (registry+https://github.com/rust-lang/crates.io-index)" = "48c575e0cc52bdd09b47f330f646cf59afc586e9c4e3ccd6fc1f625b8ea1dad7"
-+"checksum serde_urlencoded 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)" = "642dd69105886af2efd227f75a520ec9b44a820d65bc133a9131f7d229fd165a"
-+"checksum shell32-sys 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9ee04b46101f57121c9da2b151988283b6beb79b34f5bb29a58ee48cb695122c"
-+"checksum siphasher 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "0b8de496cf83d4ed58b6be86c3a275b8602f6ffe98d3024a869e124147a9a3ac"
-+"checksum slab 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "d807fd58c4181bbabed77cb3b891ba9748241a552bcc5be698faaebefc54f46e"
-+"checksum slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c111b5bd5695e56cffe5129854aa230b39c93a305372fdbb2668ca2394eea9f8"
-+"checksum smallvec 0.6.13 (registry+https://github.com/rust-lang/crates.io-index)" = "f7b0758c52e15a8b5e3691eae6cc559f08eee9406e548a4477ba4e67770a82b6"
-+"checksum smallvec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "44e59e0c9fa00817912ae6e4e6e3c4fe04455e75699d06eedc7d85917ed8e8f4"
-+"checksum staticfile 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "31493480e073d52522a94cdf56269dd8eb05f99549effd1826b0271690608878"
-+"checksum string 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d24114bfcceb867ca7f71a0d3fe45d45619ec47a6fbfa98cb14e14250bfa5d6d"
-+"checksum strsim 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "67f84c44fbb2f91db7fef94554e6b2ac05909c9c0b0bc23bb98d3a1aebfe7f7c"
-+"checksum syn 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)" = "58fd09df59565db3399efbba34ba8a2fec1307511ebd245d0061ff9d42691673"
-+"checksum syn 1.0.13 (registry+https://github.com/rust-lang/crates.io-index)" = "1e4ff033220a41d1a57d8125eab57bf5263783dfdcc18688b1dacc6ce9651ef8"
-+"checksum synstructure 0.12.3 (registry+https://github.com/rust-lang/crates.io-index)" = "67656ea1dc1b41b1451851562ea232ec2e5a80242139f7e679ceccfb5d61f545"
-+"checksum tempdir 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)" = "15f2b5fb00ccdf689e0149d1b1b3c03fead81c2b37735d812fa8bddbbf41b6d8"
-+"checksum tempfile 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6e24d9338a0a5be79593e2fa15a648add6138caa803e2d5bc782c371732ca9"
-+"checksum thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c6b53e329000edc2b34dbe8545fd20e55a333362d0a321909685a19bd28c3f1b"
-+"checksum time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)" = "db8dcfca086c1143c9270ac42a2bbd8a7ee477b78ac8e45b19abfb0cbede4b6f"
-+"checksum tokio 0.1.22 (registry+https://github.com/rust-lang/crates.io-index)" = "5a09c0b5bb588872ab2f09afa13ee6e9dac11e10a0ec9e8e3ba39a5a5d530af6"
-+"checksum tokio-buf 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "8fb220f46c53859a4b7ec083e41dec9778ff0b1851c0942b211edb89e0ccdc46"
-+"checksum tokio-current-thread 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "d16217cad7f1b840c5a97dfb3c43b0c871fef423a6e8d2118c604e843662a443"
-+"checksum tokio-executor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "ca6df436c42b0c3330a82d855d2ef017cd793090ad550a6bc2184f4b933532ab"
-+"checksum tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)" = "5090db468dad16e1a7a54c8c67280c5e4b544f3d3e018f0b913b400261f85926"
-+"checksum tokio-reactor 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)" = "6732fe6b53c8d11178dcb77ac6d9682af27fc6d4cb87789449152e5377377146"
-+"checksum tokio-sync 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "d06554cce1ae4a50f42fba8023918afa931413aded705b560e29600ccf7c6d76"
-+"checksum tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "1d14b10654be682ac43efee27401d792507e30fd8d26389e1da3b185de2e4119"
-+"checksum tokio-threadpool 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)" = "f0c32ffea4827978e9aa392d2f743d973c1dfa3730a2ed3f22ce1e6984da848c"
-+"checksum tokio-timer 0.2.12 (registry+https://github.com/rust-lang/crates.io-index)" = "1739638e364e558128461fc1ad84d997702c8e31c2e6b18fb99842268199e827"
-+"checksum toml 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "736b60249cb25337bc196faa43ee12c705e426f3d55c214d73a4e7be06f92cb4"
-+"checksum traitobject 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "efd1f82c56340fdf16f2a953d7bda4f8fdffba13d93b00844c25572110b26079"
-+"checksum try-lock 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e604eb7b43c06650e854be16a2a03155743d3752dd1c943f6829e26b7a36e382"
-+"checksum try_from 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "283d3b89e1368717881a9d51dad843cc435380d8109c9e47d38780a324698d8b"
-+"checksum typeable 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1410f6f91f21d1612654e7cc69193b0334f909dcf2c790c4826254fbb86f8887"
-+"checksum typemap 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "653be63c80a3296da5551e1bfd2cca35227e13cdd08c6668903ae2f4f77aa1f6"
-+"checksum ucd-util 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "fa9b3b49edd3468c0e6565d85783f51af95212b6fa3986a5500954f00b460874"
-+"checksum unicase 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7f4765f83163b74f957c797ad9253caf97f103fb064d3999aea9568d09fc8a33"
-+"checksum unicase 2.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "50f37be617794602aabbeee0be4f259dc1778fabe05e2d67ee8f79326d5cb4f6"
-+"checksum unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "49f2bd0c6468a8230e1db229cff8029217cf623c767ea5d60bfbd42729ea54d5"
-+"checksum unicode-normalization 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)" = "b561e267b2326bb4cebfc0ef9e68355c7abe6c6f522aeac2f5bf95d56c59bdcf"
-+"checksum unicode-width 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "caaa9d531767d1ff2150b9332433f32a24622147e5ebb1f26409d5da67afd479"
-+"checksum unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "8c1f860d7d29cf02cb2f3f359fd35991af3d30bac52c57d265a3c461074cb4dc"
-+"checksum unicode-xid 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "826e7639553986605ec5979c7dd957c7895e93eabed50ab2ffa7f6128a75097c"
-+"checksum unsafe-any 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f30360d7979f5e9c6e6cea48af192ea8fab4afb3cf72597154b8f08935bc9c7f"
-+"checksum url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "dd4e7c0d531266369519a4aa4f399d748bd37043b00bde1e4ff1f60a120b355a"
-+"checksum url 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "75b414f6c464c879d7f9babf951f23bc3743fb7313c081b2e6ca719067ea9d61"
-+"checksum urlencoded 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8c28708636d6f7298a53b1cdb6af40f1ab523209a7cb83cf4d41b3ebc671d319"
-+"checksum utf8-ranges 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "b4ae116fef2b7fea257ed6440d3cfcff7f190865f170cdad00bb6465bf18ecba"
-+"checksum uuid 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "1a9ff57156caf7e22f37baf3c9d8f6ce8194842c23419dafcb0716024514d162"
-+"checksum uuid 0.7.4 (registry+https://github.com/rust-lang/crates.io-index)" = "90dbc611eb48397705a6b0f6e917da23ae517e4d127123d2cf7674206627d32a"
-+"checksum vcpkg 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "3fc439f2794e98976c88a2a2dafce96b930fe8010b0a256b3c2199a773933168"
-+"checksum version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "914b1a6776c4c929a602fafd8bc742e06365d4bcbe48c30f9cca5824f70dc9dd"
-+"checksum version_check 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)" = "078775d0255232fb988e6fccf26ddc9d1ac274299aaedcedce21c6f72cc533ce"
-+"checksum void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d"
-+"checksum walkdir 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "c66c0b9792f0a765345452775f3adbd28dde9d33f30d13e5dcc5ae17cf6f3780"
-+"checksum walkdir 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)" = "bb08f9e670fab86099470b97cd2b252d6527f0b3cc1401acdb595ffc9dd288ff"
-+"checksum want 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b6395efa4784b027708f7451087e647ec73cc74f5d9bc2e418404248d679a230"
-+"checksum wasi 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b89c3ce4ce14bdc6fb6beaf9ec7928ca331de5df7e5ea278375642a2f478570d"
-+"checksum winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a"
-+"checksum winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)" = "8093091eeb260906a183e6ae1abdba2ef5ef2257a21801128899c3fc699229c6"
-+"checksum winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc"
-+"checksum winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
-+"checksum winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
-+"checksum winreg 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "b2986deb581c4fe11b621998a5e53361efe6b48a151178d0cd9eeffa4dc6acc9"
-+"checksum ws2_32-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d59cefebd0c892fa2dd6de581e937301d8552cb44489cdff035c6187cb63fa5e"
-+"checksum xml-rs 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "7ec6c39eaa68382c8e31e35239402c0a9489d4141a8ceb0c716099a0b515b562"
diff --git a/pkgs/applications/science/misc/rink/default.nix b/pkgs/applications/science/misc/rink/default.nix
index 5d592c233b6..9a24496c6ad 100644
--- a/pkgs/applications/science/misc/rink/default.nix
+++ b/pkgs/applications/science/misc/rink/default.nix
@@ -1,30 +1,27 @@
-{ stdenv, fetchFromGitHub, rustPlatform, openssl, pkgconfig, gmp, ncurses }:
+{ stdenv, fetchFromGitHub, rustPlatform, openssl, pkg-config, ncurses }:
rustPlatform.buildRustPackage rec {
- version = "0.4.5";
+ version = "0.5.0";
pname = "rink";
src = fetchFromGitHub {
owner = "tiffany352";
repo = "rink-rs";
rev = "v${version}";
- sha256 = "0vl996y58a9b62d8sqrpfn2h8qkya7qbg5zqsmy7nxhph1vhbspj";
+ sha256 = "1z51n25hmgqkn4bm9yj18j8p4pk5i1x3f3z70vl1vx3v109jhff0";
};
- # Upstreamed in https://github.com/tiffany352/rink-rs/pull/53
- cargoPatches = [ ./cargo-lock.patch ];
+ cargoSha256 = "0p63py8q4iqj5rrsir9saj7dvkrafx63z493k7p5xb2mah7b21lb";
- cargoSha256 = "0shlh0m9k0iqxpv9zmiw7a6v197swrvpz9x6qzhximzkdwni9gz9";
-
- nativeBuildInputs = [ pkgconfig ];
- buildInputs = [ openssl gmp ncurses ];
+ nativeBuildInputs = [ pkg-config ];
+ buildInputs = [ openssl ncurses ];
# Some tests fail and/or attempt to use internet servers.
doCheck = false;
meta = with stdenv.lib; {
description = "Unit-aware calculator";
- homepage = "https://rink.tiffnix.com";
+ homepage = "https://rinkcalc.app";
license = with licenses; [ mpl20 gpl3 ];
maintainers = with maintainers; [ sb0 filalex77 ];
};
diff --git a/pkgs/applications/version-management/git-and-tools/gh/default.nix b/pkgs/applications/version-management/git-and-tools/gh/default.nix
index 9601de85897..27daf1a30aa 100644
--- a/pkgs/applications/version-management/git-and-tools/gh/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/gh/default.nix
@@ -2,16 +2,16 @@
buildGoModule rec {
pname = "gh";
- version = "0.10.1";
+ version = "0.11.0";
src = fetchFromGitHub {
owner = "cli";
repo = "cli";
rev = "v${version}";
- sha256 = "0q4zpm10hcci4j0g1gx08q2qwn71ab9f7yaf4k78sfn5p89y7rm2";
+ sha256 = "13nq7rvxwl9cld9gng7rm534yqrr2ii0bqyzqwlkpzh9m61m3ra2";
};
- vendorSha256 = "0igbqnylryiq36lbb1gha8najijzxmn10asc0xayxygbxc16s1vi";
+ vendorSha256 = "1xvrxdxhyj5nz5plypc5mniw5dl17w1wxcrs77w24hisn90jphgd";
nativeBuildInputs = [ installShellFiles ];
diff --git a/pkgs/applications/version-management/git-and-tools/git-machete/default.nix b/pkgs/applications/version-management/git-and-tools/git-machete/default.nix
index 9cdec7464a6..76c991f2283 100644
--- a/pkgs/applications/version-management/git-and-tools/git-machete/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-machete/default.nix
@@ -4,11 +4,11 @@
buildPythonApplication rec {
pname = "git-machete";
- version = "2.15.2";
+ version = "2.15.3";
src = fetchPypi {
inherit pname version;
- sha256 = "0qv08a6xsdmcm8l69m4103vn4crb0ilzx94334xjbdl0sykm55q0";
+ sha256 = "0kpfi1w1jnn7v7mny71jil3sc9mm08lz47l9v3hzgs5z3ham98jb";
};
nativeBuildInputs = [ installShellFiles pbr ];
diff --git a/pkgs/applications/version-management/git-and-tools/gitui/default.nix b/pkgs/applications/version-management/git-and-tools/gitui/default.nix
index d3581eef559..ca3dcc08b33 100644
--- a/pkgs/applications/version-management/git-and-tools/gitui/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/gitui/default.nix
@@ -2,16 +2,16 @@
rustPlatform.buildRustPackage rec {
pname = "gitui";
- version = "0.5.0";
+ version = "0.8.1";
src = fetchFromGitHub {
owner = "extrawurst";
repo = pname;
rev = "v${version}";
- sha256 = "0z3k83nfnl765ably4naybjf614qfizzpqb40ppwljijj9nqlng1";
+ sha256 = "0nch2p4isdv746p9pczqwram0c5f0f9l2r3fy5r12x9br0kak136";
};
- cargoSha256 = "11y4q56vl5dp2vdc7dc5q44l2m0mn590hfg6i134m11r8988am6y";
+ cargoSha256 = "1d54afg45lw8zyanr49fklzhczadyja2fjmid22d81s2ari84slz";
buildInputs = stdenv.lib.optionals stdenv.isDarwin [ libiconv Security ];
diff --git a/pkgs/applications/version-management/gitkraken/default.nix b/pkgs/applications/version-management/gitkraken/default.nix
index 64f1fc00ae7..8fe04735657 100644
--- a/pkgs/applications/version-management/gitkraken/default.nix
+++ b/pkgs/applications/version-management/gitkraken/default.nix
@@ -13,11 +13,11 @@ let
in
stdenv.mkDerivation rec {
pname = "gitkraken";
- version = "7.0.1";
+ version = "7.1.0";
src = fetchzip {
url = "https://release.axocdn.com/linux/GitKraken-v${version}.tar.gz";
- sha256 = "0vj2ggbm617fypl69ksbrbl048xp4v6wc46y4sp7hrk6lg0gw1b0";
+ sha256 = "1g7i7sq705x5jkp76z4car9na3qvklpi3a766yiv4h79kc5via48";
};
dontBuild = true;
diff --git a/pkgs/applications/video/mkvtoolnix/default.nix b/pkgs/applications/video/mkvtoolnix/default.nix
index 68f3cac1bfa..9b2c8f83577 100644
--- a/pkgs/applications/video/mkvtoolnix/default.nix
+++ b/pkgs/applications/video/mkvtoolnix/default.nix
@@ -13,13 +13,13 @@ with stdenv.lib;
stdenv.mkDerivation rec {
pname = "mkvtoolnix";
- version = "47.0.0";
+ version = "48.0.0";
src = fetchFromGitLab {
owner = "mbunkus";
repo = "mkvtoolnix";
rev = "release-${version}";
- sha256 = "1s8y9khyfjg06mr7rmm26pk0b3nbkcrs56r29a9l57wbkqyl7qp9";
+ sha256 = "0lbl3w2m12blymda3m00afl9racgahvl0z4b2clwbawhvypc5vfc";
};
nativeBuildInputs = [
diff --git a/pkgs/applications/video/shotcut/0001-encodedock.cpp-connect-to-VAAPI-via-DRM-not-X11.patch b/pkgs/applications/video/shotcut/0001-encodedock.cpp-connect-to-VAAPI-via-DRM-not-X11.patch
deleted file mode 100644
index 475788ba3a4..00000000000
--- a/pkgs/applications/video/shotcut/0001-encodedock.cpp-connect-to-VAAPI-via-DRM-not-X11.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From 247baa7e9210bbe5462b6155014c3dcd4a60e56a Mon Sep 17 00:00:00 2001
-From: Peter Simons
-Date: Tue, 24 Sep 2019 10:27:17 +0200
-Subject: [PATCH] encodedock.cpp: connect to VAAPI via DRM, not X11
-
----
- src/docks/encodedock.cpp | 3 +--
- 1 file changed, 1 insertion(+), 2 deletions(-)
-
-diff --git a/src/docks/encodedock.cpp b/src/docks/encodedock.cpp
-index f2d64fc8..63d20787 100644
---- a/src/docks/encodedock.cpp
-+++ b/src/docks/encodedock.cpp
-@@ -766,7 +766,6 @@ Mlt::Properties* EncodeDock::collectProperties(int realtime)
- setIfNotSet(p, "pix_fmt", "nv12");
- } else if (vcodec.endsWith("_vaapi")) {
- setIfNotSet(p, "vprofile", "main");
-- setIfNotSet(p, "connection_type", "x11");
- }
- }
- setIfNotSet(p, "width", ui->widthSpinner->value());
-@@ -1890,7 +1889,7 @@ void EncodeDock::on_hwencodeCheckBox_clicked(bool checked)
- QStringList args;
- args << "-hide_banner" << "-f" << "lavfi" << "-i" << "color=s=640x360" << "-frames" << "1" << "-an";
- if (codec.endsWith("_vaapi"))
-- args << "-init_hw_device" << "vaapi=vaapi0:,connection_type=x11" << "-filter_hw_device" << "vaapi0" << "-vf" << "format=nv12,hwupload";
-+ args << "-init_hw_device" << "vaapi=vaapi0" << "-filter_hw_device" << "vaapi0" << "-vf" << "format=nv12,hwupload";
- else if (codec == "hevc_qsv")
- args << "-load_plugin" << "hevc_hw";
- args << "-c:v" << codec << "-f" << "rawvideo" << "pipe:";
---
-2.24.1
-
diff --git a/pkgs/applications/video/shotcut/default.nix b/pkgs/applications/video/shotcut/default.nix
index 9c0435a351c..f907179bd04 100644
--- a/pkgs/applications/video/shotcut/default.nix
+++ b/pkgs/applications/video/shotcut/default.nix
@@ -3,22 +3,20 @@
, qtquickcontrols, qtgraphicaleffects, libmlt, qmake, qttools
}:
-assert stdenv.lib.versionAtLeast libmlt.version "6.18.0";
-assert stdenv.lib.versionAtLeast mlt.version "6.18.0";
+assert stdenv.lib.versionAtLeast libmlt.version "6.20.0";
+assert stdenv.lib.versionAtLeast mlt.version "6.20.0";
mkDerivation rec {
pname = "shotcut";
- version = "20.04.12";
+ version = "20.07.11";
src = fetchFromGitHub {
owner = "mltframework";
repo = "shotcut";
rev = "v${version}";
- sha256 = "05yyv9192f722j8fhfjrphxadgp3crvbq4pi23ln560zh9s1m8r4";
+ sha256 = "0ajg0bpdckhvmmsliy1xky9p4mdypnaw3z3cvfsdrm0zcihbgazv";
};
- patches = [ ./0001-encodedock.cpp-connect-to-VAAPI-via-DRM-not-X11.patch ];
-
enableParallelBuilding = true;
nativeBuildInputs = [ pkgconfig qmake ];
buildInputs = [
diff --git a/pkgs/applications/virtualization/conmon/default.nix b/pkgs/applications/virtualization/conmon/default.nix
index d5abb569e7b..83261c057a4 100644
--- a/pkgs/applications/virtualization/conmon/default.nix
+++ b/pkgs/applications/virtualization/conmon/default.nix
@@ -9,13 +9,13 @@
stdenv.mkDerivation rec {
pname = "conmon";
- version = "2.0.18";
+ version = "2.0.19";
src = fetchFromGitHub {
owner = "containers";
repo = pname;
rev = "v${version}";
- sha256 = "0f32g048jamfhrds68vzirx8iqizr45wf2d4bfvdsk176amrj4k0";
+ sha256 = "005sz8aimbfm12d99q79yvsqczxbvbbgc725pavcbly3k1qva207";
};
nativeBuildInputs = [ pkg-config ];
diff --git a/pkgs/applications/virtualization/crun/default.nix b/pkgs/applications/virtualization/crun/default.nix
index 8e903f475da..4c5699419eb 100644
--- a/pkgs/applications/virtualization/crun/default.nix
+++ b/pkgs/applications/virtualization/crun/default.nix
@@ -34,13 +34,13 @@ let
in
stdenv.mkDerivation rec {
pname = "crun";
- version = "0.14";
+ version = "0.14.1";
src = fetchFromGitHub {
owner = "containers";
repo = pname;
rev = version;
- sha256 = "14hmdarmhkfp5qgd8ifn7dn895j54ibaficci82q40haqh252l4n";
+ sha256 = "0r77ksdrpxskf79m898a7ai8wxw9fmmsf2lg8fw3ychnk74l8jvh";
fetchSubmodules = true;
};
diff --git a/pkgs/applications/virtualization/podman/default.nix b/pkgs/applications/virtualization/podman/default.nix
index a4d9e8333dd..5c8321a3c9c 100644
--- a/pkgs/applications/virtualization/podman/default.nix
+++ b/pkgs/applications/virtualization/podman/default.nix
@@ -20,7 +20,7 @@ buildGoModule rec {
src = fetchFromGitHub {
owner = "containers";
- repo = "libpod";
+ repo = "podman";
rev = "v${version}";
sha256 = "12iqj71xjszbjbbz5f2dk5chcvfrrq0n737ki7xxkjcw38k2cnqz";
};
diff --git a/pkgs/applications/window-managers/cage/default.nix b/pkgs/applications/window-managers/cage/default.nix
index 0d9e3335f2c..372ad1e27fc 100644
--- a/pkgs/applications/window-managers/cage/default.nix
+++ b/pkgs/applications/window-managers/cage/default.nix
@@ -1,45 +1,45 @@
-{ stdenv, fetchFromGitHub, fetchpatch
-, meson, ninja, pkgconfig, makeWrapper
-, wlroots, wayland, wayland-protocols, pixman, libxkbcommon
+{ stdenv, fetchFromGitHub
+, meson, ninja, pkg-config, wayland, scdoc, makeWrapper
+, wlroots, wayland-protocols, pixman, libxkbcommon
, systemd, libGL, libX11
, xwayland ? null
+, nixosTests
}:
stdenv.mkDerivation rec {
- pname = "cage-unstable";
- version = "2020-01-18";
- # The last stable release (0.1.1) would require at least the following 3 patches:
- # - https://github.com/Hjdskes/cage/commit/33bb3c818c5971777b6f09d8821e7f078d38d262.patch
- # - https://github.com/Hjdskes/cage/commit/51e6c760da51e2b885737d61a61cdc965bb9269d.patch
- # - https://github.com/Hjdskes/cage/commit/84216ca2a417b237ad61c11e2f3ebbcb91681ece.patch
- # Which need to be adapted due to other changes. At this point it seems
- # better to use the current master version until the next stable release.
+ pname = "cage";
+ version = "0.1.2.1";
src = fetchFromGitHub {
owner = "Hjdskes";
repo = "cage";
- rev = "cc1f975c442ebd691b70196d76aa120ead717810";
- sha256 = "1gkqx26pvlw00b3fgx6sh87yyjfzyj51jwxvbf9k117npkrf4b2g";
+ rev = "v${version}";
+ sha256 = "1i4rm3dpmk7gkl6hfs6a7vwz76ba7yqcdp63nlrdbnq81m9cy2am";
};
- nativeBuildInputs = [ meson ninja pkgconfig makeWrapper wayland ];
+ postPatch = ''
+ substituteInPlace meson.build --replace \
+ "0.1.2" "${version}"
+ '';
+
+ nativeBuildInputs = [ meson ninja pkg-config wayland scdoc makeWrapper ];
buildInputs = [
wlroots wayland wayland-protocols pixman libxkbcommon
- # TODO: Not specified but required:
systemd libGL libX11
];
- enableParallelBuilding = true;
-
mesonFlags = [ "-Dxwayland=${stdenv.lib.boolToString (xwayland != null)}" ];
postFixup = stdenv.lib.optionalString (xwayland != null) ''
wrapProgram $out/bin/cage --prefix PATH : "${xwayland}/bin"
'';
+ # Tests Cage using the NixOS module by launching xterm:
+ passthru.tests.basic-nixos-module-functionality = nixosTests.cage;
+
meta = with stdenv.lib; {
- description = "A Wayland kiosk";
+ description = "A Wayland kiosk that runs a single, maximized application";
homepage = "https://www.hjdskes.nl/projects/cage/";
license = licenses.mit;
platforms = platforms.linux;
diff --git a/pkgs/applications/window-managers/icewm/default.nix b/pkgs/applications/window-managers/icewm/default.nix
index bacfb9674f6..57f4a764c90 100644
--- a/pkgs/applications/window-managers/icewm/default.nix
+++ b/pkgs/applications/window-managers/icewm/default.nix
@@ -9,13 +9,13 @@
with stdenv.lib;
stdenv.mkDerivation rec {
pname = "icewm";
- version = "1.6.6";
+ version = "1.7.0";
src = fetchFromGitHub {
owner = "bbidulock";
repo = "icewm";
rev = version;
- sha256 = "05jg2gs5cdxn2kfm2y6yrqxpza5s1zsgb52168psmzhb4nakpv42";
+ sha256 = "0x6axhwfwxxgnljf3201hvrwa90yacf3ln24lsywrk1bxq9am74b";
};
nativeBuildInputs = [ cmake pkgconfig perl asciidoc ];
diff --git a/pkgs/applications/window-managers/sway/contrib.nix b/pkgs/applications/window-managers/sway/contrib.nix
index e2c27fb470f..fd44f4a5be5 100644
--- a/pkgs/applications/window-managers/sway/contrib.nix
+++ b/pkgs/applications/window-managers/sway/contrib.nix
@@ -18,23 +18,11 @@
grimshot = stdenv.mkDerivation rec {
pname = "grimshot";
- version = "2020-05-08";
- rev = "b1d08db5f5112ab562f89564825e3e791b0682c4";
+ version = sway-unwrapped.version;
- # master has new fixes and features, and a man page
- # after sway-1.5 these may be switched to sway-unwrapped.src
- bsrc = fetchurl {
- url = "https://raw.githubusercontent.com/swaywm/sway/${rev}/contrib/grimshot";
- sha256 = "1awzmzkib8a7q5s78xyh8za03lplqfpbasqp3lidqqmjqs882jq9";
- };
-
- msrc = fetchurl {
- url = "https://raw.githubusercontent.com/swaywm/sway/${rev}/contrib/grimshot.1";
- sha256 = "191xxjfhf61gkxl3b0f694h0nrwd7vfnyp5afk8snhhr6q7ia4jz";
- };
+ src = sway-unwrapped.src;
dontBuild = true;
- dontUnpack = true;
dontConfigure = true;
outputs = [ "out" "man" ];
@@ -42,9 +30,9 @@ grimshot = stdenv.mkDerivation rec {
nativeBuildInputs = [ makeWrapper installShellFiles ];
installPhase = ''
- installManPage ${msrc}
+ installManPage contrib/grimshot.1
- install -Dm 0755 ${bsrc} $out/bin/grimshot
+ install -Dm 0755 contrib/grimshot $out/bin/grimshot
wrapProgram $out/bin/grimshot --set PATH \
"${stdenv.lib.makeBinPath [
sway-unwrapped
diff --git a/pkgs/applications/window-managers/sway/default.nix b/pkgs/applications/window-managers/sway/default.nix
index 66681ef0850..da58d844ee8 100644
--- a/pkgs/applications/window-managers/sway/default.nix
+++ b/pkgs/applications/window-managers/sway/default.nix
@@ -1,20 +1,19 @@
{ stdenv, fetchFromGitHub, makeWrapper
-, meson, ninja
-, pkgconfig, scdoc
-, wayland, libxkbcommon, pcre, json_c, dbus, libevdev
+, meson, ninja, pkg-config, wayland, scdoc
+, libxkbcommon, pcre, json_c, dbus, libevdev
, pango, cairo, libinput, libcap, pam, gdk-pixbuf, librsvg
, wlroots, wayland-protocols
}:
stdenv.mkDerivation rec {
pname = "sway-unwrapped";
- version = "1.4";
+ version = "1.5";
src = fetchFromGitHub {
owner = "swaywm";
repo = "sway";
rev = version;
- sha256 = "11qf89y3q92g696a6f4d23qb44gqixg6qxq740vwv2jw59ms34ja";
+ sha256 = "0r3b7h778l9i20z3him9i2qsaynpn9y78hzfgv3cqi8fyry2c4f9";
};
patches = [
@@ -22,8 +21,12 @@ stdenv.mkDerivation rec {
./load-configuration-from-etc.patch
];
+ postPatch = ''
+ substituteInPlace meson.build --replace "v1.5" "1.5"
+ '';
+
nativeBuildInputs = [
- pkgconfig meson ninja scdoc
+ meson ninja pkg-config wayland scdoc
];
buildInputs = [
@@ -32,16 +35,23 @@ stdenv.mkDerivation rec {
wlroots wayland-protocols
];
- enableParallelBuilding = true;
-
mesonFlags = [
- "-Ddefault-wallpaper=false" "-Dxwayland=enabled" "-Dgdk-pixbuf=enabled"
- "-Dtray=enabled" "-Dman-pages=enabled"
+ "-Ddefault-wallpaper=false"
];
meta = with stdenv.lib; {
- description = "i3-compatible tiling Wayland compositor";
+ description = "An i3-compatible tiling Wayland compositor";
+ longDescription = ''
+ Sway is a tiling Wayland compositor and a drop-in replacement for the i3
+ window manager for X11. It works with your existing i3 configuration and
+ supports most of i3's features, plus a few extras.
+ Sway allows you to arrange your application windows logically, rather
+ than spatially. Windows are arranged into a grid by default which
+ maximizes the efficiency of your screen and can be quickly manipulated
+ using only the keyboard.
+ '';
homepage = "https://swaywm.org";
+ changelog = "https://github.com/swaywm/sway/releases/tag/${version}";
license = licenses.mit;
platforms = platforms.linux;
maintainers = with maintainers; [ primeos synthetica ma27 ];
diff --git a/pkgs/build-support/build-bazel-package/default.nix b/pkgs/build-support/build-bazel-package/default.nix
index 31c0c8e92e5..bbcbc4e2e11 100644
--- a/pkgs/build-support/build-bazel-package/default.nix
+++ b/pkgs/build-support/build-bazel-package/default.nix
@@ -30,6 +30,13 @@ args@{
, removeRulesCC ? true
, removeLocalConfigCc ? true
, removeLocal ? true
+
+# Use build --nobuild instead of fetch. This allows fetching the dependencies
+# required for the build as configured, rather than fetching all the dependencies
+# which may not work in some situations (e.g. Java code which ends up relying on
+# Debian-specific /usr/share/java paths, but doesn't in the configured build).
+, fetchConfigured ? false
+
, ...
}:
@@ -79,7 +86,7 @@ in stdenv.mkDerivation (fBuildAttrs // {
bazel \
--output_base="$bazelOut" \
--output_user_root="$bazelUserRoot" \
- fetch \
+ ${if fetchConfigured then "build --nobuild" else "fetch"} \
--loading_phase_threads=1 \
$bazelFlags \
$bazelFetchFlags \
@@ -112,7 +119,8 @@ in stdenv.mkDerivation (fBuildAttrs // {
# platforms -> NIX_BUILD_TOP/tmp/install/35282f5123611afa742331368e9ae529/_embedded_binaries/platforms
find $bazelOut/external -maxdepth 1 -type l | while read symlink; do
name="$(basename "$symlink")"
- rm "$symlink" "$bazelOut/external/@$name.marker"
+ rm "$symlink"
+ test -f "$bazelOut/external/@$name.marker" && rm "$bazelOut/external/@$name.marker"
done
# Patching symlinks to remove build directory reference
diff --git a/pkgs/build-support/docker/default.nix b/pkgs/build-support/docker/default.nix
index 7ff325382a6..bf815af6f7c 100644
--- a/pkgs/build-support/docker/default.nix
+++ b/pkgs/build-support/docker/default.nix
@@ -442,6 +442,7 @@ rec {
in
runCommand "${name}.tar.gz" {
inherit (stream) imageName;
+ passthru = { inherit (stream) imageTag; };
buildInputs = [ pigz ];
} "${stream} | pigz -nT > $out";
@@ -517,6 +518,11 @@ rec {
layerClosure = writeReferencesToFile layer;
passthru.buildArgs = args;
passthru.layer = layer;
+ passthru.imageTag =
+ if tag != null
+ then lib.toLower tag
+ else
+ lib.head (lib.strings.splitString "-" (baseNameOf result.outPath));
# Docker can't be made to run darwin binaries
meta.badPlatforms = lib.platforms.darwin;
} ''
@@ -737,6 +743,11 @@ rec {
conf = runCommand "${name}-conf.json" {
inherit maxLayers created;
imageName = lib.toLower name;
+ passthru.imageTag =
+ if tag != null
+ then tag
+ else
+ lib.head (lib.strings.splitString "-" (baseNameOf conf.outPath));
paths = referencesByPopularity overallClosure;
buildInputs = [ jq ];
} ''
@@ -792,6 +803,7 @@ rec {
'';
result = runCommand "stream-${name}" {
inherit (conf) imageName;
+ passthru = { inherit (conf) imageTag; };
buildInputs = [ makeWrapper ];
} ''
makeWrapper ${streamScript} $out --add-flags ${conf}
diff --git a/pkgs/build-support/docker/examples.nix b/pkgs/build-support/docker/examples.nix
index 81dae9b6124..0d907c2d64b 100644
--- a/pkgs/build-support/docker/examples.nix
+++ b/pkgs/build-support/docker/examples.nix
@@ -364,4 +364,22 @@ rec {
created = "now";
};
+ # buildImage without explicit tag
+ bashNoTag = pkgs.dockerTools.buildImage {
+ name = "bash-no-tag";
+ contents = pkgs.bashInteractive;
+ };
+
+ # buildLayeredImage without explicit tag
+ bashNoTagLayered = pkgs.dockerTools.buildLayeredImage {
+ name = "bash-no-tag-layered";
+ contents = pkgs.bashInteractive;
+ };
+
+ # buildImage without explicit tag
+ bashNoTagStreamLayered = pkgs.dockerTools.streamLayeredImage {
+ name = "bash-no-tag-stream-layered";
+ contents = pkgs.bashInteractive;
+ };
+
}
diff --git a/pkgs/build-support/rust/default.nix b/pkgs/build-support/rust/default.nix
index 9e9f2cb4e3b..c292b8ea4d4 100644
--- a/pkgs/build-support/rust/default.nix
+++ b/pkgs/build-support/rust/default.nix
@@ -74,6 +74,7 @@ let
ccForHost="${stdenv.cc}/bin/${stdenv.cc.targetPrefix}cc";
cxxForHost="${stdenv.cc}/bin/${stdenv.cc.targetPrefix}c++";
releaseDir = "target/${rustTarget}/${buildType}";
+ tmpDir = "${releaseDir}-tmp";
# Specify the stdenv's `diff` by abspath to ensure that the user's build
# inputs do not cause us to find the wrong `diff`.
@@ -193,13 +194,15 @@ stdenv.mkDerivation (args // {
# This needs to be done after postBuild: packages like `cargo` do a pushd/popd in
# the pre/postBuild-hooks that need to be taken into account before gathering
# all binaries to install.
- bins=$(find $releaseDir \
+ mkdir -p $tmpDir
+ cp -r $releaseDir/* $tmpDir/
+ bins=$(find $tmpDir \
-maxdepth 1 \
-type f \
-executable ! \( -regex ".*\.\(so.[0-9.]+\|so\|a\|dylib\)" \))
'';
- installCheckPhase = args.checkPhase or (let
+ checkPhase = args.checkPhase or (let
argstr = "${stdenv.lib.optionalString (checkType == "release") "--release"} --target ${rustTarget} --frozen";
in ''
${stdenv.lib.optionalString (buildAndTestSubdir != null) "pushd ${buildAndTestSubdir}"}
@@ -214,13 +217,13 @@ stdenv.mkDerivation (args // {
strictDeps = true;
- inherit releaseDir;
+ inherit releaseDir tmpDir;
installPhase = args.installPhase or ''
runHook preInstall
# rename the output dir to a architecture independent one
- mapfile -t targets < <(find "$NIX_BUILD_TOP" -type d | grep '${releaseDir}$')
+ mapfile -t targets < <(find "$NIX_BUILD_TOP" -type d | grep '${tmpDir}$')
for target in "''${targets[@]}"; do
rm -rf "$target/../../${buildType}"
ln -srf "$target" "$target/../../"
@@ -228,7 +231,7 @@ stdenv.mkDerivation (args // {
mkdir -p $out/bin $out/lib
xargs -r cp -t $out/bin <<< $bins
- find $releaseDir \
+ find $tmpDir \
-maxdepth 1 \
-regex ".*\.\(so.[0-9.]+\|so\|a\|dylib\)" \
-print0 | xargs -r -0 cp -t $out/lib
diff --git a/pkgs/desktops/gnome-3/core/gnome-desktop/default.nix b/pkgs/desktops/gnome-3/core/gnome-desktop/default.nix
index 22b3f17b425..2e89e6b9c27 100644
--- a/pkgs/desktops/gnome-3/core/gnome-desktop/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-desktop/default.nix
@@ -4,13 +4,13 @@
stdenv.mkDerivation rec {
pname = "gnome-desktop";
- version = "3.36.3.1";
+ version = "3.36.4";
outputs = [ "out" "dev" "devdoc" ];
src = fetchurl {
url = "mirror://gnome/sources/gnome-desktop/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
- sha256 = "0zkbx5inprjpf4abqwn0bxc2d1rwbhv450cjh1wgz82ylagi3vab";
+ sha256 = "1ilv49qkppbbag5728iswg1jhhqx9hbj7j8k8wccnbyaq54bsyq0";
};
nativeBuildInputs = [
diff --git a/pkgs/desktops/gnome-3/core/gnome-shell/default.nix b/pkgs/desktops/gnome-3/core/gnome-shell/default.nix
index b734a60cc26..17f359e7d28 100644
--- a/pkgs/desktops/gnome-3/core/gnome-shell/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-shell/default.nix
@@ -1,60 +1,81 @@
-{ fetchurl, fetchpatch, substituteAll, stdenv, meson, ninja, pkgconfig, gnome3, json-glib, gettext, libsecret
-, python3, libsoup, polkit, clutter, networkmanager, docbook_xsl , docbook_xsl_ns, at-spi2-core
-, libstartup_notification, telepathy-glib, telepathy-logger, libXtst, unzip, glibcLocales, shared-mime-info
-, libgweather, libcanberra-gtk3, librsvg, geoclue2, perl, docbook_xml_dtd_42, desktop-file-utils
-, libpulseaudio, libical, gobject-introspection, wrapGAppsHook, libxslt, gcr
-, accountsservice, gdk-pixbuf, gdm, upower, ibus, libnma, libgnomekbd, gnome-desktop
-, gsettings-desktop-schemas, gnome-keyring, glib, gjs, mutter, evolution-data-server, gtk3
-, sassc, systemd, gst_all_1, adwaita-icon-theme, gnome-bluetooth, gnome-clocks, gnome-settings-daemon
-, gnome-autoar, asciidoc-full
+{ fetchurl
+, fetchpatch
+, substituteAll
+, stdenv
+, meson
+, ninja
+, pkg-config
+, gnome3
+, json-glib
+, gettext
+, libsecret
+, python3
+, polkit
+, networkmanager
+, gtk-doc
+, docbook-xsl-nons
+, at-spi2-core
+, libstartup_notification
+, telepathy-glib
+, telepathy-logger
+, unzip
+, shared-mime-info
+, libgweather
+, librsvg
+, geoclue2
+, perl
+, docbook_xml_dtd_412
+, docbook_xml_dtd_42
+, docbook_xml_dtd_43
+, desktop-file-utils
+, libpulseaudio
+, libical
+, gobject-introspection
+, wrapGAppsHook
+, libxslt
+, gcr
+, accountsservice
+, gdk-pixbuf
+, gdm
+, upower
+, ibus
+, libnma
+, libgnomekbd
+, gnome-desktop
+, gsettings-desktop-schemas
+, gnome-keyring
+, glib
+, gjs
+, mutter
+, evolution-data-server
+, gtk3
+, sassc
+, systemd
+, gst_all_1
+, adwaita-icon-theme
+, gnome-bluetooth
+, gnome-clocks
+, gnome-settings-daemon
+, gnome-autoar
+, asciidoc-full
, bash-completion
}:
# http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/gnome-base/gnome-shell/gnome-shell-3.10.2.1.ebuild?revision=1.3&view=markup
-
let
- pythonEnv = python3.withPackages ( ps: with ps; [ pygobject3 ] );
-
-in stdenv.mkDerivation rec {
+ pythonEnv = python3.withPackages (ps: with ps; [ pygobject3 ]);
+in
+stdenv.mkDerivation rec {
pname = "gnome-shell";
version = "3.36.4";
+ outputs = [ "out" "devdoc" ];
+
src = fetchurl {
url = "mirror://gnome/sources/gnome-shell/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "1nyibrr98ijn65z9ki0k7xzcwcliwy2jqssz0l0jalpbkhnr751d";
};
- LANG = "en_US.UTF-8";
-
- nativeBuildInputs = [
- meson ninja pkgconfig gettext docbook_xsl docbook_xsl_ns docbook_xml_dtd_42 perl wrapGAppsHook glibcLocales
- sassc desktop-file-utils libxslt.bin python3 asciidoc-full
- ];
- buildInputs = [
- systemd
- gsettings-desktop-schemas gnome-keyring glib gcr json-glib accountsservice
- libsecret libsoup polkit gdk-pixbuf librsvg
- networkmanager libstartup_notification telepathy-glib
- libXtst gjs mutter libpulseaudio evolution-data-server
- libical gtk3 gdm libcanberra-gtk3 geoclue2
- adwaita-icon-theme gnome-bluetooth
- gnome-clocks # schemas needed
- at-spi2-core upower ibus gnome-desktop telepathy-logger gnome-settings-daemon
- gobject-introspection
- gnome-autoar
-
- # recording
- gst_all_1.gstreamer
- gst_all_1.gst-plugins-base
- gst_all_1.gst-plugins-good
-
- # not declared at build time, but typelib is needed at runtime
- libgweather libnma
-
- # for gnome-extension tool
- bash-completion
- ];
-
patches = [
# Hardcode paths to various dependencies so that they can be found at runtime.
(substituteAll {
@@ -86,6 +107,77 @@ in stdenv.mkDerivation rec {
})
];
+ nativeBuildInputs = [
+ meson
+ ninja
+ pkg-config
+ gettext
+ docbook-xsl-nons
+ docbook_xml_dtd_412
+ docbook_xml_dtd_42
+ docbook_xml_dtd_43
+ gtk-doc
+ perl
+ wrapGAppsHook
+ sassc
+ desktop-file-utils
+ libxslt.bin
+ python3
+ asciidoc-full
+ ];
+
+ buildInputs = [
+ systemd
+ gsettings-desktop-schemas
+ gnome-keyring
+ glib
+ gcr
+ accountsservice
+ libsecret
+ polkit
+ gdk-pixbuf
+ librsvg
+ networkmanager
+ libstartup_notification
+ telepathy-glib
+ gjs
+ mutter
+ libpulseaudio
+ evolution-data-server
+ libical
+ gtk3
+ gdm
+ geoclue2
+ adwaita-icon-theme
+ gnome-bluetooth
+ gnome-clocks # schemas needed
+ at-spi2-core
+ upower
+ ibus
+ gnome-desktop
+ telepathy-logger
+ gnome-settings-daemon
+ gobject-introspection
+
+ # recording
+ gst_all_1.gstreamer
+ gst_all_1.gst-plugins-base
+ gst_all_1.gst-plugins-good
+
+ # not declared at build time, but typelib is needed at runtime
+ libgweather
+ libnma
+
+ # for gnome-extension tool
+ bash-completion
+ gnome-autoar
+ json-glib
+ ];
+
+ mesonFlags = [
+ "-Dgtk_doc=true"
+ ];
+
postPatch = ''
patchShebangs src/data-to-c.pl
chmod +x meson/postinstall.py
diff --git a/pkgs/desktops/gnome-3/core/mutter/default.nix b/pkgs/desktops/gnome-3/core/mutter/default.nix
index f2cfa6bf435..071245ae1ea 100644
--- a/pkgs/desktops/gnome-3/core/mutter/default.nix
+++ b/pkgs/desktops/gnome-3/core/mutter/default.nix
@@ -7,14 +7,12 @@
, gnome3
, gettext
, gobject-introspection
-, upower
, cairo
, pango
-, cogl
, json-glib
, libstartup_notification
, zenity
-, libcanberra-gtk3
+, libcanberra
, ninja
, xkeyboard_config
, libxkbfile
@@ -25,7 +23,6 @@
, glib
, gtk3
, gnome-desktop
-, geocode-glib
, pipewire
, libgudev
, libwacom
@@ -54,6 +51,17 @@ let self = stdenv.mkDerivation rec {
sha256 = "0p3jglw6f2h67kwk89qz1rz23y25lip8m2mp2xshf2vrg4a930as";
};
+ patches = [
+ # Drop inheritable cap_sys_nice, to prevent the ambient set from leaking
+ # from mutter/gnome-shell, see https://github.com/NixOS/nixpkgs/issues/71381
+ ./drop-inheritable.patch
+
+ (substituteAll {
+ src = ./fix-paths.patch;
+ inherit zenity;
+ })
+ ];
+
mesonFlags = [
"-Degl_device=true"
"-Dinstalled_tests=false" # TODO: enable these
@@ -86,16 +94,14 @@ let self = stdenv.mkDerivation rec {
buildInputs = [
cairo
- cogl
egl-wayland
- geocode-glib
glib
gnome-desktop
gnome-settings-daemon
gobject-introspection
gsettings-desktop-schemas
gtk3
- libcanberra-gtk3
+ libcanberra
libgudev
libinput
libstartup_notification
@@ -105,25 +111,11 @@ let self = stdenv.mkDerivation rec {
pango
pipewire
sysprof
- upower
xkeyboard_config
xwayland
- zenity
- zenity
wayland-protocols
];
- patches = [
- # Drop inheritable cap_sys_nice, to prevent the ambient set from leaking
- # from mutter/gnome-shell, see https://github.com/NixOS/nixpkgs/issues/71381
- ./drop-inheritable.patch
-
- (substituteAll {
- src = ./fix-paths.patch;
- inherit zenity;
- })
- ];
-
postPatch = ''
patchShebangs src/backends/native/gen-default-modes.py
'';
diff --git a/pkgs/desktops/gnome-3/extensions/appindicator/default.nix b/pkgs/desktops/gnome-3/extensions/appindicator/default.nix
index da0d73364a9..5f34d079114 100644
--- a/pkgs/desktops/gnome-3/extensions/appindicator/default.nix
+++ b/pkgs/desktops/gnome-3/extensions/appindicator/default.nix
@@ -18,10 +18,12 @@ stdenv.mkDerivation rec {
uuid = "appindicatorsupport@rgcjonas.gmail.com";
installPhase = ''
+ runHook preInstall
mkdir -p $out/share/gnome-shell/extensions/${uuid}
cp *.js $out/share/gnome-shell/extensions/${uuid}
cp -r interfaces-xml $out/share/gnome-shell/extensions/${uuid}
cp metadata.json $out/share/gnome-shell/extensions/${uuid}
+ runHook postInstall
'';
meta = with stdenv.lib; {
diff --git a/pkgs/desktops/gnome-3/extensions/battery-status/default.nix b/pkgs/desktops/gnome-3/extensions/battery-status/default.nix
index 44b3f04f79d..c6518201da0 100644
--- a/pkgs/desktops/gnome-3/extensions/battery-status/default.nix
+++ b/pkgs/desktops/gnome-3/extensions/battery-status/default.nix
@@ -14,8 +14,10 @@ stdenv.mkDerivation rec {
uuid = "battery_status@milliburn.github.com";
installPhase = ''
+ runHook preInstall
mkdir -p $out/share/gnome-shell/extensions
cp -r ${uuid} $out/share/gnome-shell/extensions/
+ runHook postInstall
'';
meta = with stdenv.lib; {
diff --git a/pkgs/desktops/gnome-3/extensions/caffeine/default.nix b/pkgs/desktops/gnome-3/extensions/caffeine/default.nix
index 608d44a2892..770c32f21e7 100644
--- a/pkgs/desktops/gnome-3/extensions/caffeine/default.nix
+++ b/pkgs/desktops/gnome-3/extensions/caffeine/default.nix
@@ -18,13 +18,17 @@ stdenv.mkDerivation rec {
];
buildPhase = ''
+ runHook preBuild
${bash}/bin/bash ./update-locale.sh
glib-compile-schemas --strict --targetdir=caffeine@patapon.info/schemas/ caffeine@patapon.info/schemas
+ runHook postBuild
'';
installPhase = ''
+ runHook preInstall
mkdir -p $out/share/gnome-shell/extensions
cp -r ${uuid} $out/share/gnome-shell/extensions
+ runHook postInstall
'';
meta = with stdenv.lib; {
diff --git a/pkgs/desktops/gnome-3/extensions/clipboard-indicator/default.nix b/pkgs/desktops/gnome-3/extensions/clipboard-indicator/default.nix
index 640903bfe4e..3e6903c5642 100644
--- a/pkgs/desktops/gnome-3/extensions/clipboard-indicator/default.nix
+++ b/pkgs/desktops/gnome-3/extensions/clipboard-indicator/default.nix
@@ -14,8 +14,10 @@ stdenv.mkDerivation rec {
uuid = "clipboard-indicator@tudmotu.com";
installPhase = ''
+ runHook preInstall
mkdir -p $out/share/gnome-shell/extensions/${uuid}
cp -r * $out/share/gnome-shell/extensions/${uuid}
+ runHook postInstall
'';
meta = with stdenv.lib; {
diff --git a/pkgs/desktops/gnome-3/extensions/drop-down-terminal/default.nix b/pkgs/desktops/gnome-3/extensions/drop-down-terminal/default.nix
index fb713201594..3c6d181178b 100644
--- a/pkgs/desktops/gnome-3/extensions/drop-down-terminal/default.nix
+++ b/pkgs/desktops/gnome-3/extensions/drop-down-terminal/default.nix
@@ -21,8 +21,10 @@ stdenv.mkDerivation rec {
];
installPhase = ''
+ runHook preInstall
mkdir -p $out/share/gnome-shell/extensions
cp -r ${uuid} $out/share/gnome-shell/extensions/
+ runHook postInstall
'';
meta = with stdenv.lib; {
diff --git a/pkgs/desktops/gnome-3/extensions/emoji-selector/default.nix b/pkgs/desktops/gnome-3/extensions/emoji-selector/default.nix
new file mode 100644
index 00000000000..c4db4702193
--- /dev/null
+++ b/pkgs/desktops/gnome-3/extensions/emoji-selector/default.nix
@@ -0,0 +1,38 @@
+{ stdenv, fetchFromGitHub, glib, gettext }:
+
+stdenv.mkDerivation rec {
+ pname = "gnome-shell-emoji-selector";
+ version = "19";
+
+ src = fetchFromGitHub {
+ owner = "maoschanz";
+ repo = "emoji-selector-for-gnome";
+ rev = version;
+ sha256 = "0x60pg5nl5d73av494dg29hyfml7fbf2d03wm053vx1q8a3pxbyb";
+ };
+
+ uuid = "emoji-selector@maestroschan.fr";
+
+ nativeBuildInputs = [ glib ];
+
+ buildPhase = ''
+ runHook preBuild
+ glib-compile-schemas ./${uuid}/schemas
+ runHook postBuild
+ '';
+
+ installPhase = ''
+ runHook preInstall
+ mkdir -p $out/share/gnome-shell/extensions
+ cp -r ${uuid} $out/share/gnome-shell/extensions
+ runHook postInstall
+ '';
+
+ meta = with stdenv.lib; {
+ description =
+ "GNOME Shell extension providing a searchable popup menu displaying most emojis";
+ license = licenses.gpl3Plus;
+ maintainers = with maintainers; [ rawkode ];
+ homepage = "https://github.com/maoschanz/emoji-selector-for-gnome";
+ };
+}
diff --git a/pkgs/desktops/gnome-3/extensions/icon-hider/default.nix b/pkgs/desktops/gnome-3/extensions/icon-hider/default.nix
index efaef03f3b1..844c8ad84d7 100644
--- a/pkgs/desktops/gnome-3/extensions/icon-hider/default.nix
+++ b/pkgs/desktops/gnome-3/extensions/icon-hider/default.nix
@@ -14,8 +14,10 @@ stdenv.mkDerivation rec {
uuid = "icon-hider@kalnitsky.org";
installPhase = ''
+ runHook preInstall
mkdir -p $out/share/gnome-shell/extensions
cp -r ${uuid} $out/share/gnome-shell/extensions
+ runHook postInstall
'';
meta = with stdenv.lib; {
diff --git a/pkgs/desktops/gnome-3/extensions/impatience/default.nix b/pkgs/desktops/gnome-3/extensions/impatience/default.nix
index 230498f5d7b..073a4301cc5 100644
--- a/pkgs/desktops/gnome-3/extensions/impatience/default.nix
+++ b/pkgs/desktops/gnome-3/extensions/impatience/default.nix
@@ -16,12 +16,16 @@ stdenv.mkDerivation rec {
];
buildPhase = ''
+ runHook preBuild
make schemas
+ runHook postBuild
'';
installPhase = ''
+ runHook preInstall
mkdir -p $out/share/gnome-shell/extensions
cp -r impatience $out/share/gnome-shell/extensions/${uuid}
+ runHook postInstall
'';
uuid = "impatience@gfxmonk.net";
diff --git a/pkgs/desktops/gnome-3/extensions/mpris-indicator-button/default.nix b/pkgs/desktops/gnome-3/extensions/mpris-indicator-button/default.nix
index fe3a079c01b..0c1d98b2fae 100644
--- a/pkgs/desktops/gnome-3/extensions/mpris-indicator-button/default.nix
+++ b/pkgs/desktops/gnome-3/extensions/mpris-indicator-button/default.nix
@@ -17,8 +17,10 @@ stdenv.mkDerivation rec {
uuid = "mprisindicatorbutton@JasonLG1979.github.io";
installPhase = ''
+ runHook preInstall
mkdir -p $out/share/gnome-shell/extensions
cp -r ${uuid} $out/share/gnome-shell/extensions
+ runHook postInstall
'';
meta = with stdenv.lib; {
diff --git a/pkgs/desktops/gnome-3/extensions/night-theme-switcher/default.nix b/pkgs/desktops/gnome-3/extensions/night-theme-switcher/default.nix
index be6c1916ab4..71b53094674 100644
--- a/pkgs/desktops/gnome-3/extensions/night-theme-switcher/default.nix
+++ b/pkgs/desktops/gnome-3/extensions/night-theme-switcher/default.nix
@@ -18,8 +18,10 @@ stdenv.mkDerivation rec {
uuid = "nightthemeswitcher@romainvigier.fr";
installPhase = ''
+ runHook preInstall
mkdir -p $out/share/gnome-shell/extensions/
cp -r src/ $out/share/gnome-shell/extensions/${uuid}
+ runHook postInstall
'';
meta = with stdenv.lib; {
diff --git a/pkgs/desktops/gnome-3/extensions/paperwm/default.nix b/pkgs/desktops/gnome-3/extensions/paperwm/default.nix
index 7a79b691a4d..f5ffac9b2f3 100644
--- a/pkgs/desktops/gnome-3/extensions/paperwm/default.nix
+++ b/pkgs/desktops/gnome-3/extensions/paperwm/default.nix
@@ -16,8 +16,10 @@ stdenv.mkDerivation rec {
dontBuild = true;
installPhase = ''
+ runHook preInstall
mkdir -p $out/share/gnome-shell/extensions/${uuid}
cp -r . $out/share/gnome-shell/extensions/${uuid}
+ runHook postInstall
'';
meta = with stdenv.lib; {
diff --git a/pkgs/desktops/gnome-3/extensions/pidgin-im-integration/default.nix b/pkgs/desktops/gnome-3/extensions/pidgin-im-integration/default.nix
index e13941ee045..dfcfd63b59d 100644
--- a/pkgs/desktops/gnome-3/extensions/pidgin-im-integration/default.nix
+++ b/pkgs/desktops/gnome-3/extensions/pidgin-im-integration/default.nix
@@ -15,10 +15,12 @@ stdenv.mkDerivation rec {
dontBuild = true;
installPhase = ''
+ runHook preInstall
share_dir="$prefix/share"
extensions_dir="$share_dir/gnome-shell/extensions/pidgin@muffinmad"
mkdir -p "$extensions_dir"
mv *.js metadata.json dbus.xml schemas locale "$extensions_dir"
+ runHook postInstall
'';
uuid = "pidgin@muffinmad";
diff --git a/pkgs/desktops/gnome-3/extensions/remove-dropdown-arrows/default.nix b/pkgs/desktops/gnome-3/extensions/remove-dropdown-arrows/default.nix
index acb0e362429..6d6a04a386c 100644
--- a/pkgs/desktops/gnome-3/extensions/remove-dropdown-arrows/default.nix
+++ b/pkgs/desktops/gnome-3/extensions/remove-dropdown-arrows/default.nix
@@ -18,9 +18,11 @@ stdenv.mkDerivation rec {
uuid = "remove-dropdown-arrows@mpdeimos.com";
installPhase = ''
+ runHook preInstall
mkdir -p $out/share/gnome-shell/extensions/${uuid}
cp extension.js $out/share/gnome-shell/extensions/${uuid}
cp metadata.json $out/share/gnome-shell/extensions/${uuid}
+ runHook postInstall
'';
meta = with stdenv.lib; {
diff --git a/pkgs/desktops/gnome-3/extensions/sound-output-device-chooser/default.nix b/pkgs/desktops/gnome-3/extensions/sound-output-device-chooser/default.nix
index 6273a83dfca..870ac448bb4 100644
--- a/pkgs/desktops/gnome-3/extensions/sound-output-device-chooser/default.nix
+++ b/pkgs/desktops/gnome-3/extensions/sound-output-device-chooser/default.nix
@@ -28,8 +28,10 @@ stdenv.mkDerivation rec {
uuid = "sound-output-device-chooser@kgshank.net";
installPhase = ''
+ runHook preInstall
mkdir -p $out/share/gnome-shell/extensions
cp -r ${uuid} $out/share/gnome-shell/extensions
+ runHook postInstall
'';
meta = with stdenv.lib; {
diff --git a/pkgs/desktops/gnome-3/extensions/system-monitor/default.nix b/pkgs/desktops/gnome-3/extensions/system-monitor/default.nix
index 1bc35312593..1b1da50b7fa 100644
--- a/pkgs/desktops/gnome-3/extensions/system-monitor/default.nix
+++ b/pkgs/desktops/gnome-3/extensions/system-monitor/default.nix
@@ -27,12 +27,16 @@ stdenv.mkDerivation rec {
];
buildPhase = ''
+ runHook preBuild
glib-compile-schemas --targetdir=${uuid}/schemas ${uuid}/schemas
+ runHook postBuild
'';
installPhase = ''
+ runHook preInstall
mkdir -p $out/share/gnome-shell/extensions
cp -r ${uuid} $out/share/gnome-shell/extensions
+ runHook postInstall
'';
uuid = "system-monitor@paradoxxx.zero.gmail.com";
diff --git a/pkgs/desktops/gnome-3/extensions/tilingnome/default.nix b/pkgs/desktops/gnome-3/extensions/tilingnome/default.nix
index 60ca1dcbef3..57f5a9377ba 100644
--- a/pkgs/desktops/gnome-3/extensions/tilingnome/default.nix
+++ b/pkgs/desktops/gnome-3/extensions/tilingnome/default.nix
@@ -14,12 +14,16 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ glib ];
buildPhase = ''
+ runHook preBuild
glib-compile-schemas .
+ runHook postBuild
'';
installPhase = ''
+ runHook preInstall
mkdir -p $out/share/gnome-shell/extensions/${uuid}
cp -r * $out/share/gnome-shell/extensions/${uuid}/
+ runHook postInstall
'';
uuid = "tilingnome@rliang.github.com";
diff --git a/pkgs/desktops/gnome-3/extensions/timepp/default.nix b/pkgs/desktops/gnome-3/extensions/timepp/default.nix
index 6ac9a4a0331..f9fc68b548a 100644
--- a/pkgs/desktops/gnome-3/extensions/timepp/default.nix
+++ b/pkgs/desktops/gnome-3/extensions/timepp/default.nix
@@ -13,8 +13,10 @@ stdenv.mkDerivation rec {
uuid = "timepp@zagortenay333";
installPhase = ''
+ runHook preInstall
mkdir -p $out/share/gnome-shell/extensions/${uuid}
cp -r . $out/share/gnome-shell/extensions/${uuid}
+ runHook postInstall
'';
meta = with stdenv.lib; {
diff --git a/pkgs/desktops/gnome-3/extensions/window-corner-preview/default.nix b/pkgs/desktops/gnome-3/extensions/window-corner-preview/default.nix
index 44402fc6e13..9c5d5266ce2 100644
--- a/pkgs/desktops/gnome-3/extensions/window-corner-preview/default.nix
+++ b/pkgs/desktops/gnome-3/extensions/window-corner-preview/default.nix
@@ -15,8 +15,10 @@ stdenv.mkDerivation rec {
uuid = "window-corner-preview@fabiomereu.it";
installPhase = ''
+ runHook preInstall
mkdir -p $out/share/gnome-shell/extensions
cp -r ${uuid} $out/share/gnome-shell/extensions
+ runHook postInstall
'';
meta = with stdenv.lib; {
diff --git a/pkgs/desktops/gnome-3/extensions/window-is-ready-remover/default.nix b/pkgs/desktops/gnome-3/extensions/window-is-ready-remover/default.nix
index 15871e661c1..45ac75baf8b 100644
--- a/pkgs/desktops/gnome-3/extensions/window-is-ready-remover/default.nix
+++ b/pkgs/desktops/gnome-3/extensions/window-is-ready-remover/default.nix
@@ -14,8 +14,10 @@ stdenv.mkDerivation rec {
uuid = "windowIsReady_Remover@nunofarruca@gmail.com";
installPhase = ''
+ runHook preInstall
mkdir -p $out/share/gnome-shell/extensions/
cp -r ${uuid} $out/share/gnome-shell/extensions/${uuid}
+ runHook postInstall
'';
meta = with stdenv.lib; {
diff --git a/pkgs/desktops/gnome-3/extensions/workspace-matrix/default.nix b/pkgs/desktops/gnome-3/extensions/workspace-matrix/default.nix
index 528f4e9f892..5838999fcba 100644
--- a/pkgs/desktops/gnome-3/extensions/workspace-matrix/default.nix
+++ b/pkgs/desktops/gnome-3/extensions/workspace-matrix/default.nix
@@ -21,8 +21,10 @@ stdenv.mkDerivation rec {
buildFlags = "schemas";
installPhase = ''
+ runHook preInstall
mkdir -p $out/share/gnome-shell/extensions
cp -r ${uuid} $out/share/gnome-shell/extensions
+ runHook postInstall
'';
meta = with stdenv.lib; {
diff --git a/pkgs/development/compilers/go/1.13.nix b/pkgs/development/compilers/go/1.13.nix
index a158e1d4d3b..e082628aaa2 100644
--- a/pkgs/development/compilers/go/1.13.nix
+++ b/pkgs/development/compilers/go/1.13.nix
@@ -30,11 +30,11 @@ in
stdenv.mkDerivation rec {
pname = "go";
- version = "1.13.12";
+ version = "1.13.14";
src = fetchurl {
url = "https://dl.google.com/go/go${version}.src.tar.gz";
- sha256 = "0d5s5rqyzp6ykj4x1dz8infcsmj3gy8djnf63ji971ypwi6jrfhp";
+ sha256 = "01mbqzn1hj8idbyn2f9gghvirfnw348dcf7pjs3ymschfblk6wqr";
};
# perl is used for testing go vet
diff --git a/pkgs/development/compilers/go/1.14.nix b/pkgs/development/compilers/go/1.14.nix
index 6ddd61253a4..d9fc67cf46e 100644
--- a/pkgs/development/compilers/go/1.14.nix
+++ b/pkgs/development/compilers/go/1.14.nix
@@ -31,11 +31,11 @@ in
stdenv.mkDerivation rec {
pname = "go";
- version = "1.14.4";
+ version = "1.14.6";
src = fetchurl {
url = "https://dl.google.com/go/go${version}.src.tar.gz";
- sha256 = "1105qk2l4kfy1ki9n9gh8j4gfqrfgfwapa1fp38hih9aphxsy4bh";
+ sha256 = "02acr52bxfjlr3m11576gdwn8hjv1pr2pffcis913m0m31w9vz3k";
};
# perl is used for testing go vet
diff --git a/pkgs/development/compilers/go/1.15.nix b/pkgs/development/compilers/go/1.15.nix
index 69becebe770..cd6d5faaabb 100644
--- a/pkgs/development/compilers/go/1.15.nix
+++ b/pkgs/development/compilers/go/1.15.nix
@@ -196,8 +196,11 @@ stdenv.mkDerivation rec {
export PATH=$(pwd)/bin:$PATH
+ ${optionalString (stdenv.buildPlatform != stdenv.targetPlatform) ''
# Independent from host/target, CC should produce code for the building system.
+ # We only set it when cross-compiling.
export CC=${buildPackages.stdenv.cc}/bin/cc
+ ''}
ulimit -a
'';
diff --git a/pkgs/development/compilers/ocaml/4.11.nix b/pkgs/development/compilers/ocaml/4.11.nix
index 410e4ee713e..9efeab499ea 100644
--- a/pkgs/development/compilers/ocaml/4.11.nix
+++ b/pkgs/development/compilers/ocaml/4.11.nix
@@ -1,6 +1,6 @@
import ./generic.nix {
major_version = "4";
minor_version = "11";
- patch_version = "0+beta1";
- sha256 = "1xhkwprbnd3wp6bi3k74f42l1mff1ngn7gl4rgad9dk4ly0yzfdr";
+ patch_version = "0+beta2";
+ sha256 = "1n39qfwvpwlhp9m73zi9hrk9ny9g6spy9apc36n2ydpf5dn7pg75";
}
diff --git a/pkgs/development/compilers/rust/1_45.nix b/pkgs/development/compilers/rust/1_45.nix
new file mode 100644
index 00000000000..c72292679e5
--- /dev/null
+++ b/pkgs/development/compilers/rust/1_45.nix
@@ -0,0 +1,42 @@
+# New rust versions should first go to staging.
+# Things to check after updating:
+# 1. Rustc should produce rust binaries on x86_64-linux, aarch64-linux and x86_64-darwin:
+# i.e. nix-shell -p fd or @GrahamcOfBorg build fd on github
+# This testing can be also done by other volunteers as part of the pull
+# request review, in case platforms cannot be covered.
+# 2. The LLVM version used for building should match with rust upstream.
+# 3. Firefox and Thunderbird should still build on x86_64-linux.
+
+{ stdenv, lib
+, buildPackages
+, newScope, callPackage
+, CoreFoundation, Security
+, llvmPackages_5
+, pkgsBuildTarget, pkgsBuildBuild
+} @ args:
+
+import ./default.nix {
+ rustcVersion = "1.45.0";
+ rustcSha256 = "0z6dh0yd3fcm3qh960wi4s6fa6pxz9mh77psycsqfkkx5kqra15s";
+
+ # Note: the version MUST be one version prior to the version we're
+ # building
+ bootstrapVersion = "1.44.1";
+
+ # fetch hashes by running `print-hashes.sh 1.45.0`
+ bootstrapHashes = {
+ i686-unknown-linux-gnu = "e69689b0a1b66599cf83e7dd54f839419007e44376195e93e301a3175da3d854";
+ x86_64-unknown-linux-gnu = "a41df89a461a580536aeb42755e43037556fba2e527dd13a1e1bb0749de28202";
+ arm-unknown-linux-gnueabihf = "ea18ccdfb62a153c2d43d013fdec56993cc9267f1cdc6f3834df8a2b9b468f08";
+ armv7-unknown-linux-gnueabihf = "d44294732cf268ea84908f1135f574ab9489132a332eaa9d5bda547374b15d54";
+ aarch64-unknown-linux-gnu = "a2d74ebeec0b6778026b6c37814cdc91d14db3b0d8b6d69d036216f4d9cf7e49";
+ x86_64-apple-darwin = "a5464e7bcbce9647607904a4afa8362382f1fc55d39e7bbaf4483ac00eb5d56a";
+ };
+
+ selectRustPackage = pkgs: pkgs.rust_1_45;
+
+ rustcPatches = [
+ ];
+}
+
+(builtins.removeAttrs args [ "fetchpatch" ])
diff --git a/pkgs/development/compilers/vala/default.nix b/pkgs/development/compilers/vala/default.nix
index 6afc14688ae..3b4cd1a5a79 100644
--- a/pkgs/development/compilers/vala/default.nix
+++ b/pkgs/development/compilers/vala/default.nix
@@ -123,8 +123,8 @@ in rec {
};
vala_0_48 = generic {
- version = "0.48.1";
- sha256 = "1m3igqlryj1161ymksy7666v7mp9l6gy0yfi4cvgd3wh1963jmzb";
+ version = "0.48.7";
+ sha256 = "0lswkb7gj0chas9n3l3dbrm9l71hs77adhvm2v600id2ipi37pi8";
};
vala = vala_0_48;
diff --git a/pkgs/development/coq-modules/tlc/default.nix b/pkgs/development/coq-modules/tlc/default.nix
index 8a10dc388db..816b2205024 100644
--- a/pkgs/development/coq-modules/tlc/default.nix
+++ b/pkgs/development/coq-modules/tlc/default.nix
@@ -1,13 +1,27 @@
-{ stdenv, fetchurl, coq }:
+{ stdenv, fetchurl, fetchFromGitHub, coq }:
-stdenv.mkDerivation rec {
- version = "20181116";
- name = "coq${coq.coq-version}-tlc-${version}";
+let params =
+ if stdenv.lib.versionAtLeast coq.coq-version "8.10"
+ then rec {
+ version = "20200328";
+ src = fetchFromGitHub {
+ owner = "charguer";
+ repo = "tlc";
+ rev = version;
+ sha256 = "16vzild9gni8zhgb3qhmka47f8zagdh03k6nssif7drpim8233lx";
+ };
+ } else rec {
+ version = "20181116";
+ src = fetchurl {
+ url = "http://tlc.gforge.inria.fr/releases/tlc-${version}.tar.gz";
+ sha256 = "0iv6f6zmrv2lhq3xq57ipmw856ahsql754776ymv5wjm88ld63nm";
+ };
+ }
+; in
- src = fetchurl {
- url = "http://tlc.gforge.inria.fr/releases/tlc-${version}.tar.gz";
- sha256 = "0iv6f6zmrv2lhq3xq57ipmw856ahsql754776ymv5wjm88ld63nm";
- };
+stdenv.mkDerivation {
+ inherit (params) version src;
+ pname = "coq${coq.coq-version}-tlc";
buildInputs = [ coq ];
@@ -22,6 +36,6 @@ stdenv.mkDerivation rec {
};
passthru = {
- compatibleCoqVersions = stdenv.lib.flip builtins.elem [ "8.6" "8.7" "8.8" "8.9" "8.10" ];
+ compatibleCoqVersions = stdenv.lib.flip builtins.elem [ "8.6" "8.7" "8.8" "8.9" "8.10" "8.11" "8.12" ];
};
}
diff --git a/pkgs/development/interpreters/python/default.nix b/pkgs/development/interpreters/python/default.nix
index b05f989714a..6e9bbb45e4b 100644
--- a/pkgs/development/interpreters/python/default.nix
+++ b/pkgs/development/interpreters/python/default.nix
@@ -81,10 +81,10 @@ in {
sourceVersion = {
major = "3";
minor = "6";
- patch = "10";
+ patch = "11";
suffix = "";
};
- sha256 = "1pj0mz1xl27khi250p29c0y99vxg662js8zp71aprkf8i8wkr0qa";
+ sha256 = "dB69y8Tjk3pf8jUX3UVev31UPqn+9vXPb0blddbE/aQ=";
inherit (darwin) configd;
inherit passthruFun;
};
@@ -94,10 +94,10 @@ in {
sourceVersion = {
major = "3";
minor = "7";
- patch = "7";
+ patch = "8";
suffix = "";
};
- sha256 = "0di1y2cna823qgk6sd2lvpjdm3g2qikdd50i2bjd330dpzqsk806";
+ sha256 = "Q6VDQEs2PwA3+J34R48Z2y28DW8//uMQvCmX+nGFSmM=";
inherit (darwin) configd;
inherit passthruFun;
};
diff --git a/pkgs/development/interpreters/ruby/default.nix b/pkgs/development/interpreters/ruby/default.nix
index 1756c13b53d..dbfea17437d 100644
--- a/pkgs/development/interpreters/ruby/default.nix
+++ b/pkgs/development/interpreters/ruby/default.nix
@@ -116,7 +116,7 @@ let
# https://github.com/ruby/ruby/commit/97a5af62a318fcd93a4e5e4428d576c0280ddbae
buildFlags = lib.optionals atLeast27 [ "REVISION_LATEST=0" ];
- configureFlags = ["--enable-shared" "--enable-pthread" "--with-soname=ruby_${tag}"]
+ configureFlags = ["--enable-shared" "--enable-pthread" "--with-soname=ruby-${version}"]
++ op useRailsExpress "--with-baseruby=${baseruby}/bin/ruby"
++ op (!docSupport) "--disable-install-doc"
++ ops stdenv.isDarwin [
diff --git a/pkgs/development/libraries/arrow-cpp/default.nix b/pkgs/development/libraries/arrow-cpp/default.nix
index d9bf6752da0..a989833249c 100644
--- a/pkgs/development/libraries/arrow-cpp/default.nix
+++ b/pkgs/development/libraries/arrow-cpp/default.nix
@@ -96,7 +96,7 @@ in stdenv.mkDerivation rec {
"-DARROW_WITH_SNAPPY=ON"
"-DARROW_WITH_ZLIB=ON"
"-DARROW_WITH_ZSTD=ON"
- "-DARROW_ZSTD_USE_SHARED=OFF" # TODO use shared zstd once #91984 hits the master
+ "-DARROW_ZSTD_USE_SHARED=${if enableShared then "ON" else "OFF"}"
# Parquet options:
"-DARROW_PARQUET=ON"
"-DPARQUET_BUILD_EXECUTABLES=ON"
diff --git a/pkgs/development/libraries/dbus/default.nix b/pkgs/development/libraries/dbus/default.nix
index 049623d3d91..3598d8d938e 100644
--- a/pkgs/development/libraries/dbus/default.nix
+++ b/pkgs/development/libraries/dbus/default.nix
@@ -20,11 +20,11 @@ assert enableSystemd -> systemd != null;
stdenv.mkDerivation rec {
pname = "dbus";
- version = "1.12.18";
+ version = "1.12.20";
src = fetchurl {
url = "https://dbus.freedesktop.org/releases/dbus/dbus-${version}.tar.gz";
- sha256 = "01jkm6shm76bl3cflmnn37dv6nkph0w1akbqpklyac02hiq4vkv4";
+ sha256 = "1zp5gpx61v1cpqf2zwb1cidhp9xylvw49d3zydkxqk6b1qa20xpp";
};
patches = lib.optional stdenv.isSunOS ./implement-getgrouplist.patch;
diff --git a/pkgs/development/libraries/ffmpeg/2.8.nix b/pkgs/development/libraries/ffmpeg/2.8.nix
index 5d1f93a9e04..309cd2b3b35 100644
--- a/pkgs/development/libraries/ffmpeg/2.8.nix
+++ b/pkgs/development/libraries/ffmpeg/2.8.nix
@@ -1,7 +1,7 @@
{ callPackage, ... } @ args:
callPackage ./generic.nix (rec {
- version = "${branch}.16";
+ version = "${branch}.17";
branch = "2.8";
- sha256 = "0lfmfd6rhywis9rblkxv33rpwfga9xv261fq4cn3pkx1izih7ybk";
+ sha256 = "05bnhvs2f82aq95z1wd3wr42sljdfq4kiyzqwhpji983mndx14vl";
} // args)
diff --git a/pkgs/development/libraries/ffmpeg/3.4.nix b/pkgs/development/libraries/ffmpeg/3.4.nix
index 6c16b55dfe8..629fdba5673 100644
--- a/pkgs/development/libraries/ffmpeg/3.4.nix
+++ b/pkgs/development/libraries/ffmpeg/3.4.nix
@@ -6,7 +6,7 @@
callPackage ./generic.nix (rec {
version = branch;
- branch = "3.4.7";
- sha256 = "0hj91gjps92f4w3yyqss89yrs6s75574hbj5gz9g5affd6294yhc";
+ branch = "3.4.8";
+ sha256 = "1d0r4yja2dkkyhdwx1migq46gsrcbajiv66263a5sq5bfr9dqkch";
darwinFrameworks = [ Cocoa CoreMedia ];
} // args)
diff --git a/pkgs/development/libraries/ffmpeg/4.nix b/pkgs/development/libraries/ffmpeg/4.nix
index de1bfff6f91..7e3941d3f37 100644
--- a/pkgs/development/libraries/ffmpeg/4.nix
+++ b/pkgs/development/libraries/ffmpeg/4.nix
@@ -5,8 +5,8 @@
}@args:
callPackage ./generic.nix (rec {
- version = "4.3";
+ version = "4.3.1";
branch = "4.3";
- sha256 = "1qnnhd2b0g5sg72pclxs3i8sxzz0raky69k7w9cmpba9zh973s57";
+ sha256 = "1nghcpm2r9ir2h6xpqfn9381jq6aiwlkwlnyplxywvkbjiisr97l";
darwinFrameworks = [ Cocoa CoreMedia VideoToolbox ];
} // args)
diff --git a/pkgs/development/libraries/fontconfig/config-compat.patch b/pkgs/development/libraries/fontconfig/config-compat.patch
index e86f08fb553..ddf7bc78180 100644
--- a/pkgs/development/libraries/fontconfig/config-compat.patch
+++ b/pkgs/development/libraries/fontconfig/config-compat.patch
@@ -1,17 +1,22 @@
-commit 05c6adf8104b4321d3a3716a7b9feb6bf223ed0c (HEAD, nixpkgs)
-Author: Vladimír Čunát
-Date: Tue Nov 4 12:24:25 2014 +0100
+From 2ff9b53ce755be183ef9274f7dd3f9ac537173f6 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?=
+Date: Tue, 4 Nov 2014 12:24:25 +0100
+Subject: [PATCH] add check for /etc/fonts/@configVersion@/fonts.conf
- add check for /etc/fonts/@configVersion@/fonts.conf
-
- It's checked between FONTCONFIG_FILE and the usual /etc/fonts/fonts.conf.
- Also, hardcode /etc/fonts/fonts.conf to prevent accidental override.
+It's checked between FONTCONFIG_FILE and the in-package etc/fonts/fonts.conf.
+The latter is used so that on non-NixOS distributions, fontconfig works at least
+with upstream defaults, even when the global config is incompatible.
+
+Co-Authored-By: Jan Tojnar
+---
+ src/fccfg.c | 7 ++++++-
+ 1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/fccfg.c b/src/fccfg.c
-index 6377fd7..e9eb10a 100644
+index 342c996..98a1324 100644
--- a/src/fccfg.c
+++ b/src/fccfg.c
-@@ -2070,8 +2070,13 @@ FcConfigFilename (const FcChar8 *url)
+@@ -2391,8 +2391,13 @@ FcConfigGetFilename (FcConfig *config,
if (!url || !*url)
{
url = (FcChar8 *) getenv ("FONTCONFIG_FILE");
@@ -22,7 +27,10 @@ index 6377fd7..e9eb10a 100644
+ }
if (!url)
- url = (FcChar8 *) FONTCONFIG_FILE;
-+ url = (FcChar8 *) "/etc/fonts/fonts.conf";
++ url = (FcChar8 *) FONTCONFIG_PATH "/" FONTCONFIG_FILE;
}
file = 0;
+--
+2.26.2
+
diff --git a/pkgs/development/libraries/fontconfig/default.nix b/pkgs/development/libraries/fontconfig/default.nix
index 0518cb257ab..29d9e3289c1 100644
--- a/pkgs/development/libraries/fontconfig/default.nix
+++ b/pkgs/development/libraries/fontconfig/default.nix
@@ -1,12 +1,22 @@
-{ stdenv, substituteAll, fetchurl
-, pkgconfig, freetype, expat, libxslt, gperf, dejavu_fonts
+{ stdenv
+, fetchpatch
+, substituteAll
+, fetchurl
+, pkg-config
+, freetype
+, expat
+, libxslt
+, gperf
+, dejavu_fonts
+, autoreconfHook
}:
/** Font configuration scheme
- ./config-compat.patch makes fontconfig try the following root configs, in order:
- $FONTCONFIG_FILE, /etc/fonts/${configVersion}/fonts.conf, /etc/fonts/fonts.conf
+ $FONTCONFIG_FILE, /etc/fonts/${configVersion}/fonts.conf, ${fontconfig.out}/etc/fonts/fonts.conf
This is done not to override config of pre-2.11 versions (which just blow up)
- and still use *global* font configuration at both NixOS or non-NixOS.
+ and still use *global* font configuration at NixOS,
+ falling back to upstream defaults on non-NixOS.
- NixOS creates /etc/fonts/${configVersion}/fonts.conf link to $out/etc/fonts/fonts.conf,
and other modifications should go to /etc/fonts/${configVersion}/conf.d
- See ./make-fonts-conf.xsl for config details.
@@ -18,11 +28,11 @@ let
in
stdenv.mkDerivation rec {
pname = "fontconfig";
- version = "2.12.6";
+ version = "2.13.92";
src = fetchurl {
- url = "http://fontconfig.org/release/${pname}-${version}.tar.bz2";
- sha256 = "05zh65zni11kgnhg726gjbrd55swspdvhqbcnj5a5xh8gn03036g";
+ url = "http://fontconfig.org/release/${pname}-${version}.tar.xz";
+ sha256 = "0kkfsvxcvcphm9zcgsh646gix3qn4spz555wa1jp5hbq70l62vjh";
};
patches = [
@@ -31,15 +41,56 @@ stdenv.mkDerivation rec {
inherit configVersion;
})
+ # Fix fonts not being loaded when missing included configs that have ignore_missing="yes".
+ # https://bugzilla.redhat.com/show_bug.cgi?id=1744377
+ (fetchpatch {
+ url = "https://gitlab.freedesktop.org/fontconfig/fontconfig/commit/fcada522913e5e07efa6367eff87ace9f06d24c8.patch";
+ sha256 = "1jbm3vw45b3qjnqrh2545v1k8vmb29c09v2wj07jnrq3lnchbvmn";
+ })
+
+ # Register JoyPixels as an emoji font.
# https://gitlab.freedesktop.org/fontconfig/fontconfig/merge_requests/67
- ./fix-joypixels.patch
+ (fetchpatch {
+ url = "https://gitlab.freedesktop.org/fontconfig/fontconfig/commit/65087ac7ce4cc5f2109967c1380b474955dcb590.patch";
+ sha256 = "1dkrbqx1c1d8yfnx0igvv516wanw2ksrpm3fbpm2h9nw0hccwqvm";
+ })
+
+ # Fix invalid DTD in reset-dirs.
+ # https://gitlab.freedesktop.org/fontconfig/fontconfig/merge_requests/78
+ (fetchpatch {
+ url = "https://gitlab.freedesktop.org/fontconfig/fontconfig/commit/a4aa66a858f1ecd375c5efe5916398281f73f794.patch";
+ sha256 = "1j4ky8jhpllfm1lh2if34xglh2hl79nsa0xxgzxpj9sx6h4v99j5";
+ })
+
+ # Do not include its tags, they are external now and only cause warnings with old fontconfig clients.
+ # https://gitlab.freedesktop.org/fontconfig/fontconfig/merge_requests/97
+ (fetchpatch {
+ url = "https://gitlab.freedesktop.org/fontconfig/fontconfig/commit/528b17b2837c3b102acd90cc7548d07bacaccb1f.patch";
+ sha256 = "1zf4wcd2xlprh805jalfy8ja5c2qzgkh4fwd1m9d638nl9gx932m";
+ })
+ # https://gitlab.freedesktop.org/fontconfig/fontconfig/merge_requests/100
+ (fetchpatch {
+ url = "https://gitlab.freedesktop.org/fontconfig/fontconfig/commit/37c7c748740bf6f2468d59e67951902710240b34.patch";
+ sha256 = "1rz5zrfwhpn9g49wrzzrmdglj78pbvpnw8ksgsw6bxq8l5d84jfr";
+ })
];
outputs = [ "bin" "dev" "lib" "out" ]; # $out contains all the config
- propagatedBuildInputs = [ freetype ];
- nativeBuildInputs = [ pkgconfig gperf libxslt ];
- buildInputs = [ expat ];
+ nativeBuildInputs = [
+ gperf
+ libxslt
+ pkg-config
+ autoreconfHook
+ ];
+
+ buildInputs = [
+ expat
+ ];
+
+ propagatedBuildInputs = [
+ freetype
+ ];
configureFlags = [
"--with-arch=${stdenv.hostPlatform.parsed.cpu.name}"
@@ -61,11 +112,20 @@ stdenv.mkDerivation rec {
postInstall = ''
cd "$out/etc/fonts"
xsltproc --stringparam fontDirectories "${dejavu_fonts.minimal}" \
+ --stringparam fontconfig "$out" \
--stringparam fontconfigConfigVersion "${configVersion}" \
--path $out/share/xml/fontconfig \
${./make-fonts-conf.xsl} $out/etc/fonts/fonts.conf \
> fonts.conf.tmp
mv fonts.conf.tmp $out/etc/fonts/fonts.conf
+
+ # Make it easier to remove user config in NixOS module.
+ mkdir -p $out/etc/fonts/conf.d.bak
+ mv $out/etc/fonts/conf.d/50-user.conf $out/etc/fonts/conf.d.bak
+
+ # update latest 51-local.conf path to look at the latest local.conf
+ substituteInPlace $out/etc/fonts/conf.d/51-local.conf \
+ --replace local.conf /etc/fonts/${configVersion}/local.conf
'';
passthru = {
diff --git a/pkgs/development/libraries/fontconfig/fix-joypixels.patch b/pkgs/development/libraries/fontconfig/fix-joypixels.patch
deleted file mode 100644
index d5654063fe8..00000000000
--- a/pkgs/development/libraries/fontconfig/fix-joypixels.patch
+++ /dev/null
@@ -1,23 +0,0 @@
---- a/conf.d/45-generic.conf
-+++ b/conf.d/45-generic.conf
-@@ -5,6 +5,10 @@
-
-
-
-+
-+ JoyPixels
-+ emoji
-+
-
- Emoji Two
- emoji
---- a/conf.d/60-generic.conf
-+++ b/conf.d/60-generic.conf
-@@ -29,6 +29,7 @@
-
- emoji
-
-+ JoyPixels
- Emoji Two
- Emoji One
-
diff --git a/pkgs/development/libraries/fontconfig/make-fonts-conf.xsl b/pkgs/development/libraries/fontconfig/make-fonts-conf.xsl
index dddbbe9e516..6ec2e7ab515 100644
--- a/pkgs/development/libraries/fontconfig/make-fonts-conf.xsl
+++ b/pkgs/development/libraries/fontconfig/make-fonts-conf.xsl
@@ -31,6 +31,9 @@
/etc/fonts/ /conf.d
+
+ /etc/fonts/conf.d
+
fonts
@@ -40,6 +43,11 @@
~/.nix-profile/lib/X11/fonts
~/.nix-profile/share/fonts
+
+
+ /usr/share/fonts
+ /usr/local/share/fonts
+
/nix/var/nix/profiles/default/lib/X11/fonts
/nix/var/nix/profiles/default/share/fonts
diff --git a/pkgs/development/libraries/gd/default.nix b/pkgs/development/libraries/gd/default.nix
index 4a0d918cabe..3b4533890a7 100644
--- a/pkgs/development/libraries/gd/default.nix
+++ b/pkgs/development/libraries/gd/default.nix
@@ -1,5 +1,7 @@
-{ stdenv, fetchurl
-, pkgconfig
+{ stdenv, fetchurl, fetchpatch
+, autoconf
+, automake
+, pkg-config
, zlib
, libpng
, libjpeg ? null
@@ -20,11 +22,24 @@ stdenv.mkDerivation rec {
};
hardeningDisable = [ "format" ];
+ patches = [
+ # Fixes an issue where some other packages would fail to build
+ # their documentation with an error like:
+ # "Error: Problem doing text layout"
+ #
+ # Can be removed if Wayland can still be built successfully with
+ # documentation.
+ (fetchpatch {
+ url = "https://github.com/libgd/libgd/commit/3dd0e308cbd2c24fde2fc9e9b707181252a2de95.patch";
+ excludes = [ "tests/gdimagestringft/.gitignore" ];
+ sha256 = "12iqlanl9czig9d7c3rvizrigw2iacimnmimfcny392dv9iazhl1";
+ })
+ ];
# -pthread gets passed to clang, causing warnings
configureFlags = stdenv.lib.optional stdenv.isDarwin "--enable-werror=no";
- nativeBuildInputs = [ pkgconfig ];
+ nativeBuildInputs = [ autoconf automake pkg-config ];
buildInputs = [ zlib fontconfig freetype ];
propagatedBuildInputs = [ libpng libjpeg libwebp libtiff libXpm ];
diff --git a/pkgs/development/libraries/glib/default.nix b/pkgs/development/libraries/glib/default.nix
index 47e372cf9a3..f7b0667741d 100644
--- a/pkgs/development/libraries/glib/default.nix
+++ b/pkgs/development/libraries/glib/default.nix
@@ -48,11 +48,11 @@ in
stdenv.mkDerivation rec {
pname = "glib";
- version = "2.64.3";
+ version = "2.64.4";
src = fetchurl {
url = "mirror://gnome/sources/glib/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
- sha256 = "08pbgiv5m3rica4ydvwvpq5mrxbyswx7l1jzjc2ch52xjabvr77y";
+ sha256 = "0l6fggcgdnjif9kzy4crq7520f43bbrgzxz0c821ya3jn8jv7q7p";
};
patches = optionals stdenv.isDarwin [
diff --git a/pkgs/development/libraries/gpgme/default.nix b/pkgs/development/libraries/gpgme/default.nix
index 1c4f63142a9..ed07d8ba058 100644
--- a/pkgs/development/libraries/gpgme/default.nix
+++ b/pkgs/development/libraries/gpgme/default.nix
@@ -14,22 +14,15 @@ in
stdenv.mkDerivation rec {
pname = "gpgme";
- version = "1.13.1";
+ version = "1.14.0";
src = fetchurl {
url = "mirror://gnupg/gpgme/${pname}-${version}.tar.bz2";
- sha256 = "0imyjfryvvjdbai454p70zcr95m94j9xnzywrlilqdw2fqi0pqy4";
+ sha256 = "01s3rlspykbm9vmi5rfbdm3d20ip6yni69r48idqzlmhlq8ggwff";
};
patches = [
- # Fix tests with gnupg > 2.2.19
- # https://dev.gnupg.org/T4820
- (fetchpatch {
- name = "cff600f1f65a2164ab25ff2b039cba008776ce62.patch";
- url = "http://git.gnupg.org/cgi-bin/gitweb.cgi?p=gpgme.git;a=patch;h=cff600f1f65a2164ab25ff2b039cba008776ce62";
- sha256 = "0ds3pvcws37q4hr4g5iwg2b98fj6whvhhcbm9c8f1kgp7dlpdw7n";
- })
- (fetchpatch {
+ (fetchpatch { # gpg: Send --with-keygrip when listing keys
name = "c4cf527ea227edb468a84bf9b8ce996807bd6992.patch";
url = "http://git.gnupg.org/cgi-bin/gitweb.cgi?p=gpgme.git;a=patch;h=c4cf527ea227edb468a84bf9b8ce996807bd6992";
sha256 = "0y0b0lb2nq5p9kx13b59b2jaz157mvflliw1qdvg1v1hynvgb8m4";
@@ -79,6 +72,7 @@ stdenv.mkDerivation rec {
meta = with stdenv.lib; {
homepage = "https://gnupg.org/software/gpgme/index.html";
+ changelog = "https://git.gnupg.org/cgi-bin/gitweb.cgi?p=gpgme.git;a=blob;f=NEWS;hb=refs/tags/gpgme-${version}";
description = "Library for making GnuPG easier to use";
longDescription = ''
GnuPG Made Easy (GPGME) is a library designed to make access to GnuPG
diff --git a/pkgs/development/libraries/gssdp/default.nix b/pkgs/development/libraries/gssdp/default.nix
index 8ad92eb833a..0a808b71a71 100644
--- a/pkgs/development/libraries/gssdp/default.nix
+++ b/pkgs/development/libraries/gssdp/default.nix
@@ -16,13 +16,13 @@
stdenv.mkDerivation rec {
pname = "gssdp";
- version = "1.2.2";
+ version = "1.2.3";
outputs = [ "out" "bin" "dev" "devdoc" ];
src = fetchurl {
url = "mirror://gnome/sources/gssdp/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
- sha256 = "195hi10vrsvh6i927mm6rm1ld5sxah3h5sr3bsjm90vb8lxrxfya";
+ sha256 = "1s57i8a8wnnxnsfl27cq4503dkdlzbrhry5zpg23sfqfffvdqqx2";
};
nativeBuildInputs = [
diff --git a/pkgs/development/libraries/gtk/3.x.nix b/pkgs/development/libraries/gtk/3.x.nix
index aec5c4d2ded..bf78d15d39c 100644
--- a/pkgs/development/libraries/gtk/3.x.nix
+++ b/pkgs/development/libraries/gtk/3.x.nix
@@ -48,7 +48,7 @@ with stdenv.lib;
stdenv.mkDerivation rec {
pname = "gtk+3";
- version = "3.24.20";
+ version = "3.24.21";
outputs = [ "out" "dev" ] ++ optional withGtkDoc "devdoc";
outputBin = "dev";
@@ -60,7 +60,7 @@ stdenv.mkDerivation rec {
src = fetchurl {
url = "mirror://gnome/sources/gtk+/${stdenv.lib.versions.majorMinor version}/gtk+-${version}.tar.xz";
- sha256 = "1wqxkd3xnqwihcawncp9mkf9bv5a5fg5i4ahm6klpl782vvnkb1d";
+ sha256 = "0llgq2adzn9p3bfq9rv2dhscmvzs35jp3glrfvy3vs1mrpknmsmf";
};
patches = [
diff --git a/pkgs/development/libraries/json-c/default.nix b/pkgs/development/libraries/json-c/default.nix
index c7a9b3c4a12..164f7c44ba9 100644
--- a/pkgs/development/libraries/json-c/default.nix
+++ b/pkgs/development/libraries/json-c/default.nix
@@ -1,24 +1,24 @@
-{ stdenv, fetchurl, fetchpatch, autoconf }:
+{ stdenv, fetchurl, fetchpatch, cmake }:
stdenv.mkDerivation rec {
- name = "json-c-0.13.1";
+ name = "json-c-0.14";
src = fetchurl {
url = "https://s3.amazonaws.com/json-c_releases/releases/${name}-nodoc.tar.gz";
- sha256 = "0ch1v18wk703bpbyzj7h1mkwvsw4rw4qdwvgykscypvqq10678ll";
+ sha256 = "1yia8417qljmczs9w3rn4c4i2p2iywq098pgrj11s81599j4x4cr";
};
patches = [
# https://nvd.nist.gov/vuln/detail/CVE-2020-12762
(fetchpatch {
name = "CVE-2020-12762.patch";
- url = "https://github.com/json-c/json-c/commit/865b5a65199973bb63dff8e47a2f57e04fec9736.patch";
- sha256 = "1g5afk4khhm1sb70xrva1pyznshcw3ipzp1g5z60dpzxy303pp6h";
+ url = "https://github.com/json-c/json-c/commit/5d6fa331418d49f1bd488553fd1cfa9ab023fabb.patch";
+ sha256 = "0aar7kgbycqxnhh0lrr61adfbb903nbapalhs5i6h8anxwy1ylcm";
})
];
outputs = [ "out" "dev" ];
- nativeBuildInputs = [ autoconf ]; # for autoheader
+ nativeBuildInputs = [ cmake ];
meta = with stdenv.lib; {
description = "A JSON implementation in C";
diff --git a/pkgs/development/libraries/kde-frameworks/default.nix b/pkgs/development/libraries/kde-frameworks/default.nix
index 1db37bc7879..9ac3ed11b49 100644
--- a/pkgs/development/libraries/kde-frameworks/default.nix
+++ b/pkgs/development/libraries/kde-frameworks/default.nix
@@ -83,7 +83,7 @@ let
in mkDerivation (args // {
name = "${name}-${version}";
- inherit meta outputs setupHook src;
+ inherit meta outputs setupHook src version;
});
};
diff --git a/pkgs/development/libraries/kde-frameworks/krunner.nix b/pkgs/development/libraries/kde-frameworks/krunner.nix
index 826999f2f9b..afea827aeb8 100644
--- a/pkgs/development/libraries/kde-frameworks/krunner.nix
+++ b/pkgs/development/libraries/kde-frameworks/krunner.nix
@@ -1,17 +1,26 @@
{
- mkDerivation, lib,
+ mkDerivation, lib, fetchpatch,
extra-cmake-modules,
kconfig, kcoreaddons, ki18n, kio, kservice, plasma-framework, qtbase,
qtdeclarative, solid, threadweaver, kwindowsystem
}:
-mkDerivation {
- name = "krunner";
- meta = { maintainers = [ lib.maintainers.ttuegel ]; };
- nativeBuildInputs = [ extra-cmake-modules ];
- buildInputs = [
- kconfig kcoreaddons ki18n kio kservice qtdeclarative solid
- threadweaver
- ];
- propagatedBuildInputs = [ plasma-framework qtbase kwindowsystem ];
-}
+let
+ self = mkDerivation {
+ name = "krunner";
+ meta = { maintainers = [ lib.maintainers.ttuegel ]; };
+ patches = [
+ # Un-deprecate virtual method to restore binary compatibility.
+ (assert !(lib.versionOlder "5.72" self.version); fetchpatch {
+ url = "https://invent.kde.org/frameworks/krunner/-/commit/8f7ce559b84ee0c21de0256e6591793e4b95f411.diff";
+ sha256 = "06h9g04syv6x3hqi0iy9wll78yf9ys95r5vm104sc25pnszvjbxv";
+ })
+ ];
+ nativeBuildInputs = [ extra-cmake-modules ];
+ buildInputs = [
+ kconfig kcoreaddons ki18n kio kservice qtdeclarative solid
+ threadweaver
+ ];
+ propagatedBuildInputs = [ plasma-framework qtbase kwindowsystem ];
+ };
+in self
diff --git a/pkgs/development/libraries/lcms2/default.nix b/pkgs/development/libraries/lcms2/default.nix
index 2584e26b3c0..0cf62285890 100644
--- a/pkgs/development/libraries/lcms2/default.nix
+++ b/pkgs/development/libraries/lcms2/default.nix
@@ -1,11 +1,11 @@
{ stdenv, fetchurl, libtiff, libjpeg, zlib }:
stdenv.mkDerivation rec {
- name = "lcms2-2.10";
+ name = "lcms2-2.11";
src = fetchurl {
url = "mirror://sourceforge/lcms/${name}.tar.gz";
- sha256 = "0ipkw2r8h3yhm4vn5nx04dz5s943x9fw023fhrrnjz2c97yi3m2h";
+ sha256 = "0bkpf315925lhmd9i4mzjnkq5dh255r1lms0c0vzzkfpwk4bjjfw";
};
outputs = [ "bin" "dev" "out" ];
diff --git a/pkgs/development/libraries/libdrm/cross-build-nm-path.patch b/pkgs/development/libraries/libdrm/cross-build-nm-path.patch
index 478534e65e5..547ef0d0969 100644
--- a/pkgs/development/libraries/libdrm/cross-build-nm-path.patch
+++ b/pkgs/development/libraries/libdrm/cross-build-nm-path.patch
@@ -17,18 +17,17 @@ Signed-off-by: Jörg Thalheim
2 files changed, 7 insertions(+), 1 deletion(-)
diff --git a/meson.build b/meson.build
-index e292554a..64607139 100644
---- a/meson.build
-+++ b/meson.build
-@@ -327,7 +327,7 @@ pkg.generate(
- )
-
- env_test = environment()
--env_test.set('NM', find_program('nm').path())
-+env_test.set('NM', find_program(get_option('nm-path')).path())
-
- if with_libkms
- subdir('libkms')
+--- meson.build.orig 2020-06-18 11:13:57.716321962 +0200
++++ meson.build 2020-06-18 11:19:50.456861311 +0200
+@@ -45,7 +45,7 @@
+ cc = meson.get_compiler('c')
+
+ symbols_check = find_program('symbols-check.py')
+-prog_nm = find_program('nm')
++prog_nm = find_program(get_option('nm-path'))
+
+ # Check for atomics
+ intel_atomics = false
diff --git a/meson_options.txt b/meson_options.txt
index 8af33f1c..b4f46a52 100644
--- a/meson_options.txt
diff --git a/pkgs/development/libraries/libdrm/default.nix b/pkgs/development/libraries/libdrm/default.nix
index 0d6ff189765..4296e56c743 100644
--- a/pkgs/development/libraries/libdrm/default.nix
+++ b/pkgs/development/libraries/libdrm/default.nix
@@ -4,11 +4,11 @@
stdenv.mkDerivation rec {
pname = "libdrm";
- version = "2.4.100";
+ version = "2.4.102";
src = fetchurl {
- url = "https://dri.freedesktop.org/${pname}/${pname}-${version}.tar.bz2";
- sha256 = "0p8a1l3a3s40i81mawm8nhrbk7p97ss05qkawp1yx73c30lchz67";
+ url = "https://dri.freedesktop.org/${pname}/${pname}-${version}.tar.xz";
+ sha256 = "0nx0bd9dhymdsd99v4ifib77yjirkvkxf5hzdkbr7qr8dhrzkjwb";
};
outputs = [ "out" "dev" "bin" ];
diff --git a/pkgs/development/libraries/libevdev/default.nix b/pkgs/development/libraries/libevdev/default.nix
index 9b1184f1c0b..c769006e0bf 100644
--- a/pkgs/development/libraries/libevdev/default.nix
+++ b/pkgs/development/libraries/libevdev/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, python3 }:
+{ stdenv, fetchurl, fetchpatch, python3 }:
stdenv.mkDerivation rec {
pname = "libevdev";
@@ -9,6 +9,15 @@ stdenv.mkDerivation rec {
sha256 = "17pb5375njb1r05xmk0r57a2j986ihglh2n5nqcylbag4rj8mqg7";
};
+ patches = [
+ # Fix libevdev-python tests on aarch64
+ # https://gitlab.freedesktop.org/libevdev/libevdev/merge_requests/63
+ (fetchpatch {
+ url = "https://gitlab.freedesktop.org/libevdev/libevdev/commit/66113fe84f62bab3a672a336eb10b255d2aa5ce7.patch";
+ sha256 = "gZKr/P+/OqU69IGslP8CQlcGuyzA/ulcm+nGwHdis58=";
+ })
+ ];
+
nativeBuildInputs = [ python3 ];
meta = with stdenv.lib; {
diff --git a/pkgs/development/libraries/libevent/default.nix b/pkgs/development/libraries/libevent/default.nix
index eaa2933505c..880ba746bb9 100644
--- a/pkgs/development/libraries/libevent/default.nix
+++ b/pkgs/development/libraries/libevent/default.nix
@@ -6,11 +6,11 @@ assert sslSupport -> openssl != null;
stdenv.mkDerivation rec {
pname = "libevent";
- version = "2.1.11";
+ version = "2.1.12";
src = fetchurl {
url = "https://github.com/libevent/libevent/releases/download/release-${version}-stable/libevent-${version}-stable.tar.gz";
- sha256 = "0g988zqm45sj1hlhhz4il5z4dpi5dl74hzjwzl4md37a09iaqnx6";
+ sha256 = "1fq30imk8zd26x8066di3kpc5zyfc5z6frr3zll685zcx4dxxrlj";
};
# libevent_openssl is moved into its own output, so that openssl isn't present
diff --git a/pkgs/development/libraries/libgcrypt/default.nix b/pkgs/development/libraries/libgcrypt/default.nix
index 49aaec66c29..d49fa37325a 100644
--- a/pkgs/development/libraries/libgcrypt/default.nix
+++ b/pkgs/development/libraries/libgcrypt/default.nix
@@ -6,11 +6,11 @@ assert enableCapabilities -> stdenv.isLinux;
stdenv.mkDerivation rec {
pname = "libgcrypt";
- version = "1.8.5";
+ version = "1.8.6";
src = fetchurl {
url = "mirror://gnupg/libgcrypt/${pname}-${version}.tar.bz2";
- sha256 = "1hvsazms1bfd769q0ngl0r9g5i4m9mpz9jmvvrdzyzk3rfa2ljiv";
+ sha256 = "0xdrsxgqw5v7szshjdgdv60rgpvzzaqic32ahqrzr6bvc402gfhc";
};
outputs = [ "out" "dev" "info" ];
diff --git a/pkgs/development/libraries/libinput/default.nix b/pkgs/development/libraries/libinput/default.nix
index f490dfbd23a..cb8009011b6 100644
--- a/pkgs/development/libraries/libinput/default.nix
+++ b/pkgs/development/libraries/libinput/default.nix
@@ -27,11 +27,11 @@ in
with stdenv.lib;
stdenv.mkDerivation rec {
pname = "libinput";
- version = "1.15.5";
+ version = "1.15.6";
src = fetchurl {
url = "https://www.freedesktop.org/software/libinput/${pname}-${version}.tar.xz";
- sha256 = "15ww4jl3lcxyi8m8idg8canklbqv729gnwpkz7r98c1w8a7zq3m9";
+ sha256 = "073z61dw46cyq0635a5n1mw7hw4qdgr58gbwwb3ds5v3d8hymvdf";
};
outputs = [ "bin" "out" "dev" ];
@@ -47,10 +47,23 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ pkgconfig meson ninja ]
++ optionals documentationSupport [ doxygen graphviz sphinx-build ];
- buildInputs = [ libevdev mtdev libwacom ]
+ buildInputs = [
+ libevdev
+ mtdev
+ libwacom
+ (python3.withPackages (pp: with pp; [
+ pp.libevdev # already in scope
+ pyudev
+ pyyaml
+ setuptools
+ ]))
+ ]
++ optionals eventGUISupport [ cairo glib gtk3 ];
- checkInputs = [ (python3.withPackages (pkgs: with pkgs; [ evdev ])) check valgrind ];
+ checkInputs = [
+ check
+ valgrind
+ ];
propagatedBuildInputs = [ udev ];
@@ -60,6 +73,7 @@ stdenv.mkDerivation rec {
patchShebangs tools/helper-copy-and-exec-from-tmp.sh
patchShebangs test/symbols-leak-test
patchShebangs test/check-leftover-udev-rules.sh
+ patchShebangs test/helper-copy-and-exec-from-tmp.sh
'';
doCheck = testsSupport && stdenv.hostPlatform == stdenv.buildPlatform;
diff --git a/pkgs/development/libraries/libmbim/default.nix b/pkgs/development/libraries/libmbim/default.nix
index 8750ee599ce..0cc911fbd01 100644
--- a/pkgs/development/libraries/libmbim/default.nix
+++ b/pkgs/development/libraries/libmbim/default.nix
@@ -1,23 +1,33 @@
-{ stdenv, fetchurl, pkgconfig, glib, python3, systemd, libgudev }:
+{ stdenv
+, fetchurl
+, pkg-config
+, gobject-introspection
+, glib
+, python3
+, systemd
+, libgudev
+}:
stdenv.mkDerivation rec {
pname = "libmbim";
- version = "1.23.900";
+ version = "1.24.0";
src = fetchurl {
url = "https://www.freedesktop.org/software/libmbim/${pname}-${version}.tar.xz";
- sha256 = "0ikzjs44q44cj4m786gvm575a7x61rgmav6b60n2y74pgqvj3791";
+ sha256 = "15hi1vq327drgi6h4dsi74lb7wg0sxd7mipa3irh5zgc7gn5qj9x";
};
outputs = [ "out" "dev" "man" ];
configureFlags = [
"--with-udev-base-dir=${placeholder "out"}/lib/udev"
+ "--enable-introspection"
];
nativeBuildInputs = [
- pkgconfig
+ pkg-config
python3
+ gobject-introspection
];
buildInputs = [
diff --git a/pkgs/development/libraries/libmysqlconnectorcpp/default.nix b/pkgs/development/libraries/libmysqlconnectorcpp/default.nix
index 71fbda7b471..ecec1e79492 100644
--- a/pkgs/development/libraries/libmysqlconnectorcpp/default.nix
+++ b/pkgs/development/libraries/libmysqlconnectorcpp/default.nix
@@ -8,11 +8,11 @@
stdenv.mkDerivation rec {
pname = "libmysqlconnectorcpp";
- version = "8.0.20";
+ version = "8.0.21";
src = fetchurl {
url = "https://cdn.mysql.com/Downloads/Connector-C++/mysql-connector-c++-${version}-src.tar.gz";
- sha256 = "1jrrbfy6sw4pni72c1hgvchx1zzfpnamp34sjnv82mlvsp8ypsjh";
+ sha256 = "08z40419aip26z6ss30g59mvnddb8dfam82l556jyj3gxs0irqbh";
};
nativeBuildInputs = [
diff --git a/pkgs/development/libraries/libplacebo/default.nix b/pkgs/development/libraries/libplacebo/default.nix
index cee6d3f1845..e57f2798839 100644
--- a/pkgs/development/libraries/libplacebo/default.nix
+++ b/pkgs/development/libraries/libplacebo/default.nix
@@ -2,32 +2,33 @@
, fetchFromGitLab
, meson
, ninja
-, pkgconfig
+, pkg-config
+, python3Packages
, vulkan-headers
, vulkan-loader
, shaderc
, glslang
, lcms2
+, epoxy
}:
stdenv.mkDerivation rec {
pname = "libplacebo";
- version = "1.29.1";
+ version = "2.72.0";
src = fetchFromGitLab {
domain = "code.videolan.org";
owner = "videolan";
repo = pname;
rev = "v${version}";
- sha256 = "1ly5bwy0pwgvqigpaak8hnig5hksjwf0pzvj3mdv3j2f6f7ya2zz";
+ sha256 = "1yhf9xyxdawbihsx89dpjlac800wrmpwx63rphad2nj225y9q40f";
};
- postPatch = "substituteInPlace meson.build --replace 1.29.0 1.29.1";
-
nativeBuildInputs = [
meson
ninja
- pkgconfig
+ pkg-config
+ python3Packages.Mako
];
buildInputs = [
@@ -36,13 +37,25 @@ stdenv.mkDerivation rec {
shaderc
glslang
lcms2
+ epoxy
+ ];
+
+ mesonFlags = [
+ "-Dvulkan-registry=${vulkan-headers}/share/vulkan/registry/vk.xml"
];
meta = with stdenv.lib; {
description = "Reusable library for GPU-accelerated video/image rendering primitives";
+ longDescription = ''
+ Reusable library for GPU-accelerated image/view processing primitives and
+ shaders, as well a batteries-included, extensible, high-quality rendering
+ pipeline (similar to mpv's vo_gpu). Supports Vulkan, OpenGL and Metal (via
+ MoltenVK).
+ '';
homepage = "https://code.videolan.org/videolan/libplacebo";
+ changelog = "https://code.videolan.org/videolan/libplacebo/-/tags/v${version}";
license = licenses.lgpl21Plus;
- maintainers = with maintainers; [ tadeokondrak ];
+ maintainers = with maintainers; [ primeos tadeokondrak ];
platforms = platforms.all;
};
}
diff --git a/pkgs/development/libraries/libqmi/default.nix b/pkgs/development/libraries/libqmi/default.nix
index 15a2a1db18f..e577b403823 100644
--- a/pkgs/development/libraries/libqmi/default.nix
+++ b/pkgs/development/libraries/libqmi/default.nix
@@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
pname = "libqmi";
- version = "1.25.900";
+ version = "1.26.0";
src = fetchurl {
url = "https://www.freedesktop.org/software/libqmi/${pname}-${version}.tar.xz";
- sha256 = "0a96f4ab7qy4szwzqs8ir2mvsnpqzk7zsiv6zahlhpf0jhp1vxf7";
+ sha256 = "0h3fzmjlla7ib9wn4rv98bm40y2k28jcl29da4hjwyaqmvh2j13z";
};
outputs = [ "out" "dev" "devdoc" ];
diff --git a/pkgs/development/libraries/librsvg/default.nix b/pkgs/development/libraries/librsvg/default.nix
index 2c68d27323f..fb61b50346d 100644
--- a/pkgs/development/libraries/librsvg/default.nix
+++ b/pkgs/development/libraries/librsvg/default.nix
@@ -4,14 +4,14 @@
let
pname = "librsvg";
- version = "2.48.7";
+ version = "2.48.8";
in
stdenv.mkDerivation rec {
name = "${pname}-${version}";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
- sha256 = "1h7yw9bszsi174lkq8ig15p1rll7fqafx72jligxiz32wa9mvpim";
+ sha256 = "14i6xzghcidv64cyd3g0wdjbl82rph737yxn9s3x29nzpcjs707l";
};
outputs = [ "out" "dev" "installedTests" ];
diff --git a/pkgs/development/libraries/libu2f-host/default.nix b/pkgs/development/libraries/libu2f-host/default.nix
index f033aa9f610..a9c62673115 100644
--- a/pkgs/development/libraries/libu2f-host/default.nix
+++ b/pkgs/development/libraries/libu2f-host/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, pkgconfig, json_c, hidapi }:
+{ stdenv, fetchurl, fetchpatch, pkgconfig, json_c, hidapi }:
stdenv.mkDerivation rec {
pname = "libu2f-host";
@@ -9,6 +9,15 @@ stdenv.mkDerivation rec {
sha256 = "0vrivl1dwql6nfi48z6dy56fwy2z13d7abgahgrs2mcmqng7hra2";
};
+ patches = [
+ # remove after updating to next release
+ (fetchpatch {
+ name = "json-c-0.14-support.patch";
+ url = "https://github.com/Yubico/libu2f-host/commit/840f01135d2892f45e71b9e90405de587991bd03.patch";
+ sha256 = "0xplx394ppsbsb4h4l8b9m4dv9shbl0zyck3y26vbm9i1g981ki7";
+ })
+ ];
+
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ json_c hidapi ];
diff --git a/pkgs/development/libraries/libu2f-server/default.nix b/pkgs/development/libraries/libu2f-server/default.nix
index be5658914d1..cd961cde1d2 100644
--- a/pkgs/development/libraries/libu2f-server/default.nix
+++ b/pkgs/development/libraries/libu2f-server/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, pkgconfig, json_c, openssl, check, file, help2man, which, gengetopt }:
+{ stdenv, fetchurl, fetchpatch, pkgconfig, json_c, openssl, check, file, help2man, which, gengetopt }:
stdenv.mkDerivation rec {
name = "libu2f-server-1.1.0";
@@ -7,6 +7,15 @@ stdenv.mkDerivation rec {
sha256 = "0xx296nmmqa57w0v5p2kasl5zr1ms2gh6qi4lhv6xvzbmjp3rkcd";
};
+ patches = [
+ # remove after updating to next release
+ (fetchpatch {
+ name = "json-c-0.14-support.patch";
+ url = "https://github.com/Yubico/libu2f-server/commit/f7c4983b31909299c47bf9b2627c84b6bfe225de.patch";
+ sha256 = "10q66w3paii1yhfdmjskpip078fk9p3sjllbqx1yx71qbjki55b0";
+ })
+ ];
+
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ json_c openssl check file help2man which gengetopt ];
diff --git a/pkgs/development/libraries/libuv/default.nix b/pkgs/development/libraries/libuv/default.nix
index e22bcdd86b4..3462c423ffd 100644
--- a/pkgs/development/libraries/libuv/default.nix
+++ b/pkgs/development/libraries/libuv/default.nix
@@ -1,14 +1,14 @@
{ stdenv, lib, fetchFromGitHub, autoconf, automake, libtool, pkgconfig, ApplicationServices, CoreServices }:
stdenv.mkDerivation rec {
- version = "1.38.0";
+ version = "1.38.1";
pname = "libuv";
src = fetchFromGitHub {
owner = pname;
repo = pname;
rev = "v${version}";
- sha256 = "04598jglikma5plfiprnw4pcxwp7b6aqxphxs65pdd5xira6dz0s";
+ sha256 = "0cvabjhi53qw94zyjkqamx0c607ayydfb4f3djx2gj8ab2p7s29n";
};
postPatch = let
diff --git a/pkgs/development/libraries/libwacom/default.nix b/pkgs/development/libraries/libwacom/default.nix
index c33317550b5..e762ead1923 100644
--- a/pkgs/development/libraries/libwacom/default.nix
+++ b/pkgs/development/libraries/libwacom/default.nix
@@ -2,7 +2,7 @@
stdenv.mkDerivation rec {
pname = "libwacom";
- version = "1.3";
+ version = "1.4.1";
outputs = [ "out" "dev" ];
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
owner = "linuxwacom";
repo = "libwacom";
rev = "libwacom-${version}";
- sha256 = "12g8jb67wj6sgg9ar2w8kkw1m1431rn9nd0j64qkrd3vy9g4l0hk";
+ sha256 = "0m96zjj832l18rzg9l31ambm6rv9vnh2a1sfk8531da8m347z287";
};
nativeBuildInputs = [ pkgconfig meson ninja doxygen ];
diff --git a/pkgs/development/libraries/mesa/default.nix b/pkgs/development/libraries/mesa/default.nix
index 7ae59c119a0..0b0db12c09c 100644
--- a/pkgs/development/libraries/mesa/default.nix
+++ b/pkgs/development/libraries/mesa/default.nix
@@ -31,7 +31,7 @@ with stdenv.lib;
let
# Release calendar: https://www.mesa3d.org/release-calendar.html
# Release frequency: https://www.mesa3d.org/releasing.html#schedule
- version = "20.0.8"; # Update only to the final (last planned) release (i.e. X.Y.MAX)?
+ version = "20.1.3";
branch = versions.major version;
in
@@ -46,7 +46,7 @@ stdenv.mkDerivation {
"ftp://ftp.freedesktop.org/pub/mesa/${version}/mesa-${version}.tar.xz"
"ftp://ftp.freedesktop.org/pub/mesa/older-versions/${branch}.x/${version}/mesa-${version}.tar.xz"
];
- sha256 = "6cf0c010df89680f9b2bc6432ff01400031795e39bceda7535fa00af06740b6c";
+ sha256 = "1w9b6sl82a3birmpgzn1xx6biggpvynr4hmyzxvj30pfdgabhwlq";
};
prePatch = "patchShebangs .";
diff --git a/pkgs/development/libraries/nspr/default.nix b/pkgs/development/libraries/nspr/default.nix
index 31a9f7f20d1..9ab89aaefbf 100644
--- a/pkgs/development/libraries/nspr/default.nix
+++ b/pkgs/development/libraries/nspr/default.nix
@@ -2,7 +2,7 @@
, CoreServices ? null
, buildPackages }:
-let version = "4.25"; in
+let version = "4.26"; in
stdenv.mkDerivation {
pname = "nspr";
@@ -10,7 +10,7 @@ stdenv.mkDerivation {
src = fetchurl {
url = "mirror://mozilla/nspr/releases/v${version}/src/nspr-${version}.tar.gz";
- sha256 = "0mjjk2b7ika3v4y99cnaqz3z1iq1a50r1psn9i3s87gr46z0khqb";
+ sha256 = "0gbp3g9p4nhf0zrlvqi5883sqb9zdw0wk83lccpgskxphlni97gw";
};
patches = [
diff --git a/pkgs/development/libraries/nss/3.44.nix b/pkgs/development/libraries/nss/3.44.nix
new file mode 100644
index 00000000000..ad58bfccaee
--- /dev/null
+++ b/pkgs/development/libraries/nss/3.44.nix
@@ -0,0 +1,144 @@
+{ stdenv, fetchurl, nspr, perl, zlib, sqlite, fixDarwinDylibNames, buildPackages }:
+
+let
+ nssPEM = fetchurl {
+ url = "http://dev.gentoo.org/~polynomial-c/mozilla/nss-3.15.4-pem-support-20140109.patch.xz";
+ sha256 = "10ibz6y0hknac15zr6dw4gv9nb5r5z9ym6gq18j3xqx7v7n3vpdw";
+ };
+ version = "3.44.4";
+ underscoreVersion = builtins.replaceStrings ["."] ["_"] version;
+
+in stdenv.mkDerivation rec {
+ pname = "nss";
+ inherit version;
+
+ src = fetchurl {
+ url = "mirror://mozilla/security/nss/releases/NSS_${underscoreVersion}_RTM/src/${pname}-${version}.tar.gz";
+ sha256 = "7ec1a52e20fd9a23e1907eeba8f4f2ecd619dac5d20fa023ec5b4faa1843e847";
+ };
+
+ depsBuildBuild = [ buildPackages.stdenv.cc ];
+
+ nativeBuildInputs = [ perl ];
+
+ buildInputs = [ zlib sqlite ]
+ ++ stdenv.lib.optional stdenv.isDarwin fixDarwinDylibNames;
+
+ propagatedBuildInputs = [ nspr ];
+
+ prePatch = ''
+ xz -d < ${nssPEM} | patch -p1
+ '';
+
+ patches =
+ [
+ # Based on http://patch-tracker.debian.org/patch/series/dl/nss/2:3.15.4-1/85_security_load.patch
+ ./85_security_load-3.44.patch
+ ./ckpem.patch
+ ];
+
+ patchFlags = [ "-p0" ];
+
+ postPatch = stdenv.lib.optionalString stdenv.isDarwin ''
+ substituteInPlace nss/coreconf/Darwin.mk --replace '@executable_path/$(notdir $@)' "$out/lib/\$(notdir \$@)"
+ '';
+
+ outputs = [ "out" "dev" "tools" ];
+
+ preConfigure = "cd nss";
+
+ makeFlags = let
+ # NSS's build systems expects aarch32 to be called arm; if we pass in armv6l/armv7l, it
+ # fails with a linker error
+ cpu = if stdenv.hostPlatform.isAarch32 then "arm" else stdenv.hostPlatform.parsed.cpu.name;
+ in [
+ "NSPR_INCLUDE_DIR=${nspr.dev}/include"
+ "NSPR_LIB_DIR=${nspr.out}/lib"
+ "NSDISTMODE=copy"
+ "BUILD_OPT=1"
+ "SOURCE_PREFIX=\$(out)"
+ "NSS_ENABLE_ECC=1"
+ "USE_SYSTEM_ZLIB=1"
+ "NSS_USE_SYSTEM_SQLITE=1"
+ "NATIVE_CC=${buildPackages.stdenv.cc}/bin/cc"
+ ] ++ stdenv.lib.optionals (!stdenv.isDarwin) [
+ # Pass in CPU even if we're not cross compiling, because otherwise it tries to guess with
+ # uname, which can be wrong if e.g. we're compiling for aarch32 on aarch64
+ "OS_TEST=${cpu}"
+ "CPU_ARCH=${cpu}"
+ ] ++ stdenv.lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) [
+ "CROSS_COMPILE=1"
+ "NSS_DISABLE_GTESTS=1" # don't want to build tests when cross-compiling
+ ] ++ stdenv.lib.optional stdenv.is64bit "USE_64=1"
+ ++ stdenv.lib.optional stdenv.isDarwin "CCC=clang++";
+
+ NIX_CFLAGS_COMPILE = "-Wno-error";
+
+ # TODO(@oxij): investigate this: `make -n check` works but `make
+ # check` fails with "no rule", same for "installcheck".
+ doCheck = false;
+ doInstallCheck = false;
+
+ postInstall = ''
+ rm -rf $out/private
+ mv $out/public $out/include
+ mv $out/*.OBJ/* $out/
+ rmdir $out/*.OBJ
+
+ ln -s lib $out/lib64
+
+ # Upstream issue: https://bugzilla.mozilla.org/show_bug.cgi?id=530672
+ # https://gitweb.gentoo.org/repo/gentoo.git/plain/dev-libs/nss/files/nss-3.32-gentoo-fixups.patch?id=af1acce6c6d2c3adb17689261dfe2c2b6771ab8a
+ NSS_MAJOR_VERSION=`grep "NSS_VMAJOR" lib/nss/nss.h | awk '{print $3}'`
+ NSS_MINOR_VERSION=`grep "NSS_VMINOR" lib/nss/nss.h | awk '{print $3}'`
+ NSS_PATCH_VERSION=`grep "NSS_VPATCH" lib/nss/nss.h | awk '{print $3}'`
+ PREFIX="$out"
+
+ mkdir -p $out/lib/pkgconfig
+ sed -e "s,%prefix%,$PREFIX," \
+ -e "s,%exec_prefix%,$PREFIX," \
+ -e "s,%libdir%,$PREFIX/lib64," \
+ -e "s,%includedir%,$dev/include/nss," \
+ -e "s,%NSS_VERSION%,$NSS_MAJOR_VERSION.$NSS_MINOR_VERSION.$NSS_PATCH_VERSION,g" \
+ -e "s,%NSPR_VERSION%,4.16,g" \
+ pkg/pkg-config/nss.pc.in > $out/lib/pkgconfig/nss.pc
+ chmod 0644 $out/lib/pkgconfig/nss.pc
+
+ sed -e "s,@prefix@,$PREFIX," \
+ -e "s,@MOD_MAJOR_VERSION@,$NSS_MAJOR_VERSION," \
+ -e "s,@MOD_MINOR_VERSION@,$NSS_MINOR_VERSION," \
+ -e "s,@MOD_PATCH_VERSION@,$NSS_PATCH_VERSION," \
+ pkg/pkg-config/nss-config.in > $out/bin/nss-config
+ chmod 0755 $out/bin/nss-config
+ '';
+
+ postFixup = let
+ isCross = stdenv.hostPlatform != stdenv.buildPlatform;
+ nss = if isCross then buildPackages.nss.tools else "$out";
+ in ''
+ for libname in freebl3 nssdbm3 softokn3
+ do '' +
+ (if stdenv.isDarwin
+ then ''
+ libfile="$out/lib/lib$libname.dylib"
+ DYLD_LIBRARY_PATH=$out/lib:${nspr.out}/lib \
+ '' else ''
+ libfile="$out/lib/lib$libname.so"
+ LD_LIBRARY_PATH=$out/lib:${nspr.out}/lib \
+ '') + ''
+ ${nss}/bin/shlibsign -v -i "$libfile"
+ done
+
+ moveToOutput bin "$tools"
+ moveToOutput bin/nss-config "$dev"
+ moveToOutput lib/libcrmf.a "$dev" # needed by firefox, for example
+ rm -f "$out"/lib/*.a
+ '';
+
+ meta = with stdenv.lib; {
+ homepage = "https://developer.mozilla.org/en-US/docs/NSS";
+ description = "A set of libraries for development of security-enabled client and server applications";
+ license = licenses.mpl20;
+ platforms = platforms.all;
+ };
+}
diff --git a/pkgs/development/libraries/nss/85_security_load-3.44.patch b/pkgs/development/libraries/nss/85_security_load-3.44.patch
new file mode 100644
index 00000000000..132d5a96b29
--- /dev/null
+++ b/pkgs/development/libraries/nss/85_security_load-3.44.patch
@@ -0,0 +1,81 @@
+diff -ru -x '*~' -x '*.orig' -x '*.rej' nss/cmd/shlibsign/shlibsign.c nss/cmd/shlibsign/shlibsign.c
+--- nss/cmd/shlibsign/shlibsign.c 2017-01-04 15:24:24.000000000 +0100
++++ nss/cmd/shlibsign/shlibsign.c 2017-01-24 14:43:31.030420852 +0100
+@@ -875,6 +875,8 @@
+ goto cleanup;
+ }
+ lib = PR_LoadLibrary(libname);
++ if (!lib)
++ lib = PR_LoadLibrary(NIX_NSS_LIBDIR"libsoftokn3.so");
+ assert(lib != NULL);
+ if (!lib) {
+ PR_fprintf(PR_STDERR, "loading softokn3 failed");
+diff -ru -x '*~' -x '*.orig' -x '*.rej' nss/coreconf/config.mk nss/coreconf/config.mk
+--- nss/coreconf/config.mk 2017-01-04 15:24:24.000000000 +0100
++++ nss/coreconf/config.mk 2017-01-24 14:43:47.989432372 +0100
+@@ -202,3 +202,6 @@
+
+ # Hide old, deprecated, TLS cipher suite names when building NSS
+ DEFINES += -DSSL_DISABLE_DEPRECATED_CIPHER_SUITE_NAMES
++
++# Nix specific stuff.
++DEFINES += -DNIX_NSS_LIBDIR=\"$(out)/lib/\"
+diff -ru -x '*~' -x '*.orig' -x '*.rej' nss/lib/pk11wrap/pk11load.c nss/lib/pk11wrap/pk11load.c
+--- nss/lib/pk11wrap/pk11load.c 2017-01-04 15:24:24.000000000 +0100
++++ nss/lib/pk11wrap/pk11load.c 2017-01-24 14:45:06.883485652 +0100
+@@ -440,6 +440,13 @@
+ * unload the library if anything goes wrong from here on out...
+ */
+ library = PR_LoadLibrary(mod->dllName);
++ if ((library == NULL) &&
++ !rindex(mod->dllName, PR_GetDirectorySeparator())) {
++ library = PORT_LoadLibraryFromOrigin(my_shlib_name,
++ (PRFuncPtr) &softoken_LoadDSO,
++ mod->dllName);
++ }
++
+ mod->library = (void *)library;
+
+ if (library == NULL) {
+diff -ru -x '*~' -x '*.orig' -x '*.rej' nss/lib/util/secload.c nss/lib/util/secload.c
+--- nss/lib/util/secload.c 2017-01-04 15:24:24.000000000 +0100
++++ nss/lib/util/secload.c 2017-01-24 14:43:31.030420852 +0100
+@@ -70,9 +70,14 @@
+
+ /* Remove the trailing filename from referencePath and add the new one */
+ c = strrchr(referencePath, PR_GetDirectorySeparator());
++ if (!c) { /* referencePath doesn't contain a / means that dladdr gave us argv[0]
++ * and program was called from $PATH. Hack to get libs from NIX_NSS_LIBDIR */
++ referencePath = NIX_NSS_LIBDIR;
++ c = (char*) &referencePath[sizeof(NIX_NSS_LIBDIR) - 1]; /* last / */
++ }
+ if (c) {
+ size_t referencePathSize = 1 + c - referencePath;
+- fullName = (char*)PORT_Alloc(strlen(name) + referencePathSize + 1);
++ fullName = (char*) PORT_Alloc(strlen(name) + referencePathSize + 5);
+ if (fullName) {
+ memcpy(fullName, referencePath, referencePathSize);
+ strcpy(fullName + referencePathSize, name);
+@@ -82,6 +87,11 @@
+ #endif
+ libSpec.type = PR_LibSpec_Pathname;
+ libSpec.value.pathname = fullName;
++ if ((referencePathSize >= 4) &&
++ (strncmp(fullName + referencePathSize - 4, "bin", 3) == 0)) {
++ memcpy(fullName + referencePathSize -4, "lib", 3);
++ }
++ strcpy(fullName + referencePathSize, name);
+ dlh = PR_LoadLibraryWithFlags(libSpec, PR_LD_NOW | PR_LD_LOCAL
+ #ifdef PR_LD_ALT_SEARCH_PATH
+ /* allow library's dependencies to be found in the same directory
+@@ -89,6 +99,10 @@
+ | PR_LD_ALT_SEARCH_PATH
+ #endif
+ );
++ if (! dlh) {
++ strcpy(fullName + referencePathSize, name);
++ dlh = PR_LoadLibraryWithFlags(libSpec, PR_LD_NOW | PR_LD_LOCAL);
++ }
+ PORT_Free(fullName);
+ }
+ }
diff --git a/pkgs/development/libraries/nss/85_security_load.patch b/pkgs/development/libraries/nss/85_security_load.patch
index 132d5a96b29..2b2cce465ba 100644
--- a/pkgs/development/libraries/nss/85_security_load.patch
+++ b/pkgs/development/libraries/nss/85_security_load.patch
@@ -1,7 +1,8 @@
-diff -ru -x '*~' -x '*.orig' -x '*.rej' nss/cmd/shlibsign/shlibsign.c nss/cmd/shlibsign/shlibsign.c
---- nss/cmd/shlibsign/shlibsign.c 2017-01-04 15:24:24.000000000 +0100
-+++ nss/cmd/shlibsign/shlibsign.c 2017-01-24 14:43:31.030420852 +0100
-@@ -875,6 +875,8 @@
+diff --git nss/cmd/shlibsign/shlibsign.c nss/cmd/shlibsign/shlibsign.c
+index ad8f3b84e..74676d039 100644
+--- nss/cmd/shlibsign/shlibsign.c
++++ nss/cmd/shlibsign/shlibsign.c
+@@ -875,6 +875,8 @@ main(int argc, char **argv)
goto cleanup;
}
lib = PR_LoadLibrary(libname);
@@ -10,37 +11,31 @@ diff -ru -x '*~' -x '*.orig' -x '*.rej' nss/cmd/shlibsign/shlibsign.c nss/cmd/sh
assert(lib != NULL);
if (!lib) {
PR_fprintf(PR_STDERR, "loading softokn3 failed");
-diff -ru -x '*~' -x '*.orig' -x '*.rej' nss/coreconf/config.mk nss/coreconf/config.mk
---- nss/coreconf/config.mk 2017-01-04 15:24:24.000000000 +0100
-+++ nss/coreconf/config.mk 2017-01-24 14:43:47.989432372 +0100
-@@ -202,3 +202,6 @@
-
- # Hide old, deprecated, TLS cipher suite names when building NSS
- DEFINES += -DSSL_DISABLE_DEPRECATED_CIPHER_SUITE_NAMES
-+
-+# Nix specific stuff.
-+DEFINES += -DNIX_NSS_LIBDIR=\"$(out)/lib/\"
-diff -ru -x '*~' -x '*.orig' -x '*.rej' nss/lib/pk11wrap/pk11load.c nss/lib/pk11wrap/pk11load.c
---- nss/lib/pk11wrap/pk11load.c 2017-01-04 15:24:24.000000000 +0100
-+++ nss/lib/pk11wrap/pk11load.c 2017-01-24 14:45:06.883485652 +0100
-@@ -440,6 +440,13 @@
+diff --git nss/lib/pk11wrap/pk11load.c nss/lib/pk11wrap/pk11load.c
+index 9e7a0a546..a0a23a1a4 100644
+--- nss/lib/pk11wrap/pk11load.c
++++ nss/lib/pk11wrap/pk11load.c
+@@ -466,6 +466,15 @@ secmod_LoadPKCS11Module(SECMODModule *mod, SECMODModule **oldModule)
* unload the library if anything goes wrong from here on out...
*/
library = PR_LoadLibrary(mod->dllName);
++#ifndef NSS_STATIC_SOFTOKEN
+ if ((library == NULL) &&
+ !rindex(mod->dllName, PR_GetDirectorySeparator())) {
+ library = PORT_LoadLibraryFromOrigin(my_shlib_name,
+ (PRFuncPtr) &softoken_LoadDSO,
+ mod->dllName);
+ }
++#endif
+
mod->library = (void *)library;
if (library == NULL) {
-diff -ru -x '*~' -x '*.orig' -x '*.rej' nss/lib/util/secload.c nss/lib/util/secload.c
---- nss/lib/util/secload.c 2017-01-04 15:24:24.000000000 +0100
-+++ nss/lib/util/secload.c 2017-01-24 14:43:31.030420852 +0100
-@@ -70,9 +70,14 @@
+diff --git nss/lib/util/secload.c nss/lib/util/secload.c
+index 12efd2f75..8b74478f6 100644
+--- nss/lib/util/secload.c
++++ nss/lib/util/secload.c
+@@ -70,9 +70,14 @@ loader_LoadLibInReferenceDir(const char* referencePath, const char* name)
/* Remove the trailing filename from referencePath and add the new one */
c = strrchr(referencePath, PR_GetDirectorySeparator());
@@ -56,7 +51,7 @@ diff -ru -x '*~' -x '*.orig' -x '*.rej' nss/lib/util/secload.c nss/lib/util/secl
if (fullName) {
memcpy(fullName, referencePath, referencePathSize);
strcpy(fullName + referencePathSize, name);
-@@ -82,6 +87,11 @@
+@@ -82,6 +87,11 @@ loader_LoadLibInReferenceDir(const char* referencePath, const char* name)
#endif
libSpec.type = PR_LibSpec_Pathname;
libSpec.value.pathname = fullName;
@@ -68,7 +63,7 @@ diff -ru -x '*~' -x '*.orig' -x '*.rej' nss/lib/util/secload.c nss/lib/util/secl
dlh = PR_LoadLibraryWithFlags(libSpec, PR_LD_NOW | PR_LD_LOCAL
#ifdef PR_LD_ALT_SEARCH_PATH
/* allow library's dependencies to be found in the same directory
-@@ -89,6 +99,10 @@
+@@ -89,6 +99,10 @@ loader_LoadLibInReferenceDir(const char* referencePath, const char* name)
| PR_LD_ALT_SEARCH_PATH
#endif
);
diff --git a/pkgs/development/libraries/nss/default.nix b/pkgs/development/libraries/nss/default.nix
index 4ec5518008a..ba6704bc144 100644
--- a/pkgs/development/libraries/nss/default.nix
+++ b/pkgs/development/libraries/nss/default.nix
@@ -1,11 +1,11 @@
-{ stdenv, fetchurl, nspr, perl, zlib, sqlite, fixDarwinDylibNames, buildPackages }:
+{ stdenv, fetchurl, nspr, perl, zlib, sqlite, fixDarwinDylibNames, buildPackages, ninja }:
let
nssPEM = fetchurl {
url = "http://dev.gentoo.org/~polynomial-c/mozilla/nss-3.15.4-pem-support-20140109.patch.xz";
sha256 = "10ibz6y0hknac15zr6dw4gv9nb5r5z9ym6gq18j3xqx7v7n3vpdw";
};
- version = "3.52.1";
+ version = "3.54";
underscoreVersion = builtins.replaceStrings ["."] ["_"] version;
in stdenv.mkDerivation rec {
@@ -14,12 +14,12 @@ in stdenv.mkDerivation rec {
src = fetchurl {
url = "mirror://mozilla/security/nss/releases/NSS_${underscoreVersion}_RTM/src/${pname}-${version}.tar.gz";
- sha256 = "0y4jb9095f7bbgw7d7kvzm4c3g4p5i6y68fwhb8wlkpb7b1imj5w";
+ sha256 = "0hvfip056pl07h6w91i6fyji5nczrrsxyr56rls7jd2yryzqpcfs";
};
depsBuildBuild = [ buildPackages.stdenv.cc ];
- nativeBuildInputs = [ perl ];
+ nativeBuildInputs = [ perl ninja (buildPackages.python2.withPackages (ps: with ps; [ gyp ])) ];
buildInputs = [ zlib sqlite ]
++ stdenv.lib.optional stdenv.isDarwin fixDarwinDylibNames;
@@ -29,10 +29,18 @@ in stdenv.mkDerivation rec {
prePatch = ''
# strip the trailing whitespace from the patch line and the renamed CKO_NETSCAPE_ enum to CKO_NSS_
xz -d < ${nssPEM} | sed \
- -e '/^-DIRS = builtins $/ s/ $//' \
+ -e 's/-DIRS = builtins $/-DIRS = . builtins/g' \
-e 's/CKO_NETSCAPE_/CKO_NSS_/g' \
-e 's/CKT_NETSCAPE_/CKT_NSS_/g' \
| patch -p1
+
+ patchShebangs nss
+
+ for f in nss/coreconf/config.gypi nss/build.sh nss/coreconf/config.gypi; do
+ substituteInPlace "$f" --replace "/usr/bin/env" "${buildPackages.coreutils}/bin/env"
+ done
+
+ substituteInPlace nss/coreconf/config.gypi --replace "/usr/bin/grep" "${buildPackages.coreutils}/bin/env grep"
'';
patches =
@@ -40,6 +48,7 @@ in stdenv.mkDerivation rec {
# Based on http://patch-tracker.debian.org/patch/series/dl/nss/2:3.15.4-1/85_security_load.patch
./85_security_load.patch
./ckpem.patch
+ ./fix-cross-compilation.patch
];
patchFlags = [ "-p0" ];
@@ -52,43 +61,40 @@ in stdenv.mkDerivation rec {
preConfigure = "cd nss";
- makeFlags = let
- # NSS's build systems expects aarch32 to be called arm; if we pass in armv6l/armv7l, it
- # fails with a linker error
- cpu = if stdenv.hostPlatform.isAarch32 then "arm" else stdenv.hostPlatform.parsed.cpu.name;
- in [
- "NSPR_INCLUDE_DIR=${nspr.dev}/include"
- "NSPR_LIB_DIR=${nspr.out}/lib"
- "NSDISTMODE=copy"
- "BUILD_OPT=1"
- "SOURCE_PREFIX=\$(out)"
- "NSS_ENABLE_ECC=1"
- "USE_SYSTEM_ZLIB=1"
- "NSS_USE_SYSTEM_SQLITE=1"
- "NATIVE_CC=${buildPackages.stdenv.cc}/bin/cc"
- ] ++ stdenv.lib.optionals (!stdenv.isDarwin) [
- # Pass in CPU even if we're not cross compiling, because otherwise it tries to guess with
- # uname, which can be wrong if e.g. we're compiling for aarch32 on aarch64
- "OS_TEST=${cpu}"
- "CPU_ARCH=${cpu}"
- ] ++ stdenv.lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) [
- "CROSS_COMPILE=1"
- "NSS_DISABLE_GTESTS=1" # don't want to build tests when cross-compiling
- ] ++ stdenv.lib.optional stdenv.is64bit "USE_64=1"
- ++ stdenv.lib.optional stdenv.isDarwin "CCC=clang++";
+ buildPhase = let
+ getArch = platform: if platform.isx86_64 then "x64"
+ else if platform.isx86_32 then "ia32"
+ else if platform.isAarch32 then "arm"
+ else if platform.isAarch64 then "arm64"
+ else platform.parsed.cpu.name;
+ # yes, this is correct. nixpkgs uses "host" for the platform the binary will run on whereas nss uses "host" for the platform that the build is running on
+ target = getArch stdenv.hostPlatform;
+ host = getArch stdenv.buildPlatform;
+ in ''
+ runHook preBuild
- NIX_CFLAGS_COMPILE = "-Wno-error";
+ sed -i 's|nss_dist_dir="$dist_dir"|nss_dist_dir="'$out'"|;s|nss_dist_obj_dir="$obj_dir"|nss_dist_obj_dir="'$out'"|' build.sh
+ ./build.sh -v --opt \
+ --with-nspr=${nspr.dev}/include:${nspr.out}/lib \
+ --system-sqlite \
+ --enable-legacy-db \
+ --target ${target} \
+ -Dhost_arch=${host} \
+ -Duse_system_zlib=1 \
+ ${stdenv.lib.optionalString stdenv.isDarwin "--clang"} \
+ ${stdenv.lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) "--disable-tests"}
- # TODO(@oxij): investigate this: `make -n check` works but `make
- # check` fails with "no rule", same for "installcheck".
- doCheck = false;
- doInstallCheck = false;
+ runHook postBuild
+ '';
+
+ NIX_CFLAGS_COMPILE = "-Wno-error -DNIX_NSS_LIBDIR=\"${placeholder "out"}/lib/\"";
+
+ installPhase = ''
+ runHook preInstall
- postInstall = ''
rm -rf $out/private
+ find $out -name "*.TOC" -delete
mv $out/public $out/include
- mv $out/*.OBJ/* $out/
- rmdir $out/*.OBJ
ln -s lib $out/lib64
@@ -138,6 +144,8 @@ in stdenv.mkDerivation rec {
moveToOutput bin/nss-config "$dev"
moveToOutput lib/libcrmf.a "$dev" # needed by firefox, for example
rm -f "$out"/lib/*.a
+
+ runHook postInstall
'';
meta = with stdenv.lib; {
diff --git a/pkgs/development/libraries/nss/fix-cross-compilation.patch b/pkgs/development/libraries/nss/fix-cross-compilation.patch
new file mode 100644
index 00000000000..42b0620f48d
--- /dev/null
+++ b/pkgs/development/libraries/nss/fix-cross-compilation.patch
@@ -0,0 +1,11 @@
+--- nss/nss.gyp
++++ nss/nss.gyp
+@@ -280,7 +280,7 @@
+ 'outputs/': [['exclude', 'nssdbm3']]
+ }],
+ ],
+- 'action': ['<(python)', '<(DEPTH)/coreconf/shlibsign.py', '<@(_inputs)']
++ 'action': ['true']
+ }
+ ],
+ },
diff --git a/pkgs/development/libraries/poppler/default.nix b/pkgs/development/libraries/poppler/default.nix
index 71ff58eaebe..420cf731454 100644
--- a/pkgs/development/libraries/poppler/default.nix
+++ b/pkgs/development/libraries/poppler/default.nix
@@ -12,11 +12,11 @@ let
in
stdenv.mkDerivation rec {
name = "poppler-${suffix}-${version}";
- version = "0.89.0"; # beware: updates often break cups-filters build, check texlive and scribusUnstable too!
+ version = "0.90.0"; # beware: updates often break cups-filters build, check texlive and scribusUnstable too!
src = fetchurl {
url = "${meta.homepage}/poppler-${version}.tar.xz";
- sha256 = "0p4vxyl5cw8jgcy6hjb35236bhv9xy9xc21vsk2jqy1p8lv318pv";
+ sha256 = "11cnk18qnhkhari1102syk5n3k7906jpm05cr8i4vdrh6fnv1vcl";
};
outputs = [ "out" "dev" ];
diff --git a/pkgs/development/libraries/rocm-runtime-ext/default.nix b/pkgs/development/libraries/rocm-runtime-ext/default.nix
new file mode 100644
index 00000000000..3962804306a
--- /dev/null
+++ b/pkgs/development/libraries/rocm-runtime-ext/default.nix
@@ -0,0 +1,42 @@
+{ stdenv, fetchurl, autoPatchelfHook, rpmextract, rocm-runtime }:
+
+stdenv.mkDerivation rec {
+ pname = "rocm-runtime-ext";
+ version = "3.5.1";
+
+ src = fetchurl {
+ url = "https://repo.radeon.com/rocm/yum/3.5.1/hsa-ext-rocr-dev-1.1.30501.0-rocm-rel-3.5-34-def83d8a-Linux.rpm";
+ sha256 = "0r7lrmnplr10hs6wrji55i3dnczfzlmp8jahm1g3mhq2x12zmly0";
+ };
+
+ nativeBuildInputs = [ autoPatchelfHook rpmextract ];
+
+ buildInputs = [ rocm-runtime stdenv.cc.cc ];
+
+ unpackPhase = "rpmextract ${src}";
+
+ installPhase = ''
+ mkdir -p $out/lib
+ cp -R opt/rocm-${version}/hsa/lib $out/lib/rocm-runtime-ext
+ '';
+
+ setupHook = ./setup-hook.sh;
+
+ meta = with stdenv.lib; {
+ description = "Platform runtime for ROCm (closed-source extensions)";
+ longDescription = ''
+ This package provides closed-source extensions to the ROCm
+ runtime. Currently this adds support for OpenCL image
+ processing.
+
+ In order for the ROCm runtime to pick up the extension, you
+ should either set the ROCR_EXT_DIR environment variable should
+ be set to ''${rocm-runtime-ext}/lib/rocm-runtime-ext or this
+ package should be added to the hardware.opengl.extraPackages
+ NixOS configuration option.
+ '';
+ homepage = "https://github.com/RadeonOpenCompute/ROCR-Runtime";
+ license = with licenses; [ unfreeRedistributable ];
+ maintainers = with maintainers; [ danieldk ];
+ };
+}
diff --git a/pkgs/development/libraries/rocm-runtime-ext/setup-hook.sh b/pkgs/development/libraries/rocm-runtime-ext/setup-hook.sh
new file mode 100644
index 00000000000..150d65570e6
--- /dev/null
+++ b/pkgs/development/libraries/rocm-runtime-ext/setup-hook.sh
@@ -0,0 +1,7 @@
+addRocmRuntimeExtDir () {
+ if [[ -z "${ROCR_EXT_DIR-}" ]]; then
+ export ROCR_EXT_DIR="@out@/lib/rocm-runtime-ext"
+ fi
+}
+
+addEnvHooks "$hostOffset" addRocmRuntimeExtDir
diff --git a/pkgs/development/libraries/rocm-runtime/default.nix b/pkgs/development/libraries/rocm-runtime/default.nix
index e50557c4b30..7470784d489 100644
--- a/pkgs/development/libraries/rocm-runtime/default.nix
+++ b/pkgs/development/libraries/rocm-runtime/default.nix
@@ -1,4 +1,9 @@
-{ stdenv, fetchFromGitHub, cmake, elfutils, rocm-thunk }:
+{ stdenv
+, fetchFromGitHub
+, addOpenGLRunpath
+, cmake
+, elfutils
+, rocm-thunk }:
stdenv.mkDerivation rec {
pname = "rocm-runtime";
@@ -17,14 +22,15 @@ stdenv.mkDerivation rec {
cmakeFlags = [ "-DCMAKE_PREFIX_PATH=${rocm-thunk}" ];
- # Use the ROCR_EXT_DIR environment variable to try to find
- # binary-only extension libraries. This environment variable is set
- # by the `rocr-ext` derivation. If that derivation is not in scope,
- # then the extension libraries are not loaded. Without this edit, we
- # would have to rely on LD_LIBRARY_PATH to let the HSA runtime
- # discover the shared libraries.
+ # Use the ROCR_EXT_DIR environment variable and/or OpenGL driver
+ # link path to try to find binary-only ROCm runtime extension
+ # libraries. Without this change, we would have to rely on
+ # LD_LIBRARY_PATH to let the HSA runtime discover the shared
+ # libraries.
patchPhase = ''
- sed 's/\(k\(Image\|Finalizer\)Lib\[os_index(os::current_os)\]\)/os::GetEnvVar("ROCR_EXT_DIR") + "\/" + \1/g' -i core/runtime/runtime.cpp
+ substitute '${./rocr-ext-dir.diff}' ./rocr-ext-dir.diff \
+ --subst-var-by rocrExtDir "${addOpenGLRunpath.driverLink}/lib/rocm-runtime-ext"
+ patch -p2 < ./rocr-ext-dir.diff
'';
fixupPhase = ''
diff --git a/pkgs/development/libraries/rocm-runtime/rocr-ext-dir.diff b/pkgs/development/libraries/rocm-runtime/rocr-ext-dir.diff
new file mode 100644
index 00000000000..21ffe7d8c34
--- /dev/null
+++ b/pkgs/development/libraries/rocm-runtime/rocr-ext-dir.diff
@@ -0,0 +1,23 @@
+diff --git a/src/core/runtime/runtime.cpp b/src/core/runtime/runtime.cpp
+index dd6a15c..fb6de49 100644
+--- a/src/core/runtime/runtime.cpp
++++ b/src/core/runtime/runtime.cpp
+@@ -1358,7 +1358,17 @@ void Runtime::LoadExtensions() {
+ core::HsaApiTable::HSA_EXT_FINALIZER_API_TABLE_ID);
+
+ // Update Hsa Api Table with handle of Image extension Apis
+- extensions_.LoadImage(kImageLib[os_index(os::current_os)]);
++ //
++ // Use ROCR_EXT_DIR when it is non-empty. Otherwise, try to load the
++ // library from the OpenGL driver path.
++ std::string extDirVar = os::GetEnvVar("ROCR_EXT_DIR");
++ if (!extDirVar.empty()) {
++ extensions_.LoadImage(extDirVar + "/" + kImageLib[os_index(os::current_os)]);
++ } else {
++ std::string globalDriverDir("@rocrExtDir@");
++ extensions_.LoadImage(globalDriverDir + "/" + kImageLib[os_index(os::current_os)]);
++ }
++
+ hsa_api_table_.LinkExts(&extensions_.image_api,
+ core::HsaApiTable::HSA_EXT_IMAGE_API_TABLE_ID);
+ }
diff --git a/pkgs/development/libraries/serf/default.nix b/pkgs/development/libraries/serf/default.nix
index 2742ba1577b..92dde2111fc 100644
--- a/pkgs/development/libraries/serf/default.nix
+++ b/pkgs/development/libraries/serf/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, apr, scons, openssl, aprutil, zlib, kerberos
+{ stdenv, fetchurl, apr, sconsPackages, openssl, aprutil, zlib, kerberos
, pkgconfig, libiconv }:
stdenv.mkDerivation rec {
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
sha256 = "1k47gbgpp52049andr28y28nbwh9m36bbb0g8p0aka3pqlhjv72l";
};
- nativeBuildInputs = [ pkgconfig scons.py2 ];
+ nativeBuildInputs = [ pkgconfig sconsPackages.scons_3_1_2 ];
buildInputs = [ apr openssl aprutil zlib libiconv ]
++ stdenv.lib.optional (!stdenv.isCygwin) kerberos;
diff --git a/pkgs/development/libraries/swiften/default.nix b/pkgs/development/libraries/swiften/default.nix
index 19bacdd2a61..2fe20cc9e88 100644
--- a/pkgs/development/libraries/swiften/default.nix
+++ b/pkgs/development/libraries/swiften/default.nix
@@ -1,9 +1,9 @@
-{ stdenv, python, fetchurl, openssl, boost, scons }:
+{ stdenv, python, fetchurl, openssl, boost, sconsPackages }:
stdenv.mkDerivation rec {
pname = "swiften";
version = "4.0.2";
- nativeBuildInputs = [ scons.py2 ];
+ nativeBuildInputs = [ sconsPackages.scons_3_1_2 ];
buildInputs = [ python ];
propagatedBuildInputs = [ openssl boost ];
diff --git a/pkgs/development/libraries/wayland/default.nix b/pkgs/development/libraries/wayland/default.nix
index 402177b899c..1821d7a7237 100644
--- a/pkgs/development/libraries/wayland/default.nix
+++ b/pkgs/development/libraries/wayland/default.nix
@@ -1,7 +1,8 @@
{ lib, stdenv, fetchurl, meson, pkgconfig, ninja
, libffi, libxml2, wayland
, expat ? null # Build wayland-scanner (currently cannot be disabled as of 1.7.0)
-, withDocumentation ? false, graphviz-nox, doxygen, libxslt, xmlto, python3
+, withDocumentation ? stdenv.hostPlatform == stdenv.buildPlatform
+, graphviz-nox, doxygen, libxslt, xmlto, python3
, docbook_xsl, docbook_xml_dtd_45, docbook_xml_dtd_42
}:
@@ -19,6 +20,7 @@ in stdenv.mkDerivation rec {
sha256 = "0k995rn96xkplrapz5k648j651wc43kq817xk1x8280h16gsfxa6";
};
+ outputs = [ "out" ] ++ lib.optionals withDocumentation [ "doc" "man" ];
separateDebugInfo = true;
mesonFlags = [ "-Ddocumentation=${lib.boolToString withDocumentation}" ];
diff --git a/pkgs/development/libraries/wlroots/default.nix b/pkgs/development/libraries/wlroots/default.nix
index 33db6e9d75b..46a1fc45d81 100644
--- a/pkgs/development/libraries/wlroots/default.nix
+++ b/pkgs/development/libraries/wlroots/default.nix
@@ -6,13 +6,13 @@
stdenv.mkDerivation rec {
pname = "wlroots";
- version = "0.10.1";
+ version = "0.11.0";
src = fetchFromGitHub {
owner = "swaywm";
repo = "wlroots";
rev = version;
- sha256 = "0j2lh9vc92zhn44rjbia5aw3y1rpgfng1x1h17lcvj5m4i6vj0pc";
+ sha256 = "08d5d52m8wy3imfc6mdxpx8swhh2k4s1gmfaykg02j59z84awc6p";
};
# $out for the library and $examples for the example programs (in examples):
@@ -21,11 +21,13 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ meson ninja pkg-config wayland ];
buildInputs = [
- libGL wayland-protocols libinput libxkbcommon pixman
+ libGL wayland wayland-protocols libinput libxkbcommon pixman
xcbutilwm libX11 libcap xcbutilimage xcbutilerrors mesa
libpng ffmpeg
];
+ mesonFlags = [ "-Dlogind-provider=systemd" ];
+
postInstall = ''
# Copy the library to $examples
mkdir -p $examples/lib
diff --git a/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix b/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix
index 14cfeefe428..90265d61c83 100644
--- a/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix
+++ b/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix
@@ -35,6 +35,7 @@ stdenv.mkDerivation rec {
gsettings-desktop-schemas
gtk3
gnome3.gnome-desktop
+ gnome3.gnome-settings-daemon # schemas needed for settings api (fonts, etc)
];
meta = with stdenv.lib; {
diff --git a/pkgs/development/perl-modules/Percona-Toolkit/default.nix b/pkgs/development/perl-modules/Percona-Toolkit/default.nix
index 85feee36b50..b2c5437e380 100644
--- a/pkgs/development/perl-modules/Percona-Toolkit/default.nix
+++ b/pkgs/development/perl-modules/Percona-Toolkit/default.nix
@@ -1,24 +1,32 @@
-{ lib, fetchFromGitHub, buildPerlPackage, DBDmysql, DBI, IOSocketSSL, TermReadKey, shortenPerlShebang }:
+{ stdenv, fetchFromGitHub, buildPerlPackage, shortenPerlShebang
+, DBDmysql, DBI, IOSocketSSL, TermReadKey
+}:
-buildPerlPackage {
+buildPerlPackage rec {
pname = "Percona-Toolkit";
- version = "3.0.12";
+ version = "3.2.0";
+
src = fetchFromGitHub {
owner = "percona";
repo = "percona-toolkit";
- rev = "3.0.12";
- sha256 = "0xk4h4dzl80kf97lbx0nznx9ajrb6kkg7k3iwca3rj6f3rqggv9y";
+ rev = "v${version}";
+ sha256 = "084ldpskvlfm32lfss5qqzm5y9b8hf029aa4i5pcnzgb53xaxkqx";
};
+
outputs = [ "out" ];
+
nativeBuildInputs = [ shortenPerlShebang ];
+
buildInputs = [ DBDmysql DBI IOSocketSSL TermReadKey ];
+
postInstall = ''
shortenPerlShebang $(grep -l "/bin/env perl" $out/bin/*)
'';
- meta = {
+
+ meta = with stdenv.lib; {
description = ''Collection of advanced command-line tools to perform a variety of MySQL and system tasks.'';
- homepage = "http://www.percona.com/software/percona-toolkit";
- license = with lib.licenses; [ gpl2 ];
- maintainers = with lib.maintainers; [ izorkin ];
+ homepage = "https://www.percona.com/software/database-tools/percona-toolkit";
+ license = with licenses; [ gpl2 ];
+ maintainers = with maintainers; [ izorkin ];
};
}
diff --git a/pkgs/development/perl-modules/WWW-Curl-4.17-Skip-preprocessor-symbol-only-CURL_STRICTER.patch b/pkgs/development/perl-modules/WWW-Curl-4.17-Skip-preprocessor-symbol-only-CURL_STRICTER.patch
deleted file mode 100644
index 34221c0d20c..00000000000
--- a/pkgs/development/perl-modules/WWW-Curl-4.17-Skip-preprocessor-symbol-only-CURL_STRICTER.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 0be0223422e6e5f4091c6e4e058d213623eed105 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?=
-Date: Mon, 12 Sep 2016 14:40:44 +0200
-Subject: [PATCH] Skip preprocessor symbol only CURL_STRICTER
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-CURL_STRICTER leaked into curl-constants.c when building against
-curl-7.50.2. This is a preprocessor only macro without a value.
-
-CPAN RT#117793
-
-Signed-off-by: Petr Písař
----
- Makefile.PL | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/Makefile.PL b/Makefile.PL
-index f9170bb..ad2bd3d 100644
---- a/Makefile.PL
-+++ b/Makefile.PL
-@@ -127,7 +127,7 @@ if (!defined($curl_h)) {
- close H;
-
- for my $e (sort @syms) {
-- if($e =~ /(OBSOLETE|^CURL_EXTERN|_LAST\z|_LASTENTRY\z)/) {
-+ if($e =~ /(OBSOLETE|^CURL_EXTERN|^CURL_STRICTER\z|_LAST\z|_LASTENTRY\z)/) {
- next;
- }
- my ($group) = $e =~ m/^([^_]+_)/;
---
-2.7.4
-
diff --git a/pkgs/development/python-modules/awkward1/default.nix b/pkgs/development/python-modules/awkward1/default.nix
index e3549e0a4a8..3b53dd0eeb7 100644
--- a/pkgs/development/python-modules/awkward1/default.nix
+++ b/pkgs/development/python-modules/awkward1/default.nix
@@ -10,11 +10,11 @@
buildPythonPackage rec {
pname = "awkward1";
- version = "0.2.23";
+ version = "0.2.24";
src = fetchPypi {
inherit pname version;
- sha256 = "d7458b499959af66e0a640e29e6b676a39cc9614cd504e5a2e8f8d0c7f546597";
+ sha256 = "d2f4c9e3153ba18e3ef867c4804e3f17aefd0cc32b5174b38718d06ada4503e9";
};
nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/python-modules/blivet/default.nix b/pkgs/development/python-modules/blivet/default.nix
index f3efba1f378..b8d1b4670ae 100644
--- a/pkgs/development/python-modules/blivet/default.nix
+++ b/pkgs/development/python-modules/blivet/default.nix
@@ -1,11 +1,8 @@
{ stdenv, fetchFromGitHub, buildPythonPackage, pykickstart, pyparted, pyblock
-, pyudev, six, libselinux, cryptsetup, multipath-tools, lsof, utillinux
+, pyudev, six, libselinux, multipath-tools, lsof, utillinux
}:
-let
- pyenable = { enablePython = true; };
- cryptsetupWithPython = cryptsetup.override pyenable;
-in buildPythonPackage rec {
+buildPythonPackage rec {
pname = "blivet";
version = "0.67";
@@ -30,7 +27,7 @@ in buildPythonPackage rec {
'';
propagatedBuildInputs = [
- pykickstart pyparted pyblock pyudev libselinux cryptsetupWithPython
+ pykickstart pyparted pyblock pyudev libselinux
six
];
diff --git a/pkgs/development/python-modules/google-api-python-client/default.nix b/pkgs/development/python-modules/google-api-python-client/default.nix
index 98e0c8712b3..2a7f7629704 100644
--- a/pkgs/development/python-modules/google-api-python-client/default.nix
+++ b/pkgs/development/python-modules/google-api-python-client/default.nix
@@ -4,11 +4,11 @@
buildPythonPackage rec {
pname = "google-api-python-client";
- version = "1.9.3";
+ version = "1.10.0";
src = fetchPypi {
inherit pname version;
- sha256 = "220349ce189a85229fc46875d467101318495a4a735c0ff2f165b9bdbc7511a0";
+ sha256 = "01zzlr21rgl1skl7ayppp0qwn6s883i50xcvxs8jxzr4c5zz097s";
};
# No tests included in archive
diff --git a/pkgs/development/python-modules/ipympl/default.nix b/pkgs/development/python-modules/ipympl/default.nix
index 0c5da2cd7a9..44ec6cade99 100644
--- a/pkgs/development/python-modules/ipympl/default.nix
+++ b/pkgs/development/python-modules/ipympl/default.nix
@@ -2,11 +2,11 @@
buildPythonPackage rec {
pname = "ipympl";
- version = "0.5.6";
+ version = "0.5.7";
src = fetchPypi {
inherit pname version;
- sha256 = "1sak58wcpikn4ww1k8gr2vf1hmwzfly31hzcnwiizp7l0vk40qh7";
+ sha256 = "0cjsabsbn02vpf3yl0x9xdqgf4f707mbnz2hp2bn6zp9qnyyirx5";
};
propagatedBuildInputs = [ ipywidgets matplotlib ];
diff --git a/pkgs/development/python-modules/libevdev/default.nix b/pkgs/development/python-modules/libevdev/default.nix
index 220d60663a3..a17612c79cb 100644
--- a/pkgs/development/python-modules/libevdev/default.nix
+++ b/pkgs/development/python-modules/libevdev/default.nix
@@ -1,4 +1,11 @@
-{ stdenv, buildPythonPackage, isPy27, fetchPypi }:
+{ stdenv
+, buildPythonPackage
+, isPy27
+, fetchPypi
+, substituteAll
+, pkgs
+, pytestCheckHook
+}:
buildPythonPackage rec {
pname = "libevdev";
@@ -10,7 +17,14 @@ buildPythonPackage rec {
sha256 = "17agnigmzscmdjqmrylg1lza03hwjhgxbpf4l705s6i7p7ndaqrs";
};
- doCheck = false;
+ patches = [
+ (substituteAll {
+ src = ./fix-paths.patch;
+ libevdev = stdenv.lib.getLib pkgs.libevdev;
+ })
+ ];
+
+ checkInputs = [ pytestCheckHook ];
meta = with stdenv.lib; {
description = "Python wrapper around the libevdev C library";
diff --git a/pkgs/development/python-modules/libevdev/fix-paths.patch b/pkgs/development/python-modules/libevdev/fix-paths.patch
new file mode 100644
index 00000000000..e73c360b146
--- /dev/null
+++ b/pkgs/development/python-modules/libevdev/fix-paths.patch
@@ -0,0 +1,22 @@
+diff --git a/libevdev/_clib.py b/libevdev/_clib.py
+index 6e4ab2c..9db54d1 100644
+--- a/libevdev/_clib.py
++++ b/libevdev/_clib.py
+@@ -120,7 +120,7 @@ class Libevdev(_LibraryWrapper):
+
+ @staticmethod
+ def _cdll():
+- return ctypes.CDLL("libevdev.so.2", use_errno=True)
++ return ctypes.CDLL("@libevdev@/lib/libevdev.so.2", use_errno=True)
+
+ _api_prototypes = {
+ # const char *libevdev_event_type_get_name(unsigned int type);
+@@ -910,7 +910,7 @@ class UinputDevice(_LibraryWrapper):
+
+ @staticmethod
+ def _cdll():
+- return ctypes.CDLL("libevdev.so.2", use_errno=True)
++ return ctypes.CDLL("@libevdev@/lib/libevdev.so.2", use_errno=True)
+
+ _api_prototypes = {
+ # int libevdev_uinput_create_from_device(const struct libevdev *, int, struct libevdev_uinput **)
diff --git a/pkgs/development/python-modules/pydicom/default.nix b/pkgs/development/python-modules/pydicom/default.nix
index b875674df61..e6602ba9da2 100644
--- a/pkgs/development/python-modules/pydicom/default.nix
+++ b/pkgs/development/python-modules/pydicom/default.nix
@@ -4,6 +4,7 @@
, isPy27
, pytest
, pytestrunner
+, pytestCheckHook
, numpy
, pillow
}:
@@ -19,7 +20,10 @@ buildPythonPackage rec {
};
propagatedBuildInputs = [ numpy pillow ];
- checkInputs = [ pytest pytestrunner ];
+
+ checkInputs = [ pytest pytestrunner pytestCheckHook ];
+ disabledTests = [ "test_invalid_bit_depth_raises" ];
+ # harmless failure; see https://github.com/pydicom/pydicom/issues/1119
meta = with stdenv.lib; {
homepage = "https://pydicom.github.io";
diff --git a/pkgs/development/python-modules/pylint-django/default.nix b/pkgs/development/python-modules/pylint-django/default.nix
index af4b0177eb2..9a33f10ddee 100644
--- a/pkgs/development/python-modules/pylint-django/default.nix
+++ b/pkgs/development/python-modules/pylint-django/default.nix
@@ -10,14 +10,14 @@
buildPythonPackage rec {
pname = "pylint-django";
- version = "2.0.15";
+ version = "2.1.0";
disabled = !isPy3k;
src = fetchFromGitHub {
owner = "PyCQA";
repo = pname;
rev = "v${version}";
- sha256 = "0wpzd3j01njxfclbhxz31s5clc7il67nhm4lz89q2aaj19c0xzsa";
+ sha256 = "1gvbh2a480x3ddrq6xzray7kdsz8nb8n16xm2lf03w2nqnsdbkwy";
};
propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/pytest-black/default.nix b/pkgs/development/python-modules/pytest-black/default.nix
index 5f391668b93..5a3219f430f 100644
--- a/pkgs/development/python-modules/pytest-black/default.nix
+++ b/pkgs/development/python-modules/pytest-black/default.nix
@@ -7,17 +7,19 @@
buildPythonPackage rec {
pname = "pytest-black";
- version = "0.3.9";
+ version = "0.3.10";
src = fetchPypi {
inherit pname version;
- sha256 = "c743dfeffe6b2cb25c0ed1a84cc306dff4b504b713b5a6d1bc3824fa73a7d693";
+ sha256 = "0dvlfic7nvfj97rg5fwj7ahw83n9yj3jjbp5m60n47mlx7z0qg2z";
};
nativeBuildInputs = [ setuptools_scm ];
propagatedBuildInputs = [ black pytest toml ];
+ pythonImportsCheck = [ "pytest_black" ];
+
meta = with lib; {
description = "A pytest plugin to enable format checking with black";
homepage = "https://github.com/shopkeep/pytest-black";
diff --git a/pkgs/development/python-modules/pyudev/default.nix b/pkgs/development/python-modules/pyudev/default.nix
index c26f9bcabe6..c0a401a1b2a 100644
--- a/pkgs/development/python-modules/pyudev/default.nix
+++ b/pkgs/development/python-modules/pyudev/default.nix
@@ -17,7 +17,7 @@ buildPythonPackage rec {
'';
checkInputs = [ pytest mock hypothesis docutils ];
- propagatedBuildInputs = [ systemd six ];
+ propagatedBuildInputs = [ six ];
checkPhase = ''
py.test
diff --git a/pkgs/development/python-modules/torchgpipe/default.nix b/pkgs/development/python-modules/torchgpipe/default.nix
new file mode 100644
index 00000000000..e7aa53360ed
--- /dev/null
+++ b/pkgs/development/python-modules/torchgpipe/default.nix
@@ -0,0 +1,39 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, isPy27
+, pytest
+, pytestrunner
+, pytestCheckHook
+, pytorch
+}:
+
+buildPythonPackage rec {
+ pname = "torchgpipe";
+ version = "0.0.5";
+
+ disabled = isPy27;
+
+ src = fetchFromGitHub {
+ owner = "kakaobrain";
+ repo = pname;
+ rev = "v${version}";
+ sha256 = "0mqdavnqb8a320li2r7xw11w2lg03l59xxyg2fxpg4z57v0rbasi";
+ };
+
+ propagatedBuildInputs = [ pytorch ];
+
+ checkInputs = [ pytest pytestrunner pytestCheckHook ];
+ disabledTests = [ "test_inplace_on_requires_grad" ];
+ # seems like a harmless failure:
+ ## AssertionError:
+ ## Pattern 'a leaf Variable that requires grad has been used in an in-place operation.'
+ ## does not match 'a leaf Variable that requires grad is being used in an in-place operation.'
+
+ meta = with lib; {
+ description = "GPipe implemented in Pytorch and optimized for CUDA rather than TPU";
+ homepage = "https://torchgpipe.readthedocs.io";
+ license = licenses.asl20;
+ maintainers = [ maintainers.bcdarwin ];
+ };
+}
diff --git a/pkgs/development/tools/bazel-kazel/default.nix b/pkgs/development/tools/bazel-kazel/default.nix
new file mode 100644
index 00000000000..9f1ab778ac8
--- /dev/null
+++ b/pkgs/development/tools/bazel-kazel/default.nix
@@ -0,0 +1,24 @@
+{ buildGoModule, fetchFromGitHub, lib }:
+
+buildGoModule rec {
+ pname = "bazel-kazel";
+ version = "0.0.7";
+
+ src = fetchFromGitHub {
+ owner = "kubernetes";
+ repo = "repo-infra";
+ rev = "v${version}";
+ sha256 = "0g4lgz5xgmxabaa8pygmdnrnslfrcb84vgr6bninl9v5zz4wajbm";
+ };
+
+ vendorSha256 = "1lizvg9r7cck1cgk20np2syv4ljbc0zj1kydiiajf7y5x7d3lwha";
+
+ subPackages = [ "cmd/kazel" ];
+
+ meta = with lib; {
+ description = "kazel - a BUILD file generator for go and bazel";
+ homepage = "https://github.com/kubernetes/repo-infra";
+ license = licenses.asl20;
+ maintainers = with maintainers; [ kalbasit ];
+ };
+}
diff --git a/pkgs/development/tools/build-managers/bazel/bazel_3/default.nix b/pkgs/development/tools/build-managers/bazel/bazel_3/default.nix
index c867ed7a85d..60c1662f9ff 100644
--- a/pkgs/development/tools/build-managers/bazel/bazel_3/default.nix
+++ b/pkgs/development/tools/build-managers/bazel/bazel_3/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, callPackage, lib, fetchurl, fetchFromGitHub
+{ stdenv, callPackage, lib, fetchurl, fetchFromGitHub, installShellFiles
, runCommand, runCommandCC, makeWrapper, recurseIntoAttrs
# this package (through the fixpoint glass)
, bazel_self
@@ -465,6 +465,7 @@ stdenv.mkDerivation rec {
# when a command can’t be found in a bazel build, you might also
# need to add it to `defaultShellPath`.
nativeBuildInputs = [
+ installShellFiles
zip
python3
unzip
@@ -507,9 +508,15 @@ stdenv.mkDerivation rec {
mv ./bazel_src/output/bazel $out/bin/bazel-${version}-${system}-${arch}
# shell completion files
- mkdir -p $out/share/bash-completion/completions $out/share/zsh/site-functions
- mv ./bazel_src/output/bazel-complete.bash $out/share/bash-completion/completions/bazel
- cp ./bazel_src/scripts/zsh_completion/_bazel $out/share/zsh/site-functions/
+ installShellCompletion --bash \
+ --name bazel.bash \
+ ./bazel_src/output/bazel-complete.bash
+ installShellCompletion --zsh \
+ --name _bazel \
+ ./bazel_src/scripts/zsh_completion/_bazel
+ installShellCompletion --fish \
+ --name bazel.fish \
+ ./bazel_src/scripts/fish/completions/bazel.fish
'';
doInstallCheck = true;
diff --git a/pkgs/development/tools/build-managers/cmake/setup-hook.sh b/pkgs/development/tools/build-managers/cmake/setup-hook.sh
index 87bbefa6bbf..73f24a9a205 100755
--- a/pkgs/development/tools/build-managers/cmake/setup-hook.sh
+++ b/pkgs/development/tools/build-managers/cmake/setup-hook.sh
@@ -68,6 +68,24 @@ cmakeConfigurePhase() {
# nix/store directory.
cmakeFlags="-DCMAKE_INSTALL_NAME_DIR=${!outputLib}/lib $cmakeFlags"
+ # The docdir flag needs to include PROJECT_NAME as per GNU guidelines,
+ # try to extract it from CMakeLists.txt.
+ if [[ -z "$shareDocName" ]]; then
+ local cmakeLists="${cmakeDir}/CMakeLists.txt"
+ if [[ -f "$cmakeLists" ]]; then
+ local shareDocName="$(grep --only-matching --perl-regexp --ignore-case '\bproject\s*\(\s*"?\K([^[:space:]")]+)' < "$cmakeLists" | head -n1)"
+ fi
+ # The argument sometimes contains garbage or variable interpolation.
+ # When that is the case, let’s fall back to the derivation name.
+ if [[ -z "$shareDocName" ]] || echo "$shareDocName" | grep -q '[^a-zA-Z0-9_-+]'; then
+ if [[ -n "${pname-}" ]]; then
+ shareDocName="$pname"
+ else
+ shareDocName="$(echo "$name" | sed 's/-[^a-zA-Z].*//')"
+ fi
+ fi
+ fi
+
# This ensures correct paths with multiple output derivations
# It requires the project to use variables from GNUInstallDirs module
# https://cmake.org/cmake/help/latest/module/GNUInstallDirs.html
diff --git a/pkgs/development/tools/build-managers/scons/common.nix b/pkgs/development/tools/build-managers/scons/common.nix
index 41ac16bed7a..7a15c193423 100644
--- a/pkgs/development/tools/build-managers/scons/common.nix
+++ b/pkgs/development/tools/build-managers/scons/common.nix
@@ -1,6 +1,6 @@
{ version, sha256 }:
-{ stdenv, fetchurl, python3Packages, python2Packages, scons }:
+{ stdenv, fetchurl, python3Packages, lib }:
python3Packages.buildPythonApplication rec {
pname = "scons";
@@ -13,7 +13,13 @@ python3Packages.buildPythonApplication rec {
setupHook = ./setup-hook.sh;
- passthru.py2 = scons.override { python3Packages = python2Packages; };
+ postPatch = lib.optionalString (lib.versionAtLeast version "4.0.0") ''
+ substituteInPlace setup.cfg \
+ --replace "build/dist" "dist"
+ '';
+
+ # The release tarballs don't contain any tests (runtest.py and test/*):
+ doCheck = lib.versionOlder version "4.0.0";
meta = with stdenv.lib; {
description = "An improved, cross-platform substitute for Make";
diff --git a/pkgs/development/tools/build-managers/scons/default.nix b/pkgs/development/tools/build-managers/scons/default.nix
index 19b092b86ba..eb86d595597 100644
--- a/pkgs/development/tools/build-managers/scons/default.nix
+++ b/pkgs/development/tools/build-managers/scons/default.nix
@@ -7,8 +7,12 @@ in {
version = "3.0.1";
sha256 = "0wzid419mlwqw9llrg8gsx4nkzhqy16m4m40r0xnh6cwscw5wir4";
}).override { python3Packages = python2Packages; };
- scons_latest = mkScons {
+ scons_3_1_2 = (mkScons {
version = "3.1.2";
sha256 = "1yzq2gg9zwz9rvfn42v5jzl3g4qf1khhny6zfbi2hib55zvg60bq";
+ }).override { python3Packages = python2Packages; };
+ scons_latest = mkScons {
+ version = "4.0.1";
+ sha256 = "0z00l9wzaiqyjq0hapbvsjclvcfjjjq04kmxi7ffq966nl2d2bkj";
};
}
diff --git a/pkgs/development/tools/continuous-integration/fly/default.nix b/pkgs/development/tools/continuous-integration/fly/default.nix
index bdad33dee74..8497cea01b6 100644
--- a/pkgs/development/tools/continuous-integration/fly/default.nix
+++ b/pkgs/development/tools/continuous-integration/fly/default.nix
@@ -2,16 +2,16 @@
buildGoModule rec {
pname = "fly";
- version = "6.3.0";
+ version = "6.4.0";
src = fetchFromGitHub {
owner = "concourse";
repo = "concourse";
rev = "v${version}";
- sha256 = "006qkg661hzbc2gpcnpxm09bp1kbb98y0bgdr49bjlnapcmdgr1b";
+ sha256 = "08lw345kzkic5b2dqj3d0d9x1mas9rpi4rdmbhww9r60swj169i7";
};
- vendorSha256 = "03az7l9rf2syw837zliny82xhkqlad16z0vfcg5h21m3bhz6v6jy";
+ vendorSha256 = "0a78cjfj909ic8wci8id2h5f6r34h90myk6z7m918n08vxv60jvw";
subPackages = [ "fly" ];
diff --git a/pkgs/development/tools/continuous-integration/jenkins/default.nix b/pkgs/development/tools/continuous-integration/jenkins/default.nix
index d9d7b490cf1..6086d204b33 100644
--- a/pkgs/development/tools/continuous-integration/jenkins/default.nix
+++ b/pkgs/development/tools/continuous-integration/jenkins/default.nix
@@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
pname = "jenkins";
- version = "2.235.1";
+ version = "2.235.2";
src = fetchurl {
url = "http://mirrors.jenkins.io/war-stable/${version}/jenkins.war";
- sha256 = "0pb7dy95ygvyb25hm6akf40f5gr5wa2njad7ncglrpmz14xfnxb3";
+ sha256 = "16rn5fbafkiriwzk6mr37am1270d64w6ngijr81kf7hpmz7lq4lp";
};
buildCommand = ''
diff --git a/pkgs/development/tools/flatpak-builder/default.nix b/pkgs/development/tools/flatpak-builder/default.nix
index 85b68cff20d..79c8236a065 100644
--- a/pkgs/development/tools/flatpak-builder/default.nix
+++ b/pkgs/development/tools/flatpak-builder/default.nix
@@ -46,13 +46,13 @@ let
installed_test_metadir = "${placeholder "installedTests"}/share/installed-tests/flatpak-builder";
in stdenv.mkDerivation rec {
pname = "flatpak-builder";
- version = "1.0.10";
+ version = "1.0.11";
outputs = [ "out" "doc" "man" "installedTests" ];
src = fetchurl {
url = "https://github.com/flatpak/flatpak-builder/releases/download/${version}/${pname}-${version}.tar.xz";
- sha256 = "1fn61cl1d33yd1jgqm8jpffjw3xlyyhkn032g14d9gnwkcaf4649";
+ sha256 = "EYNLdrvSs8S/GCYy0jGsnP1+C988y1j7WzcLfczM1Ew=";
};
nativeBuildInputs = [
@@ -87,9 +87,11 @@ in stdenv.mkDerivation rec {
patches = [
# patch taken from gtk_doc
./respect-xml-catalog-files-var.patch
+
+ # Hardcode paths
(substituteAll {
src = ./fix-paths.patch;
- bzr = "${breezy}/bin/bzr";
+ brz = "${breezy}/bin/brz";
cp = "${coreutils}/bin/cp";
patch = "${patch}/bin/patch";
tar = "${gnutar}/bin/tar";
diff --git a/pkgs/development/tools/flatpak-builder/fix-paths.patch b/pkgs/development/tools/flatpak-builder/fix-paths.patch
index e24fade6866..c0df2c6cbe7 100644
--- a/pkgs/development/tools/flatpak-builder/fix-paths.patch
+++ b/pkgs/development/tools/flatpak-builder/fix-paths.patch
@@ -1,5 +1,16 @@
+diff --git a/src/builder-context.c b/src/builder-context.c
+index dde12790..3a379297 100644
--- a/src/builder-context.c
+++ b/src/builder-context.c
+@@ -256,7 +256,7 @@ builder_context_init (BuilderContext *self)
+ g_autofree char *path = NULL;
+
+ self->rofiles_file_lock = init;
+- path = g_find_program_in_path ("rofiles-fuse");
++ path = g_find_program_in_path ("@rofilesfuse@");
+ self->have_rofiles = path != NULL;
+ }
+
@@ -800,7 +800,7 @@ builder_context_enable_rofiles (BuilderContext *self,
g_autoptr(GFile) rofiles_base = NULL;
g_autoptr(GFile) rofiles_dir = NULL;
@@ -9,6 +20,8 @@
"-o",
"kernel_cache,entry_timeout=60,attr_timeout=60,splice_write,splice_move",
(char *)flatpak_file_get_path_cached (self->app_dir),
+diff --git a/src/builder-git.c b/src/builder-git.c
+index ef517adb..6ab095f0 100644
--- a/src/builder-git.c
+++ b/src/builder-git.c
@@ -44,7 +44,7 @@ git (GFile *dir,
@@ -29,6 +42,8 @@
va_end (ap);
return res;
+diff --git a/src/builder-source-archive.c b/src/builder-source-archive.c
+index 3c694e57..0de62318 100644
--- a/src/builder-source-archive.c
+++ b/src/builder-source-archive.c
@@ -443,7 +443,7 @@ tar (GFile *dir,
@@ -67,17 +82,21 @@
va_end (ap);
return res;
+diff --git a/src/builder-source-bzr.c b/src/builder-source-bzr.c
+index ceeec94a..8abe6f53 100644
--- a/src/builder-source-bzr.c
+++ b/src/builder-source-bzr.c
@@ -124,7 +124,7 @@ bzr (GFile *dir,
+ gboolean res;
va_list ap;
- va_start (ap, error);
-- res = flatpak_spawn (dir, output, 0, error, "bzr", ap);
-+ res = flatpak_spawn (dir, output, 0, error, "@bzr@", ap);
- va_end (ap);
+- brz = g_find_program_in_path ("brz");
++ brz = g_find_program_in_path ("@brz@");
- return res;
+ va_start (ap, error);
+ res = flatpak_spawn (dir, output, 0, error, brz ? brz : "bzr", ap);
+diff --git a/src/builder-source-patch.c b/src/builder-source-patch.c
+index 8721e1e4..d7f4d840 100644
--- a/src/builder-source-patch.c
+++ b/src/builder-source-patch.c
@@ -247,15 +247,15 @@ patch (GFile *dir,
@@ -99,6 +118,8 @@
}
for (i = 0; extra_options != NULL && extra_options[i] != NULL; i++)
g_ptr_array_add (args, (gchar *) extra_options[i]);
+diff --git a/src/builder-utils.c b/src/builder-utils.c
+index f1c06db5..2e3347c5 100644
--- a/src/builder-utils.c
+++ b/src/builder-utils.c
@@ -149,7 +149,7 @@ strip (GError **error,
diff --git a/pkgs/development/tools/gopls/default.nix b/pkgs/development/tools/gopls/default.nix
index a77f9fa8ddd..cfa4defe04b 100644
--- a/pkgs/development/tools/gopls/default.nix
+++ b/pkgs/development/tools/gopls/default.nix
@@ -2,21 +2,21 @@
buildGoModule rec {
pname = "gopls";
- version = "0.4.1";
+ version = "0.4.3";
src = fetchgit {
rev = "gopls/v${version}";
url = "https://go.googlesource.com/tools";
- sha256 = "18migk7arxm8ysfzidl7mdr069fxym9bfi6zisj7dliczw0qnkzv";
+ sha256 = "1r670c7p63l0fhx671r3mb1jgvvfv1382079fv59z07j5j5hizbc";
};
modRoot = "gopls";
- vendorSha256 = "1jaav6c5vybgks5hc164is0i7h097c5l75s7w3wi5a3zyzkbiyny";
+ vendorSha256 = "1xdvkdkvk7a32jspzjcgxkfdn78d2zm53wxmc9c4sqysxsgy6lbw";
meta = with stdenv.lib; {
description = "Official language server for the Go language";
homepage = "https://github.com/golang/tools/tree/master/gopls";
license = licenses.bsd3;
- maintainers = with maintainers; [ mic92 ];
+ maintainers = with maintainers; [ mic92 zimbatm ];
};
-}
\ No newline at end of file
+}
diff --git a/pkgs/development/tools/metals/default.nix b/pkgs/development/tools/metals/default.nix
index be471a6e530..e5046d1d1d9 100644
--- a/pkgs/development/tools/metals/default.nix
+++ b/pkgs/development/tools/metals/default.nix
@@ -1,10 +1,11 @@
{ stdenv, lib, coursier, jdk, jre, makeWrapper }:
-let
- baseName = "metals";
- version = "0.9.1";
+stdenv.mkDerivation rec {
+ pname = "metals";
+ version = "0.9.2";
+
deps = stdenv.mkDerivation {
- name = "${baseName}-deps-${version}";
+ name = "${pname}-deps-${version}";
buildCommand = ''
export COURSIER_CACHE=$(pwd)
${coursier}/bin/coursier fetch org.scalameta:metals_2.12:${version} \
@@ -15,11 +16,8 @@ let
'';
outputHashMode = "recursive";
outputHashAlgo = "sha256";
- outputHash = "1pa84y7jrfl8p7lwz2pjlv70fqg1wmcz98npqq5i443smf7r9v4f";
+ outputHash = "1gnf2p578nk1ygx3cc4mb7fa690c51nbdwvc2qz2805m4xg3x7zv";
};
-in
-stdenv.mkDerivation rec {
- name = "${baseName}-${version}";
nativeBuildInputs = [ makeWrapper ];
buildInputs = [ jdk deps ];
diff --git a/pkgs/development/tools/misc/automake/automake-1.15.x.nix b/pkgs/development/tools/misc/automake/automake-1.15.x.nix
index 858cb9a4f22..bf0967e9ddb 100644
--- a/pkgs/development/tools/misc/automake/automake-1.15.x.nix
+++ b/pkgs/development/tools/misc/automake/automake-1.15.x.nix
@@ -1,11 +1,11 @@
{ stdenv, fetchurl, perl, autoconf }:
stdenv.mkDerivation rec {
- name = "automake-1.15";
+ name = "automake-1.15.1";
src = fetchurl {
url = "mirror://gnu/automake/${name}.tar.xz";
- sha256 = "0dl6vfi2lzz8alnklwxzfz624b95hb1ipjvd3mk177flmddcf24r";
+ sha256 = "1bzd9g32dfm4rsbw93ld9x7b5nc1y6i4m6zp032qf1i28a8s6sxg";
};
nativeBuildInputs = [ autoconf perl ];
diff --git a/pkgs/development/tools/misc/help2man/default.nix b/pkgs/development/tools/misc/help2man/default.nix
index e23ccf27323..74ba7f55093 100644
--- a/pkgs/development/tools/misc/help2man/default.nix
+++ b/pkgs/development/tools/misc/help2man/default.nix
@@ -1,11 +1,11 @@
{ stdenv, fetchurl, perlPackages, gettext }:
stdenv.mkDerivation rec {
- name = "help2man-1.47.15";
+ name = "help2man-1.47.16";
src = fetchurl {
url = "mirror://gnu/help2man/${name}.tar.xz";
- sha256 = "076dvc0z0qp73rpmg0c8bkpfh969h4gzzc442hv1bcyf1srkann2";
+ sha256 = "1x586h7wvripcay35kdh2kvydx84y8yy93ffjah2rqw6bc65iy1y";
};
nativeBuildInputs = [ gettext perlPackages.LocaleGettext ];
diff --git a/pkgs/development/tools/mustache-go/default.nix b/pkgs/development/tools/mustache-go/default.nix
index 2f3d21f9c82..7bcf72df55c 100644
--- a/pkgs/development/tools/mustache-go/default.nix
+++ b/pkgs/development/tools/mustache-go/default.nix
@@ -2,7 +2,7 @@
buildGoPackage rec {
pname = "mustache-go";
- version = "1.0.1";
+ version = "1.2.0";
goPackagePath = "github.com/cbroglie/mustache";
@@ -10,7 +10,7 @@ buildGoPackage rec {
owner = "cbroglie";
repo = "mustache";
rev = "v${version}";
- sha256 = "1aywj4fijsv66n6gjiz3l8g1vg0fqzwbf8dcdcgfsvsdb056p90v";
+ sha256 = "0mnh5zbpfwymddm1dppg9i9d1r8jqyg03z2gl6c5a8fgbrnxpjvc";
};
meta = with stdenv.lib; {
diff --git a/pkgs/development/tools/nsis/default.nix b/pkgs/development/tools/nsis/default.nix
index 5b9e7434a8d..bb29bcfdc0f 100644
--- a/pkgs/development/tools/nsis/default.nix
+++ b/pkgs/development/tools/nsis/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, fetchzip, scons, zlib }:
+{ stdenv, fetchurl, fetchzip, sconsPackages, zlib }:
stdenv.mkDerivation rec {
pname = "nsis";
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
chmod -R u+w $out/share/nsis
'';
- nativeBuildInputs = [ scons.py2 ];
+ nativeBuildInputs = [ sconsPackages.scons_3_1_2 ];
buildInputs = [ zlib ];
sconsFlags = [
diff --git a/pkgs/development/tools/parsing/bison/default.nix b/pkgs/development/tools/parsing/bison/default.nix
index 0b6476998bf..ba2caac96c9 100644
--- a/pkgs/development/tools/parsing/bison/default.nix
+++ b/pkgs/development/tools/parsing/bison/default.nix
@@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
pname = "bison";
- version = "3.6.3";
+ version = "3.6.4";
src = fetchurl {
url = "mirror://gnu/${pname}/${pname}-${version}.tar.gz";
- sha256 = "0qry9ar16dpg9nzrq7jh3fqh4ah2xvcf6v00fc81z08yjd1ljk2b";
+ sha256 = "1s8kmfhg7a58vm65fc977ckp8zspy8diayrcjhs3cgrqnmjdx0w1";
};
nativeBuildInputs = [ m4 perl ] ++ stdenv.lib.optional stdenv.isSunOS help2man;
diff --git a/pkgs/development/tools/rust/cargo-expand/default.nix b/pkgs/development/tools/rust/cargo-expand/default.nix
index ebe23e19737..8dd09a2deef 100644
--- a/pkgs/development/tools/rust/cargo-expand/default.nix
+++ b/pkgs/development/tools/rust/cargo-expand/default.nix
@@ -2,16 +2,16 @@
rustPlatform.buildRustPackage rec {
pname = "cargo-expand";
- version = "0.6.0";
+ version = "0.6.4";
src = fetchFromGitHub {
owner = "dtolnay";
repo = pname;
rev = version;
- sha256 = "1xinaxxdsyhy8jl6albw8q9nl12iq11xny6a6a55niqzhvy1sdmp";
+ sha256 = "0a00sw6r8z6pyqqa6f5c7czxjnjdx3kz1bacy790nsngvz17l30h";
};
- cargoSha256 = "0i326vny4gygalsimsgkqsvlq09av8pv9a7a0yxcbk170a7zyxb0";
+ cargoSha256 = "0x92yh9pl30h4k53269dgnryb6z8nfl2mfx3wpcp3ph5na2knwpj";
meta = with lib; {
description =
diff --git a/pkgs/development/tools/rust/cargo-fuzz/default.nix b/pkgs/development/tools/rust/cargo-fuzz/default.nix
index 7379fbffe5e..ea51cef24bd 100644
--- a/pkgs/development/tools/rust/cargo-fuzz/default.nix
+++ b/pkgs/development/tools/rust/cargo-fuzz/default.nix
@@ -2,16 +2,16 @@
rustPlatform.buildRustPackage rec {
pname = "cargo-fuzz";
- version = "0.5.4";
+ version = "0.8.0";
src = fetchFromGitHub {
owner = "rust-fuzz";
repo = "cargo-fuzz";
rev = version;
- sha256 = "0qy4xb7bxyw2x2ya7zmbkz48wxb69jcnvvj7021f1kyc6wdwcxs7";
+ sha256 = "1d4bq9140bri8cd9zcxh5hhc51vr0s6jadjhwkp688w7k10rq7w8";
};
- cargoSha256 = "0d24crgx6wrb1p96w2yww7cs474x2pz4i6f26cry8pf5dwqfsqdm";
+ cargoSha256 = "0zxhak79f50m8nw95ny733mk4x2f7kyk6q9v4f7jr2rkcldhgrpr";
meta = with stdenv.lib; {
description = "Command line helpers for fuzzing";
diff --git a/pkgs/development/tools/rust/rustup/default.nix b/pkgs/development/tools/rust/rustup/default.nix
index fd772ff40b2..bdd916ccdda 100644
--- a/pkgs/development/tools/rust/rustup/default.nix
+++ b/pkgs/development/tools/rust/rustup/default.nix
@@ -39,9 +39,7 @@ rustPlatform.buildRustPackage rec {
)
];
- # Disable tests until they can be run with --features no-self-update
- doCheck = false;
- #doCheck = !stdenv.isAarch64 && !stdenv.isDarwin;
+ doCheck = !stdenv.isAarch64 && !stdenv.isDarwin;
postInstall = ''
pushd $out/bin
diff --git a/pkgs/development/tools/wabt/default.nix b/pkgs/development/tools/wabt/default.nix
index 11c9875bf9d..45e2fcd3f18 100644
--- a/pkgs/development/tools/wabt/default.nix
+++ b/pkgs/development/tools/wabt/default.nix
@@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "wabt";
- version = "1.0.16";
+ version = "1.0.18";
src = fetchFromGitHub {
owner = "WebAssembly";
repo = "wabt";
rev = version;
- sha256 = "1zzc46d6m7l5lil423417crdda2cqb396p2idcla2ps161hwq3qp";
+ sha256 = "06b90ajgxqp4hcw7fqag7gphdn4q1rfglb7cw868n7wskwv45kc7";
fetchSubmodules = true;
};
diff --git a/pkgs/development/tools/wasm-bindgen-cli/0001-Add-cargo.lock.patch b/pkgs/development/tools/wasm-bindgen-cli/0001-Add-cargo.lock.patch
deleted file mode 100644
index 12184c7d21e..00000000000
--- a/pkgs/development/tools/wasm-bindgen-cli/0001-Add-cargo.lock.patch
+++ /dev/null
@@ -1,2560 +0,0 @@
-From b1a7247a9b9bd327c01723cdc9334c0e7ec9a10e Mon Sep 17 00:00:00 2001
-From: Maximilian Bosch
-Date: Mon, 29 Jun 2020 17:33:55 +0200
-Subject: [PATCH] Add cargo.lock
-
----
- Cargo.lock | 2541 ++++++++++++++++++++++++++++++++++++++++++++++++++++
- 1 file changed, 2541 insertions(+)
- create mode 100644 Cargo.lock
-
-diff --git a/Cargo.lock b/Cargo.lock
-new file mode 100644
-index 00000000..04bdba9f
---- /dev/null
-+++ b/Cargo.lock
-@@ -0,0 +1,2541 @@
-+# This file is automatically @generated by Cargo.
-+# It is not intended for manual editing.
-+[[package]]
-+name = "add"
-+version = "0.1.0"
-+dependencies = [
-+ "wasm-bindgen",
-+]
-+
-+[[package]]
-+name = "adler32"
-+version = "1.1.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "567b077b825e468cc974f0020d4082ee6e03132512f207ef1a02fd5d00d1f32d"
-+
-+[[package]]
-+name = "aho-corasick"
-+version = "0.7.13"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "043164d8ba5c4c3035fec9bbee8647c0261d788f3474306f93bb65901cae0e86"
-+dependencies = [
-+ "memchr",
-+]
-+
-+[[package]]
-+name = "ansi_term"
-+version = "0.11.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b"
-+dependencies = [
-+ "winapi",
-+]
-+
-+[[package]]
-+name = "anyhow"
-+version = "1.0.31"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "85bb70cc08ec97ca5450e6eba421deeea5f172c0fc61f78b5357b2a8e8be195f"
-+
-+[[package]]
-+name = "arrayref"
-+version = "0.3.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "a4c527152e37cf757a3f78aae5a06fbeefdb07ccc535c980a3208ee3060dd544"
-+
-+[[package]]
-+name = "arrayvec"
-+version = "0.5.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "cff77d8686867eceff3105329d4698d96c2391c176d5d03adc90c7389162b5b8"
-+
-+[[package]]
-+name = "ascii"
-+version = "0.8.7"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "97be891acc47ca214468e09425d02cef3af2c94d0d82081cd02061f996802f14"
-+
-+[[package]]
-+name = "askama"
-+version = "0.9.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "10a1fb9e41eb366cbcd267da2094be5b7e62fdbca9f82091e7503e80f885050d"
-+dependencies = [
-+ "askama_derive",
-+ "askama_escape",
-+ "askama_shared",
-+]
-+
-+[[package]]
-+name = "askama_derive"
-+version = "0.9.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "e1012c270085fa35ece6a48a569544fde85b6d9ee41074c7b706cc912a03f939"
-+dependencies = [
-+ "askama_shared",
-+ "nom",
-+ "proc-macro2",
-+ "quote",
-+ "syn",
-+]
-+
-+[[package]]
-+name = "askama_escape"
-+version = "0.3.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "7a577aeba5fec1aafb9f195d98cfcc38a78b588e4ebf9b15f62ca1c7aa33795a"
-+
-+[[package]]
-+name = "askama_shared"
-+version = "0.9.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "8ee517f4e33c27b129928e71d8a044d54c513e72e0b72ec5c4f5f1823e9de353"
-+dependencies = [
-+ "askama_escape",
-+ "humansize",
-+ "num-traits 0.2.12",
-+ "serde",
-+ "toml",
-+]
-+
-+[[package]]
-+name = "assert_cmd"
-+version = "1.0.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "c88b9ca26f9c16ec830350d309397e74ee9abdfd8eb1f71cb6ecc71a3fc818da"
-+dependencies = [
-+ "doc-comment",
-+ "predicates",
-+ "predicates-core",
-+ "predicates-tree",
-+ "wait-timeout",
-+]
-+
-+[[package]]
-+name = "atty"
-+version = "0.2.14"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8"
-+dependencies = [
-+ "hermit-abi",
-+ "libc",
-+ "winapi",
-+]
-+
-+[[package]]
-+name = "autocfg"
-+version = "0.1.7"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "1d49d90015b3c36167a20fe2810c5cd875ad504b39cff3d4eae7977e6b7c1cb2"
-+
-+[[package]]
-+name = "autocfg"
-+version = "1.0.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "f8aac770f1885fd7e387acedd76065302551364496e46b3dd00860b2f8359b9d"
-+
-+[[package]]
-+name = "base64"
-+version = "0.9.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "489d6c0ed21b11d038c31b6ceccca973e65d73ba3bd8ecb9a2babf5546164643"
-+dependencies = [
-+ "byteorder",
-+ "safemem",
-+]
-+
-+[[package]]
-+name = "base64"
-+version = "0.11.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "b41b7ea54a0c9d92199de89e20e58d49f02f8e699814ef3fdf266f6f748d15c7"
-+
-+[[package]]
-+name = "bitflags"
-+version = "0.7.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "aad18937a628ec6abcd26d1489012cc0e18c21798210f491af69ded9b881106d"
-+
-+[[package]]
-+name = "bitflags"
-+version = "1.2.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693"
-+
-+[[package]]
-+name = "blake2b_simd"
-+version = "0.5.10"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d8fb2d74254a3a0b5cac33ac9f8ed0e44aa50378d9dbb2e5d83bd21ed1dc2c8a"
-+dependencies = [
-+ "arrayref",
-+ "arrayvec",
-+ "constant_time_eq",
-+]
-+
-+[[package]]
-+name = "buf_redux"
-+version = "0.8.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "b953a6887648bb07a535631f2bc00fbdb2a2216f135552cb3f534ed136b9c07f"
-+dependencies = [
-+ "memchr",
-+ "safemem",
-+]
-+
-+[[package]]
-+name = "bumpalo"
-+version = "3.4.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "2e8c087f005730276d1096a652e92a8bacee2e2472bcc9715a74d2bec38b5820"
-+
-+[[package]]
-+name = "byteorder"
-+version = "1.3.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "08c48aae112d48ed9f069b33538ea9e3e90aa263cfa3d1c24309612b1f7472de"
-+
-+[[package]]
-+name = "canvas"
-+version = "0.1.0"
-+dependencies = [
-+ "js-sys",
-+ "wasm-bindgen",
-+ "web-sys",
-+]
-+
-+[[package]]
-+name = "cc"
-+version = "1.0.56"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "77c1f1d60091c1b73e2b1f4560ab419204b178e625fa945ded7b660becd2bd46"
-+
-+[[package]]
-+name = "cfg-if"
-+version = "0.1.10"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
-+
-+[[package]]
-+name = "char"
-+version = "0.1.0"
-+dependencies = [
-+ "wasm-bindgen",
-+]
-+
-+[[package]]
-+name = "chrono"
-+version = "0.4.11"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "80094f509cf8b5ae86a4966a39b3ff66cd7e2a3e594accec3743ff3fabeab5b2"
-+dependencies = [
-+ "num-integer",
-+ "num-traits 0.2.12",
-+ "time",
-+]
-+
-+[[package]]
-+name = "chunked_transfer"
-+version = "0.3.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "498d20a7aaf62625b9bf26e637cf7736417cde1d0c99f1d04d1170229a85cf87"
-+
-+[[package]]
-+name = "clap"
-+version = "2.33.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "bdfa80d47f954d53a35a64987ca1422f495b8d6483c0fe9f7117b36c2a792129"
-+dependencies = [
-+ "ansi_term",
-+ "atty",
-+ "bitflags 1.2.1",
-+ "strsim 0.8.0",
-+ "textwrap",
-+ "unicode-width",
-+ "vec_map",
-+]
-+
-+[[package]]
-+name = "closures"
-+version = "0.1.0"
-+dependencies = [
-+ "js-sys",
-+ "wasm-bindgen",
-+ "web-sys",
-+]
-+
-+[[package]]
-+name = "cloudabi"
-+version = "0.0.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f"
-+dependencies = [
-+ "bitflags 1.2.1",
-+]
-+
-+[[package]]
-+name = "color_quant"
-+version = "1.0.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "0dbbb57365263e881e805dc77d94697c9118fd94d8da011240555aa7b23445bd"
-+
-+[[package]]
-+name = "console_error_panic_hook"
-+version = "0.1.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "b8d976903543e0c48546a91908f21588a680a8c8f984df9a5d69feccb2b2a211"
-+dependencies = [
-+ "cfg-if",
-+ "wasm-bindgen",
-+]
-+
-+[[package]]
-+name = "console_log"
-+version = "0.1.0"
-+dependencies = [
-+ "wasm-bindgen",
-+ "web-sys",
-+]
-+
-+[[package]]
-+name = "constant_time_eq"
-+version = "0.1.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "245097e9a4535ee1e3e3931fcfcd55a796a44c643e8596ff6566d68f09b87bbc"
-+
-+[[package]]
-+name = "crossbeam-deque"
-+version = "0.7.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "9f02af974daeee82218205558e51ec8768b48cf524bd01d550abe5573a608285"
-+dependencies = [
-+ "crossbeam-epoch",
-+ "crossbeam-utils",
-+ "maybe-uninit",
-+]
-+
-+[[package]]
-+name = "crossbeam-epoch"
-+version = "0.8.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "058ed274caafc1f60c4997b5fc07bf7dc7cca454af7c6e81edffe5f33f70dace"
-+dependencies = [
-+ "autocfg 1.0.0",
-+ "cfg-if",
-+ "crossbeam-utils",
-+ "lazy_static",
-+ "maybe-uninit",
-+ "memoffset",
-+ "scopeguard",
-+]
-+
-+[[package]]
-+name = "crossbeam-queue"
-+version = "0.2.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "774ba60a54c213d409d5353bda12d49cd68d14e45036a285234c8d6f91f92570"
-+dependencies = [
-+ "cfg-if",
-+ "crossbeam-utils",
-+ "maybe-uninit",
-+]
-+
-+[[package]]
-+name = "crossbeam-utils"
-+version = "0.7.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "c3c7c73a2d1e9fc0886a08b93e98eb643461230d5f1925e4036204d5f2e261a8"
-+dependencies = [
-+ "autocfg 1.0.0",
-+ "cfg-if",
-+ "lazy_static",
-+]
-+
-+[[package]]
-+name = "curl"
-+version = "0.4.30"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "b0447a642435be046540f042950d874a4907f9fee28c0513a0beb3ba89f91eb7"
-+dependencies = [
-+ "curl-sys",
-+ "libc",
-+ "openssl-probe",
-+ "openssl-sys",
-+ "schannel",
-+ "socket2",
-+ "winapi",
-+]
-+
-+[[package]]
-+name = "curl-sys"
-+version = "0.4.32+curl-7.70.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "834425a2f22fdd621434196965bf99fbfd9eaed96348488e27b7ac40736c560b"
-+dependencies = [
-+ "cc",
-+ "libc",
-+ "libz-sys",
-+ "openssl-sys",
-+ "pkg-config",
-+ "vcpkg",
-+ "winapi",
-+]
-+
-+[[package]]
-+name = "deflate"
-+version = "0.7.20"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "707b6a7b384888a70c8d2e8650b3e60170dfc6a67bb4aa67b6dfca57af4bedb4"
-+dependencies = [
-+ "adler32",
-+ "byteorder",
-+]
-+
-+[[package]]
-+name = "deno"
-+version = "0.1.0"
-+dependencies = [
-+ "wasm-bindgen",
-+]
-+
-+[[package]]
-+name = "diff"
-+version = "0.1.12"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "0e25ea47919b1560c4e3b7fe0aaab9becf5b84a10325ddf7db0f0ba5e1026499"
-+
-+[[package]]
-+name = "difference"
-+version = "2.0.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "524cbf6897b527295dff137cec09ecf3a05f4fddffd7dfcd1585403449e74198"
-+
-+[[package]]
-+name = "dirs"
-+version = "1.0.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "3fd78930633bd1c6e35c4b42b1df7b0cbc6bc191146e512bb3bedf243fcc3901"
-+dependencies = [
-+ "libc",
-+ "redox_users",
-+ "winapi",
-+]
-+
-+[[package]]
-+name = "doc-comment"
-+version = "0.3.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "fea41bba32d969b513997752735605054bc0dfa92b4c56bf1189f2e174be7a10"
-+
-+[[package]]
-+name = "docopt"
-+version = "1.1.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "7f525a586d310c87df72ebcd98009e57f1cc030c8c268305287a476beb653969"
-+dependencies = [
-+ "lazy_static",
-+ "regex",
-+ "serde",
-+ "strsim 0.9.3",
-+]
-+
-+[[package]]
-+name = "dom"
-+version = "0.1.0"
-+dependencies = [
-+ "wasm-bindgen",
-+ "web-sys",
-+]
-+
-+[[package]]
-+name = "either"
-+version = "1.5.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "bb1f6b1ce1c140482ea30ddd3335fc0024ac7ee112895426e0a629a6c20adfe3"
-+
-+[[package]]
-+name = "enum_primitive"
-+version = "0.1.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "be4551092f4d519593039259a9ed8daedf0da12e5109c5280338073eaeb81180"
-+dependencies = [
-+ "num-traits 0.1.43",
-+]
-+
-+[[package]]
-+name = "env_logger"
-+version = "0.7.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "44533bbbb3bb3c1fa17d9f2e4e38bbbaf8396ba82193c4cb1b6445d711445d36"
-+dependencies = [
-+ "atty",
-+ "humantime 1.3.0",
-+ "log 0.4.8",
-+ "regex",
-+ "termcolor",
-+]
-+
-+[[package]]
-+name = "fetch"
-+version = "0.1.0"
-+dependencies = [
-+ "js-sys",
-+ "serde",
-+ "serde_derive",
-+ "wasm-bindgen",
-+ "wasm-bindgen-futures",
-+ "web-sys",
-+]
-+
-+[[package]]
-+name = "filetime"
-+version = "0.2.10"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "affc17579b132fc2461adf7c575cc6e8b134ebca52c51f5411388965227dc695"
-+dependencies = [
-+ "cfg-if",
-+ "libc",
-+ "redox_syscall",
-+ "winapi",
-+]
-+
-+[[package]]
-+name = "float-cmp"
-+version = "0.6.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "da62c4f1b81918835a8c6a484a397775fff5953fe83529afd51b05f5c6a6617d"
-+dependencies = [
-+ "num-traits 0.2.12",
-+]
-+
-+[[package]]
-+name = "foreign-types"
-+version = "0.3.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
-+dependencies = [
-+ "foreign-types-shared",
-+]
-+
-+[[package]]
-+name = "foreign-types-shared"
-+version = "0.1.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
-+
-+[[package]]
-+name = "fuchsia-cprng"
-+version = "0.1.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba"
-+
-+[[package]]
-+name = "futures"
-+version = "0.3.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "1e05b85ec287aac0dc34db7d4a569323df697f9c55b99b15d6b4ef8cde49f613"
-+dependencies = [
-+ "futures-channel",
-+ "futures-core",
-+ "futures-executor",
-+ "futures-io",
-+ "futures-sink",
-+ "futures-task",
-+ "futures-util",
-+]
-+
-+[[package]]
-+name = "futures-channel"
-+version = "0.3.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "f366ad74c28cca6ba456d95e6422883cfb4b252a83bed929c83abfdbbf2967d5"
-+dependencies = [
-+ "futures-core",
-+ "futures-sink",
-+]
-+
-+[[package]]
-+name = "futures-channel-preview"
-+version = "0.3.0-alpha.19"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d5e5f4df964fa9c1c2f8bddeb5c3611631cacd93baf810fc8bb2fb4b495c263a"
-+dependencies = [
-+ "futures-core-preview",
-+]
-+
-+[[package]]
-+name = "futures-core"
-+version = "0.3.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "59f5fff90fd5d971f936ad674802482ba441b6f09ba5e15fd8b39145582ca399"
-+
-+[[package]]
-+name = "futures-core-preview"
-+version = "0.3.0-alpha.19"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "b35b6263fb1ef523c3056565fa67b1d16f0a8604ff12b11b08c25f28a734c60a"
-+
-+[[package]]
-+name = "futures-executor"
-+version = "0.3.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "10d6bb888be1153d3abeb9006b11b02cf5e9b209fda28693c31ae1e4e012e314"
-+dependencies = [
-+ "futures-core",
-+ "futures-task",
-+ "futures-util",
-+]
-+
-+[[package]]
-+name = "futures-io"
-+version = "0.3.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "de27142b013a8e869c14957e6d2edeef89e97c289e69d042ee3a49acd8b51789"
-+
-+[[package]]
-+name = "futures-macro"
-+version = "0.3.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d0b5a30a4328ab5473878237c447333c093297bded83a4983d10f4deea240d39"
-+dependencies = [
-+ "proc-macro-hack",
-+ "proc-macro2",
-+ "quote",
-+ "syn",
-+]
-+
-+[[package]]
-+name = "futures-sink"
-+version = "0.3.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "3f2032893cb734c7a05d85ce0cc8b8c4075278e93b24b66f9de99d6eb0fa8acc"
-+
-+[[package]]
-+name = "futures-task"
-+version = "0.3.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "bdb66b5f09e22019b1ab0830f7785bcea8e7a42148683f99214f73f8ec21a626"
-+dependencies = [
-+ "once_cell",
-+]
-+
-+[[package]]
-+name = "futures-util"
-+version = "0.3.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "8764574ff08b701a084482c3c7031349104b07ac897393010494beaa18ce32c6"
-+dependencies = [
-+ "futures-channel",
-+ "futures-core",
-+ "futures-io",
-+ "futures-macro",
-+ "futures-sink",
-+ "futures-task",
-+ "memchr",
-+ "pin-project",
-+ "pin-utils",
-+ "proc-macro-hack",
-+ "proc-macro-nested",
-+ "slab",
-+]
-+
-+[[package]]
-+name = "getrandom"
-+version = "0.1.14"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "7abc8dd8451921606d809ba32e95b6111925cd2906060d2dcc29c070220503eb"
-+dependencies = [
-+ "cfg-if",
-+ "libc",
-+ "wasi",
-+]
-+
-+[[package]]
-+name = "gif"
-+version = "0.9.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "e2e41945ba23db3bf51b24756d73d81acb4f28d85c3dccc32c6fae904438c25f"
-+dependencies = [
-+ "color_quant",
-+ "lzw",
-+]
-+
-+[[package]]
-+name = "glob"
-+version = "0.3.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "9b919933a397b79c37e33b77bb2aa3dc8eb6e165ad809e58ff75bc7db2e34574"
-+
-+[[package]]
-+name = "guide-supported-types-examples"
-+version = "0.1.0"
-+dependencies = [
-+ "wasm-bindgen",
-+]
-+
-+[[package]]
-+name = "heck"
-+version = "0.3.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "20564e78d53d2bb135c343b3f47714a56af2061f1c928fdb541dc7b9fdd94205"
-+dependencies = [
-+ "unicode-segmentation",
-+]
-+
-+[[package]]
-+name = "hello_world"
-+version = "0.1.0"
-+dependencies = [
-+ "wasm-bindgen",
-+]
-+
-+[[package]]
-+name = "hermit-abi"
-+version = "0.1.14"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "b9586eedd4ce6b3c498bc3b4dd92fc9f11166aa908a914071953768066c67909"
-+dependencies = [
-+ "libc",
-+]
-+
-+[[package]]
-+name = "httparse"
-+version = "1.3.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "cd179ae861f0c2e53da70d892f5f3029f9594be0c41dc5269cd371691b1dc2f9"
-+
-+[[package]]
-+name = "humansize"
-+version = "1.1.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "b6cab2627acfc432780848602f3f558f7e9dd427352224b0d9324025796d2a5e"
-+
-+[[package]]
-+name = "humantime"
-+version = "1.3.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "df004cfca50ef23c36850aaaa59ad52cc70d0e90243c3c7737a4dd32dc7a3c4f"
-+dependencies = [
-+ "quick-error",
-+]
-+
-+[[package]]
-+name = "humantime"
-+version = "2.0.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "3c1ad908cc71012b7bea4d0c53ba96a8cba9962f048fa68d143376143d863b7a"
-+
-+[[package]]
-+name = "id-arena"
-+version = "2.2.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "25a2bc672d1148e28034f176e01fffebb08b35768468cc954630da77a1449005"
-+dependencies = [
-+ "rayon",
-+]
-+
-+[[package]]
-+name = "idna"
-+version = "0.1.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "38f09e0f0b1fb55fdee1f17470ad800da77af5186a1a76c026b679358b7e844e"
-+dependencies = [
-+ "matches",
-+ "unicode-bidi",
-+ "unicode-normalization",
-+]
-+
-+[[package]]
-+name = "image"
-+version = "0.12.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d95816db758249fe16f23a4e23f1a3a817fe11892dbfd1c5836f625324702158"
-+dependencies = [
-+ "byteorder",
-+ "enum_primitive",
-+ "gif",
-+ "jpeg-decoder",
-+ "num-iter",
-+ "num-rational",
-+ "num-traits 0.1.43",
-+ "png",
-+ "scoped_threadpool",
-+]
-+
-+[[package]]
-+name = "import_js"
-+version = "0.1.0"
-+dependencies = [
-+ "wasm-bindgen",
-+]
-+
-+[[package]]
-+name = "inflate"
-+version = "0.1.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "e7e0062d2dc2f17d2f13750d95316ae8a2ff909af0fda957084f5defd87c43bb"
-+
-+[[package]]
-+name = "itoa"
-+version = "0.4.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "dc6f3ad7b9d11a0c00842ff8de1b60ee58661048eb8049ed33c73594f359d7e6"
-+
-+[[package]]
-+name = "jpeg-decoder"
-+version = "0.1.19"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "5b47b4c4e017b01abdc5bcc126d2d1002e5a75bbe3ce73f9f4f311a916363704"
-+dependencies = [
-+ "byteorder",
-+ "rayon",
-+]
-+
-+[[package]]
-+name = "js-sys"
-+version = "0.3.41"
-+dependencies = [
-+ "wasm-bindgen",
-+ "wasm-bindgen-futures",
-+ "wasm-bindgen-test",
-+]
-+
-+[[package]]
-+name = "julia_set"
-+version = "0.1.0"
-+dependencies = [
-+ "wasm-bindgen",
-+ "web-sys",
-+]
-+
-+[[package]]
-+name = "lazy_static"
-+version = "1.4.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
-+
-+[[package]]
-+name = "leb128"
-+version = "0.2.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "3576a87f2ba00f6f106fdfcd16db1d698d648a26ad8e0573cad8537c3c362d2a"
-+
-+[[package]]
-+name = "libc"
-+version = "0.2.71"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "9457b06509d27052635f90d6466700c65095fdf75409b3fbdd903e988b886f49"
-+
-+[[package]]
-+name = "libz-sys"
-+version = "1.0.25"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "2eb5e43362e38e2bca2fd5f5134c4d4564a23a5c28e9b95411652021a8675ebe"
-+dependencies = [
-+ "cc",
-+ "libc",
-+ "pkg-config",
-+ "vcpkg",
-+]
-+
-+[[package]]
-+name = "log"
-+version = "0.3.9"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "e19e8d5c34a3e0e2223db8e060f9e8264aeeb5c5fc64a4ee9965c062211c024b"
-+dependencies = [
-+ "log 0.4.8",
-+]
-+
-+[[package]]
-+name = "log"
-+version = "0.4.8"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "14b6052be84e6b71ab17edffc2eeabf5c2c3ae1fdb464aae35ac50c67a44e1f7"
-+dependencies = [
-+ "cfg-if",
-+]
-+
-+[[package]]
-+name = "lzw"
-+version = "0.10.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "7d947cbb889ed21c2a84be6ffbaebf5b4e0f4340638cba0444907e38b56be084"
-+
-+[[package]]
-+name = "matches"
-+version = "0.1.8"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08"
-+
-+[[package]]
-+name = "maybe-uninit"
-+version = "2.0.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "60302e4db3a61da70c0cb7991976248362f30319e88850c487b9b95bbf059e00"
-+
-+[[package]]
-+name = "memchr"
-+version = "2.3.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "3728d817d99e5ac407411fa471ff9800a778d88a24685968b36824eaf4bee400"
-+
-+[[package]]
-+name = "memoffset"
-+version = "0.5.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "b4fc2c02a7e374099d4ee95a193111f72d2110197fe200272371758f6c3643d8"
-+dependencies = [
-+ "autocfg 1.0.0",
-+]
-+
-+[[package]]
-+name = "mime"
-+version = "0.2.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ba626b8a6de5da682e1caa06bdb42a335aee5a84db8e5046a3e8ab17ba0a3ae0"
-+dependencies = [
-+ "log 0.3.9",
-+]
-+
-+[[package]]
-+name = "mime_guess"
-+version = "1.8.8"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "216929a5ee4dd316b1702eedf5e74548c123d370f47841ceaac38ca154690ca3"
-+dependencies = [
-+ "mime",
-+ "phf",
-+ "phf_codegen",
-+ "unicase",
-+]
-+
-+[[package]]
-+name = "multipart"
-+version = "0.15.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "adba94490a79baf2d6a23eac897157047008272fa3eecb3373ae6377b91eca28"
-+dependencies = [
-+ "buf_redux",
-+ "httparse",
-+ "log 0.4.8",
-+ "mime",
-+ "mime_guess",
-+ "quick-error",
-+ "rand 0.4.6",
-+ "safemem",
-+ "tempdir",
-+ "twoway",
-+]
-+
-+[[package]]
-+name = "no-std"
-+version = "0.1.0"
-+dependencies = [
-+ "wasm-bindgen",
-+]
-+
-+[[package]]
-+name = "nom"
-+version = "5.1.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ffb4262d26ed83a1c0a33a38fe2bb15797329c85770da05e6b828ddb782627af"
-+dependencies = [
-+ "memchr",
-+ "version_check 0.9.2",
-+]
-+
-+[[package]]
-+name = "normalize-line-endings"
-+version = "0.3.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "61807f77802ff30975e01f4f071c8ba10c022052f98b3294119f3e615d13e5be"
-+
-+[[package]]
-+name = "num-integer"
-+version = "0.1.43"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "8d59457e662d541ba17869cf51cf177c0b5f0cbf476c66bdc90bf1edac4f875b"
-+dependencies = [
-+ "autocfg 1.0.0",
-+ "num-traits 0.2.12",
-+]
-+
-+[[package]]
-+name = "num-iter"
-+version = "0.1.41"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "7a6e6b7c748f995c4c29c5f5ae0248536e04a5739927c74ec0fa564805094b9f"
-+dependencies = [
-+ "autocfg 1.0.0",
-+ "num-integer",
-+ "num-traits 0.2.12",
-+]
-+
-+[[package]]
-+name = "num-rational"
-+version = "0.1.42"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ee314c74bd753fc86b4780aa9475da469155f3848473a261d2d18e35245a784e"
-+dependencies = [
-+ "num-integer",
-+ "num-traits 0.2.12",
-+]
-+
-+[[package]]
-+name = "num-traits"
-+version = "0.1.43"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "92e5113e9fd4cc14ded8e499429f396a20f98c772a47cc8622a736e1ec843c31"
-+dependencies = [
-+ "num-traits 0.2.12",
-+]
-+
-+[[package]]
-+name = "num-traits"
-+version = "0.2.12"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ac267bcc07f48ee5f8935ab0d24f316fb722d7a1292e2913f0cc196b29ffd611"
-+dependencies = [
-+ "autocfg 1.0.0",
-+]
-+
-+[[package]]
-+name = "num_cpus"
-+version = "1.13.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "05499f3756671c15885fee9034446956fff3f243d6077b91e5767df161f766b3"
-+dependencies = [
-+ "hermit-abi",
-+ "libc",
-+]
-+
-+[[package]]
-+name = "once_cell"
-+version = "1.4.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "0b631f7e854af39a1739f401cf34a8a013dfe09eac4fa4dba91e9768bd28168d"
-+
-+[[package]]
-+name = "openssl"
-+version = "0.10.30"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "8d575eff3665419f9b83678ff2815858ad9d11567e082f5ac1814baba4e2bcb4"
-+dependencies = [
-+ "bitflags 1.2.1",
-+ "cfg-if",
-+ "foreign-types",
-+ "lazy_static",
-+ "libc",
-+ "openssl-sys",
-+]
-+
-+[[package]]
-+name = "openssl-probe"
-+version = "0.1.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "77af24da69f9d9341038eba93a073b1fdaaa1b788221b00a69bce9e762cb32de"
-+
-+[[package]]
-+name = "openssl-src"
-+version = "111.10.0+1.1.1g"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "47cd4a96d49c3abf4cac8e8a80cba998a030c75608f158fb1c5f609772f265e6"
-+dependencies = [
-+ "cc",
-+]
-+
-+[[package]]
-+name = "openssl-sys"
-+version = "0.9.58"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "a842db4709b604f0fe5d1170ae3565899be2ad3d9cbc72dedc789ac0511f78de"
-+dependencies = [
-+ "autocfg 1.0.0",
-+ "cc",
-+ "libc",
-+ "openssl-src",
-+ "pkg-config",
-+ "vcpkg",
-+]
-+
-+[[package]]
-+name = "percent-encoding"
-+version = "1.0.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "31010dd2e1ac33d5b46a5b413495239882813e0369f8ed8a5e266f173602f831"
-+
-+[[package]]
-+name = "performance"
-+version = "0.1.0"
-+dependencies = [
-+ "humantime 2.0.1",
-+ "wasm-bindgen",
-+ "web-sys",
-+]
-+
-+[[package]]
-+name = "phf"
-+version = "0.7.24"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "b3da44b85f8e8dfaec21adae67f95d93244b2ecf6ad2a692320598dcc8e6dd18"
-+dependencies = [
-+ "phf_shared",
-+]
-+
-+[[package]]
-+name = "phf_codegen"
-+version = "0.7.24"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "b03e85129e324ad4166b06b2c7491ae27fe3ec353af72e72cd1654c7225d517e"
-+dependencies = [
-+ "phf_generator",
-+ "phf_shared",
-+]
-+
-+[[package]]
-+name = "phf_generator"
-+version = "0.7.24"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "09364cc93c159b8b06b1f4dd8a4398984503483891b0c26b867cf431fb132662"
-+dependencies = [
-+ "phf_shared",
-+ "rand 0.6.5",
-+]
-+
-+[[package]]
-+name = "phf_shared"
-+version = "0.7.24"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "234f71a15de2288bcb7e3b6515828d22af7ec8598ee6d24c3b526fa0a80b67a0"
-+dependencies = [
-+ "siphasher",
-+ "unicase",
-+]
-+
-+[[package]]
-+name = "pin-project"
-+version = "0.4.22"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "12e3a6cdbfe94a5e4572812a0201f8c0ed98c1c452c7b8563ce2276988ef9c17"
-+dependencies = [
-+ "pin-project-internal",
-+]
-+
-+[[package]]
-+name = "pin-project-internal"
-+version = "0.4.22"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "6a0ffd45cf79d88737d7cc85bfd5d2894bee1139b356e616fe85dc389c61aaf7"
-+dependencies = [
-+ "proc-macro2",
-+ "quote",
-+ "syn",
-+]
-+
-+[[package]]
-+name = "pin-utils"
-+version = "0.1.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
-+
-+[[package]]
-+name = "pkg-config"
-+version = "0.3.17"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "05da548ad6865900e60eaba7f589cc0783590a92e940c26953ff81ddbab2d677"
-+
-+[[package]]
-+name = "png"
-+version = "0.6.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "3cb773e9a557edb568ce9935cf783e3cdcabe06a9449d41b3e5506d88e582c82"
-+dependencies = [
-+ "bitflags 0.7.0",
-+ "deflate",
-+ "inflate",
-+ "num-iter",
-+]
-+
-+[[package]]
-+name = "ppv-lite86"
-+version = "0.2.8"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "237a5ed80e274dbc66f86bd59c1e25edc039660be53194b5fe0a482e0f2612ea"
-+
-+[[package]]
-+name = "predicates"
-+version = "1.0.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "347a1b6f0b21e636bc9872fb60b83b8e185f6f5516298b8238699f7f9a531030"
-+dependencies = [
-+ "difference",
-+ "float-cmp",
-+ "normalize-line-endings",
-+ "predicates-core",
-+ "regex",
-+]
-+
-+[[package]]
-+name = "predicates-core"
-+version = "1.0.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "06075c3a3e92559ff8929e7a280684489ea27fe44805174c3ebd9328dcb37178"
-+
-+[[package]]
-+name = "predicates-tree"
-+version = "1.0.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "8e63c4859013b38a76eca2414c64911fba30def9e3202ac461a2d22831220124"
-+dependencies = [
-+ "predicates-core",
-+ "treeline",
-+]
-+
-+[[package]]
-+name = "proc-macro-error"
-+version = "1.0.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "fc175e9777c3116627248584e8f8b3e2987405cabe1c0adf7d1dd28f09dc7880"
-+dependencies = [
-+ "proc-macro-error-attr",
-+ "proc-macro2",
-+ "quote",
-+ "syn",
-+ "version_check 0.9.2",
-+]
-+
-+[[package]]
-+name = "proc-macro-error-attr"
-+version = "1.0.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "3cc9795ca17eb581285ec44936da7fc2335a3f34f2ddd13118b6f4d515435c50"
-+dependencies = [
-+ "proc-macro2",
-+ "quote",
-+ "syn",
-+ "syn-mid",
-+ "version_check 0.9.2",
-+]
-+
-+[[package]]
-+name = "proc-macro-hack"
-+version = "0.5.16"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "7e0456befd48169b9f13ef0f0ad46d492cf9d2dbb918bcf38e01eed4ce3ec5e4"
-+
-+[[package]]
-+name = "proc-macro-nested"
-+version = "0.1.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "eba180dafb9038b050a4c280019bbedf9f2467b61e5d892dcad585bb57aadc5a"
-+
-+[[package]]
-+name = "proc-macro2"
-+version = "1.0.18"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "beae6331a816b1f65d04c45b078fd8e6c93e8071771f41b8163255bbd8d7c8fa"
-+dependencies = [
-+ "unicode-xid",
-+]
-+
-+[[package]]
-+name = "quick-error"
-+version = "1.2.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0"
-+
-+[[package]]
-+name = "quote"
-+version = "1.0.7"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "aa563d17ecb180e500da1cfd2b028310ac758de548efdd203e18f283af693f37"
-+dependencies = [
-+ "proc-macro2",
-+]
-+
-+[[package]]
-+name = "rand"
-+version = "0.4.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "552840b97013b1a26992c11eac34bdd778e464601a4c2054b5f0bff7c6761293"
-+dependencies = [
-+ "fuchsia-cprng",
-+ "libc",
-+ "rand_core 0.3.1",
-+ "rdrand",
-+ "winapi",
-+]
-+
-+[[package]]
-+name = "rand"
-+version = "0.5.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "c618c47cd3ebd209790115ab837de41425723956ad3ce2e6a7f09890947cacb9"
-+dependencies = [
-+ "cloudabi",
-+ "fuchsia-cprng",
-+ "libc",
-+ "rand_core 0.3.1",
-+ "winapi",
-+]
-+
-+[[package]]
-+name = "rand"
-+version = "0.6.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "6d71dacdc3c88c1fde3885a3be3fbab9f35724e6ce99467f7d9c5026132184ca"
-+dependencies = [
-+ "autocfg 0.1.7",
-+ "libc",
-+ "rand_chacha 0.1.1",
-+ "rand_core 0.4.2",
-+ "rand_hc 0.1.0",
-+ "rand_isaac",
-+ "rand_jitter",
-+ "rand_os",
-+ "rand_pcg",
-+ "rand_xorshift",
-+ "winapi",
-+]
-+
-+[[package]]
-+name = "rand"
-+version = "0.7.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03"
-+dependencies = [
-+ "getrandom",
-+ "libc",
-+ "rand_chacha 0.2.2",
-+ "rand_core 0.5.1",
-+ "rand_hc 0.2.0",
-+]
-+
-+[[package]]
-+name = "rand_chacha"
-+version = "0.1.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "556d3a1ca6600bfcbab7c7c91ccb085ac7fbbcd70e008a98742e7847f4f7bcef"
-+dependencies = [
-+ "autocfg 0.1.7",
-+ "rand_core 0.3.1",
-+]
-+
-+[[package]]
-+name = "rand_chacha"
-+version = "0.2.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402"
-+dependencies = [
-+ "ppv-lite86",
-+ "rand_core 0.5.1",
-+]
-+
-+[[package]]
-+name = "rand_core"
-+version = "0.3.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b"
-+dependencies = [
-+ "rand_core 0.4.2",
-+]
-+
-+[[package]]
-+name = "rand_core"
-+version = "0.4.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "9c33a3c44ca05fa6f1807d8e6743f3824e8509beca625669633be0acbdf509dc"
-+
-+[[package]]
-+name = "rand_core"
-+version = "0.5.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19"
-+dependencies = [
-+ "getrandom",
-+]
-+
-+[[package]]
-+name = "rand_hc"
-+version = "0.1.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "7b40677c7be09ae76218dc623efbf7b18e34bced3f38883af07bb75630a21bc4"
-+dependencies = [
-+ "rand_core 0.3.1",
-+]
-+
-+[[package]]
-+name = "rand_hc"
-+version = "0.2.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c"
-+dependencies = [
-+ "rand_core 0.5.1",
-+]
-+
-+[[package]]
-+name = "rand_isaac"
-+version = "0.1.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ded997c9d5f13925be2a6fd7e66bf1872597f759fd9dd93513dd7e92e5a5ee08"
-+dependencies = [
-+ "rand_core 0.3.1",
-+]
-+
-+[[package]]
-+name = "rand_jitter"
-+version = "0.1.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "1166d5c91dc97b88d1decc3285bb0a99ed84b05cfd0bc2341bdf2d43fc41e39b"
-+dependencies = [
-+ "libc",
-+ "rand_core 0.4.2",
-+ "winapi",
-+]
-+
-+[[package]]
-+name = "rand_os"
-+version = "0.1.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "7b75f676a1e053fc562eafbb47838d67c84801e38fc1ba459e8f180deabd5071"
-+dependencies = [
-+ "cloudabi",
-+ "fuchsia-cprng",
-+ "libc",
-+ "rand_core 0.4.2",
-+ "rdrand",
-+ "winapi",
-+]
-+
-+[[package]]
-+name = "rand_pcg"
-+version = "0.1.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "abf9b09b01790cfe0364f52bf32995ea3c39f4d2dd011eac241d2914146d0b44"
-+dependencies = [
-+ "autocfg 0.1.7",
-+ "rand_core 0.4.2",
-+]
-+
-+[[package]]
-+name = "rand_xorshift"
-+version = "0.1.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "cbf7e9e623549b0e21f6e97cf8ecf247c1a8fd2e8a992ae265314300b2455d5c"
-+dependencies = [
-+ "rand_core 0.3.1",
-+]
-+
-+[[package]]
-+name = "rayon"
-+version = "1.3.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "62f02856753d04e03e26929f820d0a0a337ebe71f849801eea335d464b349080"
-+dependencies = [
-+ "autocfg 1.0.0",
-+ "crossbeam-deque",
-+ "either",
-+ "rayon-core",
-+]
-+
-+[[package]]
-+name = "rayon-core"
-+version = "1.7.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "e92e15d89083484e11353891f1af602cc661426deb9564c298b270c726973280"
-+dependencies = [
-+ "crossbeam-deque",
-+ "crossbeam-queue",
-+ "crossbeam-utils",
-+ "lazy_static",
-+ "num_cpus",
-+]
-+
-+[[package]]
-+name = "raytrace-parallel"
-+version = "0.1.0"
-+dependencies = [
-+ "console_error_panic_hook",
-+ "futures-channel-preview",
-+ "js-sys",
-+ "rayon",
-+ "rayon-core",
-+ "raytracer",
-+ "wasm-bindgen",
-+ "wasm-bindgen-futures",
-+ "web-sys",
-+]
-+
-+[[package]]
-+name = "raytracer"
-+version = "0.1.0"
-+source = "git+https://github.com/alexcrichton/raytracer?branch=update-deps#42faa13859f7d8d47fd18be785c108003a207786"
-+dependencies = [
-+ "image",
-+ "serde",
-+ "serde_derive",
-+]
-+
-+[[package]]
-+name = "rdrand"
-+version = "0.4.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2"
-+dependencies = [
-+ "rand_core 0.3.1",
-+]
-+
-+[[package]]
-+name = "redox_syscall"
-+version = "0.1.56"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "2439c63f3f6139d1b57529d16bc3b8bb855230c8efcc5d3a896c8bea7c3b1e84"
-+
-+[[package]]
-+name = "redox_users"
-+version = "0.3.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "09b23093265f8d200fa7b4c2c76297f47e681c655f6f1285a8780d6a022f7431"
-+dependencies = [
-+ "getrandom",
-+ "redox_syscall",
-+ "rust-argon2",
-+]
-+
-+[[package]]
-+name = "regex"
-+version = "1.3.9"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "9c3780fcf44b193bc4d09f36d2a3c87b251da4a046c87795a0d35f4f927ad8e6"
-+dependencies = [
-+ "aho-corasick",
-+ "memchr",
-+ "regex-syntax",
-+ "thread_local",
-+]
-+
-+[[package]]
-+name = "regex-syntax"
-+version = "0.6.18"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "26412eb97c6b088a6997e05f69403a802a92d520de2f8e63c2b65f9e0f47c4e8"
-+
-+[[package]]
-+name = "remove_dir_all"
-+version = "0.5.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "3acd125665422973a33ac9d3dd2df85edad0f4ae9b00dafb1a05e43a9f5ef8e7"
-+dependencies = [
-+ "winapi",
-+]
-+
-+[[package]]
-+name = "request-animation-frame"
-+version = "0.1.0"
-+dependencies = [
-+ "wasm-bindgen",
-+ "web-sys",
-+]
-+
-+[[package]]
-+name = "rouille"
-+version = "3.0.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "112568052ec17fa26c6c11c40acbb30d3ad244bf3d6da0be181f5e7e42e5004f"
-+dependencies = [
-+ "base64 0.9.3",
-+ "chrono",
-+ "filetime",
-+ "multipart",
-+ "num_cpus",
-+ "rand 0.5.6",
-+ "serde",
-+ "serde_derive",
-+ "serde_json",
-+ "sha1",
-+ "term",
-+ "threadpool",
-+ "time",
-+ "tiny_http",
-+ "url",
-+]
-+
-+[[package]]
-+name = "rust-argon2"
-+version = "0.7.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "2bc8af4bda8e1ff4932523b94d3dd20ee30a87232323eda55903ffd71d2fb017"
-+dependencies = [
-+ "base64 0.11.0",
-+ "blake2b_simd",
-+ "constant_time_eq",
-+ "crossbeam-utils",
-+]
-+
-+[[package]]
-+name = "rust-duck-typed-interfaces"
-+version = "0.1.0"
-+dependencies = [
-+ "wasm-bindgen",
-+]
-+
-+[[package]]
-+name = "rustc-demangle"
-+version = "0.1.16"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "4c691c0e608126e00913e33f0ccf3727d5fc84573623b8d65b2df340b5201783"
-+
-+[[package]]
-+name = "ryu"
-+version = "1.0.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "71d301d4193d031abdd79ff7e3dd721168a9572ef3fe51a1517aba235bd8f86e"
-+
-+[[package]]
-+name = "safemem"
-+version = "0.3.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ef703b7cb59335eae2eb93ceb664c0eb7ea6bf567079d843e09420219668e072"
-+
-+[[package]]
-+name = "sample"
-+version = "0.1.0"
-+dependencies = [
-+ "js-sys",
-+ "wasm-bindgen",
-+ "wasm-bindgen-futures",
-+ "wasm-bindgen-test",
-+]
-+
-+[[package]]
-+name = "schannel"
-+version = "0.1.19"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "8f05ba609c234e60bee0d547fe94a4c7e9da733d1c962cf6e59efa4cd9c8bc75"
-+dependencies = [
-+ "lazy_static",
-+ "winapi",
-+]
-+
-+[[package]]
-+name = "scoped-tls"
-+version = "1.0.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ea6a9290e3c9cf0f18145ef7ffa62d68ee0bf5fcd651017e586dc7fd5da448c2"
-+
-+[[package]]
-+name = "scoped_threadpool"
-+version = "0.1.9"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "1d51f5df5af43ab3f1360b429fa5e0152ac5ce8c0bd6485cae490332e96846a8"
-+
-+[[package]]
-+name = "scopeguard"
-+version = "1.1.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd"
-+
-+[[package]]
-+name = "serde"
-+version = "1.0.114"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "5317f7588f0a5078ee60ef675ef96735a1442132dc645eb1d12c018620ed8cd3"
-+dependencies = [
-+ "serde_derive",
-+]
-+
-+[[package]]
-+name = "serde_derive"
-+version = "1.0.114"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "2a0be94b04690fbaed37cddffc5c134bf537c8e3329d53e982fe04c374978f8e"
-+dependencies = [
-+ "proc-macro2",
-+ "quote",
-+ "syn",
-+]
-+
-+[[package]]
-+name = "serde_json"
-+version = "1.0.55"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ec2c5d7e739bc07a3e73381a39d61fdb5f671c60c1df26a130690665803d8226"
-+dependencies = [
-+ "itoa",
-+ "ryu",
-+ "serde",
-+]
-+
-+[[package]]
-+name = "sha1"
-+version = "0.6.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "2579985fda508104f7587689507983eadd6a6e84dd35d6d115361f530916fa0d"
-+
-+[[package]]
-+name = "siphasher"
-+version = "0.2.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "0b8de496cf83d4ed58b6be86c3a275b8602f6ffe98d3024a869e124147a9a3ac"
-+
-+[[package]]
-+name = "slab"
-+version = "0.4.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "c111b5bd5695e56cffe5129854aa230b39c93a305372fdbb2668ca2394eea9f8"
-+
-+[[package]]
-+name = "socket2"
-+version = "0.3.12"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "03088793f677dce356f3ccc2edb1b314ad191ab702a5de3faf49304f7e104918"
-+dependencies = [
-+ "cfg-if",
-+ "libc",
-+ "redox_syscall",
-+ "winapi",
-+]
-+
-+[[package]]
-+name = "sourcefile"
-+version = "0.1.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "4bf77cb82ba8453b42b6ae1d692e4cdc92f9a47beaf89a847c8be83f4e328ad3"
-+
-+[[package]]
-+name = "strsim"
-+version = "0.8.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
-+
-+[[package]]
-+name = "strsim"
-+version = "0.9.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "6446ced80d6c486436db5c078dde11a9f73d42b57fb273121e160b84f63d894c"
-+
-+[[package]]
-+name = "structopt"
-+version = "0.3.15"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "de2f5e239ee807089b62adce73e48c625e0ed80df02c7ab3f068f5db5281065c"
-+dependencies = [
-+ "clap",
-+ "lazy_static",
-+ "structopt-derive",
-+]
-+
-+[[package]]
-+name = "structopt-derive"
-+version = "0.4.8"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "510413f9de616762a4fbeab62509bf15c729603b72d7cd71280fbca431b1c118"
-+dependencies = [
-+ "heck",
-+ "proc-macro-error",
-+ "proc-macro2",
-+ "quote",
-+ "syn",
-+]
-+
-+[[package]]
-+name = "syn"
-+version = "1.0.33"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "e8d5d96e8cbb005d6959f119f773bfaebb5684296108fb32600c00cde305b2cd"
-+dependencies = [
-+ "proc-macro2",
-+ "quote",
-+ "unicode-xid",
-+]
-+
-+[[package]]
-+name = "syn-mid"
-+version = "0.5.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "7be3539f6c128a931cf19dcee741c1af532c7fd387baa739c03dd2e96479338a"
-+dependencies = [
-+ "proc-macro2",
-+ "quote",
-+ "syn",
-+]
-+
-+[[package]]
-+name = "tempdir"
-+version = "0.3.7"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "15f2b5fb00ccdf689e0149d1b1b3c03fead81c2b37735d812fa8bddbbf41b6d8"
-+dependencies = [
-+ "rand 0.4.6",
-+ "remove_dir_all",
-+]
-+
-+[[package]]
-+name = "tempfile"
-+version = "3.1.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "7a6e24d9338a0a5be79593e2fa15a648add6138caa803e2d5bc782c371732ca9"
-+dependencies = [
-+ "cfg-if",
-+ "libc",
-+ "rand 0.7.3",
-+ "redox_syscall",
-+ "remove_dir_all",
-+ "winapi",
-+]
-+
-+[[package]]
-+name = "term"
-+version = "0.5.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "edd106a334b7657c10b7c540a0106114feadeb4dc314513e97df481d5d966f42"
-+dependencies = [
-+ "byteorder",
-+ "dirs",
-+ "winapi",
-+]
-+
-+[[package]]
-+name = "termcolor"
-+version = "1.1.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "bb6bfa289a4d7c5766392812c0a1f4c1ba45afa1ad47803c11e1f407d846d75f"
-+dependencies = [
-+ "winapi-util",
-+]
-+
-+[[package]]
-+name = "textwrap"
-+version = "0.11.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060"
-+dependencies = [
-+ "unicode-width",
-+]
-+
-+[[package]]
-+name = "thread_local"
-+version = "1.0.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d40c6d1b69745a6ec6fb1ca717914848da4b44ae29d9b3080cbee91d72a69b14"
-+dependencies = [
-+ "lazy_static",
-+]
-+
-+[[package]]
-+name = "threadpool"
-+version = "1.8.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d050e60b33d41c19108b32cea32164033a9013fe3b46cbd4457559bfbf77afaa"
-+dependencies = [
-+ "num_cpus",
-+]
-+
-+[[package]]
-+name = "time"
-+version = "0.1.43"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ca8a50ef2360fbd1eeb0ecd46795a87a19024eb4b53c5dc916ca1fd95fe62438"
-+dependencies = [
-+ "libc",
-+ "winapi",
-+]
-+
-+[[package]]
-+name = "tiny_http"
-+version = "0.6.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "1661fa0a44c95d01604bd05c66732a446c657efb62b5164a7a083a3b552b4951"
-+dependencies = [
-+ "ascii",
-+ "chrono",
-+ "chunked_transfer",
-+ "log 0.4.8",
-+ "url",
-+]
-+
-+[[package]]
-+name = "tinyvec"
-+version = "0.3.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "53953d2d3a5ad81d9f844a32f14ebb121f50b650cd59d0ee2a07cf13c617efed"
-+
-+[[package]]
-+name = "todomvc"
-+version = "0.1.0"
-+dependencies = [
-+ "askama",
-+ "console_error_panic_hook",
-+ "js-sys",
-+ "wasm-bindgen",
-+ "web-sys",
-+]
-+
-+[[package]]
-+name = "toml"
-+version = "0.5.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ffc92d160b1eef40665be3a05630d003936a3bc7da7421277846c2613e92c71a"
-+dependencies = [
-+ "serde",
-+]
-+
-+[[package]]
-+name = "treeline"
-+version = "0.1.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "a7f741b240f1a48843f9b8e0444fb55fb2a4ff67293b50a9179dfd5ea67f8d41"
-+
-+[[package]]
-+name = "trybuild"
-+version = "1.0.30"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "bbe777c4e2060f44d83892be1189f96200be8ed3d99569d5c2d5ee26e62c0ea9"
-+dependencies = [
-+ "glob",
-+ "lazy_static",
-+ "serde",
-+ "serde_json",
-+ "termcolor",
-+ "toml",
-+]
-+
-+[[package]]
-+name = "twoway"
-+version = "0.1.8"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "59b11b2b5241ba34be09c3cc85a36e56e48f9888862e19cedf23336d35316ed1"
-+dependencies = [
-+ "memchr",
-+]
-+
-+[[package]]
-+name = "typescript-tests"
-+version = "0.1.0"
-+dependencies = [
-+ "js-sys",
-+ "wasm-bindgen",
-+ "web-sys",
-+]
-+
-+[[package]]
-+name = "unicase"
-+version = "1.4.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "7f4765f83163b74f957c797ad9253caf97f103fb064d3999aea9568d09fc8a33"
-+dependencies = [
-+ "version_check 0.1.5",
-+]
-+
-+[[package]]
-+name = "unicode-bidi"
-+version = "0.3.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "49f2bd0c6468a8230e1db229cff8029217cf623c767ea5d60bfbd42729ea54d5"
-+dependencies = [
-+ "matches",
-+]
-+
-+[[package]]
-+name = "unicode-normalization"
-+version = "0.1.13"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "6fb19cf769fa8c6a80a162df694621ebeb4dafb606470b2b2fce0be40a98a977"
-+dependencies = [
-+ "tinyvec",
-+]
-+
-+[[package]]
-+name = "unicode-segmentation"
-+version = "1.6.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "e83e153d1053cbb5a118eeff7fd5be06ed99153f00dbcd8ae310c5fb2b22edc0"
-+
-+[[package]]
-+name = "unicode-width"
-+version = "0.1.7"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "caaa9d531767d1ff2150b9332433f32a24622147e5ebb1f26409d5da67afd479"
-+
-+[[package]]
-+name = "unicode-xid"
-+version = "0.2.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "f7fe0bb3479651439c9112f72b6c505038574c9fbb575ed1bf3b797fa39dd564"
-+
-+[[package]]
-+name = "url"
-+version = "1.7.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "dd4e7c0d531266369519a4aa4f399d748bd37043b00bde1e4ff1f60a120b355a"
-+dependencies = [
-+ "idna",
-+ "matches",
-+ "percent-encoding",
-+]
-+
-+[[package]]
-+name = "vcpkg"
-+version = "0.2.10"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "6454029bf181f092ad1b853286f23e2c507d8e8194d01d92da4a55c274a5508c"
-+
-+[[package]]
-+name = "vec_map"
-+version = "0.8.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191"
-+
-+[[package]]
-+name = "version_check"
-+version = "0.1.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "914b1a6776c4c929a602fafd8bc742e06365d4bcbe48c30f9cca5824f70dc9dd"
-+
-+[[package]]
-+name = "version_check"
-+version = "0.9.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "b5a972e5669d67ba988ce3dc826706fb0a8b01471c088cb0b6110b805cc36aed"
-+
-+[[package]]
-+name = "wait-timeout"
-+version = "0.2.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "9f200f5b12eb75f8c1ed65abd4b2db8a6e1b138a20de009dacee265a2498f3f6"
-+dependencies = [
-+ "libc",
-+]
-+
-+[[package]]
-+name = "walrus"
-+version = "0.17.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "f970863270179a4e0ca2bfb470931f883f7535ae8b9dac4271761fa1b77e253d"
-+dependencies = [
-+ "anyhow",
-+ "id-arena",
-+ "leb128",
-+ "log 0.4.8",
-+ "rayon",
-+ "walrus-macro",
-+ "wasmparser",
-+]
-+
-+[[package]]
-+name = "walrus-macro"
-+version = "0.17.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "80927fca8665132b48c7714bcec983d6e761c60b3a9877c6cd7df86417b13573"
-+dependencies = [
-+ "heck",
-+ "proc-macro2",
-+ "quote",
-+ "syn",
-+]
-+
-+[[package]]
-+name = "wasi"
-+version = "0.9.0+wasi-snapshot-preview1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519"
-+
-+[[package]]
-+name = "wasm-bindgen"
-+version = "0.2.64"
-+dependencies = [
-+ "cfg-if",
-+ "js-sys",
-+ "serde",
-+ "serde_derive",
-+ "serde_json",
-+ "wasm-bindgen-futures",
-+ "wasm-bindgen-macro",
-+ "wasm-bindgen-test",
-+ "wasm-bindgen-test-crate-a",
-+ "wasm-bindgen-test-crate-b",
-+]
-+
-+[[package]]
-+name = "wasm-bindgen-backend"
-+version = "0.2.64"
-+dependencies = [
-+ "bumpalo",
-+ "lazy_static",
-+ "log 0.4.8",
-+ "proc-macro2",
-+ "quote",
-+ "syn",
-+ "wasm-bindgen-shared",
-+]
-+
-+[[package]]
-+name = "wasm-bindgen-benchmark"
-+version = "0.1.0"
-+dependencies = [
-+ "wasm-bindgen",
-+ "web-sys",
-+]
-+
-+[[package]]
-+name = "wasm-bindgen-cli"
-+version = "0.2.64"
-+dependencies = [
-+ "anyhow",
-+ "assert_cmd",
-+ "curl",
-+ "diff",
-+ "docopt",
-+ "env_logger",
-+ "log 0.4.8",
-+ "openssl",
-+ "predicates",
-+ "rayon",
-+ "rouille",
-+ "serde",
-+ "serde_derive",
-+ "serde_json",
-+ "tempfile",
-+ "walrus",
-+ "wasm-bindgen-cli-support",
-+ "wasm-bindgen-shared",
-+ "wit-printer",
-+ "wit-text",
-+ "wit-validator",
-+ "wit-walrus",
-+]
-+
-+[[package]]
-+name = "wasm-bindgen-cli-support"
-+version = "0.2.64"
-+dependencies = [
-+ "anyhow",
-+ "base64 0.9.3",
-+ "log 0.4.8",
-+ "rustc-demangle",
-+ "serde_json",
-+ "tempfile",
-+ "walrus",
-+ "wasm-bindgen-externref-xform",
-+ "wasm-bindgen-multi-value-xform",
-+ "wasm-bindgen-shared",
-+ "wasm-bindgen-threads-xform",
-+ "wasm-bindgen-wasm-conventions",
-+ "wasm-bindgen-wasm-interpreter",
-+ "wit-text",
-+ "wit-validator",
-+ "wit-walrus",
-+]
-+
-+[[package]]
-+name = "wasm-bindgen-externref-xform"
-+version = "0.2.64"
-+dependencies = [
-+ "anyhow",
-+ "rayon",
-+ "walrus",
-+ "wasmprinter",
-+ "wast 17.0.0",
-+ "wat",
-+]
-+
-+[[package]]
-+name = "wasm-bindgen-futures"
-+version = "0.4.14"
-+dependencies = [
-+ "cfg-if",
-+ "futures-channel-preview",
-+ "js-sys",
-+ "wasm-bindgen",
-+ "wasm-bindgen-test",
-+ "web-sys",
-+]
-+
-+[[package]]
-+name = "wasm-bindgen-macro"
-+version = "0.2.64"
-+dependencies = [
-+ "quote",
-+ "trybuild",
-+ "wasm-bindgen",
-+ "wasm-bindgen-futures",
-+ "wasm-bindgen-macro-support",
-+]
-+
-+[[package]]
-+name = "wasm-bindgen-macro-support"
-+version = "0.2.64"
-+dependencies = [
-+ "proc-macro2",
-+ "quote",
-+ "syn",
-+ "wasm-bindgen-backend",
-+ "wasm-bindgen-shared",
-+]
-+
-+[[package]]
-+name = "wasm-bindgen-multi-value-xform"
-+version = "0.2.64"
-+dependencies = [
-+ "anyhow",
-+ "rayon",
-+ "walrus",
-+ "wasmprinter",
-+ "wast 17.0.0",
-+ "wat",
-+]
-+
-+[[package]]
-+name = "wasm-bindgen-paint"
-+version = "0.1.0"
-+dependencies = [
-+ "js-sys",
-+ "wasm-bindgen",
-+ "web-sys",
-+]
-+
-+[[package]]
-+name = "wasm-bindgen-shared"
-+version = "0.2.64"
-+
-+[[package]]
-+name = "wasm-bindgen-test"
-+version = "0.3.14"
-+dependencies = [
-+ "console_error_panic_hook",
-+ "js-sys",
-+ "scoped-tls",
-+ "wasm-bindgen",
-+ "wasm-bindgen-futures",
-+ "wasm-bindgen-test-macro",
-+]
-+
-+[[package]]
-+name = "wasm-bindgen-test-crate-a"
-+version = "0.1.0"
-+dependencies = [
-+ "wasm-bindgen",
-+]
-+
-+[[package]]
-+name = "wasm-bindgen-test-crate-b"
-+version = "0.1.0"
-+dependencies = [
-+ "wasm-bindgen",
-+]
-+
-+[[package]]
-+name = "wasm-bindgen-test-macro"
-+version = "0.3.14"
-+dependencies = [
-+ "proc-macro2",
-+ "quote",
-+]
-+
-+[[package]]
-+name = "wasm-bindgen-threads-xform"
-+version = "0.2.64"
-+dependencies = [
-+ "anyhow",
-+ "walrus",
-+ "wasm-bindgen-wasm-conventions",
-+]
-+
-+[[package]]
-+name = "wasm-bindgen-wasm-conventions"
-+version = "0.2.64"
-+dependencies = [
-+ "anyhow",
-+ "walrus",
-+]
-+
-+[[package]]
-+name = "wasm-bindgen-wasm-interpreter"
-+version = "0.2.64"
-+dependencies = [
-+ "anyhow",
-+ "log 0.4.8",
-+ "tempfile",
-+ "walrus",
-+ "wasm-bindgen-wasm-conventions",
-+ "wat",
-+]
-+
-+[[package]]
-+name = "wasm-bindgen-webidl"
-+version = "0.2.64"
-+dependencies = [
-+ "anyhow",
-+ "env_logger",
-+ "heck",
-+ "lazy_static",
-+ "log 0.4.8",
-+ "proc-macro2",
-+ "quote",
-+ "sourcefile",
-+ "structopt",
-+ "syn",
-+ "wasm-bindgen-backend",
-+ "weedle",
-+]
-+
-+[[package]]
-+name = "wasm-in-wasm"
-+version = "0.1.0"
-+dependencies = [
-+ "js-sys",
-+ "wasm-bindgen",
-+ "wasm-bindgen-futures",
-+]
-+
-+[[package]]
-+name = "wasm2js"
-+version = "0.1.0"
-+dependencies = [
-+ "wasm-bindgen",
-+]
-+
-+[[package]]
-+name = "wasmparser"
-+version = "0.55.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "af931e2e1960c53f4a28b063fec4cacd036f35acbec8ff3a4739125b17382a87"
-+
-+[[package]]
-+name = "wasmprinter"
-+version = "0.2.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "c93ba310101ec5ee980db66b47b3d276577c8310df1570e19994347137650454"
-+dependencies = [
-+ "anyhow",
-+ "wasmparser",
-+]
-+
-+[[package]]
-+name = "wast"
-+version = "17.0.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "5a0e1c36b928fca33dbaf96235188f5fad22ee87100e26cc606bd0fbabdf1932"
-+dependencies = [
-+ "leb128",
-+]
-+
-+[[package]]
-+name = "wast"
-+version = "21.0.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "0b1844f66a2bc8526d71690104c0e78a8e59ffa1597b7245769d174ebb91deb5"
-+dependencies = [
-+ "leb128",
-+]
-+
-+[[package]]
-+name = "wat"
-+version = "1.0.22"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ce85d72b74242c340e9e3492cfb602652d7bb324c3172dd441b5577e39a2e18c"
-+dependencies = [
-+ "wast 21.0.0",
-+]
-+
-+[[package]]
-+name = "web-sys"
-+version = "0.3.41"
-+dependencies = [
-+ "js-sys",
-+ "wasm-bindgen",
-+ "wasm-bindgen-futures",
-+ "wasm-bindgen-test",
-+]
-+
-+[[package]]
-+name = "webaudio"
-+version = "0.1.0"
-+dependencies = [
-+ "wasm-bindgen",
-+ "web-sys",
-+]
-+
-+[[package]]
-+name = "webgl"
-+version = "0.1.0"
-+dependencies = [
-+ "js-sys",
-+ "wasm-bindgen",
-+ "web-sys",
-+]
-+
-+[[package]]
-+name = "webidl-tests"
-+version = "0.1.0"
-+dependencies = [
-+ "js-sys",
-+ "wasm-bindgen",
-+ "wasm-bindgen-test",
-+ "wasm-bindgen-webidl",
-+]
-+
-+[[package]]
-+name = "webrtc_datachannel"
-+version = "0.1.0"
-+dependencies = [
-+ "js-sys",
-+ "wasm-bindgen",
-+ "wasm-bindgen-futures",
-+ "web-sys",
-+]
-+
-+[[package]]
-+name = "websockets"
-+version = "0.1.0"
-+dependencies = [
-+ "js-sys",
-+ "wasm-bindgen",
-+ "web-sys",
-+]
-+
-+[[package]]
-+name = "webxr"
-+version = "0.1.0"
-+dependencies = [
-+ "futures",
-+ "js-sys",
-+ "serde",
-+ "serde_derive",
-+ "wasm-bindgen",
-+ "wasm-bindgen-futures",
-+ "web-sys",
-+]
-+
-+[[package]]
-+name = "weedle"
-+version = "0.11.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "8a7d4f9feb723a800d8f7b74edc9fa44ff35cb0b2ec64886714362f423427f37"
-+dependencies = [
-+ "nom",
-+]
-+
-+[[package]]
-+name = "winapi"
-+version = "0.3.9"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
-+dependencies = [
-+ "winapi-i686-pc-windows-gnu",
-+ "winapi-x86_64-pc-windows-gnu",
-+]
-+
-+[[package]]
-+name = "winapi-i686-pc-windows-gnu"
-+version = "0.4.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
-+
-+[[package]]
-+name = "winapi-util"
-+version = "0.1.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178"
-+dependencies = [
-+ "winapi",
-+]
-+
-+[[package]]
-+name = "winapi-x86_64-pc-windows-gnu"
-+version = "0.4.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
-+
-+[[package]]
-+name = "wit-parser"
-+version = "0.2.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "3f5fd97866f4b9c8e1ed57bcf9446f3d0d8ba37e2dd01c3c612c046c053b06f7"
-+dependencies = [
-+ "anyhow",
-+ "leb128",
-+ "wit-schema-version",
-+]
-+
-+[[package]]
-+name = "wit-printer"
-+version = "0.2.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "93f19ca44555a3c14d69acee6447a6e4f52771b0c6e5d8db3e42db3b90f6fce9"
-+dependencies = [
-+ "anyhow",
-+ "wasmprinter",
-+ "wit-parser",
-+ "wit-schema-version",
-+]
-+
-+[[package]]
-+name = "wit-schema-version"
-+version = "0.1.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "bfee4a6a4716eefa0682e7a3b836152e894a3e4f34a9d6c2c3e1c94429bfe36a"
-+
-+[[package]]
-+name = "wit-text"
-+version = "0.7.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "e9ce51bfa02a5d206998191f63d4f3f3e80696a883dd29194ac4259bb1d57f52"
-+dependencies = [
-+ "anyhow",
-+ "wast 17.0.0",
-+ "wit-writer",
-+]
-+
-+[[package]]
-+name = "wit-validator"
-+version = "0.2.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "e34e89c07a16b3ea0c3bec5a8b0f20d965796968eb5211d1e3522e8e4a385853"
-+dependencies = [
-+ "anyhow",
-+ "wasmparser",
-+ "wit-parser",
-+ "wit-schema-version",
-+]
-+
-+[[package]]
-+name = "wit-walrus"
-+version = "0.4.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "75b636bb9de044e181cfe8745256a24e37f482b4d31ea08b9ac330d4a948e702"
-+dependencies = [
-+ "anyhow",
-+ "id-arena",
-+ "walrus",
-+ "wit-parser",
-+ "wit-schema-version",
-+ "wit-writer",
-+]
-+
-+[[package]]
-+name = "wit-writer"
-+version = "0.2.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "c2ad01ba5e9cbcff799a0689e56a153776ea694cec777f605938cb9880d41a09"
-+dependencies = [
-+ "leb128",
-+ "wit-schema-version",
-+]
-+
-+[[package]]
-+name = "without-a-bundler"
-+version = "0.1.0"
-+dependencies = [
-+ "wasm-bindgen",
-+ "web-sys",
-+]
-+
-+[[package]]
-+name = "without-a-bundler-no-modules"
-+version = "0.1.0"
-+dependencies = [
-+ "wasm-bindgen",
-+ "web-sys",
-+]
---
-2.25.4
-
diff --git a/pkgs/development/tools/wasm-bindgen-cli/Cargo.lock b/pkgs/development/tools/wasm-bindgen-cli/Cargo.lock
new file mode 100644
index 00000000000..690b1998e2b
--- /dev/null
+++ b/pkgs/development/tools/wasm-bindgen-cli/Cargo.lock
@@ -0,0 +1,2551 @@
+# This file is automatically @generated by Cargo.
+# It is not intended for manual editing.
+[[package]]
+name = "add"
+version = "0.1.0"
+dependencies = [
+ "wasm-bindgen",
+]
+
+[[package]]
+name = "adler32"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "567b077b825e468cc974f0020d4082ee6e03132512f207ef1a02fd5d00d1f32d"
+
+[[package]]
+name = "aho-corasick"
+version = "0.7.13"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "043164d8ba5c4c3035fec9bbee8647c0261d788f3474306f93bb65901cae0e86"
+dependencies = [
+ "memchr",
+]
+
+[[package]]
+name = "ansi_term"
+version = "0.11.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b"
+dependencies = [
+ "winapi",
+]
+
+[[package]]
+name = "anyhow"
+version = "1.0.31"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "85bb70cc08ec97ca5450e6eba421deeea5f172c0fc61f78b5357b2a8e8be195f"
+
+[[package]]
+name = "arrayref"
+version = "0.3.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a4c527152e37cf757a3f78aae5a06fbeefdb07ccc535c980a3208ee3060dd544"
+
+[[package]]
+name = "arrayvec"
+version = "0.5.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cff77d8686867eceff3105329d4698d96c2391c176d5d03adc90c7389162b5b8"
+
+[[package]]
+name = "ascii"
+version = "0.8.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "97be891acc47ca214468e09425d02cef3af2c94d0d82081cd02061f996802f14"
+
+[[package]]
+name = "askama"
+version = "0.10.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b7acc25b09d27eaec97794c58d8483a227f2adc98b762f915745525d8781dba0"
+dependencies = [
+ "askama_derive",
+ "askama_escape",
+ "askama_shared",
+]
+
+[[package]]
+name = "askama_derive"
+version = "0.10.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6f7dc4c28f064af8bbba24867ec6c3165c645635cb1306bca4c0f991ce8b15a9"
+dependencies = [
+ "askama_shared",
+ "proc-macro2",
+ "quote",
+ "syn",
+]
+
+[[package]]
+name = "askama_escape"
+version = "0.10.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "90c108c1a94380c89d2215d0ac54ce09796823cca0fd91b299cfff3b33e346fb"
+
+[[package]]
+name = "askama_shared"
+version = "0.10.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5b64d552e0dc2837d5c27276e80521cf864f42c079e476b3035a196566fcee59"
+dependencies = [
+ "askama_escape",
+ "humansize",
+ "nom",
+ "num-traits 0.2.12",
+ "percent-encoding 2.1.0",
+ "proc-macro2",
+ "quote",
+ "serde",
+ "syn",
+ "toml",
+]
+
+[[package]]
+name = "assert_cmd"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c88b9ca26f9c16ec830350d309397e74ee9abdfd8eb1f71cb6ecc71a3fc818da"
+dependencies = [
+ "doc-comment",
+ "predicates",
+ "predicates-core",
+ "predicates-tree",
+ "wait-timeout",
+]
+
+[[package]]
+name = "atty"
+version = "0.2.14"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8"
+dependencies = [
+ "hermit-abi",
+ "libc",
+ "winapi",
+]
+
+[[package]]
+name = "autocfg"
+version = "0.1.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1d49d90015b3c36167a20fe2810c5cd875ad504b39cff3d4eae7977e6b7c1cb2"
+
+[[package]]
+name = "autocfg"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f8aac770f1885fd7e387acedd76065302551364496e46b3dd00860b2f8359b9d"
+
+[[package]]
+name = "base64"
+version = "0.9.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "489d6c0ed21b11d038c31b6ceccca973e65d73ba3bd8ecb9a2babf5546164643"
+dependencies = [
+ "byteorder",
+ "safemem",
+]
+
+[[package]]
+name = "base64"
+version = "0.11.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b41b7ea54a0c9d92199de89e20e58d49f02f8e699814ef3fdf266f6f748d15c7"
+
+[[package]]
+name = "bitflags"
+version = "0.7.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "aad18937a628ec6abcd26d1489012cc0e18c21798210f491af69ded9b881106d"
+
+[[package]]
+name = "bitflags"
+version = "1.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693"
+
+[[package]]
+name = "blake2b_simd"
+version = "0.5.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d8fb2d74254a3a0b5cac33ac9f8ed0e44aa50378d9dbb2e5d83bd21ed1dc2c8a"
+dependencies = [
+ "arrayref",
+ "arrayvec",
+ "constant_time_eq",
+]
+
+[[package]]
+name = "buf_redux"
+version = "0.8.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b953a6887648bb07a535631f2bc00fbdb2a2216f135552cb3f534ed136b9c07f"
+dependencies = [
+ "memchr",
+ "safemem",
+]
+
+[[package]]
+name = "bumpalo"
+version = "3.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2e8c087f005730276d1096a652e92a8bacee2e2472bcc9715a74d2bec38b5820"
+
+[[package]]
+name = "byteorder"
+version = "1.3.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "08c48aae112d48ed9f069b33538ea9e3e90aa263cfa3d1c24309612b1f7472de"
+
+[[package]]
+name = "canvas"
+version = "0.1.0"
+dependencies = [
+ "js-sys",
+ "wasm-bindgen",
+ "web-sys",
+]
+
+[[package]]
+name = "cc"
+version = "1.0.58"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f9a06fb2e53271d7c279ec1efea6ab691c35a2ae67ec0d91d7acec0caf13b518"
+
+[[package]]
+name = "cfg-if"
+version = "0.1.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
+
+[[package]]
+name = "char"
+version = "0.1.0"
+dependencies = [
+ "wasm-bindgen",
+]
+
+[[package]]
+name = "chrono"
+version = "0.4.13"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c74d84029116787153e02106bf53e66828452a4b325cc8652b788b5967c0a0b6"
+dependencies = [
+ "num-integer",
+ "num-traits 0.2.12",
+ "time",
+]
+
+[[package]]
+name = "chunked_transfer"
+version = "0.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "498d20a7aaf62625b9bf26e637cf7736417cde1d0c99f1d04d1170229a85cf87"
+
+[[package]]
+name = "clap"
+version = "2.33.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bdfa80d47f954d53a35a64987ca1422f495b8d6483c0fe9f7117b36c2a792129"
+dependencies = [
+ "ansi_term",
+ "atty",
+ "bitflags 1.2.1",
+ "strsim 0.8.0",
+ "textwrap",
+ "unicode-width",
+ "vec_map",
+]
+
+[[package]]
+name = "closures"
+version = "0.1.0"
+dependencies = [
+ "js-sys",
+ "wasm-bindgen",
+ "web-sys",
+]
+
+[[package]]
+name = "cloudabi"
+version = "0.0.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f"
+dependencies = [
+ "bitflags 1.2.1",
+]
+
+[[package]]
+name = "color_quant"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0dbbb57365263e881e805dc77d94697c9118fd94d8da011240555aa7b23445bd"
+
+[[package]]
+name = "console_error_panic_hook"
+version = "0.1.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b8d976903543e0c48546a91908f21588a680a8c8f984df9a5d69feccb2b2a211"
+dependencies = [
+ "cfg-if",
+ "wasm-bindgen",
+]
+
+[[package]]
+name = "console_log"
+version = "0.1.0"
+dependencies = [
+ "wasm-bindgen",
+ "web-sys",
+]
+
+[[package]]
+name = "constant_time_eq"
+version = "0.1.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "245097e9a4535ee1e3e3931fcfcd55a796a44c643e8596ff6566d68f09b87bbc"
+
+[[package]]
+name = "crossbeam-deque"
+version = "0.7.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9f02af974daeee82218205558e51ec8768b48cf524bd01d550abe5573a608285"
+dependencies = [
+ "crossbeam-epoch",
+ "crossbeam-utils",
+ "maybe-uninit",
+]
+
+[[package]]
+name = "crossbeam-epoch"
+version = "0.8.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "058ed274caafc1f60c4997b5fc07bf7dc7cca454af7c6e81edffe5f33f70dace"
+dependencies = [
+ "autocfg 1.0.0",
+ "cfg-if",
+ "crossbeam-utils",
+ "lazy_static",
+ "maybe-uninit",
+ "memoffset",
+ "scopeguard",
+]
+
+[[package]]
+name = "crossbeam-queue"
+version = "0.2.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "774ba60a54c213d409d5353bda12d49cd68d14e45036a285234c8d6f91f92570"
+dependencies = [
+ "cfg-if",
+ "crossbeam-utils",
+ "maybe-uninit",
+]
+
+[[package]]
+name = "crossbeam-utils"
+version = "0.7.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c3c7c73a2d1e9fc0886a08b93e98eb643461230d5f1925e4036204d5f2e261a8"
+dependencies = [
+ "autocfg 1.0.0",
+ "cfg-if",
+ "lazy_static",
+]
+
+[[package]]
+name = "curl"
+version = "0.4.30"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b0447a642435be046540f042950d874a4907f9fee28c0513a0beb3ba89f91eb7"
+dependencies = [
+ "curl-sys",
+ "libc",
+ "openssl-probe",
+ "openssl-sys",
+ "schannel",
+ "socket2",
+ "winapi",
+]
+
+[[package]]
+name = "curl-sys"
+version = "0.4.32+curl-7.70.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "834425a2f22fdd621434196965bf99fbfd9eaed96348488e27b7ac40736c560b"
+dependencies = [
+ "cc",
+ "libc",
+ "libz-sys",
+ "openssl-sys",
+ "pkg-config",
+ "vcpkg",
+ "winapi",
+]
+
+[[package]]
+name = "deflate"
+version = "0.7.20"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "707b6a7b384888a70c8d2e8650b3e60170dfc6a67bb4aa67b6dfca57af4bedb4"
+dependencies = [
+ "adler32",
+ "byteorder",
+]
+
+[[package]]
+name = "deno"
+version = "0.1.0"
+dependencies = [
+ "wasm-bindgen",
+]
+
+[[package]]
+name = "diff"
+version = "0.1.12"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0e25ea47919b1560c4e3b7fe0aaab9becf5b84a10325ddf7db0f0ba5e1026499"
+
+[[package]]
+name = "difference"
+version = "2.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "524cbf6897b527295dff137cec09ecf3a05f4fddffd7dfcd1585403449e74198"
+
+[[package]]
+name = "dirs"
+version = "1.0.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3fd78930633bd1c6e35c4b42b1df7b0cbc6bc191146e512bb3bedf243fcc3901"
+dependencies = [
+ "libc",
+ "redox_users",
+ "winapi",
+]
+
+[[package]]
+name = "doc-comment"
+version = "0.3.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fea41bba32d969b513997752735605054bc0dfa92b4c56bf1189f2e174be7a10"
+
+[[package]]
+name = "docopt"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7f525a586d310c87df72ebcd98009e57f1cc030c8c268305287a476beb653969"
+dependencies = [
+ "lazy_static",
+ "regex",
+ "serde",
+ "strsim 0.9.3",
+]
+
+[[package]]
+name = "dom"
+version = "0.1.0"
+dependencies = [
+ "wasm-bindgen",
+ "web-sys",
+]
+
+[[package]]
+name = "either"
+version = "1.5.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bb1f6b1ce1c140482ea30ddd3335fc0024ac7ee112895426e0a629a6c20adfe3"
+
+[[package]]
+name = "enum_primitive"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "be4551092f4d519593039259a9ed8daedf0da12e5109c5280338073eaeb81180"
+dependencies = [
+ "num-traits 0.1.43",
+]
+
+[[package]]
+name = "env_logger"
+version = "0.7.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "44533bbbb3bb3c1fa17d9f2e4e38bbbaf8396ba82193c4cb1b6445d711445d36"
+dependencies = [
+ "atty",
+ "humantime 1.3.0",
+ "log 0.4.11",
+ "regex",
+ "termcolor",
+]
+
+[[package]]
+name = "fetch"
+version = "0.1.0"
+dependencies = [
+ "js-sys",
+ "serde",
+ "serde_derive",
+ "wasm-bindgen",
+ "wasm-bindgen-futures",
+ "web-sys",
+]
+
+[[package]]
+name = "filetime"
+version = "0.2.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "affc17579b132fc2461adf7c575cc6e8b134ebca52c51f5411388965227dc695"
+dependencies = [
+ "cfg-if",
+ "libc",
+ "redox_syscall",
+ "winapi",
+]
+
+[[package]]
+name = "float-cmp"
+version = "0.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "da62c4f1b81918835a8c6a484a397775fff5953fe83529afd51b05f5c6a6617d"
+dependencies = [
+ "num-traits 0.2.12",
+]
+
+[[package]]
+name = "foreign-types"
+version = "0.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
+dependencies = [
+ "foreign-types-shared",
+]
+
+[[package]]
+name = "foreign-types-shared"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
+
+[[package]]
+name = "fuchsia-cprng"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba"
+
+[[package]]
+name = "futures"
+version = "0.3.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1e05b85ec287aac0dc34db7d4a569323df697f9c55b99b15d6b4ef8cde49f613"
+dependencies = [
+ "futures-channel",
+ "futures-core",
+ "futures-executor",
+ "futures-io",
+ "futures-sink",
+ "futures-task",
+ "futures-util",
+]
+
+[[package]]
+name = "futures-channel"
+version = "0.3.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f366ad74c28cca6ba456d95e6422883cfb4b252a83bed929c83abfdbbf2967d5"
+dependencies = [
+ "futures-core",
+ "futures-sink",
+]
+
+[[package]]
+name = "futures-channel-preview"
+version = "0.3.0-alpha.19"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d5e5f4df964fa9c1c2f8bddeb5c3611631cacd93baf810fc8bb2fb4b495c263a"
+dependencies = [
+ "futures-core-preview",
+]
+
+[[package]]
+name = "futures-core"
+version = "0.3.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "59f5fff90fd5d971f936ad674802482ba441b6f09ba5e15fd8b39145582ca399"
+
+[[package]]
+name = "futures-core-preview"
+version = "0.3.0-alpha.19"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b35b6263fb1ef523c3056565fa67b1d16f0a8604ff12b11b08c25f28a734c60a"
+
+[[package]]
+name = "futures-executor"
+version = "0.3.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "10d6bb888be1153d3abeb9006b11b02cf5e9b209fda28693c31ae1e4e012e314"
+dependencies = [
+ "futures-core",
+ "futures-task",
+ "futures-util",
+]
+
+[[package]]
+name = "futures-io"
+version = "0.3.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "de27142b013a8e869c14957e6d2edeef89e97c289e69d042ee3a49acd8b51789"
+
+[[package]]
+name = "futures-macro"
+version = "0.3.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d0b5a30a4328ab5473878237c447333c093297bded83a4983d10f4deea240d39"
+dependencies = [
+ "proc-macro-hack",
+ "proc-macro2",
+ "quote",
+ "syn",
+]
+
+[[package]]
+name = "futures-sink"
+version = "0.3.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3f2032893cb734c7a05d85ce0cc8b8c4075278e93b24b66f9de99d6eb0fa8acc"
+
+[[package]]
+name = "futures-task"
+version = "0.3.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bdb66b5f09e22019b1ab0830f7785bcea8e7a42148683f99214f73f8ec21a626"
+dependencies = [
+ "once_cell",
+]
+
+[[package]]
+name = "futures-util"
+version = "0.3.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8764574ff08b701a084482c3c7031349104b07ac897393010494beaa18ce32c6"
+dependencies = [
+ "futures-channel",
+ "futures-core",
+ "futures-io",
+ "futures-macro",
+ "futures-sink",
+ "futures-task",
+ "memchr",
+ "pin-project",
+ "pin-utils",
+ "proc-macro-hack",
+ "proc-macro-nested",
+ "slab",
+]
+
+[[package]]
+name = "getrandom"
+version = "0.1.14"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7abc8dd8451921606d809ba32e95b6111925cd2906060d2dcc29c070220503eb"
+dependencies = [
+ "cfg-if",
+ "libc",
+ "wasi",
+]
+
+[[package]]
+name = "gif"
+version = "0.9.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e2e41945ba23db3bf51b24756d73d81acb4f28d85c3dccc32c6fae904438c25f"
+dependencies = [
+ "color_quant",
+ "lzw",
+]
+
+[[package]]
+name = "glob"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9b919933a397b79c37e33b77bb2aa3dc8eb6e165ad809e58ff75bc7db2e34574"
+
+[[package]]
+name = "guide-supported-types-examples"
+version = "0.1.0"
+dependencies = [
+ "wasm-bindgen",
+]
+
+[[package]]
+name = "heck"
+version = "0.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "20564e78d53d2bb135c343b3f47714a56af2061f1c928fdb541dc7b9fdd94205"
+dependencies = [
+ "unicode-segmentation",
+]
+
+[[package]]
+name = "hello_world"
+version = "0.1.0"
+dependencies = [
+ "wasm-bindgen",
+]
+
+[[package]]
+name = "hermit-abi"
+version = "0.1.15"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3deed196b6e7f9e44a2ae8d94225d80302d81208b1bb673fd21fe634645c85a9"
+dependencies = [
+ "libc",
+]
+
+[[package]]
+name = "httparse"
+version = "1.3.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cd179ae861f0c2e53da70d892f5f3029f9594be0c41dc5269cd371691b1dc2f9"
+
+[[package]]
+name = "humansize"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b6cab2627acfc432780848602f3f558f7e9dd427352224b0d9324025796d2a5e"
+
+[[package]]
+name = "humantime"
+version = "1.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "df004cfca50ef23c36850aaaa59ad52cc70d0e90243c3c7737a4dd32dc7a3c4f"
+dependencies = [
+ "quick-error",
+]
+
+[[package]]
+name = "humantime"
+version = "2.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3c1ad908cc71012b7bea4d0c53ba96a8cba9962f048fa68d143376143d863b7a"
+
+[[package]]
+name = "id-arena"
+version = "2.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "25a2bc672d1148e28034f176e01fffebb08b35768468cc954630da77a1449005"
+dependencies = [
+ "rayon",
+]
+
+[[package]]
+name = "idna"
+version = "0.1.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "38f09e0f0b1fb55fdee1f17470ad800da77af5186a1a76c026b679358b7e844e"
+dependencies = [
+ "matches",
+ "unicode-bidi",
+ "unicode-normalization",
+]
+
+[[package]]
+name = "image"
+version = "0.12.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d95816db758249fe16f23a4e23f1a3a817fe11892dbfd1c5836f625324702158"
+dependencies = [
+ "byteorder",
+ "enum_primitive",
+ "gif",
+ "jpeg-decoder",
+ "num-iter",
+ "num-rational",
+ "num-traits 0.1.43",
+ "png",
+ "scoped_threadpool",
+]
+
+[[package]]
+name = "import_js"
+version = "0.1.0"
+dependencies = [
+ "wasm-bindgen",
+]
+
+[[package]]
+name = "inflate"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e7e0062d2dc2f17d2f13750d95316ae8a2ff909af0fda957084f5defd87c43bb"
+
+[[package]]
+name = "itoa"
+version = "0.4.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dc6f3ad7b9d11a0c00842ff8de1b60ee58661048eb8049ed33c73594f359d7e6"
+
+[[package]]
+name = "jpeg-decoder"
+version = "0.1.20"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cc797adac5f083b8ff0ca6f6294a999393d76e197c36488e2ef732c4715f6fa3"
+dependencies = [
+ "byteorder",
+ "rayon",
+]
+
+[[package]]
+name = "js-sys"
+version = "0.3.42"
+dependencies = [
+ "wasm-bindgen",
+ "wasm-bindgen-futures",
+ "wasm-bindgen-test",
+]
+
+[[package]]
+name = "julia_set"
+version = "0.1.0"
+dependencies = [
+ "wasm-bindgen",
+ "web-sys",
+]
+
+[[package]]
+name = "lazy_static"
+version = "1.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
+
+[[package]]
+name = "leb128"
+version = "0.2.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3576a87f2ba00f6f106fdfcd16db1d698d648a26ad8e0573cad8537c3c362d2a"
+
+[[package]]
+name = "libc"
+version = "0.2.72"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a9f8082297d534141b30c8d39e9b1773713ab50fdbe4ff30f750d063b3bfd701"
+
+[[package]]
+name = "libz-sys"
+version = "1.0.25"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2eb5e43362e38e2bca2fd5f5134c4d4564a23a5c28e9b95411652021a8675ebe"
+dependencies = [
+ "cc",
+ "libc",
+ "pkg-config",
+ "vcpkg",
+]
+
+[[package]]
+name = "log"
+version = "0.3.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e19e8d5c34a3e0e2223db8e060f9e8264aeeb5c5fc64a4ee9965c062211c024b"
+dependencies = [
+ "log 0.4.11",
+]
+
+[[package]]
+name = "log"
+version = "0.4.11"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4fabed175da42fed1fa0746b0ea71f412aa9d35e76e95e59b192c64b9dc2bf8b"
+dependencies = [
+ "cfg-if",
+]
+
+[[package]]
+name = "lzw"
+version = "0.10.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7d947cbb889ed21c2a84be6ffbaebf5b4e0f4340638cba0444907e38b56be084"
+
+[[package]]
+name = "matches"
+version = "0.1.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08"
+
+[[package]]
+name = "maybe-uninit"
+version = "2.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "60302e4db3a61da70c0cb7991976248362f30319e88850c487b9b95bbf059e00"
+
+[[package]]
+name = "memchr"
+version = "2.3.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3728d817d99e5ac407411fa471ff9800a778d88a24685968b36824eaf4bee400"
+
+[[package]]
+name = "memoffset"
+version = "0.5.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c198b026e1bbf08a937e94c6c60f9ec4a2267f5b0d2eec9c1b21b061ce2be55f"
+dependencies = [
+ "autocfg 1.0.0",
+]
+
+[[package]]
+name = "mime"
+version = "0.2.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ba626b8a6de5da682e1caa06bdb42a335aee5a84db8e5046a3e8ab17ba0a3ae0"
+dependencies = [
+ "log 0.3.9",
+]
+
+[[package]]
+name = "mime_guess"
+version = "1.8.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "216929a5ee4dd316b1702eedf5e74548c123d370f47841ceaac38ca154690ca3"
+dependencies = [
+ "mime",
+ "phf",
+ "phf_codegen",
+ "unicase",
+]
+
+[[package]]
+name = "multipart"
+version = "0.15.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "adba94490a79baf2d6a23eac897157047008272fa3eecb3373ae6377b91eca28"
+dependencies = [
+ "buf_redux",
+ "httparse",
+ "log 0.4.11",
+ "mime",
+ "mime_guess",
+ "quick-error",
+ "rand 0.4.6",
+ "safemem",
+ "tempdir",
+ "twoway",
+]
+
+[[package]]
+name = "no-std"
+version = "0.1.0"
+dependencies = [
+ "wasm-bindgen",
+]
+
+[[package]]
+name = "nom"
+version = "5.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ffb4262d26ed83a1c0a33a38fe2bb15797329c85770da05e6b828ddb782627af"
+dependencies = [
+ "memchr",
+ "version_check 0.9.2",
+]
+
+[[package]]
+name = "normalize-line-endings"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "61807f77802ff30975e01f4f071c8ba10c022052f98b3294119f3e615d13e5be"
+
+[[package]]
+name = "num-integer"
+version = "0.1.43"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8d59457e662d541ba17869cf51cf177c0b5f0cbf476c66bdc90bf1edac4f875b"
+dependencies = [
+ "autocfg 1.0.0",
+ "num-traits 0.2.12",
+]
+
+[[package]]
+name = "num-iter"
+version = "0.1.41"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7a6e6b7c748f995c4c29c5f5ae0248536e04a5739927c74ec0fa564805094b9f"
+dependencies = [
+ "autocfg 1.0.0",
+ "num-integer",
+ "num-traits 0.2.12",
+]
+
+[[package]]
+name = "num-rational"
+version = "0.1.42"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ee314c74bd753fc86b4780aa9475da469155f3848473a261d2d18e35245a784e"
+dependencies = [
+ "num-integer",
+ "num-traits 0.2.12",
+]
+
+[[package]]
+name = "num-traits"
+version = "0.1.43"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "92e5113e9fd4cc14ded8e499429f396a20f98c772a47cc8622a736e1ec843c31"
+dependencies = [
+ "num-traits 0.2.12",
+]
+
+[[package]]
+name = "num-traits"
+version = "0.2.12"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ac267bcc07f48ee5f8935ab0d24f316fb722d7a1292e2913f0cc196b29ffd611"
+dependencies = [
+ "autocfg 1.0.0",
+]
+
+[[package]]
+name = "num_cpus"
+version = "1.13.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "05499f3756671c15885fee9034446956fff3f243d6077b91e5767df161f766b3"
+dependencies = [
+ "hermit-abi",
+ "libc",
+]
+
+[[package]]
+name = "once_cell"
+version = "1.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0b631f7e854af39a1739f401cf34a8a013dfe09eac4fa4dba91e9768bd28168d"
+
+[[package]]
+name = "openssl"
+version = "0.10.30"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8d575eff3665419f9b83678ff2815858ad9d11567e082f5ac1814baba4e2bcb4"
+dependencies = [
+ "bitflags 1.2.1",
+ "cfg-if",
+ "foreign-types",
+ "lazy_static",
+ "libc",
+ "openssl-sys",
+]
+
+[[package]]
+name = "openssl-probe"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "77af24da69f9d9341038eba93a073b1fdaaa1b788221b00a69bce9e762cb32de"
+
+[[package]]
+name = "openssl-src"
+version = "111.10.1+1.1.1g"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "375f12316ddf0762f7cf1e2890a0a857954b96851b47b5af7fc06940c9e12f83"
+dependencies = [
+ "cc",
+]
+
+[[package]]
+name = "openssl-sys"
+version = "0.9.58"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a842db4709b604f0fe5d1170ae3565899be2ad3d9cbc72dedc789ac0511f78de"
+dependencies = [
+ "autocfg 1.0.0",
+ "cc",
+ "libc",
+ "openssl-src",
+ "pkg-config",
+ "vcpkg",
+]
+
+[[package]]
+name = "percent-encoding"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "31010dd2e1ac33d5b46a5b413495239882813e0369f8ed8a5e266f173602f831"
+
+[[package]]
+name = "percent-encoding"
+version = "2.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d4fd5641d01c8f18a23da7b6fe29298ff4b55afcccdf78973b24cf3175fee32e"
+
+[[package]]
+name = "performance"
+version = "0.1.0"
+dependencies = [
+ "humantime 2.0.1",
+ "wasm-bindgen",
+ "web-sys",
+]
+
+[[package]]
+name = "phf"
+version = "0.7.24"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b3da44b85f8e8dfaec21adae67f95d93244b2ecf6ad2a692320598dcc8e6dd18"
+dependencies = [
+ "phf_shared",
+]
+
+[[package]]
+name = "phf_codegen"
+version = "0.7.24"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b03e85129e324ad4166b06b2c7491ae27fe3ec353af72e72cd1654c7225d517e"
+dependencies = [
+ "phf_generator",
+ "phf_shared",
+]
+
+[[package]]
+name = "phf_generator"
+version = "0.7.24"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "09364cc93c159b8b06b1f4dd8a4398984503483891b0c26b867cf431fb132662"
+dependencies = [
+ "phf_shared",
+ "rand 0.6.5",
+]
+
+[[package]]
+name = "phf_shared"
+version = "0.7.24"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "234f71a15de2288bcb7e3b6515828d22af7ec8598ee6d24c3b526fa0a80b67a0"
+dependencies = [
+ "siphasher",
+ "unicase",
+]
+
+[[package]]
+name = "pin-project"
+version = "0.4.22"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "12e3a6cdbfe94a5e4572812a0201f8c0ed98c1c452c7b8563ce2276988ef9c17"
+dependencies = [
+ "pin-project-internal",
+]
+
+[[package]]
+name = "pin-project-internal"
+version = "0.4.22"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6a0ffd45cf79d88737d7cc85bfd5d2894bee1139b356e616fe85dc389c61aaf7"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn",
+]
+
+[[package]]
+name = "pin-utils"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
+
+[[package]]
+name = "pkg-config"
+version = "0.3.18"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d36492546b6af1463394d46f0c834346f31548646f6ba10849802c9c9a27ac33"
+
+[[package]]
+name = "png"
+version = "0.6.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3cb773e9a557edb568ce9935cf783e3cdcabe06a9449d41b3e5506d88e582c82"
+dependencies = [
+ "bitflags 0.7.0",
+ "deflate",
+ "inflate",
+ "num-iter",
+]
+
+[[package]]
+name = "ppv-lite86"
+version = "0.2.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "237a5ed80e274dbc66f86bd59c1e25edc039660be53194b5fe0a482e0f2612ea"
+
+[[package]]
+name = "predicates"
+version = "1.0.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "347a1b6f0b21e636bc9872fb60b83b8e185f6f5516298b8238699f7f9a531030"
+dependencies = [
+ "difference",
+ "float-cmp",
+ "normalize-line-endings",
+ "predicates-core",
+ "regex",
+]
+
+[[package]]
+name = "predicates-core"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "06075c3a3e92559ff8929e7a280684489ea27fe44805174c3ebd9328dcb37178"
+
+[[package]]
+name = "predicates-tree"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8e63c4859013b38a76eca2414c64911fba30def9e3202ac461a2d22831220124"
+dependencies = [
+ "predicates-core",
+ "treeline",
+]
+
+[[package]]
+name = "proc-macro-error"
+version = "1.0.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fc175e9777c3116627248584e8f8b3e2987405cabe1c0adf7d1dd28f09dc7880"
+dependencies = [
+ "proc-macro-error-attr",
+ "proc-macro2",
+ "quote",
+ "syn",
+ "version_check 0.9.2",
+]
+
+[[package]]
+name = "proc-macro-error-attr"
+version = "1.0.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3cc9795ca17eb581285ec44936da7fc2335a3f34f2ddd13118b6f4d515435c50"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn",
+ "syn-mid",
+ "version_check 0.9.2",
+]
+
+[[package]]
+name = "proc-macro-hack"
+version = "0.5.16"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7e0456befd48169b9f13ef0f0ad46d492cf9d2dbb918bcf38e01eed4ce3ec5e4"
+
+[[package]]
+name = "proc-macro-nested"
+version = "0.1.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "eba180dafb9038b050a4c280019bbedf9f2467b61e5d892dcad585bb57aadc5a"
+
+[[package]]
+name = "proc-macro2"
+version = "1.0.18"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "beae6331a816b1f65d04c45b078fd8e6c93e8071771f41b8163255bbd8d7c8fa"
+dependencies = [
+ "unicode-xid",
+]
+
+[[package]]
+name = "quick-error"
+version = "1.2.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0"
+
+[[package]]
+name = "quote"
+version = "1.0.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "aa563d17ecb180e500da1cfd2b028310ac758de548efdd203e18f283af693f37"
+dependencies = [
+ "proc-macro2",
+]
+
+[[package]]
+name = "rand"
+version = "0.4.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "552840b97013b1a26992c11eac34bdd778e464601a4c2054b5f0bff7c6761293"
+dependencies = [
+ "fuchsia-cprng",
+ "libc",
+ "rand_core 0.3.1",
+ "rdrand",
+ "winapi",
+]
+
+[[package]]
+name = "rand"
+version = "0.5.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c618c47cd3ebd209790115ab837de41425723956ad3ce2e6a7f09890947cacb9"
+dependencies = [
+ "cloudabi",
+ "fuchsia-cprng",
+ "libc",
+ "rand_core 0.3.1",
+ "winapi",
+]
+
+[[package]]
+name = "rand"
+version = "0.6.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6d71dacdc3c88c1fde3885a3be3fbab9f35724e6ce99467f7d9c5026132184ca"
+dependencies = [
+ "autocfg 0.1.7",
+ "libc",
+ "rand_chacha 0.1.1",
+ "rand_core 0.4.2",
+ "rand_hc 0.1.0",
+ "rand_isaac",
+ "rand_jitter",
+ "rand_os",
+ "rand_pcg",
+ "rand_xorshift",
+ "winapi",
+]
+
+[[package]]
+name = "rand"
+version = "0.7.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03"
+dependencies = [
+ "getrandom",
+ "libc",
+ "rand_chacha 0.2.2",
+ "rand_core 0.5.1",
+ "rand_hc 0.2.0",
+]
+
+[[package]]
+name = "rand_chacha"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "556d3a1ca6600bfcbab7c7c91ccb085ac7fbbcd70e008a98742e7847f4f7bcef"
+dependencies = [
+ "autocfg 0.1.7",
+ "rand_core 0.3.1",
+]
+
+[[package]]
+name = "rand_chacha"
+version = "0.2.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402"
+dependencies = [
+ "ppv-lite86",
+ "rand_core 0.5.1",
+]
+
+[[package]]
+name = "rand_core"
+version = "0.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b"
+dependencies = [
+ "rand_core 0.4.2",
+]
+
+[[package]]
+name = "rand_core"
+version = "0.4.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9c33a3c44ca05fa6f1807d8e6743f3824e8509beca625669633be0acbdf509dc"
+
+[[package]]
+name = "rand_core"
+version = "0.5.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19"
+dependencies = [
+ "getrandom",
+]
+
+[[package]]
+name = "rand_hc"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7b40677c7be09ae76218dc623efbf7b18e34bced3f38883af07bb75630a21bc4"
+dependencies = [
+ "rand_core 0.3.1",
+]
+
+[[package]]
+name = "rand_hc"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c"
+dependencies = [
+ "rand_core 0.5.1",
+]
+
+[[package]]
+name = "rand_isaac"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ded997c9d5f13925be2a6fd7e66bf1872597f759fd9dd93513dd7e92e5a5ee08"
+dependencies = [
+ "rand_core 0.3.1",
+]
+
+[[package]]
+name = "rand_jitter"
+version = "0.1.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1166d5c91dc97b88d1decc3285bb0a99ed84b05cfd0bc2341bdf2d43fc41e39b"
+dependencies = [
+ "libc",
+ "rand_core 0.4.2",
+ "winapi",
+]
+
+[[package]]
+name = "rand_os"
+version = "0.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7b75f676a1e053fc562eafbb47838d67c84801e38fc1ba459e8f180deabd5071"
+dependencies = [
+ "cloudabi",
+ "fuchsia-cprng",
+ "libc",
+ "rand_core 0.4.2",
+ "rdrand",
+ "winapi",
+]
+
+[[package]]
+name = "rand_pcg"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "abf9b09b01790cfe0364f52bf32995ea3c39f4d2dd011eac241d2914146d0b44"
+dependencies = [
+ "autocfg 0.1.7",
+ "rand_core 0.4.2",
+]
+
+[[package]]
+name = "rand_xorshift"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cbf7e9e623549b0e21f6e97cf8ecf247c1a8fd2e8a992ae265314300b2455d5c"
+dependencies = [
+ "rand_core 0.3.1",
+]
+
+[[package]]
+name = "rayon"
+version = "1.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "62f02856753d04e03e26929f820d0a0a337ebe71f849801eea335d464b349080"
+dependencies = [
+ "autocfg 1.0.0",
+ "crossbeam-deque",
+ "either",
+ "rayon-core",
+]
+
+[[package]]
+name = "rayon-core"
+version = "1.7.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e92e15d89083484e11353891f1af602cc661426deb9564c298b270c726973280"
+dependencies = [
+ "crossbeam-deque",
+ "crossbeam-queue",
+ "crossbeam-utils",
+ "lazy_static",
+ "num_cpus",
+]
+
+[[package]]
+name = "raytrace-parallel"
+version = "0.1.0"
+dependencies = [
+ "console_error_panic_hook",
+ "futures-channel-preview",
+ "js-sys",
+ "rayon",
+ "rayon-core",
+ "raytracer",
+ "wasm-bindgen",
+ "wasm-bindgen-futures",
+ "web-sys",
+]
+
+[[package]]
+name = "raytracer"
+version = "0.1.0"
+source = "git+https://github.com/alexcrichton/raytracer?branch=update-deps#42faa13859f7d8d47fd18be785c108003a207786"
+dependencies = [
+ "image",
+ "serde",
+ "serde_derive",
+]
+
+[[package]]
+name = "rdrand"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2"
+dependencies = [
+ "rand_core 0.3.1",
+]
+
+[[package]]
+name = "redox_syscall"
+version = "0.1.57"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "41cc0f7e4d5d4544e8861606a285bb08d3e70712ccc7d2b84d7c0ccfaf4b05ce"
+
+[[package]]
+name = "redox_users"
+version = "0.3.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "09b23093265f8d200fa7b4c2c76297f47e681c655f6f1285a8780d6a022f7431"
+dependencies = [
+ "getrandom",
+ "redox_syscall",
+ "rust-argon2",
+]
+
+[[package]]
+name = "regex"
+version = "1.3.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9c3780fcf44b193bc4d09f36d2a3c87b251da4a046c87795a0d35f4f927ad8e6"
+dependencies = [
+ "aho-corasick",
+ "memchr",
+ "regex-syntax",
+ "thread_local",
+]
+
+[[package]]
+name = "regex-syntax"
+version = "0.6.18"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "26412eb97c6b088a6997e05f69403a802a92d520de2f8e63c2b65f9e0f47c4e8"
+
+[[package]]
+name = "remove_dir_all"
+version = "0.5.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3acd125665422973a33ac9d3dd2df85edad0f4ae9b00dafb1a05e43a9f5ef8e7"
+dependencies = [
+ "winapi",
+]
+
+[[package]]
+name = "request-animation-frame"
+version = "0.1.0"
+dependencies = [
+ "wasm-bindgen",
+ "web-sys",
+]
+
+[[package]]
+name = "rouille"
+version = "3.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "112568052ec17fa26c6c11c40acbb30d3ad244bf3d6da0be181f5e7e42e5004f"
+dependencies = [
+ "base64 0.9.3",
+ "chrono",
+ "filetime",
+ "multipart",
+ "num_cpus",
+ "rand 0.5.6",
+ "serde",
+ "serde_derive",
+ "serde_json",
+ "sha1",
+ "term",
+ "threadpool",
+ "time",
+ "tiny_http",
+ "url",
+]
+
+[[package]]
+name = "rust-argon2"
+version = "0.7.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2bc8af4bda8e1ff4932523b94d3dd20ee30a87232323eda55903ffd71d2fb017"
+dependencies = [
+ "base64 0.11.0",
+ "blake2b_simd",
+ "constant_time_eq",
+ "crossbeam-utils",
+]
+
+[[package]]
+name = "rust-duck-typed-interfaces"
+version = "0.1.0"
+dependencies = [
+ "wasm-bindgen",
+]
+
+[[package]]
+name = "rustc-demangle"
+version = "0.1.16"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4c691c0e608126e00913e33f0ccf3727d5fc84573623b8d65b2df340b5201783"
+
+[[package]]
+name = "ryu"
+version = "1.0.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "71d301d4193d031abdd79ff7e3dd721168a9572ef3fe51a1517aba235bd8f86e"
+
+[[package]]
+name = "safemem"
+version = "0.3.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ef703b7cb59335eae2eb93ceb664c0eb7ea6bf567079d843e09420219668e072"
+
+[[package]]
+name = "sample"
+version = "0.1.0"
+dependencies = [
+ "js-sys",
+ "wasm-bindgen",
+ "wasm-bindgen-futures",
+ "wasm-bindgen-test",
+]
+
+[[package]]
+name = "schannel"
+version = "0.1.19"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8f05ba609c234e60bee0d547fe94a4c7e9da733d1c962cf6e59efa4cd9c8bc75"
+dependencies = [
+ "lazy_static",
+ "winapi",
+]
+
+[[package]]
+name = "scoped-tls"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ea6a9290e3c9cf0f18145ef7ffa62d68ee0bf5fcd651017e586dc7fd5da448c2"
+
+[[package]]
+name = "scoped_threadpool"
+version = "0.1.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1d51f5df5af43ab3f1360b429fa5e0152ac5ce8c0bd6485cae490332e96846a8"
+
+[[package]]
+name = "scopeguard"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd"
+
+[[package]]
+name = "serde"
+version = "1.0.114"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5317f7588f0a5078ee60ef675ef96735a1442132dc645eb1d12c018620ed8cd3"
+dependencies = [
+ "serde_derive",
+]
+
+[[package]]
+name = "serde_derive"
+version = "1.0.114"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2a0be94b04690fbaed37cddffc5c134bf537c8e3329d53e982fe04c374978f8e"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn",
+]
+
+[[package]]
+name = "serde_json"
+version = "1.0.56"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3433e879a558dde8b5e8feb2a04899cf34fdde1fafb894687e52105fc1162ac3"
+dependencies = [
+ "itoa",
+ "ryu",
+ "serde",
+]
+
+[[package]]
+name = "sha1"
+version = "0.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2579985fda508104f7587689507983eadd6a6e84dd35d6d115361f530916fa0d"
+
+[[package]]
+name = "siphasher"
+version = "0.2.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0b8de496cf83d4ed58b6be86c3a275b8602f6ffe98d3024a869e124147a9a3ac"
+
+[[package]]
+name = "slab"
+version = "0.4.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c111b5bd5695e56cffe5129854aa230b39c93a305372fdbb2668ca2394eea9f8"
+
+[[package]]
+name = "socket2"
+version = "0.3.12"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "03088793f677dce356f3ccc2edb1b314ad191ab702a5de3faf49304f7e104918"
+dependencies = [
+ "cfg-if",
+ "libc",
+ "redox_syscall",
+ "winapi",
+]
+
+[[package]]
+name = "sourcefile"
+version = "0.1.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4bf77cb82ba8453b42b6ae1d692e4cdc92f9a47beaf89a847c8be83f4e328ad3"
+
+[[package]]
+name = "strsim"
+version = "0.8.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
+
+[[package]]
+name = "strsim"
+version = "0.9.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6446ced80d6c486436db5c078dde11a9f73d42b57fb273121e160b84f63d894c"
+
+[[package]]
+name = "structopt"
+version = "0.3.15"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "de2f5e239ee807089b62adce73e48c625e0ed80df02c7ab3f068f5db5281065c"
+dependencies = [
+ "clap",
+ "lazy_static",
+ "structopt-derive",
+]
+
+[[package]]
+name = "structopt-derive"
+version = "0.4.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "510413f9de616762a4fbeab62509bf15c729603b72d7cd71280fbca431b1c118"
+dependencies = [
+ "heck",
+ "proc-macro-error",
+ "proc-macro2",
+ "quote",
+ "syn",
+]
+
+[[package]]
+name = "syn"
+version = "1.0.34"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "936cae2873c940d92e697597c5eee105fb570cd5689c695806f672883653349b"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "unicode-xid",
+]
+
+[[package]]
+name = "syn-mid"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7be3539f6c128a931cf19dcee741c1af532c7fd387baa739c03dd2e96479338a"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn",
+]
+
+[[package]]
+name = "tempdir"
+version = "0.3.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "15f2b5fb00ccdf689e0149d1b1b3c03fead81c2b37735d812fa8bddbbf41b6d8"
+dependencies = [
+ "rand 0.4.6",
+ "remove_dir_all",
+]
+
+[[package]]
+name = "tempfile"
+version = "3.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7a6e24d9338a0a5be79593e2fa15a648add6138caa803e2d5bc782c371732ca9"
+dependencies = [
+ "cfg-if",
+ "libc",
+ "rand 0.7.3",
+ "redox_syscall",
+ "remove_dir_all",
+ "winapi",
+]
+
+[[package]]
+name = "term"
+version = "0.5.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "edd106a334b7657c10b7c540a0106114feadeb4dc314513e97df481d5d966f42"
+dependencies = [
+ "byteorder",
+ "dirs",
+ "winapi",
+]
+
+[[package]]
+name = "termcolor"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bb6bfa289a4d7c5766392812c0a1f4c1ba45afa1ad47803c11e1f407d846d75f"
+dependencies = [
+ "winapi-util",
+]
+
+[[package]]
+name = "textwrap"
+version = "0.11.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060"
+dependencies = [
+ "unicode-width",
+]
+
+[[package]]
+name = "thread_local"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d40c6d1b69745a6ec6fb1ca717914848da4b44ae29d9b3080cbee91d72a69b14"
+dependencies = [
+ "lazy_static",
+]
+
+[[package]]
+name = "threadpool"
+version = "1.8.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d050e60b33d41c19108b32cea32164033a9013fe3b46cbd4457559bfbf77afaa"
+dependencies = [
+ "num_cpus",
+]
+
+[[package]]
+name = "time"
+version = "0.1.43"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ca8a50ef2360fbd1eeb0ecd46795a87a19024eb4b53c5dc916ca1fd95fe62438"
+dependencies = [
+ "libc",
+ "winapi",
+]
+
+[[package]]
+name = "tiny_http"
+version = "0.6.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1661fa0a44c95d01604bd05c66732a446c657efb62b5164a7a083a3b552b4951"
+dependencies = [
+ "ascii",
+ "chrono",
+ "chunked_transfer",
+ "log 0.4.11",
+ "url",
+]
+
+[[package]]
+name = "tinyvec"
+version = "0.3.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "53953d2d3a5ad81d9f844a32f14ebb121f50b650cd59d0ee2a07cf13c617efed"
+
+[[package]]
+name = "todomvc"
+version = "0.1.0"
+dependencies = [
+ "askama",
+ "console_error_panic_hook",
+ "js-sys",
+ "wasm-bindgen",
+ "web-sys",
+]
+
+[[package]]
+name = "toml"
+version = "0.5.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ffc92d160b1eef40665be3a05630d003936a3bc7da7421277846c2613e92c71a"
+dependencies = [
+ "serde",
+]
+
+[[package]]
+name = "treeline"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a7f741b240f1a48843f9b8e0444fb55fb2a4ff67293b50a9179dfd5ea67f8d41"
+
+[[package]]
+name = "trybuild"
+version = "1.0.30"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bbe777c4e2060f44d83892be1189f96200be8ed3d99569d5c2d5ee26e62c0ea9"
+dependencies = [
+ "glob",
+ "lazy_static",
+ "serde",
+ "serde_json",
+ "termcolor",
+ "toml",
+]
+
+[[package]]
+name = "twoway"
+version = "0.1.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "59b11b2b5241ba34be09c3cc85a36e56e48f9888862e19cedf23336d35316ed1"
+dependencies = [
+ "memchr",
+]
+
+[[package]]
+name = "typescript-tests"
+version = "0.1.0"
+dependencies = [
+ "js-sys",
+ "wasm-bindgen",
+ "web-sys",
+]
+
+[[package]]
+name = "unicase"
+version = "1.4.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7f4765f83163b74f957c797ad9253caf97f103fb064d3999aea9568d09fc8a33"
+dependencies = [
+ "version_check 0.1.5",
+]
+
+[[package]]
+name = "unicode-bidi"
+version = "0.3.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "49f2bd0c6468a8230e1db229cff8029217cf623c767ea5d60bfbd42729ea54d5"
+dependencies = [
+ "matches",
+]
+
+[[package]]
+name = "unicode-normalization"
+version = "0.1.13"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6fb19cf769fa8c6a80a162df694621ebeb4dafb606470b2b2fce0be40a98a977"
+dependencies = [
+ "tinyvec",
+]
+
+[[package]]
+name = "unicode-segmentation"
+version = "1.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e83e153d1053cbb5a118eeff7fd5be06ed99153f00dbcd8ae310c5fb2b22edc0"
+
+[[package]]
+name = "unicode-width"
+version = "0.1.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9337591893a19b88d8d87f2cec1e73fad5cdfd10e5a6f349f498ad6ea2ffb1e3"
+
+[[package]]
+name = "unicode-xid"
+version = "0.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f7fe0bb3479651439c9112f72b6c505038574c9fbb575ed1bf3b797fa39dd564"
+
+[[package]]
+name = "url"
+version = "1.7.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dd4e7c0d531266369519a4aa4f399d748bd37043b00bde1e4ff1f60a120b355a"
+dependencies = [
+ "idna",
+ "matches",
+ "percent-encoding 1.0.1",
+]
+
+[[package]]
+name = "vcpkg"
+version = "0.2.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6454029bf181f092ad1b853286f23e2c507d8e8194d01d92da4a55c274a5508c"
+
+[[package]]
+name = "vec_map"
+version = "0.8.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191"
+
+[[package]]
+name = "version_check"
+version = "0.1.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "914b1a6776c4c929a602fafd8bc742e06365d4bcbe48c30f9cca5824f70dc9dd"
+
+[[package]]
+name = "version_check"
+version = "0.9.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b5a972e5669d67ba988ce3dc826706fb0a8b01471c088cb0b6110b805cc36aed"
+
+[[package]]
+name = "wait-timeout"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9f200f5b12eb75f8c1ed65abd4b2db8a6e1b138a20de009dacee265a2498f3f6"
+dependencies = [
+ "libc",
+]
+
+[[package]]
+name = "walrus"
+version = "0.18.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4d470d0583e65f4cab21a1ff3c1ba3dd23ae49e68f516f0afceaeb001b32af39"
+dependencies = [
+ "anyhow",
+ "id-arena",
+ "leb128",
+ "log 0.4.11",
+ "rayon",
+ "walrus-macro",
+ "wasmparser",
+]
+
+[[package]]
+name = "walrus-macro"
+version = "0.18.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d7c2bb690b44cb1b0fdcc54d4998d21f8bdaf706b93775425e440b174f39ad16"
+dependencies = [
+ "heck",
+ "proc-macro2",
+ "quote",
+ "syn",
+]
+
+[[package]]
+name = "wasi"
+version = "0.9.0+wasi-snapshot-preview1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519"
+
+[[package]]
+name = "wasm-bindgen"
+version = "0.2.65"
+dependencies = [
+ "cfg-if",
+ "js-sys",
+ "serde",
+ "serde_derive",
+ "serde_json",
+ "wasm-bindgen-futures",
+ "wasm-bindgen-macro",
+ "wasm-bindgen-test",
+ "wasm-bindgen-test-crate-a",
+ "wasm-bindgen-test-crate-b",
+]
+
+[[package]]
+name = "wasm-bindgen-backend"
+version = "0.2.65"
+dependencies = [
+ "bumpalo",
+ "lazy_static",
+ "log 0.4.11",
+ "proc-macro2",
+ "quote",
+ "syn",
+ "wasm-bindgen-shared",
+]
+
+[[package]]
+name = "wasm-bindgen-benchmark"
+version = "0.1.0"
+dependencies = [
+ "wasm-bindgen",
+ "web-sys",
+]
+
+[[package]]
+name = "wasm-bindgen-cli"
+version = "0.2.65"
+dependencies = [
+ "anyhow",
+ "assert_cmd",
+ "curl",
+ "diff",
+ "docopt",
+ "env_logger",
+ "log 0.4.11",
+ "openssl",
+ "predicates",
+ "rayon",
+ "rouille",
+ "serde",
+ "serde_derive",
+ "serde_json",
+ "tempfile",
+ "walrus",
+ "wasm-bindgen-cli-support",
+ "wasm-bindgen-shared",
+ "wit-printer",
+ "wit-text",
+ "wit-validator",
+ "wit-walrus",
+]
+
+[[package]]
+name = "wasm-bindgen-cli-support"
+version = "0.2.65"
+dependencies = [
+ "anyhow",
+ "base64 0.9.3",
+ "log 0.4.11",
+ "rustc-demangle",
+ "serde_json",
+ "tempfile",
+ "walrus",
+ "wasm-bindgen-externref-xform",
+ "wasm-bindgen-multi-value-xform",
+ "wasm-bindgen-shared",
+ "wasm-bindgen-threads-xform",
+ "wasm-bindgen-wasm-conventions",
+ "wasm-bindgen-wasm-interpreter",
+ "wit-text",
+ "wit-validator",
+ "wit-walrus",
+]
+
+[[package]]
+name = "wasm-bindgen-externref-xform"
+version = "0.2.65"
+dependencies = [
+ "anyhow",
+ "rayon",
+ "walrus",
+ "wasmprinter",
+ "wast",
+ "wat",
+]
+
+[[package]]
+name = "wasm-bindgen-futures"
+version = "0.4.15"
+dependencies = [
+ "cfg-if",
+ "futures-channel-preview",
+ "js-sys",
+ "wasm-bindgen",
+ "wasm-bindgen-test",
+ "web-sys",
+]
+
+[[package]]
+name = "wasm-bindgen-macro"
+version = "0.2.65"
+dependencies = [
+ "quote",
+ "trybuild",
+ "wasm-bindgen",
+ "wasm-bindgen-futures",
+ "wasm-bindgen-macro-support",
+]
+
+[[package]]
+name = "wasm-bindgen-macro-support"
+version = "0.2.65"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn",
+ "wasm-bindgen-backend",
+ "wasm-bindgen-shared",
+]
+
+[[package]]
+name = "wasm-bindgen-multi-value-xform"
+version = "0.2.65"
+dependencies = [
+ "anyhow",
+ "rayon",
+ "walrus",
+ "wasmprinter",
+ "wast",
+ "wat",
+]
+
+[[package]]
+name = "wasm-bindgen-paint"
+version = "0.1.0"
+dependencies = [
+ "js-sys",
+ "wasm-bindgen",
+ "web-sys",
+]
+
+[[package]]
+name = "wasm-bindgen-shared"
+version = "0.2.65"
+
+[[package]]
+name = "wasm-bindgen-test"
+version = "0.3.15"
+dependencies = [
+ "console_error_panic_hook",
+ "js-sys",
+ "scoped-tls",
+ "wasm-bindgen",
+ "wasm-bindgen-futures",
+ "wasm-bindgen-test-macro",
+]
+
+[[package]]
+name = "wasm-bindgen-test-crate-a"
+version = "0.1.0"
+dependencies = [
+ "wasm-bindgen",
+]
+
+[[package]]
+name = "wasm-bindgen-test-crate-b"
+version = "0.1.0"
+dependencies = [
+ "wasm-bindgen",
+]
+
+[[package]]
+name = "wasm-bindgen-test-macro"
+version = "0.3.15"
+dependencies = [
+ "proc-macro2",
+ "quote",
+]
+
+[[package]]
+name = "wasm-bindgen-threads-xform"
+version = "0.2.65"
+dependencies = [
+ "anyhow",
+ "walrus",
+ "wasm-bindgen-wasm-conventions",
+]
+
+[[package]]
+name = "wasm-bindgen-wasm-conventions"
+version = "0.2.65"
+dependencies = [
+ "anyhow",
+ "walrus",
+]
+
+[[package]]
+name = "wasm-bindgen-wasm-interpreter"
+version = "0.2.65"
+dependencies = [
+ "anyhow",
+ "log 0.4.11",
+ "tempfile",
+ "walrus",
+ "wasm-bindgen-wasm-conventions",
+ "wat",
+]
+
+[[package]]
+name = "wasm-bindgen-webidl"
+version = "0.2.65"
+dependencies = [
+ "anyhow",
+ "env_logger",
+ "heck",
+ "lazy_static",
+ "log 0.4.11",
+ "proc-macro2",
+ "quote",
+ "sourcefile",
+ "structopt",
+ "syn",
+ "wasm-bindgen-backend",
+ "weedle",
+]
+
+[[package]]
+name = "wasm-in-wasm"
+version = "0.1.0"
+dependencies = [
+ "js-sys",
+ "wasm-bindgen",
+ "wasm-bindgen-futures",
+]
+
+[[package]]
+name = "wasm-in-wasm-imports"
+version = "0.1.0"
+dependencies = [
+ "js-sys",
+ "wasm-bindgen",
+ "wasm-bindgen-futures",
+]
+
+[[package]]
+name = "wasm2js"
+version = "0.1.0"
+dependencies = [
+ "wasm-bindgen",
+]
+
+[[package]]
+name = "wasmparser"
+version = "0.59.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a950e6a618f62147fd514ff445b2a0b53120d382751960797f85f058c7eda9b9"
+
+[[package]]
+name = "wasmprinter"
+version = "0.2.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "334551eb8b0b1be16cf366a54ce9b541ac32a96e9b51e67ebbae1696f108f112"
+dependencies = [
+ "anyhow",
+ "wasmparser",
+]
+
+[[package]]
+name = "wast"
+version = "21.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0b1844f66a2bc8526d71690104c0e78a8e59ffa1597b7245769d174ebb91deb5"
+dependencies = [
+ "leb128",
+]
+
+[[package]]
+name = "wat"
+version = "1.0.22"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ce85d72b74242c340e9e3492cfb602652d7bb324c3172dd441b5577e39a2e18c"
+dependencies = [
+ "wast",
+]
+
+[[package]]
+name = "web-sys"
+version = "0.3.42"
+dependencies = [
+ "js-sys",
+ "wasm-bindgen",
+ "wasm-bindgen-futures",
+ "wasm-bindgen-test",
+]
+
+[[package]]
+name = "webaudio"
+version = "0.1.0"
+dependencies = [
+ "wasm-bindgen",
+ "web-sys",
+]
+
+[[package]]
+name = "webgl"
+version = "0.1.0"
+dependencies = [
+ "js-sys",
+ "wasm-bindgen",
+ "web-sys",
+]
+
+[[package]]
+name = "webidl-tests"
+version = "0.1.0"
+dependencies = [
+ "js-sys",
+ "wasm-bindgen",
+ "wasm-bindgen-test",
+ "wasm-bindgen-webidl",
+]
+
+[[package]]
+name = "webrtc_datachannel"
+version = "0.1.0"
+dependencies = [
+ "js-sys",
+ "wasm-bindgen",
+ "wasm-bindgen-futures",
+ "web-sys",
+]
+
+[[package]]
+name = "websockets"
+version = "0.1.0"
+dependencies = [
+ "js-sys",
+ "wasm-bindgen",
+ "web-sys",
+]
+
+[[package]]
+name = "webxr"
+version = "0.1.0"
+dependencies = [
+ "futures",
+ "js-sys",
+ "serde",
+ "serde_derive",
+ "wasm-bindgen",
+ "wasm-bindgen-futures",
+ "web-sys",
+]
+
+[[package]]
+name = "weedle"
+version = "0.11.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8a7d4f9feb723a800d8f7b74edc9fa44ff35cb0b2ec64886714362f423427f37"
+dependencies = [
+ "nom",
+]
+
+[[package]]
+name = "winapi"
+version = "0.3.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
+dependencies = [
+ "winapi-i686-pc-windows-gnu",
+ "winapi-x86_64-pc-windows-gnu",
+]
+
+[[package]]
+name = "winapi-i686-pc-windows-gnu"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
+
+[[package]]
+name = "winapi-util"
+version = "0.1.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178"
+dependencies = [
+ "winapi",
+]
+
+[[package]]
+name = "winapi-x86_64-pc-windows-gnu"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
+
+[[package]]
+name = "wit-parser"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3f5fd97866f4b9c8e1ed57bcf9446f3d0d8ba37e2dd01c3c612c046c053b06f7"
+dependencies = [
+ "anyhow",
+ "leb128",
+ "wit-schema-version",
+]
+
+[[package]]
+name = "wit-printer"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "93f19ca44555a3c14d69acee6447a6e4f52771b0c6e5d8db3e42db3b90f6fce9"
+dependencies = [
+ "anyhow",
+ "wasmprinter",
+ "wit-parser",
+ "wit-schema-version",
+]
+
+[[package]]
+name = "wit-schema-version"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bfee4a6a4716eefa0682e7a3b836152e894a3e4f34a9d6c2c3e1c94429bfe36a"
+
+[[package]]
+name = "wit-text"
+version = "0.8.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "33358e95c77d660f1c7c07f4a93c2bd89768965e844e3c50730bb4b42658df5f"
+dependencies = [
+ "anyhow",
+ "wast",
+ "wit-writer",
+]
+
+[[package]]
+name = "wit-validator"
+version = "0.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3c11d93d925420e7872b226c4161849c32be38385ccab026b88df99d8ddc6ba6"
+dependencies = [
+ "anyhow",
+ "wasmparser",
+ "wit-parser",
+ "wit-schema-version",
+]
+
+[[package]]
+name = "wit-walrus"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b532d7bc47d02a08463adc934301efbf67e7b1e1284f8a68edc85d1ca84fa125"
+dependencies = [
+ "anyhow",
+ "id-arena",
+ "walrus",
+ "wit-parser",
+ "wit-schema-version",
+ "wit-writer",
+]
+
+[[package]]
+name = "wit-writer"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c2ad01ba5e9cbcff799a0689e56a153776ea694cec777f605938cb9880d41a09"
+dependencies = [
+ "leb128",
+ "wit-schema-version",
+]
+
+[[package]]
+name = "without-a-bundler"
+version = "0.1.0"
+dependencies = [
+ "wasm-bindgen",
+ "web-sys",
+]
+
+[[package]]
+name = "without-a-bundler-no-modules"
+version = "0.1.0"
+dependencies = [
+ "wasm-bindgen",
+ "web-sys",
+]
diff --git a/pkgs/development/tools/wasm-bindgen-cli/default.nix b/pkgs/development/tools/wasm-bindgen-cli/default.nix
index cb4840df4d1..97a48a37005 100644
--- a/pkgs/development/tools/wasm-bindgen-cli/default.nix
+++ b/pkgs/development/tools/wasm-bindgen-cli/default.nix
@@ -1,21 +1,29 @@
-{ rustPlatform, fetchFromGitHub, lib, openssl, pkgconfig, stdenv, curl, Security, ... }:
+{ rustPlatform, fetchFromGitHub, lib, openssl, pkgconfig, stdenv, curl, Security
+, runCommand
+}:
rustPlatform.buildRustPackage rec {
pname = "wasm-bindgen-cli";
- version = "0.2.64";
+ version = "0.2.65";
- src = fetchFromGitHub {
- owner = "rustwasm";
- repo = "wasm-bindgen";
- rev = version;
- sha256 = "1h8sxa15v4l6m4b82p0rlg7ilzfjdz2x7lipampapb9yzn9c5dcs";
- };
+ src =
+ let
+ tarball = fetchFromGitHub {
+ owner = "rustwasm";
+ repo = "wasm-bindgen";
+ rev = version;
+ sha256 = "0qfz5x2hmfxz0kjc1biki0748d4qi8ws0b4bx9y2fs8dgbnppkzf";
+ };
+ in runCommand "source" { } ''
+ cp -R ${tarball} $out
+ chmod -R +w $out
+ cp ${./Cargo.lock} $out/Cargo.lock
+ '';
buildInputs = [ openssl ] ++ lib.optionals stdenv.isDarwin [ Security curl ];
nativeBuildInputs = [ pkgconfig ];
- cargoSha256 = "1pynk2yisv6ryj1rlwx8bv6akjm39i3d6sd8f42b5v1w5vsg0nqm";
- cargoPatches = [ ./0001-Add-cargo.lock.patch ];
+ cargoSha256 = "1rjf4f8hm4vqjcdhi7s5az8p5633dg425m8hh32kakq1ar06pfvj";
cargoBuildFlags = [ "-p" pname ];
meta = with lib; {
diff --git a/pkgs/games/cataclysm-dda/default.nix b/pkgs/games/cataclysm-dda/default.nix
index ad1a9c409d5..c046b0d3a2d 100644
--- a/pkgs/games/cataclysm-dda/default.nix
+++ b/pkgs/games/cataclysm-dda/default.nix
@@ -9,12 +9,12 @@ let
in
stdenv.mkDerivation (common // rec {
- version = "0.E";
+ version = "0.E-2";
name = "cataclysm-dda-${version}";
src = fetchFromCleverRaven {
rev = version;
- sha256 = "0pbi0fw37zimzdklfj58s1ql0wlqq7dy6idkcsib3hn910ajaxan";
+ sha256 = "15l6w6lxays7qmsv0ci2ry53asb9an9dh7l7fc13256k085qcg68";
};
patches = [ ./patches/fix_locale_dir.patch ];
diff --git a/pkgs/games/gzdoom/default.nix b/pkgs/games/gzdoom/default.nix
index e6f27eedbb9..fdbdda2d313 100644
--- a/pkgs/games/gzdoom/default.nix
+++ b/pkgs/games/gzdoom/default.nix
@@ -1,55 +1,85 @@
-{ stdenv, fetchFromGitHub, cmake, makeWrapper
-, openal, fluidsynth_1, soundfont-fluid, libGL, SDL2
-, bzip2, zlib, libjpeg, libsndfile, mpg123, game-music-emu }:
+{ stdenv, fetchFromGitHub, cmake, makeWrapper, openal, fluidsynth_1
+, soundfont-fluid, libGL, SDL2, bzip2, zlib, libjpeg, libsndfile, mpg123
+, game-music-emu, pkgconfig }:
-stdenv.mkDerivation rec {
- pname = "gzdoom";
- version = "4.3.3";
-
- src = fetchFromGitHub {
+let
+ zmusic-src = fetchFromGitHub {
owner = "coelckers";
- repo = "gzdoom";
- rev = "g${version}";
- sha256 = "1c4vhnvvwy1rs8xm01kqd486h5xsiccwkf95fjx7912zr49yalks";
+ repo = "zmusic";
+ rev = "2d0ea861174f9e2031400ab29f5bcc8425521cc6";
+ sha256 = "1ac7lhbzwfr0fsyv7n70hvb8imzngxn1qyanmv9j26j0h90hhl8a";
+ };
+ zmusic = stdenv.mkDerivation {
+ pname = "zmusic";
+ version = "1.1.0";
+
+ src = zmusic-src;
+
+ nativeBuildInputs = [ cmake pkgconfig ];
+
+ preConfigure = ''
+ sed -i \
+ -e "s@/usr/share/sounds/sf2/@${soundfont-fluid}/share/soundfonts/@g" \
+ -e "s@FluidR3_GM.sf2@FluidR3_GM2-2.sf2@g" \
+ source/mididevices/music_fluidsynth_mididevice.cpp
+ '';
+
};
- nativeBuildInputs = [ cmake makeWrapper ];
- buildInputs = [
- SDL2 libGL openal fluidsynth_1 bzip2 zlib libjpeg libsndfile mpg123
- game-music-emu
- ];
+ gzdoom = stdenv.mkDerivation rec {
+ pname = "gzdoom";
+ version = "4.4.2";
- enableParallelBuilding = true;
+ src = fetchFromGitHub {
+ owner = "coelckers";
+ repo = "gzdoom";
+ rev = "g${version}";
+ sha256 = "1xkkmbsdv64wyb9r2fv5mwyqw0bjryk528jghdrh47pndmjs9a38";
+ fetchSubmodules = true;
+ };
- NIX_CFLAGS_LINK = "-lopenal -lfluidsynth";
+ nativeBuildInputs = [ cmake makeWrapper pkgconfig ];
+ buildInputs = [
+ SDL2
+ libGL
+ openal
+ fluidsynth_1
+ bzip2
+ zlib
+ libjpeg
+ libsndfile
+ mpg123
+ game-music-emu
+ zmusic
+ ];
- preConfigure = ''
- sed -i \
- -e "s@/usr/share/sounds/sf2/@${soundfont-fluid}/share/soundfonts/@g" \
- -e "s@FluidR3_GM.sf2@FluidR3_GM2-2.sf2@g" \
- libraries/zmusic/mididevices/music_fluidsynth_mididevice.cpp
- '';
+ enableParallelBuilding = true;
- installPhase = ''
- install -Dm755 gzdoom "$out/lib/gzdoom/gzdoom"
- for i in *.pk3; do
- install -Dm644 "$i" "$out/lib/gzdoom/$i"
- done
- for i in fm_banks/*; do
- install -Dm644 "$i" "$out/lib/gzdoom/$i"
- done
- for i in soundfonts/*; do
- install -Dm644 "$i" "$out/lib/gzdoom/$i"
- done
- mkdir $out/bin
- makeWrapper $out/lib/gzdoom/gzdoom $out/bin/gzdoom
- '';
+ NIX_CFLAGS_LINK = "-lopenal -lfluidsynth";
- meta = with stdenv.lib; {
- homepage = "https://github.com/coelckers/gzdoom";
- description = "A Doom source port based on ZDoom. It features an OpenGL renderer and lots of new features";
- license = licenses.gpl3;
- platforms = ["x86_64-linux"];
- maintainers = with maintainers; [ lassulus ];
+ installPhase = ''
+ install -Dm755 gzdoom "$out/lib/gzdoom/gzdoom"
+ for i in *.pk3; do
+ install -Dm644 "$i" "$out/lib/gzdoom/$i"
+ done
+ for i in fm_banks/*; do
+ install -Dm644 "$i" "$out/lib/gzdoom/$i"
+ done
+ for i in soundfonts/*; do
+ install -Dm644 "$i" "$out/lib/gzdoom/$i"
+ done
+ mkdir $out/bin
+ makeWrapper $out/lib/gzdoom/gzdoom $out/bin/gzdoom
+ '';
+
+ meta = with stdenv.lib; {
+ homepage = "https://github.com/coelckers/gzdoom";
+ description =
+ "A Doom source port based on ZDoom. It features an OpenGL renderer and lots of new features";
+ license = licenses.gpl3;
+ platforms = [ "x86_64-linux" ];
+ maintainers = with maintainers; [ lassulus ];
+ };
};
-}
+
+in gzdoom
diff --git a/pkgs/games/osu-lazer/default.nix b/pkgs/games/osu-lazer/default.nix
new file mode 100644
index 00000000000..93c04e8852f
--- /dev/null
+++ b/pkgs/games/osu-lazer/default.nix
@@ -0,0 +1,104 @@
+{ lib, stdenv, fetchFromGitHub, fetchurl, makeWrapper, makeDesktopItem, linkFarmFromDrvs
+, dotnet-sdk, dotnet-netcore, dotnetPackages
+, ffmpeg_4, alsaLib, SDL2, lttng-ust, numactl, alsaPlugins
+}:
+
+let
+ runtimeDeps = [
+ ffmpeg_4 alsaLib SDL2 lttng-ust numactl
+ ];
+
+ # https://docs.microsoft.com/en-us/dotnet/core/rid-catalog#using-rids
+ runtimeId = "linux-x64";
+
+in stdenv.mkDerivation rec {
+ pname = "osu-lazer";
+ version = "2020.714.0";
+
+ src = fetchFromGitHub {
+ owner = "ppy";
+ repo = "osu";
+ rev = version;
+ sha256 = "1dh3krvs7mfiyyr3cjkp396zaipcibw2s45smfzr9aqrznsqx64v";
+ };
+
+ nativeBuildInputs = [ dotnet-sdk dotnetPackages.Nuget makeWrapper ];
+
+ nugetDeps = linkFarmFromDrvs "${pname}-nuget-deps" (import ./deps.nix {
+ fetchNuGet = { name, version, sha256 }: fetchurl {
+ name = "nuget-${name}-${version}.nupkg";
+ url = "https://www.nuget.org/api/v2/package/${name}/${version}";
+ inherit sha256;
+ };
+ });
+
+ configurePhase = ''
+ runHook preConfigure
+
+ export HOME=$(mktemp -d)
+ export DOTNET_CLI_TELEMETRY_OPTOUT=1
+ export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1
+
+ nuget sources Add -Name nixos -Source "$PWD/nixos"
+ nuget init "$nugetDeps" "$PWD/nixos"
+
+ # FIXME: https://github.com/NuGet/Home/issues/4413
+ mkdir -p $HOME/.nuget/NuGet
+ cp $HOME/.config/NuGet/NuGet.Config $HOME/.nuget/NuGet
+
+ dotnet restore --source nixos osu.Desktop
+
+ runHook postConfigure
+ '';
+
+ buildPhase = ''
+ runHook preBuild
+ dotnet build osu.Desktop \
+ --no-restore \
+ --configuration Release \
+ -p:Version=${version}
+ runHook postBuild
+ '';
+
+ installPhase = ''
+ runHook preInstall
+
+ dotnet publish osu.Desktop \
+ --no-build \
+ --configuration Release \
+ --no-self-contained \
+ --output $out/lib/osu
+ shopt -s extglob
+ rm -r $out/lib/osu/runtimes/!(${runtimeId})
+
+ makeWrapper $out/lib/osu/osu\! $out/bin/osu\! \
+ --set DOTNET_ROOT "${dotnet-netcore}" \
+ --suffix LD_LIBRARY_PATH : "${lib.makeLibraryPath runtimeDeps}"
+ for i in 16 32 48 64 96 128 256 512 1024; do
+ install -D ./assets/lazer.png $out/share/icons/hicolor/''${i}x$i/apps/osu\!.png
+ done
+ cp -r ${makeDesktopItem {
+ desktopName = "osu!";
+ name = "osu";
+ exec = "osu!";
+ icon = "osu!";
+ comment = meta.description;
+ type = "Application";
+ categories = "Game;";
+ }}/share/applications $out/share
+
+ runHook postInstall
+ '';
+
+ # Strip breaks the executable.
+ dontStrip = true;
+
+ meta = with lib; {
+ description = "Rhythm is just a *click* away";
+ homepage = "https://osu.ppy.sh";
+ license = with licenses; [ mit cc-by-nc-40 ];
+ maintainers = with maintainers; [ oxalica ];
+ platforms = [ "x86_64-linux" ];
+ };
+ passthru.updateScript = ./update.sh;
+}
diff --git a/pkgs/games/osu-lazer/deps.nix b/pkgs/games/osu-lazer/deps.nix
new file mode 100644
index 00000000000..53703652cc1
--- /dev/null
+++ b/pkgs/games/osu-lazer/deps.nix
@@ -0,0 +1,1492 @@
+{ fetchNuGet }: [
+ (fetchNuGet {
+ name = "Dapper";
+ version = "2.0.35";
+ sha256 = "0465i2p5kjj0hmadyw0xrpn43zpc4bnbid9mg561739fyjyjwmfm";
+ })
+ (fetchNuGet {
+ name = "DeltaCompressionDotNet";
+ version = "2.0.0.0";
+ sha256 = "0zhj7m3zaf9wcg51385in9qg1xgkvp8yyzgq3r5k4sagm7y68aqy";
+ })
+ (fetchNuGet {
+ name = "DiffPlex";
+ version = "1.6.3";
+ sha256 = "0yi72afddddz0s8phx855rnjrga7n51bcma10dc91l0ffcwf5xwz";
+ })
+ (fetchNuGet {
+ name = "DiscordRichPresence";
+ version = "1.0.150";
+ sha256 = "0qmbi4sccia3w80q8xfvj3bw62nvz047wq198n2b2aflkf47bq79";
+ })
+ (fetchNuGet {
+ name = "FFmpeg.AutoGen";
+ version = "4.3.0.1";
+ sha256 = "0n6x57mnnvcjnrs8zyvy07h5zm4bcfy9gh4n4bvd9fx5ys4pxkvv";
+ })
+ (fetchNuGet {
+ name = "Humanizer";
+ version = "2.8.26";
+ sha256 = "11kddzyzqpq9gkz0hmrblq494nh86va6wxx6z89xi6w1f4vj15ak";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core";
+ version = "2.2.0";
+ sha256 = "08mzg65y9d3zvq16rsmpapcdan71ggq2mpks6k777h3wlm2sh3p5";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core";
+ version = "2.8.26";
+ sha256 = "1v8xd12yms4qq1md4vh6faxicmqrvahqdd7sdkyzrphab9v44nsm";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core.af";
+ version = "2.8.26";
+ sha256 = "0znrq4frlkq1qi20301hlzxa6mdc275fa1i1a1i8ldgk9cjq94k9";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core.ar";
+ version = "2.8.26";
+ sha256 = "1hi7mln48p1nmxlgdq725s4cvla9nlkvbmrsql1rfjjlsy8hn6n7";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core.az";
+ version = "2.8.26";
+ sha256 = "0av7ycrqwvmikqia3z3qkp9967zilrhayny17zkm0d0mnjq62vs6";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core.bg";
+ version = "2.8.26";
+ sha256 = "13j6zk2cmk7a119azxlpjhfwykrzk0vkf5a799fb2fzkvhnj4hkg";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core.bn-BD";
+ version = "2.8.26";
+ sha256 = "0h619sksggfi7dnaycz6bj9aiqdgn0d8dpgjgdl73crw52lr70p9";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core.cs";
+ version = "2.8.26";
+ sha256 = "11bh3k15388bi5wizaihnwqk7wb4n7q636fqjllwdhjggqrsc3f6";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core.da";
+ version = "2.8.26";
+ sha256 = "09b3x3bw3cgby9qvaccnqz2y6d8gl3497dh7q0dk1iznsxbk4x4m";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core.de";
+ version = "2.8.26";
+ sha256 = "1pyp2a9my20wlwjjzv563kshl9fpjb2kd4cw41l4wvsz1bsq3l22";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core.el";
+ version = "2.8.26";
+ sha256 = "0v3sdcxca4dam1y5yjh9n6v711ys0zdv38hr4kij35s6277ls6lb";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core.es";
+ version = "2.8.26";
+ sha256 = "0wh9qvqf80cngwsz2jnrsjpmaax4xa2xp8bbk5xs480kp071z37q";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core.fa";
+ version = "2.8.26";
+ sha256 = "00v56ddjfv6sr6w5246gn5z0padwswvnngp8mdl7gjfg5ycmbkl1";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core.fi-FI";
+ version = "2.8.26";
+ sha256 = "1pgs0j5ri50a6vhljplhrlc8jj1hrd9ggxkj60d9v5kk9xibzzyd";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core.fr";
+ version = "2.8.26";
+ sha256 = "0kkhgy3yn8vfqlx3dhb9m3cazkgfxarknam4macng9y17l7wj83m";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core.fr-BE";
+ version = "2.8.26";
+ sha256 = "13spcx07hph366qk073pz63s56nadaac7l4mr4a66gbpqd3814kb";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core.he";
+ version = "2.8.26";
+ sha256 = "1ccn82aj3rhrhsa3kvkrmjw0p687icxlfja8ngbh7sby4cszx9bk";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core.hr";
+ version = "2.8.26";
+ sha256 = "12ii79bhai3kv7zr3k9k9dh569r6p3m4l4gj25cln2isr4wdi5r9";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core.hu";
+ version = "2.8.26";
+ sha256 = "0cibbdxiqhwrjmxlr805mg3l9v0fl2ydx4m50608rkysjq6vxx7y";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core.hy";
+ version = "2.8.26";
+ sha256 = "15aikm04f74abm4ak8rvnnkrlcz155gibn1y81pbgsyn7yrh84v3";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core.id";
+ version = "2.8.26";
+ sha256 = "1i9gpzdfhmbvrqg858kqz5461sp3sh60g16dmcmyi1ik0qlspijn";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core.it";
+ version = "2.8.26";
+ sha256 = "01j7qskmqcxsakbx3bkxcjyzrh6nxi2v6kfzsfb0vf980qqq331l";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core.ja";
+ version = "2.8.26";
+ sha256 = "07d19ns4a4pa2k4vdc1af7wj10gaflq1ny4mx6y574afkdi8v6d5";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core.lv";
+ version = "2.8.26";
+ sha256 = "1pm64sj65nmngyfa3hjcw67icfmlzr232hmgpnw7306sb7dxmnfv";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core.ms-MY";
+ version = "2.8.26";
+ sha256 = "1yx4cc023kc4k14abk2ycmjy6y2xaknaz4zria7xsadf0fabd1jc";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core.mt";
+ version = "2.8.26";
+ sha256 = "0iai35pzka9g6c3sgswki06fk6gdnq8kc88wyb4pcciivazz31px";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core.nb";
+ version = "2.8.26";
+ sha256 = "0xprhiyjyq6mpha2lrav59n1f48508ddvm9nmdk5sm5k26ff3l90";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core.nb-NO";
+ version = "2.8.26";
+ sha256 = "160c98wfh7d2xlvlra4x5rdj4klgcjwcy3gkb4ipg655byn2m1j2";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core.nl";
+ version = "2.8.26";
+ sha256 = "067pqm4i1mk83fqqr0bvzrchrvxwdnff18z3djgagclh1i4xqlvk";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core.pl";
+ version = "2.8.26";
+ sha256 = "1r1bbqb990war1hiag5f88yxw0k9jiid1ihb4s5bc1lzs3vfsb6x";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core.pt";
+ version = "2.8.26";
+ sha256 = "1bik0vjjdzw51yl11ng9gsi3ihz50ibwh1gdhh2vd13jxjzb512p";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core.ro";
+ version = "2.8.26";
+ sha256 = "12f2hry6x1p1mgx6g4kpig2jpybx52ibghvhdhjbbfhy32gv8dr0";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core.ru";
+ version = "2.8.26";
+ sha256 = "1hri12kwymzvdqcr66l8yiqiw3pmf9fk492z10yqljm576kyshgg";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core.sk";
+ version = "2.8.26";
+ sha256 = "07jfgk67axw97b85dn4bwpjwf3swd74j9hdd870qps12xfp98i9j";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core.sl";
+ version = "2.8.26";
+ sha256 = "060xbzwb7p9ypbqfklih2zal2rh6h55gq4hv3i6alvlbd3vsx29n";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core.sr";
+ version = "2.8.26";
+ sha256 = "0i2c24qmqnhp85b088qlbagxd48hcl0v1ly4m7hfbvx5s7fg8riv";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core.sr-Latn";
+ version = "2.8.26";
+ sha256 = "1911a69sqssh9f007vmxbgyj4ym2ym4423xvw6cmbfhjcrhkfpbi";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core.sv";
+ version = "2.8.26";
+ sha256 = "056h8n9i18yl78f9ppzn2kkrz2cs46aqv0j5y8xq360zarggh0nm";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core.tr";
+ version = "2.8.26";
+ sha256 = "0dk8ga3fpxifxxkz0n68654h65cvrx00hy7q00m5vgvmcp70gxxn";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core.uk";
+ version = "2.8.26";
+ sha256 = "0bnj5xqlcqp4n8i04ra78dax4854zbf2jsygvb4lpiayyyaj2bxw";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core.uz-Cyrl-UZ";
+ version = "2.8.26";
+ sha256 = "1bbf6mxas6brjw7rjljq5saz6v3ic6zbvm1b3c1jbk0hc0qkd7c8";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core.uz-Latn-UZ";
+ version = "2.8.26";
+ sha256 = "1bfgfihpynax30g9kq8kra7c4jxps2ccxsxrs9gls47xbs35cw2f";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core.vi";
+ version = "2.8.26";
+ sha256 = "1vm765nvkp6wyfwlcgppimjrk04lkg8lscch3n1i1i5hlqxrs9ch";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core.zh-CN";
+ version = "2.8.26";
+ sha256 = "1qyl12rdh4iv1k1qcivcmxxnh8y93ainf22pmch8vvw9yjhs1y7s";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core.zh-Hans";
+ version = "2.8.26";
+ sha256 = "1gqv3dyk236wlp5wb7kd4qnyrmp3cy36ycykl7zr91s25cdls5vy";
+ })
+ (fetchNuGet {
+ name = "Humanizer.Core.zh-Hant";
+ version = "2.8.26";
+ sha256 = "1rhzbiqbx04l3kvzjklix90fxyc6vvmmw0p564ajdiximivs0pbh";
+ })
+ (fetchNuGet {
+ name = "JetBrains.Annotations";
+ version = "2020.1.0";
+ sha256 = "13fqcr6bs4x9rn0mpx110xl5apwh8ds1h0lx208znrm178ywqm8y";
+ })
+ (fetchNuGet {
+ name = "ManagedBass";
+ version = "2.0.4";
+ sha256 = "13hwd0yany4j52abbaaqsgq8lag2w9vjxxsj4qfbgwp4qs39x003";
+ })
+ (fetchNuGet {
+ name = "ManagedBass.Fx";
+ version = "2.0.1";
+ sha256 = "1rbjpgpm0ri7l2gqdy691rsv3visna2nbxawgvhdqljw068r8a8d";
+ })
+ (fetchNuGet {
+ name = "managed-midi";
+ version = "1.9.14";
+ sha256 = "025jh146zy98699y4civ7nxlkx312lwkl4sr8pha626q7q1kg89h";
+ })
+ (fetchNuGet {
+ name = "Markdig";
+ version = "0.20.0";
+ sha256 = "19qhvyj59i8zcxblpl4vqabb55y5xrk3iipmb656mid1b1m4jfkn";
+ })
+ (fetchNuGet {
+ name = "Microsoft.Bcl.AsyncInterfaces";
+ version = "1.1.0";
+ sha256 = "1dq5yw7cy6s42193yl4iqscfw5vzkjkgv0zyy32scr4jza6ni1a1";
+ })
+ (fetchNuGet {
+ name = "Microsoft.Build.Framework";
+ version = "15.3.409";
+ sha256 = "1dhanwb9ihbfay85xj7cwn0byzmmdz94hqfi3q6r1ncwdjd8y1s2";
+ })
+ (fetchNuGet {
+ name = "Microsoft.Build.Locator";
+ version = "1.2.6";
+ sha256 = "1rnfd7wq2bkynqj767xmq9ha38mz010fmqvvvrgb4v86gd537737";
+ })
+ (fetchNuGet {
+ name = "Microsoft.CodeAnalysis.Analyzers";
+ version = "3.0.0";
+ sha256 = "0bbl0jpqywqmzz2gagld1p2gvdfldjfjmm25hil9wj2nq1zc4di8";
+ })
+ (fetchNuGet {
+ name = "Microsoft.CodeAnalysis.BannedApiAnalyzers";
+ version = "3.0.0";
+ sha256 = "19zfz84c1860na8qpkzv6va6d7dh1md9wkrb7c6x3brhjnj859hk";
+ })
+ (fetchNuGet {
+ name = "Microsoft.CodeAnalysis.Common";
+ version = "3.6.0";
+ sha256 = "0i8x90700jr30j580mpawj6d90fngrb2zpkjjbn7f8r2p1mz75y7";
+ })
+ (fetchNuGet {
+ name = "Microsoft.CodeAnalysis.CSharp";
+ version = "3.6.0";
+ sha256 = "0c44qp7lfpja6cq5nk7851qrswm2z1k2pnvsw43j9ybf10a27jrn";
+ })
+ (fetchNuGet {
+ name = "Microsoft.CodeAnalysis.CSharp.Workspaces";
+ version = "3.6.0";
+ sha256 = "1zc9328invqqpisdljw5vpm1kk416prfczakakw1vwkv9r54sd73";
+ })
+ (fetchNuGet {
+ name = "Microsoft.CodeAnalysis.FxCopAnalyzers";
+ version = "3.0.0";
+ sha256 = "0a17vb6jnj6kch70d7vki84728hlc3zpffsbv533yji6kf6x6d24";
+ })
+ (fetchNuGet {
+ name = "Microsoft.CodeAnalysis.VersionCheckAnalyzer";
+ version = "3.0.0";
+ sha256 = "11g3hj3p885zj7bn99qzh68m1xifbwzrgmx1pkvpi10rmgkpyh8j";
+ })
+ (fetchNuGet {
+ name = "Microsoft.CodeAnalysis.Workspaces.Common";
+ version = "3.6.0";
+ sha256 = "176faadh1k9xcc8cc2qpkka9j1n426fdff1ax5ikmz2hbrspmigz";
+ })
+ (fetchNuGet {
+ name = "Microsoft.CodeAnalysis.Workspaces.MSBuild";
+ version = "3.6.0";
+ sha256 = "0hxs9x5gpi7yvqf46bxh9niipb0jif7ak5baxw5l920787vysdhc";
+ })
+ (fetchNuGet {
+ name = "Microsoft.CodeQuality.Analyzers";
+ version = "3.0.0";
+ sha256 = "1x3yf21m41w2iv9nlwp03q6byqgivd48h2dlm5vgv5bd53xjfz77";
+ })
+ (fetchNuGet {
+ name = "Microsoft.CSharp";
+ version = "4.0.1";
+ sha256 = "0zxc0apx1gcx361jlq8smc9pfdgmyjh6hpka8dypc9w23nlsh6yj";
+ })
+ (fetchNuGet {
+ name = "Microsoft.CSharp";
+ version = "4.5.0";
+ sha256 = "01i28nvzccxbqmiz217fxs6hnjwmd5fafs37rd49a6qp53y6623l";
+ })
+ (fetchNuGet {
+ name = "Microsoft.Data.Sqlite.Core";
+ version = "2.2.6";
+ sha256 = "0fx8698k71vzr8pdc6q8bsbzg6r8a42s4hkzmiyv13ibmyb5q68k";
+ })
+ (fetchNuGet {
+ name = "Microsoft.Diagnostics.Runtime";
+ version = "1.1.127808";
+ sha256 = "14xhiw6h5ck444vrmj79r0ral4dvcrak02ib0v7z0qx2c69vkdmc";
+ })
+ (fetchNuGet {
+ name = "Microsoft.DotNet.PlatformAbstractions";
+ version = "2.1.0";
+ sha256 = "1qydvyyinj3b5mraazjal3n2k7jqhn05b6n1a2f3qjkqkxi63dmy";
+ })
+ (fetchNuGet {
+ name = "Microsoft.EntityFrameworkCore";
+ version = "2.2.6";
+ sha256 = "18j2cr50wsikwv7gy3vrjvmpdxckvv537qma8afdpr3yn2klayh5";
+ })
+ (fetchNuGet {
+ name = "Microsoft.EntityFrameworkCore.Abstractions";
+ version = "2.2.6";
+ sha256 = "1dyxb5ibx24frlgbqy7zch0falq9p1189zvlbxgl94m0hvpml5j3";
+ })
+ (fetchNuGet {
+ name = "Microsoft.EntityFrameworkCore.Analyzers";
+ version = "2.2.6";
+ sha256 = "10f2lxxmh0xrdjvnam31fqfnjkaick23mpfvahj3ca5l07bph0rc";
+ })
+ (fetchNuGet {
+ name = "Microsoft.EntityFrameworkCore.Design";
+ version = "2.2.6";
+ sha256 = "0kjjkh1yfb56wnkmciqzfn9vymqfjap364y5amia0lmqmhfz8g7f";
+ })
+ (fetchNuGet {
+ name = "Microsoft.EntityFrameworkCore.Relational";
+ version = "2.2.6";
+ sha256 = "0c0z4mrqldjfslyxywb2ydk8hn9ybhkvz6lxx3idrfalq3ni5f1z";
+ })
+ (fetchNuGet {
+ name = "Microsoft.EntityFrameworkCore.Sqlite";
+ version = "2.2.6";
+ sha256 = "0z8k5ns841imaqha5abb1ka0rsfzy90k6qkrvix11sp6k9i7lsam";
+ })
+ (fetchNuGet {
+ name = "Microsoft.EntityFrameworkCore.Sqlite.Core";
+ version = "2.2.6";
+ sha256 = "0jzqw4672mzxjvzas09sl0zyzzayfgkv003a7bw5g2gjyiphf630";
+ })
+ (fetchNuGet {
+ name = "Microsoft.Extensions.Caching.Abstractions";
+ version = "2.2.0";
+ sha256 = "0hhxc5dp52faha1bdqw0k426zicsv6x1kfqi30m9agr0b2hixj52";
+ })
+ (fetchNuGet {
+ name = "Microsoft.Extensions.Caching.Memory";
+ version = "2.2.0";
+ sha256 = "0bzrsn5vas86w66bd04xilnlb21nx4l6lz7d3acvy6y8ir2vb5dv";
+ })
+ (fetchNuGet {
+ name = "Microsoft.Extensions.Configuration";
+ version = "2.2.0";
+ sha256 = "02250qrs3jqqbggfvd0mkim82817f79x6jh8fx2i7r58d0m66qkl";
+ })
+ (fetchNuGet {
+ name = "Microsoft.Extensions.Configuration.Abstractions";
+ version = "2.2.0";
+ sha256 = "1fv5277hyhfqmc0gqszyqb1ilwnijm8kc9606yia6hwr8pxyg674";
+ })
+ (fetchNuGet {
+ name = "Microsoft.Extensions.Configuration.Binder";
+ version = "2.2.0";
+ sha256 = "10qyjdkymdmag3r807kvbnwag4j3nz65i4cwikbd77jjvz92ya3j";
+ })
+ (fetchNuGet {
+ name = "Microsoft.Extensions.DependencyInjection";
+ version = "2.2.0";
+ sha256 = "0lvv45rvq1xbf47lz818rjydc776zk8mf7svpzh1dml4qwlx9zck";
+ })
+ (fetchNuGet {
+ name = "Microsoft.Extensions.DependencyInjection.Abstractions";
+ version = "2.2.0";
+ sha256 = "1jyzfdr9651h3x6pxwhpfbb9mysfh8f8z1jvy4g117h9790r9zx5";
+ })
+ (fetchNuGet {
+ name = "Microsoft.Extensions.DependencyModel";
+ version = "2.1.0";
+ sha256 = "0dl4qhjgifm6v3jsfzvzkvddyic77ggp9fq49ah661v45gk6ilgd";
+ })
+ (fetchNuGet {
+ name = "Microsoft.Extensions.Logging";
+ version = "2.2.0";
+ sha256 = "0bx3ljyvvcbikradq2h583rl72h8bxdz33aghk026cxzpv2mm3wm";
+ })
+ (fetchNuGet {
+ name = "Microsoft.Extensions.Logging.Abstractions";
+ version = "2.2.0";
+ sha256 = "02w7hp6jicr7cl5p456k2cmrjvvhm6spg5kxnlncw3b72358m5wl";
+ })
+ (fetchNuGet {
+ name = "Microsoft.Extensions.ObjectPool";
+ version = "3.0.3";
+ sha256 = "0zxsdwh9mhy3wsbjyfr4k0r10s1h06dzw8hcck9aknv155q26zqk";
+ })
+ (fetchNuGet {
+ name = "Microsoft.Extensions.Options";
+ version = "2.2.0";
+ sha256 = "1b20yh03fg4nmmi3vlf6gf13vrdkmklshfzl3ijygcs4c2hly6v0";
+ })
+ (fetchNuGet {
+ name = "Microsoft.Extensions.Primitives";
+ version = "2.2.0";
+ sha256 = "0znah6arbcqari49ymigg3wiy2hgdifz8zsq8vdc3ynnf45r7h0c";
+ })
+ (fetchNuGet {
+ name = "Microsoft.Net.Compilers.Toolset";
+ version = "3.1.0";
+ sha256 = "1csf8hgwvyxjlxdygacrk3pp0xkzydc1kvsv68cxy8h7gd62k0w0";
+ })
+ (fetchNuGet {
+ name = "Microsoft.NetCore.Analyzers";
+ version = "3.0.0";
+ sha256 = "0b8biyw7nymqfbg08g2vmpf1xm6g1mm6hz4gjxc5f3g72kd2nswj";
+ })
+ (fetchNuGet {
+ name = "Microsoft.NETCore.Platforms";
+ version = "1.0.1";
+ sha256 = "01al6cfxp68dscl15z7rxfw9zvhm64dncsw09a1vmdkacsa2v6lr";
+ })
+ (fetchNuGet {
+ name = "Microsoft.NETCore.Platforms";
+ version = "1.1.0";
+ sha256 = "08vh1r12g6ykjygq5d3vq09zylgb84l63k49jc4v8faw9g93iqqm";
+ })
+ (fetchNuGet {
+ name = "Microsoft.NETCore.Platforms";
+ version = "2.1.2";
+ sha256 = "1507hnpr9my3z4w1r6xk5n0s1j3y6a2c2cnynj76za7cphxi1141";
+ })
+ (fetchNuGet {
+ name = "Microsoft.NETCore.Platforms";
+ version = "3.1.0";
+ sha256 = "1gc1x8f95wk8yhgznkwsg80adk1lc65v9n5rx4yaa4bc5dva0z3j";
+ })
+ (fetchNuGet {
+ name = "Microsoft.NETCore.Platforms";
+ version = "3.1.1";
+ sha256 = "05hmaygd5131rnqi6ipv7agsbpi7ka18779vw45iw6b385l7n987";
+ })
+ (fetchNuGet {
+ name = "Microsoft.NETCore.Targets";
+ version = "1.0.1";
+ sha256 = "0ppdkwy6s9p7x9jix3v4402wb171cdiibq7js7i13nxpdky7074p";
+ })
+ (fetchNuGet {
+ name = "Microsoft.NETCore.Targets";
+ version = "1.1.0";
+ sha256 = "193xwf33fbm0ni3idxzbr5fdq3i2dlfgihsac9jj7whj0gd902nh";
+ })
+ (fetchNuGet {
+ name = "Microsoft.NetFramework.Analyzers";
+ version = "3.0.0";
+ sha256 = "09dqizym3bca4281714yxrhhgryxpjhjfjnyfswlhyh42qi3ix2k";
+ })
+ (fetchNuGet {
+ name = "Microsoft.Win32.Primitives";
+ version = "4.0.1";
+ sha256 = "1n8ap0cmljbqskxpf8fjzn7kh1vvlndsa75k01qig26mbw97k2q7";
+ })
+ (fetchNuGet {
+ name = "Microsoft.Win32.Primitives";
+ version = "4.3.0";
+ sha256 = "0j0c1wj4ndj21zsgivsc24whiya605603kxrbiw6wkfdync464wq";
+ })
+ (fetchNuGet {
+ name = "Microsoft.Win32.Registry";
+ version = "4.7.0";
+ sha256 = "0bx21jjbs7l5ydyw4p6cn07chryxpmchq2nl5pirzz4l3b0q4dgs";
+ })
+ (fetchNuGet {
+ name = "Mono.Cecil";
+ version = "0.9.6.1";
+ sha256 = "1fr7969h5q611l5227xw6nvv5rzap76vbpk0wg9hxbcxk3hn7szf";
+ })
+ (fetchNuGet {
+ name = "NETStandard.Library";
+ version = "1.6.0";
+ sha256 = "0nmmv4yw7gw04ik8ialj3ak0j6pxa9spih67hnn1h2c38ba8h58k";
+ })
+ (fetchNuGet {
+ name = "NETStandard.Library";
+ version = "1.6.1";
+ sha256 = "1z70wvsx2d847a2cjfii7b83pjfs34q05gb037fdjikv5kbagml8";
+ })
+ (fetchNuGet {
+ name = "NETStandard.Library";
+ version = "2.0.0";
+ sha256 = "1bc4ba8ahgk15m8k4nd7x406nhi0kwqzbgjk2dmw52ss553xz7iy";
+ })
+ (fetchNuGet {
+ name = "Newtonsoft.Json";
+ version = "12.0.2";
+ sha256 = "0w2fbji1smd2y7x25qqibf1qrznmv4s6s0jvrbvr6alb7mfyqvh5";
+ })
+ (fetchNuGet {
+ name = "Newtonsoft.Json";
+ version = "12.0.3";
+ sha256 = "17dzl305d835mzign8r15vkmav2hq8l6g7942dfjpnzr17wwl89x";
+ })
+ (fetchNuGet {
+ name = "Newtonsoft.Json";
+ version = "9.0.1";
+ sha256 = "0mcy0i7pnfpqm4pcaiyzzji4g0c8i3a5gjz28rrr28110np8304r";
+ })
+ (fetchNuGet {
+ name = "NUnit";
+ version = "3.12.0";
+ sha256 = "1880j2xwavi8f28vxan3hyvdnph4nlh5sbmh285s4lc9l0b7bdk2";
+ })
+ (fetchNuGet {
+ name = "ppy.osu.Framework";
+ version = "2020.714.1";
+ sha256 = "0x3f9grxi9ww151n9bppzrjf2s2bqfggv2chj0fhi9lm3ai2wvqc";
+ })
+ (fetchNuGet {
+ name = "ppy.osu.Framework.NativeLibs";
+ version = "2020.213.0";
+ sha256 = "1yzrx7bji2163dzvyqri42byc7lgxlm59xbwgi312dw5714snmxy";
+ })
+ (fetchNuGet {
+ name = "ppy.osu.Game.Resources";
+ version = "2020.714.0";
+ sha256 = "15papgd97pjvdx951hjm9w0d99rscvq2i5l98f746c6w87l1fk2n";
+ })
+ (fetchNuGet {
+ name = "ppy.osuTK.NS20";
+ version = "1.0.159";
+ sha256 = "0k69vc8f0vvyf49c5xb1brnw1a1g8s4k2ljw3za1dq1ilqxw7wm2";
+ })
+ (fetchNuGet {
+ name = "ppy.SDL2-CS";
+ version = "1.0.15";
+ sha256 = "0qld7sp7y7hwwxsdxc8m17nyb2zwfxym63j50icvf0rlawmrl7ca";
+ })
+ (fetchNuGet {
+ name = "ppy.squirrel.windows";
+ version = "1.9.0.4";
+ sha256 = "1m8shcmgs0fs225qd0navr1qr6csqjin9sg2x0d7xpfk04nd2hi7";
+ })
+ (fetchNuGet {
+ name = "Remotion.Linq";
+ version = "2.2.0";
+ sha256 = "1y46ni0xswmmiryp8sydjgryafwn458dr91f9xn653w73kdyk4xf";
+ })
+ (fetchNuGet {
+ name = "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl";
+ version = "4.3.0";
+ sha256 = "16rnxzpk5dpbbl1x354yrlsbvwylrq456xzpsha1n9y3glnhyx9d";
+ })
+ (fetchNuGet {
+ name = "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl";
+ version = "4.3.0";
+ sha256 = "0hkg03sgm2wyq8nqk6dbm9jh5vcq57ry42lkqdmfklrw89lsmr59";
+ })
+ (fetchNuGet {
+ name = "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl";
+ version = "4.3.0";
+ sha256 = "0c2p354hjx58xhhz7wv6div8xpi90sc6ibdm40qin21bvi7ymcaa";
+ })
+ (fetchNuGet {
+ name = "runtime.native.System";
+ version = "4.0.0";
+ sha256 = "1ppk69xk59ggacj9n7g6fyxvzmk1g5p4fkijm0d7xqfkig98qrkf";
+ })
+ (fetchNuGet {
+ name = "runtime.native.System";
+ version = "4.3.0";
+ sha256 = "15hgf6zaq9b8br2wi1i3x0zvmk410nlmsmva9p0bbg73v6hml5k4";
+ })
+ (fetchNuGet {
+ name = "runtime.native.System.IO.Compression";
+ version = "4.1.0";
+ sha256 = "0d720z4lzyfcabmmnvh0bnj76ll7djhji2hmfh3h44sdkjnlkknk";
+ })
+ (fetchNuGet {
+ name = "runtime.native.System.IO.Compression";
+ version = "4.3.0";
+ sha256 = "1vvivbqsk6y4hzcid27pqpm5bsi6sc50hvqwbcx8aap5ifrxfs8d";
+ })
+ (fetchNuGet {
+ name = "runtime.native.System.Net.Http";
+ version = "4.0.1";
+ sha256 = "1hgv2bmbaskx77v8glh7waxws973jn4ah35zysnkxmf0196sfxg6";
+ })
+ (fetchNuGet {
+ name = "runtime.native.System.Net.Http";
+ version = "4.3.0";
+ sha256 = "1n6rgz5132lcibbch1qlf0g9jk60r0kqv087hxc0lisy50zpm7kk";
+ })
+ (fetchNuGet {
+ name = "runtime.native.System.Security.Cryptography";
+ version = "4.0.0";
+ sha256 = "0k57aa2c3b10wl3hfqbgrl7xq7g8hh3a3ir44b31dn5p61iiw3z9";
+ })
+ (fetchNuGet {
+ name = "runtime.native.System.Security.Cryptography.Apple";
+ version = "4.3.0";
+ sha256 = "1b61p6gw1m02cc1ry996fl49liiwky6181dzr873g9ds92zl326q";
+ })
+ (fetchNuGet {
+ name = "runtime.native.System.Security.Cryptography.OpenSsl";
+ version = "4.3.0";
+ sha256 = "18pzfdlwsg2nb1jjjjzyb5qlgy6xjxzmhnfaijq5s2jw3cm3ab97";
+ })
+ (fetchNuGet {
+ name = "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl";
+ version = "4.3.0";
+ sha256 = "0qyynf9nz5i7pc26cwhgi8j62ps27sqmf78ijcfgzab50z9g8ay3";
+ })
+ (fetchNuGet {
+ name = "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl";
+ version = "4.3.0";
+ sha256 = "1klrs545awhayryma6l7g2pvnp9xy4z0r1i40r80zb45q3i9nbyf";
+ })
+ (fetchNuGet {
+ name = "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple";
+ version = "4.3.0";
+ sha256 = "10yc8jdrwgcl44b4g93f1ds76b176bajd3zqi2faf5rvh1vy9smi";
+ })
+ (fetchNuGet {
+ name = "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl";
+ version = "4.3.0";
+ sha256 = "0zcxjv5pckplvkg0r6mw3asggm7aqzbdjimhvsasb0cgm59x09l3";
+ })
+ (fetchNuGet {
+ name = "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl";
+ version = "4.3.0";
+ sha256 = "0vhynn79ih7hw7cwjazn87rm9z9fj0rvxgzlab36jybgcpcgphsn";
+ })
+ (fetchNuGet {
+ name = "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl";
+ version = "4.3.0";
+ sha256 = "160p68l2c7cqmyqjwxydcvgw7lvl1cr0znkw8fp24d1by9mqc8p3";
+ })
+ (fetchNuGet {
+ name = "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl";
+ version = "4.3.0";
+ sha256 = "15zrc8fgd8zx28hdghcj5f5i34wf3l6bq5177075m2bc2j34jrqy";
+ })
+ (fetchNuGet {
+ name = "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl";
+ version = "4.3.0";
+ sha256 = "1p4dgxax6p7rlgj4q73k73rslcnz4wdcv8q2flg1s8ygwcm58ld5";
+ })
+ (fetchNuGet {
+ name = "Sentry";
+ version = "2.1.4";
+ sha256 = "11pb6zpgjypfjy5g51anznngr8hcspkj1swgj9rhz8y1dcv5aba7";
+ })
+ (fetchNuGet {
+ name = "Sentry.PlatformAbstractions";
+ version = "1.1.0";
+ sha256 = "19grscddh2ipp1q7hx3a3bckpxgpfxfffp2shc32jryqyxsba87y";
+ })
+ (fetchNuGet {
+ name = "Sentry.Protocol";
+ version = "2.1.4";
+ sha256 = "0mm1a7vxl4raka1917sqshbbxvrf5sxmcba7hjwrmz13cx86l6v0";
+ })
+ (fetchNuGet {
+ name = "SharpCompress";
+ version = "0.17.1";
+ sha256 = "1ffiacghbcnr3fkgvdcad7b1nky54nhmmn2sm43sks9zm8grvva4";
+ })
+ (fetchNuGet {
+ name = "SharpCompress";
+ version = "0.25.1";
+ sha256 = "0nkfflf1wnwgx1n52scnvq38q25khimjz67nwralipgrmwnynnr9";
+ })
+ (fetchNuGet {
+ name = "SharpFNT";
+ version = "2.0.0";
+ sha256 = "1bgacgh9hbck0qvji6frbb50sdiqfdng2fvvfgfw8b9qaql91mx0";
+ })
+ (fetchNuGet {
+ name = "SixLabors.Core";
+ version = "1.0.0-beta0008";
+ sha256 = "1yqcv5d2igsrmi9hf8xzikn0fms47skqpr552yzbj4z4wnraahaw";
+ })
+ (fetchNuGet {
+ name = "SixLabors.ImageSharp";
+ version = "1.0.0-beta0007";
+ sha256 = "1k3hrp26imyqjarkrcsrhvamlmynzv6cakzq68yx69c0h8lmscaf";
+ })
+ (fetchNuGet {
+ name = "Splat";
+ version = "1.6.2";
+ sha256 = "154w9q0z8697rcpqs4x233crx5ap1z4pl4xc21hsd3csbhw13ykf";
+ })
+ (fetchNuGet {
+ name = "SQLitePCLRaw.bundle_green";
+ version = "1.1.12";
+ sha256 = "0jbyd25ag15fyn9nawjikv0v5ylk2zh5pxgr6gm4kpbpqys86sq9";
+ })
+ (fetchNuGet {
+ name = "SQLitePCLRaw.core";
+ version = "1.1.12";
+ sha256 = "03gflsn2wl6v0a8zvh6y5xdhx0xxmfrn6jfldiy829x3fx74zgdl";
+ })
+ (fetchNuGet {
+ name = "SQLitePCLRaw.lib.e_sqlite3.linux";
+ version = "1.1.12";
+ sha256 = "10mlq914d3zggdjf4bv27w6jx0gqqjf6f91y5ri6pbvaqyhi28h5";
+ })
+ (fetchNuGet {
+ name = "SQLitePCLRaw.lib.e_sqlite3.osx";
+ version = "1.1.12";
+ sha256 = "1hixg6n9sqllfrcihj145lh1l38inv827808difvazd4zr3mi0z1";
+ })
+ (fetchNuGet {
+ name = "SQLitePCLRaw.lib.e_sqlite3.v110_xp";
+ version = "1.1.12";
+ sha256 = "107sivk5p38dg1kyvqrxgp67dj89s8l6brf9l52k6s4vrn4hrrk7";
+ })
+ (fetchNuGet {
+ name = "SQLitePCLRaw.provider.e_sqlite3.netstandard11";
+ version = "1.1.12";
+ sha256 = "0qr2d7ka6f5c7bybdhiyq7nl90c9575szmi0nfpknd9c0w024if4";
+ })
+ (fetchNuGet {
+ name = "StbiSharp";
+ version = "1.0.12";
+ sha256 = "044lyc6522s8q4kgvly0rsxghkiv4dwzycl2ibxf7q5dvws02qvp";
+ })
+ (fetchNuGet {
+ name = "System.AppContext";
+ version = "4.1.0";
+ sha256 = "0fv3cma1jp4vgj7a8hqc9n7hr1f1kjp541s6z0q1r6nazb4iz9mz";
+ })
+ (fetchNuGet {
+ name = "System.AppContext";
+ version = "4.3.0";
+ sha256 = "1649qvy3dar900z3g817h17nl8jp4ka5vcfmsr05kh0fshn7j3ya";
+ })
+ (fetchNuGet {
+ name = "System.Buffers";
+ version = "4.0.0";
+ sha256 = "13s659bcmg9nwb6z78971z1lr6bmh2wghxi1ayqyzl4jijd351gr";
+ })
+ (fetchNuGet {
+ name = "System.Buffers";
+ version = "4.3.0";
+ sha256 = "0fgns20ispwrfqll4q1zc1waqcmylb3zc50ys9x8zlwxh9pmd9jy";
+ })
+ (fetchNuGet {
+ name = "System.Buffers";
+ version = "4.4.0";
+ sha256 = "183f8063w8zqn99pv0ni0nnwh7fgx46qzxamwnans55hhs2l0g19";
+ })
+ (fetchNuGet {
+ name = "System.Buffers";
+ version = "4.5.0";
+ sha256 = "1ywfqn4md6g3iilpxjn5dsr0f5lx6z0yvhqp4pgjcamygg73cz2c";
+ })
+ (fetchNuGet {
+ name = "System.Collections";
+ version = "4.0.11";
+ sha256 = "1ga40f5lrwldiyw6vy67d0sg7jd7ww6kgwbksm19wrvq9hr0bsm6";
+ })
+ (fetchNuGet {
+ name = "System.Collections";
+ version = "4.3.0";
+ sha256 = "19r4y64dqyrq6k4706dnyhhw7fs24kpp3awak7whzss39dakpxk9";
+ })
+ (fetchNuGet {
+ name = "System.Collections.Concurrent";
+ version = "4.0.12";
+ sha256 = "07y08kvrzpak873pmyxs129g1ch8l27zmg51pcyj2jvq03n0r0fc";
+ })
+ (fetchNuGet {
+ name = "System.Collections.Concurrent";
+ version = "4.3.0";
+ sha256 = "0wi10md9aq33jrkh2c24wr2n9hrpyamsdhsxdcnf43b7y86kkii8";
+ })
+ (fetchNuGet {
+ name = "System.Collections.Immutable";
+ version = "1.5.0";
+ sha256 = "1d5gjn5afnrf461jlxzawcvihz195gayqpcfbv6dd7pxa9ialn06";
+ })
+ (fetchNuGet {
+ name = "System.ComponentModel.Annotations";
+ version = "4.5.0";
+ sha256 = "1jj6f6g87k0iwsgmg3xmnn67a14mq88np0l1ys5zkxhkvbc8976p";
+ })
+ (fetchNuGet {
+ name = "System.ComponentModel.Annotations";
+ version = "4.7.0";
+ sha256 = "06x1m46ddxj0ng28d7gry9gjkqdg2kp89jyf480g5gznyybbs49z";
+ })
+ (fetchNuGet {
+ name = "System.Composition";
+ version = "1.0.31";
+ sha256 = "0aa27jz73qb0xm6dyxv22qhfrmyyqjyn2dvvsd9asi82lcdh9i61";
+ })
+ (fetchNuGet {
+ name = "System.Composition.AttributedModel";
+ version = "1.0.31";
+ sha256 = "1ipyb86hvw754kmk47vjmzyilvj5hymg9nqabz70sbgsz1fygrdv";
+ })
+ (fetchNuGet {
+ name = "System.Composition.Convention";
+ version = "1.0.31";
+ sha256 = "00gqcdrql7vhynxh4xq0s9j5nw27kghmn2n773v7lhzjh3ash18r";
+ })
+ (fetchNuGet {
+ name = "System.Composition.Hosting";
+ version = "1.0.31";
+ sha256 = "1f1bnk3j7ndx9r7zpzibmrhw78clys1pspl20j2dhnmkiwhl23vy";
+ })
+ (fetchNuGet {
+ name = "System.Composition.Runtime";
+ version = "1.0.31";
+ sha256 = "1shfybfzsn4g6aim4pggb5ha31g0fz2kkk0519c4vj6m166g39ws";
+ })
+ (fetchNuGet {
+ name = "System.Composition.TypedParts";
+ version = "1.0.31";
+ sha256 = "1m4j19zx50lbbdx1xxbgpsd1dai2r3kzkyapw47kdvkb89qjkl63";
+ })
+ (fetchNuGet {
+ name = "System.Console";
+ version = "4.0.0";
+ sha256 = "0ynxqbc3z1nwbrc11hkkpw9skw116z4y9wjzn7id49p9yi7mzmlf";
+ })
+ (fetchNuGet {
+ name = "System.Console";
+ version = "4.3.0";
+ sha256 = "1flr7a9x920mr5cjsqmsy9wgnv3lvd0h1g521pdr1lkb2qycy7ay";
+ })
+ (fetchNuGet {
+ name = "System.Diagnostics.Debug";
+ version = "4.0.11";
+ sha256 = "0gmjghrqmlgzxivd2xl50ncbglb7ljzb66rlx8ws6dv8jm0d5siz";
+ })
+ (fetchNuGet {
+ name = "System.Diagnostics.Debug";
+ version = "4.3.0";
+ sha256 = "00yjlf19wjydyr6cfviaph3vsjzg3d5nvnya26i2fvfg53sknh3y";
+ })
+ (fetchNuGet {
+ name = "System.Diagnostics.DiagnosticSource";
+ version = "4.0.0";
+ sha256 = "1n6c3fbz7v8d3pn77h4v5wvsfrfg7v1c57lg3nff3cjyh597v23m";
+ })
+ (fetchNuGet {
+ name = "System.Diagnostics.DiagnosticSource";
+ version = "4.3.0";
+ sha256 = "0z6m3pbiy0qw6rn3n209rrzf9x1k4002zh90vwcrsym09ipm2liq";
+ })
+ (fetchNuGet {
+ name = "System.Diagnostics.DiagnosticSource";
+ version = "4.5.0";
+ sha256 = "1y8m0p3127nak5yspapfnz25qc9x53gqpvwr3hdpsvrcd2r1pgyj";
+ })
+ (fetchNuGet {
+ name = "System.Diagnostics.Tools";
+ version = "4.0.1";
+ sha256 = "19cknvg07yhakcvpxg3cxa0bwadplin6kyxd8mpjjpwnp56nl85x";
+ })
+ (fetchNuGet {
+ name = "System.Diagnostics.Tools";
+ version = "4.3.0";
+ sha256 = "0in3pic3s2ddyibi8cvgl102zmvp9r9mchh82ns9f0ms4basylw1";
+ })
+ (fetchNuGet {
+ name = "System.Diagnostics.Tracing";
+ version = "4.1.0";
+ sha256 = "1d2r76v1x610x61ahfpigda89gd13qydz6vbwzhpqlyvq8jj6394";
+ })
+ (fetchNuGet {
+ name = "System.Diagnostics.Tracing";
+ version = "4.3.0";
+ sha256 = "1m3bx6c2s958qligl67q7grkwfz3w53hpy7nc97mh6f7j5k168c4";
+ })
+ (fetchNuGet {
+ name = "System.Dynamic.Runtime";
+ version = "4.0.11";
+ sha256 = "1pla2dx8gkidf7xkciig6nifdsb494axjvzvann8g2lp3dbqasm9";
+ })
+ (fetchNuGet {
+ name = "System.Globalization";
+ version = "4.0.11";
+ sha256 = "070c5jbas2v7smm660zaf1gh0489xanjqymkvafcs4f8cdrs1d5d";
+ })
+ (fetchNuGet {
+ name = "System.Globalization";
+ version = "4.3.0";
+ sha256 = "1cp68vv683n6ic2zqh2s1fn4c2sd87g5hpp6l4d4nj4536jz98ki";
+ })
+ (fetchNuGet {
+ name = "System.Globalization.Calendars";
+ version = "4.0.1";
+ sha256 = "0bv0alrm2ck2zk3rz25lfyk9h42f3ywq77mx1syl6vvyncnpg4qh";
+ })
+ (fetchNuGet {
+ name = "System.Globalization.Calendars";
+ version = "4.3.0";
+ sha256 = "1xwl230bkakzzkrggy1l1lxmm3xlhk4bq2pkv790j5lm8g887lxq";
+ })
+ (fetchNuGet {
+ name = "System.Globalization.Extensions";
+ version = "4.0.1";
+ sha256 = "0hjhdb5ri8z9l93bw04s7ynwrjrhx2n0p34sf33a9hl9phz69fyc";
+ })
+ (fetchNuGet {
+ name = "System.Globalization.Extensions";
+ version = "4.3.0";
+ sha256 = "02a5zfxavhv3jd437bsncbhd2fp1zv4gxzakp1an9l6kdq1mcqls";
+ })
+ (fetchNuGet {
+ name = "System.Interactive.Async";
+ version = "3.2.0";
+ sha256 = "0y5r5y7dlccjpgg17rjrrzi3jya4ysyydamxs33qckkv4jb3534d";
+ })
+ (fetchNuGet {
+ name = "System.IO";
+ version = "4.1.0";
+ sha256 = "1g0yb8p11vfd0kbkyzlfsbsp5z44lwsvyc0h3dpw6vqnbi035ajp";
+ })
+ (fetchNuGet {
+ name = "System.IO";
+ version = "4.3.0";
+ sha256 = "05l9qdrzhm4s5dixmx68kxwif4l99ll5gqmh7rqgw554fx0agv5f";
+ })
+ (fetchNuGet {
+ name = "System.IO.Compression";
+ version = "4.1.0";
+ sha256 = "0iym7s3jkl8n0vzm3jd6xqg9zjjjqni05x45dwxyjr2dy88hlgji";
+ })
+ (fetchNuGet {
+ name = "System.IO.Compression";
+ version = "4.3.0";
+ sha256 = "084zc82yi6yllgda0zkgl2ys48sypiswbiwrv7irb3r0ai1fp4vz";
+ })
+ (fetchNuGet {
+ name = "System.IO.Compression.ZipFile";
+ version = "4.0.1";
+ sha256 = "0h72znbagmgvswzr46mihn7xm7chfk2fhrp5krzkjf29pz0i6z82";
+ })
+ (fetchNuGet {
+ name = "System.IO.Compression.ZipFile";
+ version = "4.3.0";
+ sha256 = "1yxy5pq4dnsm9hlkg9ysh5f6bf3fahqqb6p8668ndy5c0lk7w2ar";
+ })
+ (fetchNuGet {
+ name = "System.IO.FileSystem";
+ version = "4.0.1";
+ sha256 = "0kgfpw6w4djqra3w5crrg8xivbanh1w9dh3qapb28q060wb9flp1";
+ })
+ (fetchNuGet {
+ name = "System.IO.FileSystem";
+ version = "4.3.0";
+ sha256 = "0z2dfrbra9i6y16mm9v1v6k47f0fm617vlb7s5iybjjsz6g1ilmw";
+ })
+ (fetchNuGet {
+ name = "System.IO.FileSystem.Primitives";
+ version = "4.0.1";
+ sha256 = "1s0mniajj3lvbyf7vfb5shp4ink5yibsx945k6lvxa96r8la1612";
+ })
+ (fetchNuGet {
+ name = "System.IO.FileSystem.Primitives";
+ version = "4.3.0";
+ sha256 = "0j6ndgglcf4brg2lz4wzsh1av1gh8xrzdsn9f0yznskhqn1xzj9c";
+ })
+ (fetchNuGet {
+ name = "System.IO.Packaging";
+ version = "4.7.0";
+ sha256 = "1vivvf158ilcpp6bq70zyafimi0lng546b34csmjb09k19wgxpiv";
+ })
+ (fetchNuGet {
+ name = "System.Linq";
+ version = "4.1.0";
+ sha256 = "1ppg83svb39hj4hpp5k7kcryzrf3sfnm08vxd5sm2drrijsla2k5";
+ })
+ (fetchNuGet {
+ name = "System.Linq";
+ version = "4.3.0";
+ sha256 = "1w0gmba695rbr80l1k2h4mrwzbzsyfl2z4klmpbsvsg5pm4a56s7";
+ })
+ (fetchNuGet {
+ name = "System.Linq.Expressions";
+ version = "4.1.0";
+ sha256 = "1gpdxl6ip06cnab7n3zlcg6mqp7kknf73s8wjinzi4p0apw82fpg";
+ })
+ (fetchNuGet {
+ name = "System.Linq.Expressions";
+ version = "4.3.0";
+ sha256 = "0ky2nrcvh70rqq88m9a5yqabsl4fyd17bpr63iy2mbivjs2nyypv";
+ })
+ (fetchNuGet {
+ name = "System.Linq.Queryable";
+ version = "4.0.1";
+ sha256 = "11jn9k34g245yyf260gr3ldzvaqa9477w2c5nhb1p8vjx4xm3qaw";
+ })
+ (fetchNuGet {
+ name = "System.Memory";
+ version = "4.5.1";
+ sha256 = "0f07d7hny38lq9w69wx4lxkn4wszrqf9m9js6fh9is645csm167c";
+ })
+ (fetchNuGet {
+ name = "System.Memory";
+ version = "4.5.3";
+ sha256 = "0naqahm3wljxb5a911d37mwjqjdxv9l0b49p5dmfyijvni2ppy8a";
+ })
+ (fetchNuGet {
+ name = "System.Net.Http";
+ version = "4.1.0";
+ sha256 = "1i5rqij1icg05j8rrkw4gd4pgia1978mqhjzhsjg69lvwcdfg8yb";
+ })
+ (fetchNuGet {
+ name = "System.Net.Http";
+ version = "4.3.0";
+ sha256 = "1i4gc757xqrzflbk7kc5ksn20kwwfjhw9w7pgdkn19y3cgnl302j";
+ })
+ (fetchNuGet {
+ name = "System.Net.Primitives";
+ version = "4.0.11";
+ sha256 = "10xzzaynkzkakp7jai1ik3r805zrqjxiz7vcagchyxs2v26a516r";
+ })
+ (fetchNuGet {
+ name = "System.Net.Primitives";
+ version = "4.3.0";
+ sha256 = "0c87k50rmdgmxx7df2khd9qj7q35j9rzdmm2572cc55dygmdk3ii";
+ })
+ (fetchNuGet {
+ name = "System.Net.Sockets";
+ version = "4.1.0";
+ sha256 = "1385fvh8h29da5hh58jm1v78fzi9fi5vj93vhlm2kvqpfahvpqls";
+ })
+ (fetchNuGet {
+ name = "System.Net.Sockets";
+ version = "4.3.0";
+ sha256 = "1ssa65k6chcgi6mfmzrznvqaxk8jp0gvl77xhf1hbzakjnpxspla";
+ })
+ (fetchNuGet {
+ name = "System.Numerics.Vectors";
+ version = "4.4.0";
+ sha256 = "0rdvma399070b0i46c4qq1h2yvjj3k013sqzkilz4bz5cwmx1rba";
+ })
+ (fetchNuGet {
+ name = "System.Numerics.Vectors";
+ version = "4.5.0";
+ sha256 = "1kzrj37yzawf1b19jq0253rcs8hsq1l2q8g69d7ipnhzb0h97m59";
+ })
+ (fetchNuGet {
+ name = "System.ObjectModel";
+ version = "4.0.12";
+ sha256 = "1sybkfi60a4588xn34nd9a58png36i0xr4y4v4kqpg8wlvy5krrj";
+ })
+ (fetchNuGet {
+ name = "System.ObjectModel";
+ version = "4.3.0";
+ sha256 = "191p63zy5rpqx7dnrb3h7prvgixmk168fhvvkkvhlazncf8r3nc2";
+ })
+ (fetchNuGet {
+ name = "System.Reflection";
+ version = "4.1.0";
+ sha256 = "1js89429pfw79mxvbzp8p3q93il6rdff332hddhzi5wqglc4gml9";
+ })
+ (fetchNuGet {
+ name = "System.Reflection";
+ version = "4.3.0";
+ sha256 = "0xl55k0mw8cd8ra6dxzh974nxif58s3k1rjv1vbd7gjbjr39j11m";
+ })
+ (fetchNuGet {
+ name = "System.Reflection.Emit";
+ version = "4.0.1";
+ sha256 = "0ydqcsvh6smi41gyaakglnv252625hf29f7kywy2c70nhii2ylqp";
+ })
+ (fetchNuGet {
+ name = "System.Reflection.Emit";
+ version = "4.3.0";
+ sha256 = "11f8y3qfysfcrscjpjym9msk7lsfxkk4fmz9qq95kn3jd0769f74";
+ })
+ (fetchNuGet {
+ name = "System.Reflection.Emit.ILGeneration";
+ version = "4.0.1";
+ sha256 = "1pcd2ig6bg144y10w7yxgc9d22r7c7ww7qn1frdfwgxr24j9wvv0";
+ })
+ (fetchNuGet {
+ name = "System.Reflection.Emit.ILGeneration";
+ version = "4.3.0";
+ sha256 = "0w1n67glpv8241vnpz1kl14sy7zlnw414aqwj4hcx5nd86f6994q";
+ })
+ (fetchNuGet {
+ name = "System.Reflection.Emit.Lightweight";
+ version = "4.0.1";
+ sha256 = "1s4b043zdbx9k39lfhvsk68msv1nxbidhkq6nbm27q7sf8xcsnxr";
+ })
+ (fetchNuGet {
+ name = "System.Reflection.Emit.Lightweight";
+ version = "4.3.0";
+ sha256 = "0ql7lcakycrvzgi9kxz1b3lljd990az1x6c4jsiwcacrvimpib5c";
+ })
+ (fetchNuGet {
+ name = "System.Reflection.Emit.Lightweight";
+ version = "4.7.0";
+ sha256 = "0mbjfajmafkca47zr8v36brvknzks5a7pgb49kfq2d188pyv6iap";
+ })
+ (fetchNuGet {
+ name = "System.Reflection.Extensions";
+ version = "4.0.1";
+ sha256 = "0m7wqwq0zqq9gbpiqvgk3sr92cbrw7cp3xn53xvw7zj6rz6fdirn";
+ })
+ (fetchNuGet {
+ name = "System.Reflection.Extensions";
+ version = "4.3.0";
+ sha256 = "02bly8bdc98gs22lqsfx9xicblszr2yan7v2mmw3g7hy6miq5hwq";
+ })
+ (fetchNuGet {
+ name = "System.Reflection.Metadata";
+ version = "1.6.0";
+ sha256 = "1wdbavrrkajy7qbdblpbpbalbdl48q3h34cchz24gvdgyrlf15r4";
+ })
+ (fetchNuGet {
+ name = "System.Reflection.Primitives";
+ version = "4.0.1";
+ sha256 = "1bangaabhsl4k9fg8khn83wm6yial8ik1sza7401621jc6jrym28";
+ })
+ (fetchNuGet {
+ name = "System.Reflection.Primitives";
+ version = "4.3.0";
+ sha256 = "04xqa33bld78yv5r93a8n76shvc8wwcdgr1qvvjh959g3rc31276";
+ })
+ (fetchNuGet {
+ name = "System.Reflection.TypeExtensions";
+ version = "4.1.0";
+ sha256 = "1bjli8a7sc7jlxqgcagl9nh8axzfl11f4ld3rjqsyxc516iijij7";
+ })
+ (fetchNuGet {
+ name = "System.Reflection.TypeExtensions";
+ version = "4.3.0";
+ sha256 = "0y2ssg08d817p0vdag98vn238gyrrynjdj4181hdg780sif3ykp1";
+ })
+ (fetchNuGet {
+ name = "System.Resources.ResourceManager";
+ version = "4.0.1";
+ sha256 = "0b4i7mncaf8cnai85jv3wnw6hps140cxz8vylv2bik6wyzgvz7bi";
+ })
+ (fetchNuGet {
+ name = "System.Resources.ResourceManager";
+ version = "4.3.0";
+ sha256 = "0sjqlzsryb0mg4y4xzf35xi523s4is4hz9q4qgdvlvgivl7qxn49";
+ })
+ (fetchNuGet {
+ name = "System.Runtime";
+ version = "4.1.0";
+ sha256 = "02hdkgk13rvsd6r9yafbwzss8kr55wnj8d5c7xjnp8gqrwc8sn0m";
+ })
+ (fetchNuGet {
+ name = "System.Runtime";
+ version = "4.3.0";
+ sha256 = "066ixvgbf2c929kgknshcxqj6539ax7b9m570cp8n179cpfkapz7";
+ })
+ (fetchNuGet {
+ name = "System.Runtime.CompilerServices.Unsafe";
+ version = "4.5.1";
+ sha256 = "1xcrjx5fwg284qdnxyi2d0lzdm5q4frlpkp0nf6vvkx1kdz2prrf";
+ })
+ (fetchNuGet {
+ name = "System.Runtime.CompilerServices.Unsafe";
+ version = "4.5.2";
+ sha256 = "1vz4275fjij8inf31np78hw50al8nqkngk04p3xv5n4fcmf1grgi";
+ })
+ (fetchNuGet {
+ name = "System.Runtime.CompilerServices.Unsafe";
+ version = "4.7.0";
+ sha256 = "16r6sn4czfjk8qhnz7bnqlyiaaszr0ihinb7mq9zzr1wba257r54";
+ })
+ (fetchNuGet {
+ name = "System.Runtime.CompilerServices.Unsafe";
+ version = "4.7.1";
+ sha256 = "119br3pd85lq8zcgh4f60jzmv1g976q1kdgi3hvqdlhfbw6siz2j";
+ })
+ (fetchNuGet {
+ name = "System.Runtime.Extensions";
+ version = "4.1.0";
+ sha256 = "0rw4rm4vsm3h3szxp9iijc3ksyviwsv6f63dng3vhqyg4vjdkc2z";
+ })
+ (fetchNuGet {
+ name = "System.Runtime.Extensions";
+ version = "4.3.0";
+ sha256 = "1ykp3dnhwvm48nap8q23893hagf665k0kn3cbgsqpwzbijdcgc60";
+ })
+ (fetchNuGet {
+ name = "System.Runtime.Handles";
+ version = "4.0.1";
+ sha256 = "1g0zrdi5508v49pfm3iii2hn6nm00bgvfpjq1zxknfjrxxa20r4g";
+ })
+ (fetchNuGet {
+ name = "System.Runtime.Handles";
+ version = "4.3.0";
+ sha256 = "0sw2gfj2xr7sw9qjn0j3l9yw07x73lcs97p8xfc9w1x9h5g5m7i8";
+ })
+ (fetchNuGet {
+ name = "System.Runtime.InteropServices";
+ version = "4.1.0";
+ sha256 = "01kxqppx3dr3b6b286xafqilv4s2n0gqvfgzfd4z943ga9i81is1";
+ })
+ (fetchNuGet {
+ name = "System.Runtime.InteropServices";
+ version = "4.3.0";
+ sha256 = "00hywrn4g7hva1b2qri2s6rabzwgxnbpw9zfxmz28z09cpwwgh7j";
+ })
+ (fetchNuGet {
+ name = "System.Runtime.InteropServices.RuntimeInformation";
+ version = "4.0.0";
+ sha256 = "0glmvarf3jz5xh22iy3w9v3wyragcm4hfdr17v90vs7vcrm7fgp6";
+ })
+ (fetchNuGet {
+ name = "System.Runtime.InteropServices.RuntimeInformation";
+ version = "4.3.0";
+ sha256 = "0q18r1sh4vn7bvqgd6dmqlw5v28flbpj349mkdish2vjyvmnb2ii";
+ })
+ (fetchNuGet {
+ name = "System.Runtime.Numerics";
+ version = "4.0.1";
+ sha256 = "1y308zfvy0l5nrn46mqqr4wb4z1xk758pkk8svbz8b5ij7jnv4nn";
+ })
+ (fetchNuGet {
+ name = "System.Runtime.Numerics";
+ version = "4.3.0";
+ sha256 = "19rav39sr5dky7afygh309qamqqmi9kcwvz3i0c5700v0c5cg61z";
+ })
+ (fetchNuGet {
+ name = "System.Runtime.Serialization.Primitives";
+ version = "4.1.1";
+ sha256 = "042rfjixknlr6r10vx2pgf56yming8lkjikamg3g4v29ikk78h7k";
+ })
+ (fetchNuGet {
+ name = "System.Security.AccessControl";
+ version = "4.7.0";
+ sha256 = "0n0k0w44flkd8j0xw7g3g3vhw7dijfm51f75xkm1qxnbh4y45mpz";
+ })
+ (fetchNuGet {
+ name = "System.Security.Cryptography.Algorithms";
+ version = "4.2.0";
+ sha256 = "148s9g5dgm33ri7dnh19s4lgnlxbpwvrw2jnzllq2kijj4i4vs85";
+ })
+ (fetchNuGet {
+ name = "System.Security.Cryptography.Algorithms";
+ version = "4.3.0";
+ sha256 = "03sq183pfl5kp7gkvq77myv7kbpdnq3y0xj7vi4q1kaw54sny0ml";
+ })
+ (fetchNuGet {
+ name = "System.Security.Cryptography.Cng";
+ version = "4.2.0";
+ sha256 = "118jijz446kix20blxip0f0q8mhsh9bz118mwc2ch1p6g7facpzc";
+ })
+ (fetchNuGet {
+ name = "System.Security.Cryptography.Cng";
+ version = "4.3.0";
+ sha256 = "1k468aswafdgf56ab6yrn7649kfqx2wm9aslywjam1hdmk5yypmv";
+ })
+ (fetchNuGet {
+ name = "System.Security.Cryptography.Csp";
+ version = "4.0.0";
+ sha256 = "1cwv8lqj8r15q81d2pz2jwzzbaji0l28xfrpw29kdpsaypm92z2q";
+ })
+ (fetchNuGet {
+ name = "System.Security.Cryptography.Csp";
+ version = "4.3.0";
+ sha256 = "1x5wcrddf2s3hb8j78cry7yalca4lb5vfnkrysagbn6r9x6xvrx1";
+ })
+ (fetchNuGet {
+ name = "System.Security.Cryptography.Encoding";
+ version = "4.0.0";
+ sha256 = "0a8y1a5wkmpawc787gfmnrnbzdgxmx1a14ax43jf3rj9gxmy3vk4";
+ })
+ (fetchNuGet {
+ name = "System.Security.Cryptography.Encoding";
+ version = "4.3.0";
+ sha256 = "1jr6w70igqn07k5zs1ph6xja97hxnb3mqbspdrff6cvssgrixs32";
+ })
+ (fetchNuGet {
+ name = "System.Security.Cryptography.OpenSsl";
+ version = "4.0.0";
+ sha256 = "16sx3cig3d0ilvzl8xxgffmxbiqx87zdi8fc73i3i7zjih1a7f4q";
+ })
+ (fetchNuGet {
+ name = "System.Security.Cryptography.OpenSsl";
+ version = "4.3.0";
+ sha256 = "0givpvvj8yc7gv4lhb6s1prq6p2c4147204a0wib89inqzd87gqc";
+ })
+ (fetchNuGet {
+ name = "System.Security.Cryptography.Primitives";
+ version = "4.0.0";
+ sha256 = "0i7cfnwph9a10bm26m538h5xcr8b36jscp9sy1zhgifksxz4yixh";
+ })
+ (fetchNuGet {
+ name = "System.Security.Cryptography.Primitives";
+ version = "4.3.0";
+ sha256 = "0pyzncsv48zwly3lw4f2dayqswcfvdwq2nz0dgwmi7fj3pn64wby";
+ })
+ (fetchNuGet {
+ name = "System.Security.Cryptography.X509Certificates";
+ version = "4.1.0";
+ sha256 = "0clg1bv55mfv5dq00m19cp634zx6inm31kf8ppbq1jgyjf2185dh";
+ })
+ (fetchNuGet {
+ name = "System.Security.Cryptography.X509Certificates";
+ version = "4.3.0";
+ sha256 = "0valjcz5wksbvijylxijjxb1mp38mdhv03r533vnx1q3ikzdav9h";
+ })
+ (fetchNuGet {
+ name = "System.Security.Principal.Windows";
+ version = "4.7.0";
+ sha256 = "1a56ls5a9sr3ya0nr086sdpa9qv0abv31dd6fp27maqa9zclqq5d";
+ })
+ (fetchNuGet {
+ name = "System.Text.Encoding";
+ version = "4.0.11";
+ sha256 = "1dyqv0hijg265dwxg6l7aiv74102d6xjiwplh2ar1ly6xfaa4iiw";
+ })
+ (fetchNuGet {
+ name = "System.Text.Encoding";
+ version = "4.3.0";
+ sha256 = "1f04lkir4iladpp51sdgmis9dj4y8v08cka0mbmsy0frc9a4gjqr";
+ })
+ (fetchNuGet {
+ name = "System.Text.Encoding.CodePages";
+ version = "4.5.1";
+ sha256 = "1z21qyfs6sg76rp68qdx0c9iy57naan89pg7p6i3qpj8kyzn921w";
+ })
+ (fetchNuGet {
+ name = "System.Text.Encoding.CodePages";
+ version = "4.7.1";
+ sha256 = "1y1hdap9qbl7vp74j8s9zcbh3v1rnrrvcc55wj1hl6has2v3qh1r";
+ })
+ (fetchNuGet {
+ name = "System.Text.Encoding.Extensions";
+ version = "4.0.11";
+ sha256 = "08nsfrpiwsg9x5ml4xyl3zyvjfdi4mvbqf93kjdh11j4fwkznizs";
+ })
+ (fetchNuGet {
+ name = "System.Text.Encoding.Extensions";
+ version = "4.3.0";
+ sha256 = "11q1y8hh5hrp5a3kw25cb6l00v5l5dvirkz8jr3sq00h1xgcgrxy";
+ })
+ (fetchNuGet {
+ name = "System.Text.RegularExpressions";
+ version = "4.1.0";
+ sha256 = "1mw7vfkkyd04yn2fbhm38msk7dz2xwvib14ygjsb8dq2lcvr18y7";
+ })
+ (fetchNuGet {
+ name = "System.Text.RegularExpressions";
+ version = "4.3.0";
+ sha256 = "1bgq51k7fwld0njylfn7qc5fmwrk2137gdq7djqdsw347paa9c2l";
+ })
+ (fetchNuGet {
+ name = "System.Threading";
+ version = "4.0.11";
+ sha256 = "19x946h926bzvbsgj28csn46gak2crv2skpwsx80hbgazmkgb1ls";
+ })
+ (fetchNuGet {
+ name = "System.Threading";
+ version = "4.3.0";
+ sha256 = "0rw9wfamvhayp5zh3j7p1yfmx9b5khbf4q50d8k5rk993rskfd34";
+ })
+ (fetchNuGet {
+ name = "System.Threading.Tasks";
+ version = "4.0.11";
+ sha256 = "0nr1r41rak82qfa5m0lhk9mp0k93bvfd7bbd9sdzwx9mb36g28p5";
+ })
+ (fetchNuGet {
+ name = "System.Threading.Tasks";
+ version = "4.3.0";
+ sha256 = "134z3v9abw3a6jsw17xl3f6hqjpak5l682k2vz39spj4kmydg6k7";
+ })
+ (fetchNuGet {
+ name = "System.Threading.Tasks.Extensions";
+ version = "4.0.0";
+ sha256 = "1cb51z062mvc2i8blpzmpn9d9mm4y307xrwi65di8ri18cz5r1zr";
+ })
+ (fetchNuGet {
+ name = "System.Threading.Tasks.Extensions";
+ version = "4.3.0";
+ sha256 = "1xxcx2xh8jin360yjwm4x4cf5y3a2bwpn2ygkfkwkicz7zk50s2z";
+ })
+ (fetchNuGet {
+ name = "System.Threading.Tasks.Extensions";
+ version = "4.5.3";
+ sha256 = "0g7r6hm572ax8v28axrdxz1gnsblg6kszq17g51pj14a5rn2af7i";
+ })
+ (fetchNuGet {
+ name = "System.Threading.Thread";
+ version = "4.0.0";
+ sha256 = "1gxxm5fl36pjjpnx1k688dcw8m9l7nmf802nxis6swdaw8k54jzc";
+ })
+ (fetchNuGet {
+ name = "System.Threading.Timer";
+ version = "4.0.1";
+ sha256 = "15n54f1f8nn3mjcjrlzdg6q3520571y012mx7v991x2fvp73lmg6";
+ })
+ (fetchNuGet {
+ name = "System.Threading.Timer";
+ version = "4.3.0";
+ sha256 = "1nx773nsx6z5whv8kaa1wjh037id2f1cxhb69pvgv12hd2b6qs56";
+ })
+ (fetchNuGet {
+ name = "System.Xml.ReaderWriter";
+ version = "4.0.11";
+ sha256 = "0c6ky1jk5ada9m94wcadih98l6k1fvf6vi7vhn1msjixaha419l5";
+ })
+ (fetchNuGet {
+ name = "System.Xml.ReaderWriter";
+ version = "4.3.0";
+ sha256 = "0c47yllxifzmh8gq6rq6l36zzvw4kjvlszkqa9wq3fr59n0hl3s1";
+ })
+ (fetchNuGet {
+ name = "System.Xml.XDocument";
+ version = "4.0.11";
+ sha256 = "0n4lvpqzy9kc7qy1a4acwwd7b7pnvygv895az5640idl2y9zbz18";
+ })
+ (fetchNuGet {
+ name = "System.Xml.XDocument";
+ version = "4.3.0";
+ sha256 = "08h8fm4l77n0nd4i4fk2386y809bfbwqb7ih9d7564ifcxr5ssxd";
+ })
+]
diff --git a/pkgs/games/osu-lazer/update.sh b/pkgs/games/osu-lazer/update.sh
new file mode 100755
index 00000000000..be8fa3fe716
--- /dev/null
+++ b/pkgs/games/osu-lazer/update.sh
@@ -0,0 +1,58 @@
+#!/usr/bin/env nix-shell
+#!nix-shell -i bash -p curl jq common-updater-scripts dotnet-sdk_3
+set -eo pipefail
+cd "$(dirname "${BASH_SOURCE[0]}")"
+
+deps_file="$(realpath "./deps.nix")"
+
+new_version="$(curl -s "https://api.github.com/repos/ppy/osu/releases" | jq -r '.[0].name')"
+old_version="$(sed -nE 's/\s*version = "(.*)".*/\1/p' ./default.nix)"
+if [[ "$new_version" == "$old_version" ]]; then
+ echo "Up to date"
+ exit 0
+fi
+
+cd ../../..
+update-source-version osu-lazer "$new_version"
+store_src="$(nix-build . -A osu-lazer.src --no-out-link)"
+src="$(mktemp -d /tmp/osu-src.XXX)"
+echo "Temp src dir: $src"
+cp -rT "$store_src" "$src"
+chmod -R +w "$src"
+
+pushd "$src"
+
+# Setup empty nuget package folder to force reinstall.
+mkdir ./nuget_tmp.packages
+cat >./nuget_tmp.config <
+
+
+
+
+
+
+
+
+EOF
+
+dotnet restore osu.Desktop --configfile ./nuget_tmp.config
+
+echo "{ fetchNuGet }: [" >"$deps_file"
+while read pkg_spec; do
+ { read pkg_name; read pkg_version; } < <(
+ # Build version part should be ignored: `3.0.0-beta2.20059.3+77df2220` -> `3.0.0-beta2.20059.3`
+ sed -nE 's/.*([^<]*).*/\1/p; s/.*([^<+]*).*/\1/p' "$pkg_spec")
+ pkg_sha256="$(nix-hash --type sha256 --flat --base32 "$(dirname "$pkg_spec")"/*.nupkg)"
+ cat >>"$deps_file" <>"$deps_file"
+
+popd
+rm -r "$src"
diff --git a/pkgs/games/tdm/default.nix b/pkgs/games/tdm/default.nix
index 32f91f59868..d0133df59dd 100644
--- a/pkgs/games/tdm/default.nix
+++ b/pkgs/games/tdm/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, binutils-unwrapped, scons, gnum4, p7zip, glibc_multi, mesa
+{ stdenv, fetchurl, binutils-unwrapped, sconsPackages, gnum4, p7zip, glibc_multi, mesa
, xorg, libGLU, libGL, openal
, lib, makeWrapper, makeDesktopItem }:
@@ -11,7 +11,7 @@ let
name = pname;
exec = "@out@/bin/${pname}";
icon = pname;
- terminal = "False";
+ terminal = "false";
comment = "The Dark Mod - stealth FPS inspired by the Thief series";
type = "Application";
categories = "Game;";
@@ -24,7 +24,7 @@ in stdenv.mkDerivation {
sha256 = "17wdpip8zvm2njz0xrf7xcxl73hnsc6i83zj18kn8rnjkpy50dd6";
};
nativeBuildInputs = [
- p7zip scons.py2 gnum4 makeWrapper
+ p7zip sconsPackages.scons_3_1_2 gnum4 makeWrapper
];
buildInputs = [
glibc_multi mesa.dev xorg.libX11.dev openal
diff --git a/pkgs/games/vdrift/default.nix b/pkgs/games/vdrift/default.nix
index 99475af49e1..ea8b3941f8b 100644
--- a/pkgs/games/vdrift/default.nix
+++ b/pkgs/games/vdrift/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, fetchsvn, pkgconfig, scons, libGLU, libGL, SDL2, SDL2_image
+{ stdenv, fetchFromGitHub, fetchsvn, pkgconfig, sconsPackages, libGLU, libGL, SDL2, SDL2_image
, libvorbis, bullet, curl, gettext, writeTextFile
, data ? fetchsvn {
@@ -20,7 +20,7 @@ let
sha256 = "001wq3c4n9wzxqfpq40b1jcl16sxbqv2zbkpy9rq2wf9h417q6hg";
};
- nativeBuildInputs = [ pkgconfig scons.py2 ];
+ nativeBuildInputs = [ pkgconfig sconsPackages.scons_3_1_2 ];
buildInputs = [ libGLU libGL SDL2 SDL2_image libvorbis bullet curl gettext ];
patches = [ ./0001-Ignore-missing-data-for-installation.patch ];
diff --git a/pkgs/misc/drivers/xboxdrv/default.nix b/pkgs/misc/drivers/xboxdrv/default.nix
index eb0511b0c4e..f7fd59fd9fd 100644
--- a/pkgs/misc/drivers/xboxdrv/default.nix
+++ b/pkgs/misc/drivers/xboxdrv/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, scons, libX11, pkgconfig
+{ stdenv, fetchurl, sconsPackages, libX11, pkgconfig
, libusb1, boost, glib, dbus-glib }:
let
@@ -13,7 +13,7 @@ in stdenv.mkDerivation {
};
makeFlags = [ "PREFIX=$(out)" ];
- nativeBuildInputs = [ pkgconfig scons.py2 ];
+ nativeBuildInputs = [ pkgconfig sconsPackages.scons_3_1_2 ];
buildInputs = [ libX11 libusb1 boost glib dbus-glib ];
dontUseSconsInstall = true;
diff --git a/pkgs/os-specific/darwin/spacebar/default.nix b/pkgs/os-specific/darwin/spacebar/default.nix
index 9cbd6e62c7a..449172715b0 100644
--- a/pkgs/os-specific/darwin/spacebar/default.nix
+++ b/pkgs/os-specific/darwin/spacebar/default.nix
@@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "spacebar";
- version = "0.5.0";
+ version = "1.1.0";
src = fetchFromGitHub {
- owner = "somdoron";
+ owner = "cmacrae";
repo = pname;
rev = "v${version}";
- sha256 = "0v8v4xsc67qpzm859r93ggq7rr7hmaj6dahdlg6g3ppj81cq0khz";
+ sha256 = "0w0mkf4kb21aicb85zbp3m6nvk6m5306mchbd5nm988kgirmxnl4";
};
buildInputs = [ Carbon Cocoa ScriptingBridge ];
@@ -21,8 +21,8 @@ stdenv.mkDerivation rec {
'';
meta = with stdenv.lib; {
- description = "A status bar for yabai tiling window management";
- homepage = "https://github.com/somdoron/spacebar";
+ description = "A minimal status bar for macOS";
+ homepage = "https://github.com/cmacrae/spacebar";
platforms = platforms.darwin;
maintainers = [ maintainers.cmacrae ];
license = licenses.mit;
diff --git a/pkgs/os-specific/linux/apparmor/default.nix b/pkgs/os-specific/linux/apparmor/default.nix
index afb6799fbaf..807ab4fa44b 100644
--- a/pkgs/os-specific/linux/apparmor/default.nix
+++ b/pkgs/os-specific/linux/apparmor/default.nix
@@ -30,7 +30,18 @@ let
sha256 = "03nislxccnbxld89giak2s8xa4mdbwscfxbdwhmw5qpvgz08dgwh";
};
+ # See This and the
+ # accompanying application in prePatchCommon should be removed in 2.13.5
+ gnumake43Patch = fetchpatch {
+ url = "https://gitlab.com/apparmor/apparmor/-/merge_requests/465.patch";
+ name = "2-23-fix-build-with-make-4.3.patch";
+ sha256 = "0xw028iqp69j9mxv0kbwraplgkj5i5djdlgf0anpkc5cdbsf96r9";
+ };
+
prePatchCommon = ''
+ patch -p1 < ${gnumake43Patch}
+ chmod a+x ./common/list_capabilities.sh ./common/list_af_names.sh
+ patchShebangs ./common/list_capabilities.sh ./common/list_af_names.sh
substituteInPlace ./common/Make.rules --replace "/usr/bin/pod2man" "${buildPackages.perl}/bin/pod2man"
substituteInPlace ./common/Make.rules --replace "/usr/bin/pod2html" "${buildPackages.perl}/bin/pod2html"
substituteInPlace ./common/Make.rules --replace "/usr/include/linux/capability.h" "${linuxHeaders}/include/linux/capability.h"
diff --git a/pkgs/os-specific/linux/cryptsetup/default.nix b/pkgs/os-specific/linux/cryptsetup/default.nix
index 06be9f3432e..caa22b4df3e 100644
--- a/pkgs/os-specific/linux/cryptsetup/default.nix
+++ b/pkgs/os-specific/linux/cryptsetup/default.nix
@@ -1,17 +1,15 @@
{ stdenv, fetchurl, lvm2, json_c
-, openssl, libuuid, pkgconfig, popt
-, enablePython ? false, python2 ? null }:
-
-assert enablePython -> python2 != null;
+, openssl, libuuid, pkgconfig, popt }:
stdenv.mkDerivation rec {
- name = "cryptsetup-2.1.0";
+ pname = "cryptsetup";
+ version = "2.3.3";
outputs = [ "out" "dev" "man" ];
src = fetchurl {
- url = "mirror://kernel/linux/utils/cryptsetup/v2.1/${name}.tar.xz";
- sha256 = "15y8n547garz0x5kqv09gscdsrz0c0y1y6c5cp8pccwg3xsb5vm3";
+ url = "mirror://kernel/linux/utils/cryptsetup/v2.3/${pname}-${version}.tar.xz";
+ sha256 = "1pw2bq4nv2z3xyycckxkbp7dp9kkp2n6bspna3plryg277z4zjiv";
};
# Disable 4 test cases that fail in a sandbox
@@ -19,9 +17,6 @@ stdenv.mkDerivation rec {
postPatch = ''
patchShebangs tests
- ${stdenv.lib.optionalString enablePython ''
- patchShebangs ./python/pycryptsetup-test.py
- ''}
# O_DIRECT is filesystem dependent and fails in a sandbox (on tmpfs)
# and on several filesystem types (btrfs, zfs) without sandboxing.
@@ -34,11 +29,10 @@ stdenv.mkDerivation rec {
configureFlags = [
"--enable-cryptsetup-reencrypt"
"--with-crypto_backend=openssl"
- ] ++ stdenv.lib.optional enablePython "--enable-python";
+ ];
nativeBuildInputs = [ pkgconfig ];
- buildInputs = [ lvm2 json_c openssl libuuid popt ]
- ++ stdenv.lib.optional enablePython python2;
+ buildInputs = [ lvm2 json_c openssl libuuid popt ];
doCheck = true;
diff --git a/pkgs/os-specific/linux/displaylink/default.nix b/pkgs/os-specific/linux/displaylink/default.nix
index 642d05e4beb..3db9a7d3005 100644
--- a/pkgs/os-specific/linux/displaylink/default.nix
+++ b/pkgs/os-specific/linux/displaylink/default.nix
@@ -11,17 +11,17 @@ let
in stdenv.mkDerivation rec {
pname = "displaylink";
- version = "5.2.14";
+ version = "5.3.1.34";
src = requireFile rec {
name = "displaylink.zip";
- sha256 = "03b176y95f04rg3lcnjps9llsjbvd8yksh1fpvjwaciz48mnxh2i";
+ sha256 = "1c1kbjgpb71f73qnyl44rvwi6l4ivddq789rwvvh0ahw2jm324hy";
message = ''
In order to install the DisplayLink drivers, you must first
comply with DisplayLink's EULA and download the binaries and
sources from here:
- http://www.displaylink.com/downloads/file?id=1369
+ https://www.displaylink.com/downloads/file?id=1576
Once you have downloaded the file, please use the following
commands and re-run the installation:
@@ -67,7 +67,7 @@ in stdenv.mkDerivation rec {
meta = with stdenv.lib; {
description = "DisplayLink DL-5xxx, DL-41xx and DL-3x00 Driver for Linux";
- maintainers = with maintainers; [ nshalman abbradar peterhoeg ];
+ maintainers = with maintainers; [ nshalman abbradar peterhoeg eyjhb ];
platforms = [ "x86_64-linux" "i686-linux" ];
license = licenses.unfree;
homepage = "https://www.displaylink.com/";
diff --git a/pkgs/os-specific/linux/evdi/default.nix b/pkgs/os-specific/linux/evdi/default.nix
index 2a6ce13c162..119ba22ca26 100644
--- a/pkgs/os-specific/linux/evdi/default.nix
+++ b/pkgs/os-specific/linux/evdi/default.nix
@@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "evdi";
- version = "unstable-20200222";
+ version = "unstable-20200416";
src = fetchFromGitHub {
owner = "DisplayLink";
repo = pname;
- rev = "bb3038c1b10aae99feddc7354c74a5bf22341246";
- sha256 = "058f8gdma6fndg2w512l08mwl79h4hffacx4rnfkjxrb2ard3gd1";
+ rev = "dc595db636845aef39490496bc075f6bf067106c";
+ sha256 = "1yrny6jj9403z0rxbd3nxf49xc4w0rfpl7xsq03pq32pb3vlbqw7";
};
nativeBuildInputs = kernel.moduleBuildDependencies;
@@ -24,11 +24,12 @@ stdenv.mkDerivation rec {
installPhase = ''
install -Dm755 module/evdi.ko $out/lib/modules/${kernel.modDirVersion}/kernel/drivers/gpu/drm/evdi/evdi.ko
- install -Dm755 library/libevdi.so.1.6.4 $out/lib/libevdi.so
+ install -Dm755 library/libevdi.so $out/lib/libevdi.so
'';
meta = with stdenv.lib; {
description = "Extensible Virtual Display Interface";
+ maintainers = with maintainers; [ eyjhb ];
platforms = platforms.linux;
license = with licenses; [ lgpl21 gpl2 ];
homepage = "https://www.displaylink.com/";
diff --git a/pkgs/os-specific/linux/ffado/default.nix b/pkgs/os-specific/linux/ffado/default.nix
index e814091d59e..b93caccc757 100644
--- a/pkgs/os-specific/linux/ffado/default.nix
+++ b/pkgs/os-specific/linux/ffado/default.nix
@@ -13,7 +13,7 @@
, libxmlxx3
, pkgconfig
, python3
-, scons
+, sconsPackages
, which
, wrapQtAppsHook
}:
@@ -45,7 +45,7 @@ mkDerivation rec {
nativeBuildInputs = [
desktop-file-utils
- scons.py2
+ sconsPackages.scons_3_1_2
pkgconfig
which
python
diff --git a/pkgs/os-specific/linux/kernel/hardened/patches.json b/pkgs/os-specific/linux/kernel/hardened/patches.json
index f6f9ed792c2..1bb12453892 100644
--- a/pkgs/os-specific/linux/kernel/hardened/patches.json
+++ b/pkgs/os-specific/linux/kernel/hardened/patches.json
@@ -5,14 +5,14 @@
"url": "https://github.com/anthraxx/linux-hardened/releases/download/4.14.188.a/linux-hardened-4.14.188.a.patch"
},
"4.19": {
- "name": "linux-hardened-4.19.132.a.patch",
- "sha256": "16m7nphwxs742m31hzh44sgi6fngkhw07ls4jgi49vm68p1xq561",
- "url": "https://github.com/anthraxx/linux-hardened/releases/download/4.19.132.a/linux-hardened-4.19.132.a.patch"
+ "name": "linux-hardened-4.19.133.a.patch",
+ "sha256": "0zlns3k60fxbilvfyqay8v5vd5gx9cyvr6dw8b4mg3zccnprqz0n",
+ "url": "https://github.com/anthraxx/linux-hardened/releases/download/4.19.133.a/linux-hardened-4.19.133.a.patch"
},
"5.4": {
- "name": "linux-hardened-5.4.49.a.patch",
- "sha256": "00zf6zyaf2c4vrxwy2r51592ddpvsfdjlcagb5cgbm7klbnkfbyl",
- "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.4.49.a/linux-hardened-5.4.49.a.patch"
+ "name": "linux-hardened-5.4.52.a.patch",
+ "sha256": "17lgwhwxafzkjwr47dj2vwy3wzbsacdw8rrg6qlwn49ixayx26m4",
+ "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.4.52.a/linux-hardened-5.4.52.a.patch"
},
"5.6": {
"name": "linux-hardened-5.6.19.a.patch",
@@ -20,8 +20,8 @@
"url": "https://github.com/anthraxx/linux-hardened/releases/download/5.6.19.a/linux-hardened-5.6.19.a.patch"
},
"5.7": {
- "name": "linux-hardened-5.7.8.a.patch",
- "sha256": "0gazsyf4rnd4nmkpar41mqyg78hq1zbp1c0pin9s7qxxs8mzj8b8",
- "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.7.8.a/linux-hardened-5.7.8.a.patch"
+ "name": "linux-hardened-5.7.9.a.patch",
+ "sha256": "0r5qcy09h8fklmkkfsm2i69rqz36qppfbcfx0hg0knf5dmcjpl89",
+ "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.7.9.a/linux-hardened-5.7.9.a.patch"
}
}
diff --git a/pkgs/os-specific/linux/kernel/linux-4.19.nix b/pkgs/os-specific/linux/kernel/linux-4.19.nix
index 1ba3f96e0c5..f7bdc93cd6d 100644
--- a/pkgs/os-specific/linux/kernel/linux-4.19.nix
+++ b/pkgs/os-specific/linux/kernel/linux-4.19.nix
@@ -3,7 +3,7 @@
with stdenv.lib;
buildLinux (args // rec {
- version = "4.19.132";
+ version = "4.19.133";
# modDirVersion needs to be x.y.z, will automatically add .0 if needed
modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg;
@@ -13,6 +13,6 @@ buildLinux (args // rec {
src = fetchurl {
url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
- sha256 = "0i3xka0n26iqslvc8xzxlcig3gjwfprzgdwd1q3wrr1cjsafxmyp";
+ sha256 = "1i6vfzg8xds4lvvzkxaak74727iq35hx4vxr14w65bq9gpzfacxr";
};
} // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-5.4.nix b/pkgs/os-specific/linux/kernel/linux-5.4.nix
index 2c19a5835d4..4f0036b05f5 100644
--- a/pkgs/os-specific/linux/kernel/linux-5.4.nix
+++ b/pkgs/os-specific/linux/kernel/linux-5.4.nix
@@ -3,7 +3,7 @@
with stdenv.lib;
buildLinux (args // rec {
- version = "5.4.51";
+ version = "5.4.52";
# modDirVersion needs to be x.y.z, will automatically add .0 if needed
modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg;
@@ -13,6 +13,6 @@ buildLinux (args // rec {
src = fetchurl {
url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz";
- sha256 = "1786l83nwzjazr2rl5fwxpw9dzlggi33nnj9grmp4dnn9j5ym2wy";
+ sha256 = "0fjxx8xpp0v0wwfw6zd5nc21i2r82wzcsy2yyl7w5c90259zlzh3";
};
} // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-5.7.nix b/pkgs/os-specific/linux/kernel/linux-5.7.nix
index 73fce45d9cc..eb77023e675 100644
--- a/pkgs/os-specific/linux/kernel/linux-5.7.nix
+++ b/pkgs/os-specific/linux/kernel/linux-5.7.nix
@@ -3,7 +3,7 @@
with stdenv.lib;
buildLinux (args // rec {
- version = "5.7.8";
+ version = "5.7.9";
# modDirVersion needs to be x.y.z, will automatically add .0 if needed
modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg;
@@ -13,6 +13,6 @@ buildLinux (args // rec {
src = fetchurl {
url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz";
- sha256 = "1ijdhjik5hlaj8w32qf5x4gigf2aa6xkg68hckm5h1s0isw7gddg";
+ sha256 = "qH0wZqeEnNa6mgBDEanuBALSnRfxL2StfZQkRwcLQ/g=";
};
} // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/lvm2/default.nix b/pkgs/os-specific/linux/lvm2/default.nix
index 8db4be94e4e..8bfdb37360d 100644
--- a/pkgs/os-specific/linux/lvm2/default.nix
+++ b/pkgs/os-specific/linux/lvm2/default.nix
@@ -1,48 +1,72 @@
-{ stdenv, fetchgit, fetchpatch, pkgconfig, systemd, udev, utillinux, libuuid
+{ stdenv
+, fetchpatch
+, fetchurl
+, pkgconfig
+, utillinux
+, libuuid
, thin-provisioning-tools, libaio
-, enable_dmeventd ? false }:
+, enableCmdlib ? false
+, enableDmeventd ? false
+, udev ? null
+, nixosTests
+}:
-let
- version = "2.03.01";
-in
+# configure: error: --enable-dmeventd requires --enable-cmdlib to be used as well
+assert enableDmeventd -> enableCmdlib;
-stdenv.mkDerivation {
- pname = "lvm2";
- inherit version;
+stdenv.mkDerivation rec {
+ pname = "lvm2" + stdenv.lib.optionalString enableDmeventd "with-dmeventd";
+ version = "2.03.09";
- src = fetchgit {
- url = "git://sourceware.org/git/lvm2.git";
- rev = "v${builtins.replaceStrings [ "." ] [ "_" ] version}";
- sha256 = "0jlaswf1srdxiqpgpp97j950ddjds8z0kr4pbwmal2za2blrgvbl";
+ src = fetchurl {
+ url = "https://mirrors.kernel.org/sourceware/lvm2/LVM2.${version}.tgz";
+ sha256 = "0xdr9qbqw6kja267wmx6ajnfv1nhw056gpxx9v2qmfh3bj6qnfn0";
};
- configureFlags = [
- "--disable-readline"
- "--enable-udev_rules"
- "--enable-udev_sync"
- "--enable-pkgconfig"
- "--enable-cmdlib"
- ] ++ stdenv.lib.optional enable_dmeventd " --enable-dmeventd"
- ++ stdenv.lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
- "ac_cv_func_malloc_0_nonnull=yes"
- "ac_cv_func_realloc_0_nonnull=yes"
- ];
-
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ udev libuuid thin-provisioning-tools libaio ];
- preConfigure =
- ''
- sed -i /DEFAULT_SYS_DIR/d Makefile.in
- sed -i /DEFAULT_PROFILE_DIR/d conf/Makefile.in
- '' + stdenv.lib.optionalString (systemd != null) ''
- substituteInPlace scripts/lvm2_activation_generator_systemd_red_hat.c \
- --replace /usr/bin/udevadm ${systemd}/bin/udevadm
- '';
+ configureFlags = [
+ "--disable-readline"
+ "--enable-pkgconfig"
+ "--with-default-locking-dir=/run/lock/lvm"
+ "--with-default-run-dir=/run/lvm"
+ "--with-systemdsystemunitdir=${placeholder "out"}/lib/systemd/system"
+ ] ++ stdenv.lib.optionals (!enableCmdlib) [
+ "--bindir=${placeholder "bin"}/bin"
+ "--sbindir=${placeholder "bin"}/bin"
+ "--libdir=${placeholder "lib"}/lib"
+ ] ++ stdenv.lib.optional enableCmdlib "--enable-cmdlib"
+ ++ stdenv.lib.optionals enableDmeventd [
+ "--enable-dmeventd"
+ "--with-dmeventd-pidfile=/run/dmeventd/pid"
+ "--with-default-dm-run-dir=/run/dmeventd"
+ ] ++ stdenv.lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
+ "ac_cv_func_malloc_0_nonnull=yes"
+ "ac_cv_func_realloc_0_nonnull=yes"
+ ] ++
+ stdenv.lib.optionals (udev != null) [
+ "--enable-udev_rules"
+ "--enable-udev_sync"
+ ];
+
+ preConfigure = ''
+ sed -i /DEFAULT_SYS_DIR/d Makefile.in
+ sed -i /DEFAULT_PROFILE_DIR/d conf/Makefile.in
+ substituteInPlace scripts/lvm2_activation_generator_systemd_red_hat.c \
+ --replace /usr/bin/udevadm /run/current-system/systemd/bin/udevadm
+ # https://github.com/lvmteam/lvm2/issues/36
+ substituteInPlace udev/69-dm-lvm-metad.rules.in \
+ --replace "(BINDIR)/systemd-run" /run/current-system/systemd/bin/systemd-run
+
+ substituteInPlace make.tmpl.in --replace "@systemdsystemunitdir@" "$out/lib/systemd/system"
+ substituteInPlace libdm/make.tmpl.in --replace "@systemdsystemunitdir@" "$out/lib/systemd/system"
+ '';
+
+ postConfigure = ''
+ sed -i 's|^#define LVM_CONFIGURE_LINE.*$|#define LVM_CONFIGURE_LINE ""|g' ./include/configure.h
+ '';
- # https://github.com/NixOS/nixpkgs/pull/52597
- # gcc: error: ../../device_mapper/libdevice-mapper.a: No such file or directory
- enableParallelBuilding = false;
patches = stdenv.lib.optionals stdenv.hostPlatform.isMusl [
(fetchpatch {
@@ -64,30 +88,41 @@ stdenv.mkDerivation {
doCheck = false; # requires root
+ makeFlags = stdenv.lib.optionals (udev != null) [
+ "SYSTEMD_GENERATOR_DIR=$(out)/lib/systemd/system-generators"
+ ];
+
# To prevent make install from failing.
installFlags = [ "OWNER=" "GROUP=" "confdir=$(out)/etc" ];
# Install systemd stuff.
- #installTargets = "install install_systemd_generators install_systemd_units install_tmpfiles_configuration";
+ installTargets = [ "install" ] ++ stdenv.lib.optionals (udev != null) [
+ "install_systemd_generators"
+ "install_systemd_units"
+ "install_tmpfiles_configuration"
+ ];
- postInstall =
- ''
- substituteInPlace $out/lib/udev/rules.d/13-dm-disk.rules \
- --replace $out/sbin/blkid ${utillinux}/sbin/blkid
- '' + stdenv.lib.optionalString (systemd != null) ''
- # Systemd stuff
- mkdir -p $out/etc/systemd/system $out/lib/systemd/system-generators
- cp scripts/blk_availability_systemd_red_hat.service $out/etc/systemd/system
- cp scripts/lvm2_activation_generator_systemd_red_hat $out/lib/systemd/system-generators
- '';
+ # only split bin and lib out from out if cmdlib isn't enabled
+ outputs = [
+ "out"
+ "dev"
+ "man"
+ ] ++ stdenv.lib.optionals (enableCmdlib != true) [
+ "bin"
+ "lib"
+ ];
+
+ postInstall = stdenv.lib.optionalString (enableCmdlib != true) ''
+ moveToOutput lib/libdevmapper.so $lib
+ '';
+
+ passthru.tests.installer = nixosTests.installer.lvm;
meta = with stdenv.lib; {
homepage = "http://sourceware.org/lvm2/";
description = "Tools to support Logical Volume Management (LVM) on Linux";
platforms = platforms.linux;
license = with licenses; [ gpl2 bsd2 lgpl21 ];
- maintainers = with maintainers; [raskin];
- inherit version;
- downloadPage = "ftp://sources.redhat.com/pub/lvm2/";
+ maintainers = with maintainers; [ raskin ajs124 ];
};
}
diff --git a/pkgs/os-specific/linux/lvm2/default.upstream b/pkgs/os-specific/linux/lvm2/default.upstream
deleted file mode 100644
index 1e5aaf5ab5c..00000000000
--- a/pkgs/os-specific/linux/lvm2/default.upstream
+++ /dev/null
@@ -1,4 +0,0 @@
-url ftp://sources.redhat.com/pub/lvm2/
-version_link '[.]tgz$'
-version '.*[^0-9.][^.]*[.]([0-9.]+)[.].*' '\1'
-do_overwrite () { do_overwrite_just_version; }
diff --git a/pkgs/os-specific/linux/multipath-tools/default.nix b/pkgs/os-specific/linux/multipath-tools/default.nix
index d60b4a9a549..1c00ed9887d 100644
--- a/pkgs/os-specific/linux/multipath-tools/default.nix
+++ b/pkgs/os-specific/linux/multipath-tools/default.nix
@@ -10,6 +10,11 @@ stdenv.mkDerivation rec {
sha256 = "1mgjylklh1cx8px8ffgl12kyc0ln3445vbabd2sy8chq31rpiiq8";
};
+ patches = [
+ # fix build with json-c 0.14 https://www.redhat.com/archives/dm-devel/2020-May/msg00261.html
+ ./json-c-0.14.patch
+ ];
+
postPatch = ''
substituteInPlace libmultipath/Makefile --replace /usr/include/libdevmapper.h ${lvm2}/include/libdevmapper.h
sed -i -re '
diff --git a/pkgs/os-specific/linux/multipath-tools/json-c-0.14.patch b/pkgs/os-specific/linux/multipath-tools/json-c-0.14.patch
new file mode 100644
index 00000000000..d5fee424883
--- /dev/null
+++ b/pkgs/os-specific/linux/multipath-tools/json-c-0.14.patch
@@ -0,0 +1,21 @@
+diff --git a/libdmmp/libdmmp_private.h b/libdmmp/libdmmp_private.h
+index ac85b63f..b1a6ddea 100644
+--- a/libdmmp/libdmmp_private.h
++++ b/libdmmp/libdmmp_private.h
+@@ -30,6 +30,7 @@
+ #include
+ #include
+ #include
++#include
+ #include
+
+ #include "libdmmp/libdmmp.h"
+@@ -82,7 +83,7 @@ static out_type func_name(struct dmmp_context *ctx, const char *var_name) { \
+ do { \
+ json_type j_type = json_type_null; \
+ json_object *j_obj_tmp = NULL; \
+- if (json_object_object_get_ex(j_obj, key, &j_obj_tmp) != TRUE) { \
++ if (json_object_object_get_ex(j_obj, key, &j_obj_tmp) != true) { \
+ _error(ctx, "Invalid JSON output from multipathd IPC: " \
+ "key '%s' not found", key); \
+ rc = DMMP_ERR_IPC_ERROR; \
diff --git a/pkgs/os-specific/linux/nvidia-x11/default.nix b/pkgs/os-specific/linux/nvidia-x11/default.nix
index 74ebb179667..deecc4c4a7b 100644
--- a/pkgs/os-specific/linux/nvidia-x11/default.nix
+++ b/pkgs/os-specific/linux/nvidia-x11/default.nix
@@ -22,20 +22,15 @@ rec {
# Policy: use the highest stable version as the default (on our master).
stable = if stdenv.hostPlatform.system == "x86_64-linux"
then generic {
- version = "440.100";
- sha256_64bit = "07ygp8xs293glbybv2psi5ykfdlpgwp03bkczf51fyzknkx895k4";
- settingsSha256 = "1chis62wk4a93m49w4ncq0za4h7si6f3ckbl9ifxx7vnab8rk6ly";
- persistencedSha256 = "142fdxhznzjsnmvgpmi9x7gy6mp3n25acxfnfmf37ncs4sk0wm6i";
+ version = "450.57";
+ sha256_64bit = "04fp0p5f11hrgjzhvbvxpmvl08d3m16m4r5gn9d5qans9zy7f36m";
+ settingsSha256 = "1clbj9a3kv3j8jg35c197gd7b3f9f9f4h9ll5hlax95hdg12lgan";
+ persistencedSha256 = "17747z1fsbiznfsmahxmz8kmhwwcjanpfih60v5mwzk63gy4i3d5";
}
else legacy_390;
# No active beta right now
- beta = generic {
- version = "450.51";
- sha256_64bit = "17pam9737jx9vvczma5rafa0rihprccmfz84clb1y4nhbay5alf2";
- settingsSha256 = "09hc1mjh7s94hy37rslxrxr30kx9a4yfnkmv35wn86b2p9zk3w6n";
- persistencedSha256 = "0jmri8kj6gffqn8pm8nijhq2airvgid11vj2ffc037l7z4w0s6ar";
- };
+ beta = stable;
# Last one supporting x86
legacy_390 = generic {
diff --git a/pkgs/os-specific/linux/systemd/0007-hostnamed-localed-timedated-disable-methods-that-cha.patch b/pkgs/os-specific/linux/systemd/0007-hostnamed-localed-timedated-disable-methods-that-cha.patch
index 70fc147232b..cef3280aba8 100644
--- a/pkgs/os-specific/linux/systemd/0007-hostnamed-localed-timedated-disable-methods-that-cha.patch
+++ b/pkgs/os-specific/linux/systemd/0007-hostnamed-localed-timedated-disable-methods-that-cha.patch
@@ -14,16 +14,6 @@ diff --git a/src/hostname/hostnamed.c b/src/hostname/hostnamed.c
index 21f6471495..8c5af7619f 100644
--- a/src/hostname/hostnamed.c
+++ b/src/hostname/hostnamed.c
-@@ -422,6 +422,9 @@ static int method_set_hostname(sd_bus_message *m, void *userdata, sd_bus_error *
- if (r < 0)
- return r;
-
-+ return sd_bus_error_setf(error, SD_BUS_ERROR_NOT_SUPPORTED,
-+ "Changing system settings via systemd is not supported on NixOS.");
-+
- if (isempty(name))
- name = c->data[PROP_STATIC_HOSTNAME];
-
@@ -478,6 +481,9 @@ static int method_set_static_hostname(sd_bus_message *m, void *userdata, sd_bus_
if (r < 0)
return r;
diff --git a/pkgs/os-specific/linux/wireguard/default.nix b/pkgs/os-specific/linux/wireguard/default.nix
index 22db152f59c..b20da16f7c8 100644
--- a/pkgs/os-specific/linux/wireguard/default.nix
+++ b/pkgs/os-specific/linux/wireguard/default.nix
@@ -7,11 +7,11 @@ assert stdenv.lib.versionOlder kernel.version "5.6";
stdenv.mkDerivation rec {
pname = "wireguard";
- version = "1.0.20200623";
+ version = "1.0.20200712";
src = fetchzip {
url = "https://git.zx2c4.com/wireguard-linux-compat/snapshot/wireguard-linux-compat-${version}.tar.xz";
- sha256 = "1siybpd14la9c5diigniwis1q9f5fhq2ris9bvgzhh8g8vr3xmqh";
+ sha256 = "04f8hh6rz6ibavvga5z2mjpccnkacj1h24y3vj2kpya132qpavfr";
};
hardeningDisable = [ "pic" ];
diff --git a/pkgs/servers/dns/nsd/default.nix b/pkgs/servers/dns/nsd/default.nix
index 8d4125b8fa1..2dfdf108c4f 100644
--- a/pkgs/servers/dns/nsd/default.nix
+++ b/pkgs/servers/dns/nsd/default.nix
@@ -16,11 +16,11 @@
stdenv.mkDerivation rec {
pname = "nsd";
- version = "4.3.1";
+ version = "4.3.2";
src = fetchurl {
url = "https://www.nlnetlabs.nl/downloads/${pname}/${pname}-${version}.tar.gz";
- sha256 = "11w9kl99fs888f3zwx2j92i8lcp78vq91jac8s317a2icv74mczl";
+ sha256 = "0ac3mbn5z4nc18782m9aswdpi2m9f4665vidw0ciyigdh0pywp2v";
};
prePatch = ''
diff --git a/pkgs/servers/gpsd/default.nix b/pkgs/servers/gpsd/default.nix
index 4e0d08324a0..5f9beb4b834 100644
--- a/pkgs/servers/gpsd/default.nix
+++ b/pkgs/servers/gpsd/default.nix
@@ -1,4 +1,4 @@
-{ fetchurl, stdenv, scons, pkgconfig, dbus, dbus-glib
+{ fetchurl, stdenv, sconsPackages, pkgconfig, dbus, dbus-glib
, ncurses, libX11, libXt, libXpm, libXaw, libXext
, libusb1, docbook_xml_dtd_412, docbook_xsl, bc
, libxslt, xmlto, gpsdUser ? "gpsd", gpsdGroup ? "dialout"
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
};
nativeBuildInputs = [
- scons.py2 pkgconfig docbook_xml_dtd_412 docbook_xsl xmlto bc
+ sconsPackages.scons_3_1_2 pkgconfig docbook_xml_dtd_412 docbook_xsl xmlto bc
python2Packages.python
python2Packages.wrapPython
];
diff --git a/pkgs/servers/matrix-synapse/default.nix b/pkgs/servers/matrix-synapse/default.nix
index 3b7c1655ea8..8dccb7a3129 100644
--- a/pkgs/servers/matrix-synapse/default.nix
+++ b/pkgs/servers/matrix-synapse/default.nix
@@ -9,11 +9,11 @@ let
in
buildPythonApplication rec {
pname = "matrix-synapse";
- version = "1.16.1";
+ version = "1.17.0";
src = fetchPypi {
inherit pname version;
- sha256 = "0kkja67h5ky94q5zj3790zx0nw5r8qksndvdg6gk6h0s1xb74iqa";
+ sha256 = "16hc82qhzb5maxp6f4xqarcv93sa6pg7i585vg97khgy6ryp3m7p";
};
patches = [
diff --git a/pkgs/servers/misc/oven-media-engine/default.nix b/pkgs/servers/misc/oven-media-engine/default.nix
new file mode 100644
index 00000000000..c207a33848d
--- /dev/null
+++ b/pkgs/servers/misc/oven-media-engine/default.nix
@@ -0,0 +1,69 @@
+{ stdenv
+, fetchFromGitHub
+, srt
+, ffmpeg_3_4
+, bc
+, pkgconfig
+, perl
+, openssl
+, zlib
+, ffmpeg
+, libvpx
+, libopus
+, srtp
+, jemalloc
+, ... }:
+
+let
+ ffmpeg = ffmpeg_3_4.overrideAttrs (super: {
+ pname = "${super.pname}-ovenmediaengine";
+ src = fetchFromGitHub {
+ owner = "Airensoft";
+ repo = "FFmpeg";
+ rev = "142b4bb64b64e337f80066e6af935a68627fedae"; # ome/3.4
+ sha256 = "0fla3940q3z0c0ik2xzkbvdfvrdg06ban7wi6y94y8mcipszpp11";
+ };
+ });
+in
+stdenv.mkDerivation rec {
+ pname = "oven-media-engine";
+ version = "0.10.4";
+
+ src = fetchFromGitHub {
+ owner = "AirenSoft";
+ repo = "OvenMediaEngine";
+ rev = "v${version}";
+ sha256 = "15lrlynsldlpa21ryzccf5skgiih6y5fc9qg0bfqh557wnnmml6w";
+ };
+
+ sourceRoot = "source/src";
+ makeFlags = "release CONFIG_LIBRARY_PATHS= CONFIG_PKG_PATHS= GLOBAL_CC=$(CC) GLOBAL_CXX=$(CXX) GLOBAL_LD=$(CXX) SHELL=${stdenv.shell}";
+ enableParallelBuilding = true;
+
+ nativeBuildInputs = [ bc pkgconfig perl ];
+ buildInputs = [ openssl srt zlib ffmpeg libvpx libopus srtp jemalloc ];
+
+ preBuild = ''
+ patchShebangs core/colorg++
+ patchShebangs core/colorgcc
+ patchShebangs projects/main/update_git_info.sh
+
+ sed -i -e '/^CC =/d' -e '/^CXX =/d' -e '/^AR =/d' projects/third_party/pugixml-1.9/scripts/pugixml.make
+ '';
+
+ installPhase = ''
+ install -Dm0755 bin/RELEASE/OvenMediaEngine $out/bin/OvenMediaEngine
+ install -Dm0644 ../misc/conf_examples/Origin.xml $out/share/examples/origin_conf/Server.xml
+ install -Dm0644 ../misc/conf_examples/Logger.xml $out/share/examples/origin_conf/Logger.xml
+ install -Dm0644 ../misc/conf_examples/Edge.xml $out/share/examples/edge_conf/Server.xml
+ install -Dm0644 ../misc/conf_examples/Logger.xml $out/share/examples/edge_conf/Logger.xml
+ '';
+
+ meta = with stdenv.lib; {
+ description = "Open-source streaming video service with sub-second latency";
+ homepage = "https://ovenmediaengine.com";
+ license = licenses.gpl2;
+ maintainers = with maintainers; [ lukegb ];
+ platforms = [ "x86_64-linux" ];
+ };
+}
diff --git a/pkgs/servers/monitoring/prometheus/modemmanager-exporter.nix b/pkgs/servers/monitoring/prometheus/modemmanager-exporter.nix
new file mode 100644
index 00000000000..fdd45fdd140
--- /dev/null
+++ b/pkgs/servers/monitoring/prometheus/modemmanager-exporter.nix
@@ -0,0 +1,24 @@
+{ stdenv, buildGoModule, fetchFromGitHub, nixosTests }:
+
+buildGoModule rec {
+ pname = "modemmanager-exporter";
+ version = "0.1.0";
+
+ src = fetchFromGitHub {
+ owner = "mdlayher";
+ repo = "modemmanager_exporter";
+ rev = "v${version}";
+ sha256 = "0d8z7qzk5j5jj0ixkwpi8dw9kki78mxrajdlzzcj2rcgbnwair91";
+ };
+
+ vendorSha256 = "0f6v97cvzdz7wygswpm87wf8r169x5rw28908vqhmqk644hli4zy";
+
+ passthru.tests = { inherit (nixosTests.prometheus-exporters) modemmanager; };
+
+ meta = with stdenv.lib; {
+ homepage = "https://github.com/mdlayher/modemmanager_exporter";
+ description = "Prometheus exporter for ModemManager and its devices.";
+ license = licenses.mit;
+ maintainers = with maintainers; [ mdlayher ];
+ };
+}
diff --git a/pkgs/servers/nextcloud/default.nix b/pkgs/servers/nextcloud/default.nix
index 4c43f141d18..51b73b0e6b1 100644
--- a/pkgs/servers/nextcloud/default.nix
+++ b/pkgs/servers/nextcloud/default.nix
@@ -33,8 +33,8 @@ in {
};
nextcloud18 = generic {
- version = "18.0.6";
- sha256 = "1chmkg31jc1nr53y8r886mmd2jzb78094mrx7ggcfpjfkkv8b89s";
+ version = "18.0.7";
+ sha256 = "0pka87ccrds17n6n5w5a80mc1s5yrf8d4mf6wsfaypwjbm3wfb2b";
};
nextcloud19 = generic {
diff --git a/pkgs/servers/nosql/mongodb/mongodb.nix b/pkgs/servers/nosql/mongodb/mongodb.nix
index 2c058edbcca..a7ee4153557 100644
--- a/pkgs/servers/nosql/mongodb/mongodb.nix
+++ b/pkgs/servers/nosql/mongodb/mongodb.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, scons, boost, gperftools, pcre-cpp, snappy, zlib, libyamlcpp
+{ stdenv, fetchurl, sconsPackages, boost, gperftools, pcre-cpp, snappy, zlib, libyamlcpp
, sasl, openssl, libpcap, python27, curl, Security, CoreFoundation, cctools }:
# Note:
@@ -34,7 +34,7 @@ in stdenv.mkDerivation rec {
inherit sha256;
};
- nativeBuildInputs = [ scons.py2 ];
+ nativeBuildInputs = [ sconsPackages.scons_3_1_2 ];
buildInputs = [
boost
curl
diff --git a/pkgs/servers/web-apps/moodle/default.nix b/pkgs/servers/web-apps/moodle/default.nix
index b765a95c3fd..447a27ad082 100644
--- a/pkgs/servers/web-apps/moodle/default.nix
+++ b/pkgs/servers/web-apps/moodle/default.nix
@@ -1,23 +1,23 @@
-{ stdenv, fetchurl, writeText }:
+{ lib, stdenv, fetchurl, writeText, plugins ? [ ] }:
let
version = "3.9.1";
stableVersion = builtins.substring 0 2 (builtins.replaceStrings ["."] [""] version);
-in
-stdenv.mkDerivation rec {
+in stdenv.mkDerivation rec {
pname = "moodle";
inherit version;
src = fetchurl {
- url = "https://download.moodle.org/stable${stableVersion}/${pname}-${version}.tgz";
- sha256 = "1ysnrk013gmc21ml3jwijvl16rx3p478a4vriy6h8hfli48460p9";
+ url =
+ "https://download.moodle.org/stable${stableVersion}/${pname}-${version}.tgz";
+ sha256 = "sha256-6QJDEInUQQSNj3kThQ65o2cT6JaRy0FrEKy+EcDMVvs=";
};
phpConfig = writeText "config.php" ''
-
+
'';
installPhase = ''
@@ -27,11 +27,34 @@ stdenv.mkDerivation rec {
cp -r . $out/share/moodle
cp ${phpConfig} $out/share/moodle/config.php
+ ${lib.concatStringsSep "\n" (map (p:
+ let
+ dir = if p.pluginType == "mod" then
+ "mod"
+ else if p.pluginType == "theme" then
+ "theme"
+ else if p.pluginType == "block" then
+ "blocks"
+ else if p.pluginType == "question" then
+ "question/type"
+ else if p.pluginType == "course" then
+ "course/format"
+ else if p.pluginType == "report" then
+ "admin/report"
+ else
+ throw "unknown moodle plugin type";
+ # we have to copy it, because the plugins have refrences to .. inside
+ in ''
+ mkdir -p $out/share/moodle/${dir}/${p.name}
+ cp -r ${p}/* $out/share/moodle/${dir}/${p.name}/
+ '') plugins)}
+
runHook postInstall
'';
meta = with stdenv.lib; {
- description = "Free and open-source learning management system (LMS) written in PHP";
+ description =
+ "Free and open-source learning management system (LMS) written in PHP";
license = licenses.gpl3Plus;
homepage = "https://moodle.org/";
maintainers = with maintainers; [ aanderse ];
diff --git a/pkgs/servers/web-apps/moodle/moodle-utils.nix b/pkgs/servers/web-apps/moodle/moodle-utils.nix
new file mode 100644
index 00000000000..52fddecc66d
--- /dev/null
+++ b/pkgs/servers/web-apps/moodle/moodle-utils.nix
@@ -0,0 +1,32 @@
+{ stdenv, unzip, ... }:
+
+let
+ buildMoodlePlugin = a@{
+ name,
+ src,
+ pluginType,
+ configuraPhase ? ":",
+ buildPhase ? ":",
+ buildInputs ? [ ],
+ ...
+ }:
+ stdenv.mkDerivation (a // {
+ name = name;
+
+ inherit pluginType;
+ inherit configuraPhase buildPhase;
+
+ buildInputs = [ unzip ] ++ buildInputs;
+
+ installPhase = ''
+ runHook preInstall
+
+ mkdir -p "$out"
+ mv * $out/
+
+ runHook postInstall
+ '';
+ });
+in {
+ inherit buildMoodlePlugin;
+}
diff --git a/pkgs/servers/zoneminder/default.nix b/pkgs/servers/zoneminder/default.nix
index 146705fb3d9..935993b781f 100644
--- a/pkgs/servers/zoneminder/default.nix
+++ b/pkgs/servers/zoneminder/default.nix
@@ -78,13 +78,13 @@ let
in stdenv.mkDerivation rec {
pname = "zoneminder";
- version = "1.34.9";
+ version = "1.34.16";
src = fetchFromGitHub {
owner = "ZoneMinder";
repo = "zoneminder";
rev = version;
- sha256 = "1xvgfsm260a3v0vqgbk7m9jzayhcs4ysyadnnxajyrndjhn802ic";
+ sha256 = "azQbm8EkbypBf2NjplDVCb6duEC476hhKDA0EGqxxWE=";
};
patches = [
@@ -200,7 +200,7 @@ in stdenv.mkDerivation rec {
description = "Video surveillance software system";
homepage = "https://zoneminder.com";
license = licenses.gpl3;
- maintainers = with maintainers; [ peterhoeg ];
+ maintainers = [ ];
platforms = platforms.unix;
};
}
diff --git a/pkgs/shells/zsh/antibody/default.nix b/pkgs/shells/zsh/antibody/default.nix
index c0e87cd6021..dc63c308bcc 100644
--- a/pkgs/shells/zsh/antibody/default.nix
+++ b/pkgs/shells/zsh/antibody/default.nix
@@ -2,16 +2,16 @@
buildGoModule rec {
pname = "antibody";
- version = "6.0.1";
+ version = "6.1.0";
src = fetchFromGitHub {
owner = "getantibody";
repo = "antibody";
rev = "v${version}";
- sha256 = "0ix2liy8h48s3n7ykr85ik03kwj45iqwhwn79ap8y21bar00gybs";
+ sha256 = "0ldvihpm14h0gcn7iz5yxg1wbfv24flx6y8khdanw21lf9nmp59z";
};
- vendorSha256 = "072kxr68p9f58w2q98fjcn4wzd5szy5l5sz8sh4ssapljvic2lam";
+ vendorSha256 = "0z8fma3v2dph8nv3q4lmv43s6p5sc338xb7kcmnpwcc0iw7b4vyj";
buildFlagsArray = [ "-ldflags=-s -w -X main.version=${version}" ];
diff --git a/pkgs/shells/zsh/oh-my-zsh/default.nix b/pkgs/shells/zsh/oh-my-zsh/default.nix
index d2e2064094e..46de7d27178 100644
--- a/pkgs/shells/zsh/oh-my-zsh/default.nix
+++ b/pkgs/shells/zsh/oh-my-zsh/default.nix
@@ -4,13 +4,13 @@
{ stdenv, fetchgit }:
stdenv.mkDerivation rec {
- version = "2020-07-14";
+ version = "2020-07-15";
pname = "oh-my-zsh";
- rev = "ff7618cf744a289a9ba9c332be08ed5304d2f45f";
+ rev = "c99f3c50fa46a93be28be88632889404fff3b958";
src = fetchgit { inherit rev;
url = "https://github.com/ohmyzsh/ohmyzsh";
- sha256 = "00yvf5rbv2fspv12h0jlda063fv0kj6zaannz0xcqknaj2d8pyqz";
+ sha256 = "11b56m8zx3bh2x8wzg87mdsd3y9sj7n2h3jwr0ndrnxwr9ksdiik";
};
pathsToLink = [ "/share/oh-my-zsh" ];
diff --git a/pkgs/tools/admin/azure-cli/default.nix b/pkgs/tools/admin/azure-cli/default.nix
index 50a4b6eebeb..2f3c526ab26 100644
--- a/pkgs/tools/admin/azure-cli/default.nix
+++ b/pkgs/tools/admin/azure-cli/default.nix
@@ -1,12 +1,12 @@
{ stdenv, lib, python, fetchFromGitHub, installShellFiles }:
let
- version = "2.8.0";
+ version = "2.9.0";
src = fetchFromGitHub {
owner = "Azure";
repo = "azure-cli";
rev = "azure-cli-${version}";
- sha256 = "1jfavxpqa0n6j7vs1233ghgxs5l9099xz4ncgmpj4s826f8chdi8";
+ sha256 = "0szx2q11b8gk8b300z2zdd9h1jm0dmfzql4f818mar7z5x0li9z3";
};
# put packages that needs to be overriden in the py package scope
diff --git a/pkgs/tools/admin/azure-cli/python-packages.nix b/pkgs/tools/admin/azure-cli/python-packages.nix
index fabdd38afe7..1f7a0a39742 100644
--- a/pkgs/tools/admin/azure-cli/python-packages.nix
+++ b/pkgs/tools/admin/azure-cli/python-packages.nix
@@ -124,8 +124,8 @@ let
azure-mgmt-batch = overrideAzureMgmtPackage super.azure-mgmt-batch "9.0.0" "zip"
"1zn3yqwvm2f3sy8v0xvj4yb7m8kxxm1wpcaccxp91b0zzbn7wh83";
- azure-mgmt-policyinsights = overrideAzureMgmtPackage super.azure-mgmt-policyinsights "0.4.0" "zip"
- "1b69rz9wm0jvc54vx3b7h633x8gags51xwxrkp6myar40jggxw6g";
+ azure-mgmt-policyinsights = overrideAzureMgmtPackage super.azure-mgmt-policyinsights "0.5.0" "zip"
+ "1wxh7mgrknnhqyafdd7sbwx8plx0zga2af21vs6yhxy48lw9w8pd";
azure-mgmt-rdbms = overrideAzureMgmtPackage super.azure-mgmt-rdbms "2.2.0" "zip"
"1iz1pf28ajrzbq8nab1jbjbgfbv0g6ni036xayy6xylvga4l8czr";
@@ -145,8 +145,8 @@ let
azure-mgmt-cognitiveservices = overrideAzureMgmtPackage super.azure-mgmt-cognitiveservices "6.2.0" "zip"
"1khk9jdfx7706xsqpwrnfsplv6p6wracvpyk9ki8zhc7p83kal4k";
- azure-mgmt-compute = overrideAzureMgmtPackage super.azure-mgmt-compute "12.0.0" "zip"
- "0vzq93g2fpnij4rykkk3391xq2knhlbz87vhim4zvj8s45sx6z8q";
+ azure-mgmt-compute = overrideAzureMgmtPackage super.azure-mgmt-compute "13.0.0" "zip"
+ "17ik8lfd74ki57rml2piswcanzbladsqy0s2m9jmvwpdrfpincvz";
azure-mgmt-consumption = overrideAzureMgmtPackage super.azure-mgmt-consumption "2.0.0" "zip"
"12ai4qps73ivawh0yzvgb148ksx02r30pqlvfihx497j62gsi1cs";
@@ -160,12 +160,15 @@ let
azure-mgmt-core = overrideAzureMgmtPackage super.azure-mgmt-core "1.0.0" "zip"
"0pm565v05480f672l0n8z2sg6zk6iqyi91n0dhscibhdl54sy3si";
- azure-mgmt-cosmosdb = overrideAzureMgmtPackage super.azure-mgmt-cosmosdb "0.14.0" "zip"
- "1af2vigpmcg2mp36dqi9g2dx4589bqm4w2af9dx6l9x65zfl89b9";
+ azure-mgmt-cosmosdb = overrideAzureMgmtPackage super.azure-mgmt-cosmosdb "0.15.0" "zip"
+ "03ysr8kx0gavjrxsi9wqrgxpg3g17nvii7z68qfm0k2mv6ryj3z7";
azure-mgmt-deploymentmanager = overrideAzureMgmtPackage super.azure-mgmt-deploymentmanager "0.2.0" "zip"
"0c6pyr36n9snx879vas5r6l25db6nlp2z96xn759mz4kg4i45qs6";
+ azure-mgmt-eventgrid = overrideAzureMgmtPackage super.azure-mgmt-eventgrid "3.0.0rc7" "zip"
+ "1m5905mn362pn03sf89zsnylkrbgs4p1lkafrw3nxa2gnwcfpyb8";
+
azure-mgmt-imagebuilder = overrideAzureMgmtPackage super.azure-mgmt-imagebuilder "0.4.0" "zip"
"0cqpjnkpid6a34ifd4vk4fn1h57pa1bg3r756wv082xl2szr34jc";
@@ -187,11 +190,11 @@ let
azure-mgmt-dns = overrideAzureMgmtPackage super.azure-mgmt-dns "2.1.0" "zip"
"1l55py4fzzwhxlmnwa41gpmqk9v2ncc79w7zq11sm9a5ynrv2c1p";
- azure-mgmt-loganalytics = overrideAzureMgmtPackage super.azure-mgmt-loganalytics "0.6.0" "zip"
- "0ffhlbd9fwx05njawhii46wqyvbhhz2xcfx0pxc7b978n7l7ylm1";
+ azure-mgmt-loganalytics = overrideAzureMgmtPackage super.azure-mgmt-loganalytics "0.7.0" "zip"
+ "18n2lqvrhq40gdqhlzzg8mc03571i02c7qq7jv771lc58rqpzysh";
- azure-mgmt-network = overrideAzureMgmtPackage super.azure-mgmt-network "10.2.0" "zip"
- "1nd2rcwl83x3xq4h5brb16jwbbq57gyxz6pgvmhnign9q76p836m";
+ azure-mgmt-network = overrideAzureMgmtPackage super.azure-mgmt-network "11.0.0" "zip"
+ "1g39rl4p88bzhqbn1gi2nn8jyx77idxvpaw8xqz1gjv0qqqwdpvz";
azure-mgmt-media = overrideAzureMgmtPackage super.azure-mgmt-media "2.1.0" "zip"
"1py0hch0wghzfxazdrrs7p0kln2zn9jh3fmkzwd2z8qggj38q6gm";
@@ -199,8 +202,8 @@ let
azure-mgmt-msi = overrideAzureMgmtPackage super.azure-mgmt-msi "0.2.0" "zip"
"0rvik03njz940x2hvqg6iiq8k0d88gyygsr86w8s0sa12sdbq8l6";
- azure-mgmt-web = overrideAzureMgmtPackage super.azure-mgmt-web "0.46.0" "zip"
- "19n4cr8a2fwjks3485rkv31bsib9akah5b289sl5lsqyp6i8m671";
+ azure-mgmt-web = overrideAzureMgmtPackage super.azure-mgmt-web "0.47.0" "zip"
+ "1s6c477q2kpyiqkisw6l70ydyjkv3ay6zjjj4jl4ipv05a7356kq";
azure-mgmt-redhatopenshift = overrideAzureMgmtPackage super.azure-mgmt-redhatopenshift "0.1.0" "zip"
"1g65lbia1i1jw6qkyjz2ldyl3p90rbr78l8kfryg70sj7z3gnnjn";
@@ -214,11 +217,11 @@ let
azure-mgmt-security = overrideAzureMgmtPackage super.azure-mgmt-security "0.4.1" "zip"
"08gf401d40bd1kn9wmpxcjxqdh84cd9hxm8rdjd0918483sqs71r";
- azure-mgmt-signalr = overrideAzureMgmtPackage super.azure-mgmt-signalr "0.3.0" "zip"
- "08b2i6wz9n13h77ahay1hvmg8abk2vvs7kn4y7xip9gi6ij8fv0a";
+ azure-mgmt-signalr = overrideAzureMgmtPackage super.azure-mgmt-signalr "0.4.0" "zip"
+ "09n12ligh301z4xwixl50n8f1rgd2k6lpsxqzr6n6jvgkpdds0v5";
- azure-mgmt-sql = overrideAzureMgmtPackage super.azure-mgmt-sql "0.18.0" "zip"
- "0i9lnhcx85xccddvz1wdz5j0idm6sw2cn3066dww5993nmg0ijlr";
+ azure-mgmt-sql = overrideAzureMgmtPackage super.azure-mgmt-sql "0.19.0" "zip"
+ "1iiqc0kh5hygcvr3x1653cpjnf5na3j11v137xa9xy65r7a4jik9";
azure-mgmt-sqlvirtualmachine = overrideAzureMgmtPackage super.azure-mgmt-sqlvirtualmachine "0.5.0" "zip"
"1b9am8raa17hxnz7d5pk2ix0309wsnhnchq1mi22icd728sl5adm";
@@ -238,11 +241,11 @@ let
azure-mgmt-cdn = overrideAzureMgmtPackage super.azure-mgmt-cdn "4.1.0rc1" "zip"
"00q5723gvc57kg2w1iyhfchp018skwd89ibrw23p7ngm2bb76g45";
- azure-mgmt-containerregistry = overrideAzureMgmtPackage super.azure-mgmt-containerregistry "3.0.0rc13" "zip"
- "1imjjg93fqfg1j9v5l9w2qz7qzgqlh8vxvykl1ijyxzmjf7ydwlz";
+ azure-mgmt-containerregistry = overrideAzureMgmtPackage super.azure-mgmt-containerregistry "3.0.0rc14" "zip"
+ "0w9hnxvk5pcsa21g3xrr089rfwgldghrbj8akzvh0gchqlzfjg6j";
- azure-mgmt-monitor = overrideAzureMgmtPackage super.azure-mgmt-monitor "0.9.0" "zip"
- "170jyr1qzwhv5ihyrsg5d8qzjylqmg31dscd31jzi4i7bwqf3sb8";
+ azure-mgmt-monitor = overrideAzureMgmtPackage super.azure-mgmt-monitor "0.10.0" "zip"
+ "0r3l55mhd00zx8sw13d7i9l7r214946s1y3wxcswxad7q5660zfm";
azure-mgmt-advisor = overrideAzureMgmtPackage super.azure-mgmt-advisor "2.0.1" "zip"
"1wsfkprdrn22mwm24y2zlcms8ppp7jwq3s86r3ymbl29pbaxca8r";
@@ -253,14 +256,14 @@ let
azure-mgmt-authorization = overrideAzureMgmtPackage super.azure-mgmt-authorization "0.52.0" "zip"
"0357laxgldb7lvvws81r8xb6mrq9dwwnr1bnwdnyj4bw6p21i9hn";
- azure-mgmt-storage = overrideAzureMgmtPackage super.azure-mgmt-storage "11.0.0" "zip"
- "1f192420cwqfbqnl4xcfjpdh5qfilji34xkmpxdsbq7fhhm1qygr";
+ azure-mgmt-storage = overrideAzureMgmtPackage super.azure-mgmt-storage "11.1.0" "zip"
+ "073zybsxk70vg02bflbrx97pwzsxl0xyi48fpxp8dh3d3dy5h8zg";
azure-mgmt-servicefabric = overrideAzureMgmtPackage super.azure-mgmt-servicefabric "0.4.0" "zip"
"1x18grkjf2p2r1ihlwv607sna9yjvsr2jwnkjc55askrgrwx5jx2";
- azure-mgmt-hdinsight = overrideAzureMgmtPackage super.azure-mgmt-hdinsight "1.4.0" "zip"
- "0zmmfj7z1zrayjqwqybcn3bwm47d2ngyxm1g6fh2iw5c2f9czycv";
+ azure-mgmt-hdinsight = overrideAzureMgmtPackage super.azure-mgmt-hdinsight "1.5.1" "zip"
+ "18xfq3n2i1bnai417p3q67f4bikxjcqyg6yp4f06kipx8cz4zfbn";
azure-graphrbac = super.azure-graphrbac.overrideAttrs(oldAttrs: rec {
version = "0.60.0";
diff --git a/pkgs/tools/admin/google-cloud-sdk/default.nix b/pkgs/tools/admin/google-cloud-sdk/default.nix
index 2ecd9242818..60ba024fd5b 100644
--- a/pkgs/tools/admin/google-cloud-sdk/default.nix
+++ b/pkgs/tools/admin/google-cloud-sdk/default.nix
@@ -21,18 +21,18 @@ let
sources = name: system: {
x86_64-darwin = {
url = "${baseUrl}/${name}-darwin-x86_64.tar.gz";
- sha256 = "0imsshvdwd2isq58kplc27za30nabp62ypf1hq95aq94pjm2zp39";
+ sha256 = "1b9pm0k298w7scsi493a2xlikiqqbb8vwcy9j71421kyvlj4g7yr";
};
x86_64-linux = {
url = "${baseUrl}/${name}-linux-x86_64.tar.gz";
- sha256 = "1905rj36md5iszbxw78ylvkljr4d54i50x23r1r6k1xw7i93yfwq";
+ sha256 = "1f6kkcwxg419kw58521n4ms68hspx7mj87syj4xzxdwgkwg92ws7";
};
}.${system};
in stdenv.mkDerivation rec {
pname = "google-cloud-sdk";
- version = "297.0.1";
+ version = "301.0.0";
src = fetchurl (sources "${pname}-${version}" stdenv.hostPlatform.system);
diff --git a/pkgs/tools/admin/pulumi/data.nix b/pkgs/tools/admin/pulumi/data.nix
index cfed777020a..77779c39f50 100644
--- a/pkgs/tools/admin/pulumi/data.nix
+++ b/pkgs/tools/admin/pulumi/data.nix
@@ -1,58 +1,58 @@
# DO NOT EDIT! This file is generated automatically by update.sh
{ }:
{
- version = "2.2.1";
+ version = "2.6.1";
pulumiPkgs = {
x86_64-linux = [
{
- url = "https://get.pulumi.com/releases/sdk/pulumi-v2.2.1-linux-x64.tar.gz";
- sha256 = "0bvwkvsinnhlh1yhh5llffh89w07f412q6z03ypzl19p6fvik1k1";
+ url = "https://get.pulumi.com/releases/sdk/pulumi-v2.6.1-linux-x64.tar.gz";
+ sha256 = "12f81wj8r3pmxj2l8qhcgnmy2m0a6bfzrvq9avl3444h2w29qpy2";
}
{
- url = "https://api.pulumi.com/releases/plugins/pulumi-resource-postgresql-v2.1.1-linux-amd64.tar.gz";
- sha256 = "0bj9nlxsb77ycwvmba1vsh1vydyrszq3jxlf9d1qsv71h4s88a90";
+ url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v2.13.0-linux-amd64.tar.gz";
+ sha256 = "03l7ybc9ca63vdm7a2zsvgc8zz8ip973sfxsjqf3bb277r04mnpb";
}
{
- url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v2.1.1-linux-amd64.tar.gz";
- sha256 = "0ggi1c4lg6pip6d4bh2cji25hcwv3ii870bjwd35ax668z0dc28d";
+ url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v3.13.0-linux-amd64.tar.gz";
+ sha256 = "0ivdiib3a1c1r2ppxmj6blgq26s05s3081969j0j9jlscpa79lap";
}
{
- url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v3.6.0-linux-amd64.tar.gz";
- sha256 = "0l4vv7vkzsphvk9r28l253ds8ny0wh0fahqjjnz31jqzfbvzyxm8";
+ url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v2.2.0-linux-amd64.tar.gz";
+ sha256 = "0w6ys5bmry1b8ndzj167cz3a8fc6mbl5v9v2almrmd3q6fycm4gj";
}
{
- url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v2.2.0-linux-amd64.tar.gz";
- sha256 = "1maiy1i43p0gl2w12hfk9zgfz418innzi7nkv68qlyxd4hi5v6mf";
+ url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v2.4.0-linux-amd64.tar.gz";
+ sha256 = "0id3mji08hk76kffz46dlbl2r11kgv5jvlmw869dssg2d0wliv82";
}
{
- url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v2.5.0-linux-amd64.tar.gz";
- sha256 = "02xjwx2rfh3k9zk8aw39n4k6jnp8chcfc5f1zac7x4xfkqyjlpcy";
+ url = "https://api.pulumi.com/releases/plugins/pulumi-resource-postgresql-v2.2.2-linux-amd64.tar.gz";
+ sha256 = "07asdmmacxazg65d5hphjxzb5j5d2dcc95wjbxx3wwc1swqma4aq";
}
];
x86_64-darwin = [
{
- url = "https://get.pulumi.com/releases/sdk/pulumi-v2.2.1-darwin-x64.tar.gz";
- sha256 = "1fizddk1hxazn33xliankps3fv0casx4r8rvwkdzqx1piqq18xy4";
+ url = "https://get.pulumi.com/releases/sdk/pulumi-v2.6.1-darwin-x64.tar.gz";
+ sha256 = "17jf9xwpwpbqk5r20i14j1z4i4rbbx781k0zqyc9yskmv5q4mmwr";
}
{
- url = "https://api.pulumi.com/releases/plugins/pulumi-resource-postgresql-v2.1.1-darwin-amd64.tar.gz";
- sha256 = "17iqzv06s4xhnway3j534lsj8gzxld67kfn7awn4ymwh2zn8l3z0";
+ url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v2.13.0-darwin-amd64.tar.gz";
+ sha256 = "18mjf9gm8siskg9jh65x4qp4w8p4wnp19bxxk4jfbq27icdk7ws9";
}
{
- url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v2.1.1-darwin-amd64.tar.gz";
- sha256 = "1mdchvibk989xq5zfjb7cdzgh9m769cvj2l5dfxmkava7zhmj2bj";
+ url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v3.13.0-darwin-amd64.tar.gz";
+ sha256 = "14iwz1gm34irs9jlpwc4ig1wc8k4aaxq8mz3g22yrvwddrsc4rcw";
}
{
- url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v3.6.0-darwin-amd64.tar.gz";
- sha256 = "013c13ypvz75x9qppzmlvwg4bnjryw9q16j6v987ibrrfxblan5b";
+ url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v2.2.0-darwin-amd64.tar.gz";
+ sha256 = "0zaxp2n1w5djwyq1afhd3v887dh0yj53jz449riqp19dpyfqf7h7";
}
{
- url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v2.2.0-darwin-amd64.tar.gz";
- sha256 = "0maca137agmig8njz0fd0yhxahdra7pqaw23mxfxa8m5j44p787a";
+ url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v2.4.0-darwin-amd64.tar.gz";
+ sha256 = "1kzs7k7as9r1vbj746wqz9iph13zfzzw8nsk3waq8aq1hmgh2g1q";
}
{
- url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v2.5.0-darwin-amd64.tar.gz";
- sha256 = "0kc4il1ixh7ricl4n3vadvjy0rjj0bps7n8lbqgrq8lm5m419izv";
+ url = "https://api.pulumi.com/releases/plugins/pulumi-resource-postgresql-v2.2.2-darwin-amd64.tar.gz";
+ sha256 = "0hwdghij7g9h58nwimfmaz91lz38wibkrdzwqhi7d426m53g6f5c";
}
];
};
diff --git a/pkgs/tools/admin/pulumi/update.sh b/pkgs/tools/admin/pulumi/update.sh
index 4aa8478da1f..cc31bce849b 100755
--- a/pkgs/tools/admin/pulumi/update.sh
+++ b/pkgs/tools/admin/pulumi/update.sh
@@ -1,15 +1,19 @@
#!/usr/bin/env bash
-VERSION="2.2.1"
+VERSION="2.6.1"
-declare -A plugins
+# Bash 3 compatible for Darwin
plugins=(
- ["aws"]="2.5.0"
- ["gcp"]="3.6.0"
- ["random"]="2.1.1"
- ["kubernetes"]="2.2.0"
- ["postgresql"]="2.1.1"
-)
+ # https://github.com/pulumi/pulumi-aws/releases
+ "aws=2.13.0"
+ # https://github.com/pulumi/pulumi-gcp/releases
+ "gcp=3.13.0"
+ # https://github.com/pulumi/pulumi-random/releases
+ "random=2.2.0"
+ # https://github.com/pulumi/pulumi-kubernetes/releases
+ "kubernetes=2.4.0"
+ # https://github.com/pulumi/pulumi-postgresql/releases
+ "postgresql=2.2.2");
function genMainSrc() {
local url="https://get.pulumi.com/releases/sdk/pulumi-v${VERSION}-$1-x64.tar.gz"
@@ -22,8 +26,9 @@ function genMainSrc() {
}
function genSrcs() {
- for plug in "${!plugins[@]}"; do
- local version=${plugins[$plug]}
+ for plugVers in "${plugins[@]}"; do
+ local plug=${plugVers%=*}
+ local version=${plugVers#*=}
# url as defined here
# https://github.com/pulumi/pulumi/blob/06d4dde8898b2a0de2c3c7ff8e45f97495b89d82/pkg/workspace/plugins.go#L197
local url="https://api.pulumi.com/releases/plugins/pulumi-resource-${plug}-v${version}-$1-amd64.tar.gz"
@@ -36,7 +41,7 @@ function genSrcs() {
done
}
-cat < data.nix
# DO NOT EDIT! This file is generated automatically by update.sh
{ }:
{
@@ -44,13 +49,14 @@ cat <> data.nix
+genSrcs "linux" >> data.nix
+echo " ];" >> data.nix
+
+echo " x86_64-darwin = [" >> data.nix
+genMainSrc "darwin" >> data.nix
+genSrcs "darwin" >> data.nix
+echo " ];" >> data.nix
+echo " };" >> data.nix
+echo "}" >> data.nix
-echo " x86_64-darwin = ["
-genMainSrc "darwin"
-genSrcs "darwin"
-echo " ];"
-echo " };"
-echo "}"
diff --git a/pkgs/tools/backup/monolith/default.nix b/pkgs/tools/backup/monolith/default.nix
index 36d90fb8066..43703cce32c 100644
--- a/pkgs/tools/backup/monolith/default.nix
+++ b/pkgs/tools/backup/monolith/default.nix
@@ -8,16 +8,16 @@
rustPlatform.buildRustPackage rec {
pname = "monolith";
- version = "2.2.7";
+ version = "2.3.0";
src = fetchFromGitHub {
owner = "Y2Z";
repo = pname;
rev = "v${version}";
- sha256 = "1ww5q7pk269l2s7d2svkkyd7hb7g4hqmwjn09b287pmjcirnmqn9";
+ sha256 = "0jr9vsmjx6dfkkl2lnk8nc3i3snivy5za0zvcazss54xpa3k0fh1";
};
- cargoSha256 = "0jdbxshvm9hdxdjr3sy1kgszhfs9v4r6gp0nwvv2n92m3z8zri9y";
+ cargoSha256 = "15zz168igc255kyqd6nl9p2cm1s1hs6bp72jdxjvpzgsg990jp46";
nativeBuildInputs = stdenv.lib.optionals stdenv.isLinux [ pkg-config ];
buildInputs = stdenv.lib.optionals stdenv.isLinux [ openssl ]
diff --git a/pkgs/tools/backup/percona-xtrabackup/2_4.nix b/pkgs/tools/backup/percona-xtrabackup/2_4.nix
new file mode 100644
index 00000000000..5c9ce70e5b9
--- /dev/null
+++ b/pkgs/tools/backup/percona-xtrabackup/2_4.nix
@@ -0,0 +1,6 @@
+{ callPackage, ... } @ args:
+
+callPackage ./generic.nix (args // {
+ version = "2.4.20";
+ sha256 = "0awdpkcgvx2aq7pwxy8jyzkin6cyrrh3d576x9ldm851kis9n5ii";
+})
diff --git a/pkgs/tools/backup/percona-xtrabackup/8_0.nix b/pkgs/tools/backup/percona-xtrabackup/8_0.nix
new file mode 100644
index 00000000000..2878e93fe70
--- /dev/null
+++ b/pkgs/tools/backup/percona-xtrabackup/8_0.nix
@@ -0,0 +1,14 @@
+{ callPackage, ... } @ args:
+
+callPackage ./generic.nix (args // {
+ version = "8.0.13";
+ sha256 = "0cj0fnjimv22ykfl0yk6w29wcjvqp8y8j2g1c6gcml65qazrswyr";
+
+ extraPatches = [
+ ./../../../servers/sql/mysql/abi-check.patch
+ ];
+
+ extraPostInstall = ''
+ rm -r "$out"/docs
+ '';
+})
diff --git a/pkgs/tools/backup/percona-xtrabackup/default.nix b/pkgs/tools/backup/percona-xtrabackup/default.nix
deleted file mode 100644
index a610bb8e13a..00000000000
--- a/pkgs/tools/backup/percona-xtrabackup/default.nix
+++ /dev/null
@@ -1,45 +0,0 @@
-{ stdenv, fetchFromGitHub, cmake, pkgconfig
-, boost, bison, curl, ncurses, openssl, xxd
-, libaio, libev, libgcrypt, libgpgerror, libtool, zlib
-}:
-
-stdenv.mkDerivation rec {
- pname = "percona-xtrabackup";
- version = "2.4.12";
-
- src = fetchFromGitHub {
- owner = "percona";
- repo = "percona-xtrabackup";
- rev = "${pname}-${version}";
- sha256 = "1w17v2c677b3vfnm81bs63kjbfiin7f12wl9fbgp83hfpyx5msan";
- };
-
- nativeBuildInputs = [ cmake pkgconfig ];
-
- buildInputs = [
- boost bison curl ncurses openssl xxd
- libaio libev libgcrypt libgpgerror libtool zlib
- ];
-
- cmakeFlags = [
- "-DBUILD_CONFIG=xtrabackup_release"
- "-DINSTALL_MYSQLTESTDIR=OFF"
- "-DWITH_BOOST=system"
- "-DWITH_SSL=system"
- "-DWITH_ZLIB=system"
- "-DWITH_MAN_PAGES=OFF"
- "-DCMAKE_CXX_FLAGS=-std=gnu++03"
- ];
-
- postInstall = ''
- rm -r "$out"/lib/plugin/debug
- '';
-
- meta = with stdenv.lib; {
- description = "Non-blocking backup tool for MySQL";
- homepage = "http://www.percona.com/software/percona-xtrabackup";
- license = licenses.lgpl2;
- platforms = platforms.linux;
- maintainers = with maintainers; [ izorkin ];
- };
-}
diff --git a/pkgs/tools/backup/percona-xtrabackup/generic.nix b/pkgs/tools/backup/percona-xtrabackup/generic.nix
new file mode 100644
index 00000000000..9339e8155ea
--- /dev/null
+++ b/pkgs/tools/backup/percona-xtrabackup/generic.nix
@@ -0,0 +1,58 @@
+{ stdenv, fetchFromGitHub, bison, boost, cmake, makeWrapper, pkgconfig
+, curl, cyrus_sasl, libaio, libedit, libev, libevent, libgcrypt, libgpgerror, lz4
+, ncurses, numactl, openssl, protobuf, valgrind, xxd, zlib
+, perlPackages
+, version, sha256, extraPatches ? [], extraPostInstall ? "", ...
+}:
+
+stdenv.mkDerivation rec {
+ pname = "percona-xtrabackup";
+ inherit version;
+
+ src = fetchFromGitHub {
+ owner = "percona";
+ repo = "percona-xtrabackup";
+ rev = "${pname}-${version}";
+ inherit sha256;
+ };
+
+ nativeBuildInputs = [ bison boost cmake makeWrapper pkgconfig ];
+
+ buildInputs = [
+ curl cyrus_sasl libaio libedit libev libevent libgcrypt libgpgerror lz4
+ ncurses numactl openssl protobuf valgrind xxd zlib
+ ] ++ (with perlPackages; [ perl DBI DBDmysql ]);
+
+ patches = extraPatches;
+
+ cmakeFlags = [
+ "-DMYSQL_UNIX_ADDR=/run/mysqld/mysqld.sock"
+ "-DBUILD_CONFIG=xtrabackup_release"
+ "-DINSTALL_MYSQLTESTDIR=OFF"
+ "-DWITH_BOOST=system"
+ "-DWITH_CURL=system"
+ "-DWITH_EDITLINE=system"
+ "-DWITH_LIBEVENT=system"
+ "-DWITH_LZ4=system"
+ "-DWITH_PROTOBUF=system"
+ "-DWITH_SASL=system"
+ "-DWITH_SSL=system"
+ "-DWITH_ZLIB=system"
+ "-DWITH_VALGRIND=ON"
+ "-DWITH_MAN_PAGES=OFF"
+ "-DCMAKE_SKIP_BUILD_RPATH=OFF" # To run libmysql/libmysql_api_test during build.
+ ];
+
+ postInstall = ''
+ wrapProgram "$out"/bin/xtrabackup --prefix PERL5LIB : $PERL5LIB
+ rm -r "$out"/lib/plugin/debug
+ '' + extraPostInstall;
+
+ meta = with stdenv.lib; {
+ description = "Non-blocking backup tool for MySQL";
+ homepage = "http://www.percona.com/software/percona-xtrabackup";
+ license = licenses.lgpl2;
+ platforms = platforms.linux;
+ maintainers = with maintainers; [ izorkin ];
+ };
+}
diff --git a/pkgs/tools/compression/zstd/default.nix b/pkgs/tools/compression/zstd/default.nix
index f919fb92ed1..9c9f91f9c19 100644
--- a/pkgs/tools/compression/zstd/default.nix
+++ b/pkgs/tools/compression/zstd/default.nix
@@ -2,7 +2,8 @@
, fixDarwinDylibNames
, file
, legacySupport ? false
-, enableShared ? true }:
+, static ? false
+}:
stdenv.mkDerivation rec {
pname = "zstd";
@@ -28,9 +29,24 @@ stdenv.mkDerivation rec {
# work fine, and I'm not sure how to write the condition.
++ stdenv.lib.optional stdenv.hostPlatform.isWindows ./mcfgthreads-no-pthread.patch;
+ postPatch =
+ # Patch shebangs for playTests
+ ''
+ patchShebangs programs/zstdgrep
+ '' + stdenv.lib.optionalString (!static) ''
+ substituteInPlace build/cmake/CMakeLists.txt \
+ --replace 'message(SEND_ERROR "You need to build static library to build tests")' ""
+ substituteInPlace build/cmake/tests/CMakeLists.txt \
+ --replace 'libzstd_static' 'libzstd_shared'
+ sed -i \
+ "1aexport ${stdenv.lib.optionalString stdenv.isDarwin "DY"}LD_LIBRARY_PATH=$PWD/build_/lib" \
+ tests/playTests.sh
+ '';
+
cmakeFlags = [
- "-DZSTD_BUILD_SHARED:BOOL=${if enableShared then "ON" else "OFF"}"
- # They require STATIC for bin/zstd and tests.
+ "-DZSTD_BUILD_SHARED:BOOL=${if (!static) then "ON" else "OFF"}"
+ "-DZSTD_BUILD_STATIC:BOOL=${if static then "ON" else "OFF"}"
+ "-DZSTD_PROGRAMS_LINK_SHARED:BOOL=${if (!static) then "ON" else "OFF"}"
"-DZSTD_LEGACY_SUPPORT:BOOL=${if legacySupport then "ON" else "OFF"}"
"-DZSTD_BUILD_TESTS:BOOL=ON"
];
@@ -56,8 +72,6 @@ stdenv.mkDerivation rec {
substituteInPlace ../programs/zstdless \
--replace "zstdcat" "$bin/bin/zstdcat"
'';
- # Don't duplicate the library code in runtime closures.
- postInstall = stdenv.lib.optionalString enableShared ''rm "$out"/lib/libzstd.a'';
outputs = [ "bin" "dev" "man" "out" ];
diff --git a/pkgs/tools/filesystems/btrfs-progs/default.nix b/pkgs/tools/filesystems/btrfs-progs/default.nix
index f79dc239665..8ff72421a59 100644
--- a/pkgs/tools/filesystems/btrfs-progs/default.nix
+++ b/pkgs/tools/filesystems/btrfs-progs/default.nix
@@ -4,11 +4,11 @@
stdenv.mkDerivation rec {
pname = "btrfs-progs";
- version = "5.6.1";
+ version = "5.7";
src = fetchurl {
url = "mirror://kernel/linux/kernel/people/kdave/btrfs-progs/btrfs-progs-v${version}.tar.xz";
- sha256 = "1nwnvjdnr9fjj2q2p2vpjabfdhcrwykgj9knjcsqy0c7p1bgbk2h";
+ sha256 = "0p6ycbr8sw5bq3mj84gh9rvh5sk8sjr2l9hb9dhm4j41ij5h8bsw";
};
nativeBuildInputs = [
diff --git a/pkgs/tools/misc/fluent-bit/default.nix b/pkgs/tools/misc/fluent-bit/default.nix
index d882c6efb5e..cc40c89bc6f 100644
--- a/pkgs/tools/misc/fluent-bit/default.nix
+++ b/pkgs/tools/misc/fluent-bit/default.nix
@@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "fluent-bit";
- version = "1.4.6";
+ version = "1.5.0";
src = fetchFromGitHub {
owner = "fluent";
repo = "fluent-bit";
rev = "v${version}";
- sha256 = "0qxyjmgl85q7xk629l548bpzizma5n4j1r6nqbwh9j15ajvq7mq8";
+ sha256 = "15nfzs1p6na0n98hpzh4lnzcj4g83dg2nfhd4f9lay32qj12cqgj";
};
nativeBuildInputs = [ cmake flex bison ];
diff --git a/pkgs/tools/misc/gringo/default.nix b/pkgs/tools/misc/gringo/default.nix
index 92f1eb89585..05e5e9b64cf 100644
--- a/pkgs/tools/misc/gringo/default.nix
+++ b/pkgs/tools/misc/gringo/default.nix
@@ -1,5 +1,5 @@
{ stdenv, fetchurl,
- bison, re2c, scons,
+ bison, re2c, sconsPackages,
libcxx
}:
@@ -16,7 +16,7 @@ stdenv.mkDerivation {
sha256 = "16k4pkwyr2mh5w8j91vhxh9aff7f4y31npwf09w6f8q63fxvpy41";
};
- buildInputs = [ bison re2c scons.py2 ];
+ buildInputs = [ bison re2c sconsPackages.scons_3_1_2 ];
patches = [
./gringo-4.5.4-cmath.patch
diff --git a/pkgs/tools/misc/kepubify/default.nix b/pkgs/tools/misc/kepubify/default.nix
index 30c648ba124..6f8dbb21e1c 100644
--- a/pkgs/tools/misc/kepubify/default.nix
+++ b/pkgs/tools/misc/kepubify/default.nix
@@ -2,16 +2,16 @@
buildGoModule rec {
pname = "kepubify";
- version = "3.1.3";
+ version = "3.1.4";
src = fetchFromGitHub {
- owner = "geek1011";
+ owner = "pgaskin";
repo = pname;
rev = "v${version}";
- sha256 = "1fd7w9cmdca6ivppmpn5bkqxmz50xgihrm2pbz6h8jf92i485md0";
+ sha256 = "0d71d1ra7lk4ayypq3fcigd9lpb2dafa8ci14h0g7rivm4lz8l1j";
};
- vendorSha256 = "1gzlxdbmrqqnrjx83g65yn7n93w13ci4vr3mpywasxfad866gc24";
+ vendorSha256 = "0jzx5midawvzims9ghh8fbslvwcdczvlpf0k6a9q0bdf4wlp2z5n";
buildFlagsArray = [ "-ldflags=-s -w -X main.version=${version}" ];
@@ -23,4 +23,4 @@ buildGoModule rec {
license = licenses.mit;
maintainers = with maintainers; [ zowoq ];
};
-}
\ No newline at end of file
+}
diff --git a/pkgs/tools/misc/man-db/default.nix b/pkgs/tools/misc/man-db/default.nix
index f5cbef8b022..68e1aaa4d61 100644
--- a/pkgs/tools/misc/man-db/default.nix
+++ b/pkgs/tools/misc/man-db/default.nix
@@ -1,11 +1,11 @@
{ stdenv, fetchurl, pkgconfig, libpipeline, db, groff, libiconv, makeWrapper, buildPackages }:
stdenv.mkDerivation rec {
- name = "man-db-2.9.2";
+ name = "man-db-2.9.3";
src = fetchurl {
url = "mirror://savannah/man-db/${name}.tar.xz";
- sha256 = "0z04kwv5ymmd0pzadpaag696jfckg6rbz8x4jrgj09bmqqk3yf3v";
+ sha256 = "1f4palf5bdyf3f8sa0981cqxn9cjcr2pz53ngrrsybb9n0da2nps";
};
outputs = [ "out" "doc" ];
diff --git a/pkgs/tools/misc/yubikey-personalization/default.nix b/pkgs/tools/misc/yubikey-personalization/default.nix
index 5ef828762f6..69e3d588653 100644
--- a/pkgs/tools/misc/yubikey-personalization/default.nix
+++ b/pkgs/tools/misc/yubikey-personalization/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, pkgconfig, libusb1, libyubikey, json_c }:
+{ stdenv, fetchurl, fetchpatch, pkgconfig, libusb1, libyubikey, json_c }:
stdenv.mkDerivation rec {
pname = "yubikey-personalization";
@@ -9,6 +9,15 @@ stdenv.mkDerivation rec {
sha256 = "14wvlwqnwj0gllkpvfqiy8ns938bwvjsz8x1hmymmx32m074vj0f";
};
+ patches = [
+ # remove after updating to next release
+ (fetchpatch {
+ name = "json-c-0.14-support.patch";
+ url = "https://github.com/Yubico/yubikey-personalization/commit/0aa2e2cae2e1777863993a10c809bb50f4cde7f8.patch";
+ sha256 = "1wnigf3hbq59i15kgxpq3pwrl1drpbj134x81mmv9xm1r44cjva8";
+ })
+ ];
+
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ libusb1 libyubikey json_c ];
diff --git a/pkgs/tools/networking/connman/connman-ncurses/default.nix b/pkgs/tools/networking/connman/connman-ncurses/default.nix
index 7bfb4571e10..1e7f54f9ddb 100644
--- a/pkgs/tools/networking/connman/connman-ncurses/default.nix
+++ b/pkgs/tools/networking/connman/connman-ncurses/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, dbus, json_c, ncurses, connman }:
+{ stdenv, fetchpatch, fetchFromGitHub, autoreconfHook, pkgconfig, dbus, json_c, ncurses, connman }:
stdenv.mkDerivation {
pname = "connman-ncurses";
@@ -11,12 +11,21 @@ stdenv.mkDerivation {
sha256 = "1831r0776fv481g8kgy1dkl750pzv47835dw11sslq2k6mm6i9p1";
};
+ patches = [
+ # Fix build with json-c 0.14
+ (fetchpatch {
+ url = "https://github.com/void-linux/void-packages/raw/5830ce60e922b7dced8157ededda8c995adb3bb9/srcpkgs/connman-ncurses/patches/lowercase-boolean.patch";
+ extraPrefix = "";
+ sha256 = "uK83DeRyXS2Y0ZZpTYvYNh/1ZM2QQ7QpajiBztaEuSM=";
+ })
+ ];
+
nativeBuildInputs = [ autoreconfHook pkgconfig ];
buildInputs = [ dbus ncurses json_c connman ];
NIX_CFLAGS_COMPILE = "-Wno-error";
-
+
installPhase = ''
mkdir -p "$out/bin"
cp -va connman_ncurses "$out/bin/"
diff --git a/pkgs/tools/networking/croc/default.nix b/pkgs/tools/networking/croc/default.nix
index 8fe208c98bc..632eacdf1fb 100644
--- a/pkgs/tools/networking/croc/default.nix
+++ b/pkgs/tools/networking/croc/default.nix
@@ -2,16 +2,16 @@
buildGoModule rec {
pname = "croc";
- version = "8.0.11";
+ version = "8.0.12";
src = fetchFromGitHub {
owner = "schollz";
repo = pname;
rev = "v${version}";
- sha256 = "09yx7xjhvpyvzwsf859b9yfrxzg01ak3dfavfhmx3h97lrdxprgi";
+ sha256 = "0j0cdxblh0h68a55jvljzahj851yba354xv2w5gg9hjzjd38769x";
};
- vendorSha256 = "1lqlrsd90475b1wp1krfppi635q5gw1ka8x4d8haanmnlnxkniqf";
+ vendorSha256 = "1d6gg7c0rb45zy9rilacn2xyr3kcb7acsh389hk6lppipmhpzr5a";
subPackages = [ "." ];
diff --git a/pkgs/tools/networking/curl/default.nix b/pkgs/tools/networking/curl/default.nix
index 68de0661072..ce24854d04d 100644
--- a/pkgs/tools/networking/curl/default.nix
+++ b/pkgs/tools/networking/curl/default.nix
@@ -29,14 +29,14 @@ assert gssSupport -> libkrb5 != null;
stdenv.mkDerivation rec {
pname = "curl";
- version = "7.71.0";
+ version = "7.71.1";
src = fetchurl {
urls = [
"https://curl.haxx.se/download/${pname}-${version}.tar.bz2"
"https://github.com/curl/curl/releases/download/${lib.replaceStrings ["."] ["_"] pname}-${version}/${pname}-${version}.tar.bz2"
];
- sha256 = "0hfkbp51vj51s28sq2wnw5jn2f6r7ycdy78lli49ba414jn003v0";
+ sha256 = "097jnkbayscifgzgl7v8kwd7m2crpvbyaazac3ab1yal0pca8llx";
};
outputs = [ "bin" "dev" "out" "man" "devdoc" ];
diff --git a/pkgs/tools/networking/network-manager/default.nix b/pkgs/tools/networking/network-manager/default.nix
index baf2128153a..f5b12a6cf37 100644
--- a/pkgs/tools/networking/network-manager/default.nix
+++ b/pkgs/tools/networking/network-manager/default.nix
@@ -10,11 +10,11 @@ let
pythonForDocs = python3.withPackages (pkgs: with pkgs; [ pygobject3 ]);
in stdenv.mkDerivation rec {
pname = "network-manager";
- version = "1.22.10";
+ version = "1.26.0";
src = fetchurl {
url = "mirror://gnome/sources/NetworkManager/${stdenv.lib.versions.majorMinor version}/NetworkManager-${version}.tar.xz";
- sha256 = "0xyaizyp3yz6x3pladw3nvl3hf4n5g140zx9jnxfp9qvag0wqa9b";
+ sha256 = "0isdqwp58d7r92sqsk7l2vlqwy518n8b7c7z94jk9gc1bdmjf8sj";
};
outputs = [ "out" "dev" "devdoc" "man" "doc" ];
@@ -41,7 +41,6 @@ in stdenv.mkDerivation rec {
"-Dcrypto=gnutls"
"-Dsession_tracking=systemd"
"-Dmodem_manager=true"
- "-Dpolkit_agent=true"
"-Dnmtui=true"
"-Ddocs=true"
"-Dtests=no"
@@ -49,12 +48,14 @@ in stdenv.mkDerivation rec {
# Allow using iwd when configured to do so
"-Diwd=true"
"-Dlibaudit=yes-disabled-by-default"
+ # We don't use firewalld in NixOS
+ "-Dfirewalld_zone=false"
];
patches = [
(substituteAll {
src = ./fix-paths.patch;
- inherit iputils kmod openconnect ethtool gnused systemd;
+ inherit iputils kmod openconnect ethtool gnused systemd polkit;
inherit runtimeShell;
})
diff --git a/pkgs/tools/networking/network-manager/fix-install-paths.patch b/pkgs/tools/networking/network-manager/fix-install-paths.patch
index 02a006c1c3d..4e80247cf14 100644
--- a/pkgs/tools/networking/network-manager/fix-install-paths.patch
+++ b/pkgs/tools/networking/network-manager/fix-install-paths.patch
@@ -1,8 +1,8 @@
diff --git a/meson.build b/meson.build
-index 0af69f35d..9ab239c8a 100644
+index a2d925a7e..5a65cd2fe 100644
--- a/meson.build
+++ b/meson.build
-@@ -912,9 +912,9 @@ meson.add_install_script(
+@@ -959,9 +959,9 @@ meson.add_install_script(
join_paths('tools', 'meson-post-install.sh'),
nm_datadir,
nm_bindir,
diff --git a/pkgs/tools/networking/network-manager/fix-paths.patch b/pkgs/tools/networking/network-manager/fix-paths.patch
index af35fc0a36b..60ee437f6f4 100644
--- a/pkgs/tools/networking/network-manager/fix-paths.patch
+++ b/pkgs/tools/networking/network-manager/fix-paths.patch
@@ -1,8 +1,21 @@
+diff --git a/clients/common/nm-polkit-listener.c b/clients/common/nm-polkit-listener.c
+index ace205e80..f19c1dea0 100644
+--- a/clients/common/nm-polkit-listener.c
++++ b/clients/common/nm-polkit-listener.c
+@@ -552,7 +552,7 @@ begin_authentication (AuthRequest *request)
+ {
+ int fd_flags;
+ const char *helper_argv[] = {
+- POLKIT_PACKAGE_PREFIX "/lib/polkit-1/polkit-agent-helper-1",
++ "/run/wrappers/bin/polkit-agent-helper-1",
+ request->username,
+ NULL,
+ };
diff --git a/clients/common/nm-vpn-helpers.c b/clients/common/nm-vpn-helpers.c
-index ffae5f553..ba1093e4d 100644
+index 74ff52bb2..638857df4 100644
--- a/clients/common/nm-vpn-helpers.c
+++ b/clients/common/nm-vpn-helpers.c
-@@ -203,10 +203,7 @@ nm_vpn_openconnect_authenticate_helper (const char *host,
+@@ -213,10 +213,7 @@ nm_vpn_openconnect_authenticate_helper (const char *host,
NULL,
};
@@ -40,35 +53,25 @@ index 91ebd9a36..5201a56c3 100644
ExecStart=@sbindir@/NetworkManager --no-daemon
Restart=on-failure
diff --git a/libnm/meson.build b/libnm/meson.build
-index 51ca46d2b..0c04cc216 100644
+index d3991ab19..58f01c666 100644
--- a/libnm/meson.build
+++ b/libnm/meson.build
-@@ -261,7 +261,7 @@ if enable_introspection
- name,
- input: libnm_gir[0],
- output: name,
-- command: [generate_setting_docs_env, python.path(), generate_setting_docs, '--lib-path', meson.current_build_dir(), '--gir', '@INPUT@', '--output', '@OUTPUT@'],
-+ command: [generate_setting_docs_env, generate_setting_docs, '--lib-path', meson.current_build_dir(), '--gir', '@INPUT@', '--output', '@OUTPUT@'],
- depends: libnm_gir,
- )
-
-@@ -270,7 +270,7 @@ if enable_introspection
- name,
- input: [libnm_gir[0], nm_settings_docs_overrides],
- output: name,
-- command: [generate_setting_docs_env, python.path(), generate_setting_docs, '--lib-path', meson.current_build_dir(), '--gir', '@INPUT0@', '--overrides', '@INPUT1@', '--output', '@OUTPUT@'],
-+ command: [generate_setting_docs_env, generate_setting_docs, '--lib-path', meson.current_build_dir(), '--gir', '@INPUT0@', '--overrides', '@INPUT1@', '--output', '@OUTPUT@'],
- depends: libnm_gir,
- )
- endif
+@@ -283,7 +283,6 @@ if enable_introspection
+ output: 'nm-settings-docs-gir.xml',
+ command: [
+ generate_setting_docs_env,
+- python.path(),
+ join_paths(meson.source_root(), 'tools', 'generate-docs-nm-settings-docs-gir.py'),
+ '--lib-path', meson.current_build_dir(),
+ '--gir', '@INPUT@',
diff --git a/src/devices/nm-device.c b/src/devices/nm-device.c
-index e7a4a059a..0a8f8b7c6 100644
+index de09e4807..2755db165 100644
--- a/src/devices/nm-device.c
+++ b/src/devices/nm-device.c
-@@ -13179,14 +13179,14 @@ nm_device_start_ip_check (NMDevice *self)
+@@ -13705,14 +13705,14 @@ nm_device_start_ip_check (NMDevice *self)
gw = nm_ip4_config_best_default_route_get (priv->ip_config_4);
if (gw) {
- nm_utils_inet4_ntop (NMP_OBJECT_CAST_IP4_ROUTE (gw)->gateway, buf);
+ _nm_utils_inet4_ntop (NMP_OBJECT_CAST_IP4_ROUTE (gw)->gateway, buf);
- ping_binary = nm_utils_find_helper ("ping", "/usr/bin/ping", NULL);
+ ping_binary = "@iputils@/bin/ping";
log_domain = LOGD_IP4;
@@ -76,14 +79,14 @@ index e7a4a059a..0a8f8b7c6 100644
} else if (priv->ip_config_6 && priv->ip_state_6 == NM_DEVICE_IP_STATE_DONE) {
gw = nm_ip6_config_best_default_route_get (priv->ip_config_6);
if (gw) {
- nm_utils_inet6_ntop (&NMP_OBJECT_CAST_IP6_ROUTE (gw)->gateway, buf);
+ _nm_utils_inet6_ntop (&NMP_OBJECT_CAST_IP6_ROUTE (gw)->gateway, buf);
- ping_binary = nm_utils_find_helper ("ping6", "/usr/bin/ping6", NULL);
+ ping_binary = "@iputils@/bin/ping";
log_domain = LOGD_IP6;
}
}
diff --git a/src/nm-core-utils.c b/src/nm-core-utils.c
-index fb92289f0..c91b27b09 100644
+index 3950c3c3a..a9436d75a 100644
--- a/src/nm-core-utils.c
+++ b/src/nm-core-utils.c
@@ -336,7 +336,7 @@ nm_utils_modprobe (GError **error, gboolean suppress_error_logging, const char *
diff --git a/pkgs/tools/networking/slirp4netns/default.nix b/pkgs/tools/networking/slirp4netns/default.nix
index f4b11ab6c77..93367ea2679 100644
--- a/pkgs/tools/networking/slirp4netns/default.nix
+++ b/pkgs/tools/networking/slirp4netns/default.nix
@@ -11,13 +11,13 @@
stdenv.mkDerivation rec {
pname = "slirp4netns";
- version = "1.1.2";
+ version = "1.1.4";
src = fetchFromGitHub {
owner = "rootless-containers";
repo = "slirp4netns";
rev = "v${version}";
- sha256 = "0hj3jcl3b96ssp8di72ghsgk3dp8d5nkh3gkyg9j7h0z9fncl72f";
+ sha256 = "13hlljkqss9abjpwaa5gcn6qnax0ws03zzh45c4rv1if7rwk6nbl";
};
nativeBuildInputs = [ autoreconfHook pkg-config ];
diff --git a/pkgs/tools/networking/v2ray/default.nix b/pkgs/tools/networking/v2ray/default.nix
index 0f0c5961c00..ab3f5eb3ef4 100644
--- a/pkgs/tools/networking/v2ray/default.nix
+++ b/pkgs/tools/networking/v2ray/default.nix
@@ -3,20 +3,22 @@
, ... } @ args:
callPackage ./generic.nix (rec {
- version = "4.23.3";
+ version = "4.26.0";
src = fetchFromGitHub {
owner = "v2ray";
repo = "v2ray-core";
rev = "v${version}";
- sha256 = "1b0cxrpgkmgas7pwxglsvgcig8rnhffkf990b42z7awji5lw055v";
+ sha256 = "069wm0n44i4l9pnrhwf60ssld65p6gfj4wfc68hrhj4zi4jvlyds";
};
+ vendorSha256 = "1520h69z0inbsrw5505cxbinqakvwcrdx3pisrwnp9lv4jsrzzsr";
+
assets = {
# MIT licensed
"geoip.dat" = let
- geoipRev = "202005270003";
- geoipSha256 = "10gf69hr32p4bpl5j8r46v8xzhpcgm70xbcdxm1a8l0jwyj0infs";
+ geoipRev = "202007080004";
+ geoipSha256 = "1j4qg831dhxdy7brgxn4ca69cvwr3zsgizidlzasbkdn2rwai17y";
in fetchurl {
url = "https://github.com/v2ray/geoip/releases/download/${geoipRev}/geoip.dat";
sha256 = geoipSha256;
@@ -24,8 +26,8 @@ callPackage ./generic.nix (rec {
# MIT licensed
"geosite.dat" = let
- geositeRev = "202005292154";
- geositeSha256 = "0w6l0q8y14in5f4a406blpprqq6p438gpclnlfz7y2hkh5zf36cr";
+ geositeRev = "20200708125309";
+ geositeSha256 = "1pr4137ri3v3r880yx5sqf2p7qfn8g7s555q51x3smkjzkyrskcy";
in fetchurl {
url = "https://github.com/v2ray/domain-list-community/releases/download/${geositeRev}/dlc.dat";
sha256 = geositeSha256;
diff --git a/pkgs/tools/networking/v2ray/generic.nix b/pkgs/tools/networking/v2ray/generic.nix
index e8f4d278c32..a6b98c4ee88 100644
--- a/pkgs/tools/networking/v2ray/generic.nix
+++ b/pkgs/tools/networking/v2ray/generic.nix
@@ -1,7 +1,7 @@
{ lib, linkFarm, buildGoModule, runCommand, makeWrapper
# Version specific args
-, version, src, assets
+, version, src, assets, vendorSha256
, ... }:
let
@@ -13,7 +13,7 @@ let
pname = "v2ray-core";
inherit version src;
- vendorSha256 = "0d2qmnmlkl884ccg0qcd2yhfj0dwxnb9dz3cih7rcipz85w2f2rs";
+ inherit vendorSha256;
buildPhase = ''
runHook preBuild
diff --git a/pkgs/tools/networking/v2ray/update.sh b/pkgs/tools/networking/v2ray/update.sh
index 38ad77e98f8..56a148444c7 100755
--- a/pkgs/tools/networking/v2ray/update.sh
+++ b/pkgs/tools/networking/v2ray/update.sh
@@ -1,11 +1,13 @@
#!/usr/bin/env nix-shell
#!nix-shell -i bash -p curl jq
set -eo pipefail
+cd "$(dirname "${BASH_SOURCE[0]}")"
-version_nix=$(dirname "$0")/default.nix
-deps_nix=$(dirname "$0")/deps.nix
+version_nix=./default.nix
+deps_nix=./deps.nix
+nixpkgs=../../../..
-old_core_rev="v$(sed -En 's/.*\bversion = "(.*?)".*/\1/p' "$version_nix")"
+old_core_rev=$(sed -En 's/.*\bversion = "(.*?)".*/\1/p' "$version_nix")
old_geoip_rev=$(sed -En 's/.*\bgeoipRev = "(.*?)".*/\1/p' "$version_nix")
old_geosite_rev=$(sed -En 's/.*\bgeositeRev = "(.*?)".*/\1/p' "$version_nix")
echo "Current version:" >&2
@@ -17,6 +19,7 @@ function fetch_latest_rev {
}
core_rev=$(fetch_latest_rev 'v2ray-core')
+core_rev=${core_rev:1}
geoip_rev=$(fetch_latest_rev 'geoip')
geosite_rev=$(fetch_latest_rev 'domain-list-community')
echo "Latest version:" >&2
@@ -25,12 +28,13 @@ echo "core: $core_rev, geoip: $geoip_rev, geosite: $geosite_rev" >&2
if [[ $core_rev != $old_core_rev ]]; then
echo "Prefetching core..." >&2
{ read hash; read store_path; } < <(
- nix-prefetch-url --unpack --print-path "https://github.com/v2ray/v2ray-core/archive/$core_rev.zip"
+ nix-prefetch-url --unpack --print-path "https://github.com/v2ray/v2ray-core/archive/v$core_rev.zip"
)
sed --in-place \
- -e "s/\bversion = \".*\"/version = \"$(echo "$core_rev" | tail -c+2)\"/" \
+ -e "s/\bversion = \".*\"/version = \"$core_rev\"/" \
-e "s/\bsha256 = \".*\"/sha256 = \"$hash\"/" \
+ -e "s/\bvendorSha256 = \".*\"/vendorSha256 = \"0000000000000000000000000000000000000000000000000000\"/" \
"$version_nix"
fi
@@ -51,3 +55,17 @@ if [[ $geosite_rev != $old_geosite_rev ]]; then
-e "s/\bgeositeSha256 = \".*\"/geositeSha256 = \"$hash\"/" \
"$version_nix"
fi
+
+echo "Prebuilding..." >&2
+set +o pipefail
+vendorSha256=$(
+ nix-build "$nixpkgs" -A v2ray --no-out-link 2>&1 |
+ tee /dev/stderr |
+ sed -nE 's/.*got:\s*sha256:(\w+)$/\1/p'
+)
+[[ "$vendorSha256" ]]
+sed --in-place \
+ -e "s/vendorSha256 = \".*\"/vendorSha256 = \"$vendorSha256\"/" \
+ "$version_nix"
+
+echo "vendorSha256 updated" >&2
diff --git a/pkgs/tools/security/sops/default.nix b/pkgs/tools/security/sops/default.nix
index 55dde8438c8..74f455af6ab 100644
--- a/pkgs/tools/security/sops/default.nix
+++ b/pkgs/tools/security/sops/default.nix
@@ -2,16 +2,16 @@
buildGoModule rec {
pname = "sops";
- version = "3.5.0";
+ version = "3.6.0";
src = fetchFromGitHub {
rev = "v${version}";
owner = "mozilla";
repo = pname;
- sha256 = "1515bk0fl0pvdkp402l51gdg63bmqlh89sglss6prc1qqvv5v2xy";
+ sha256 = "01skk6vdfki4a88z0snl1pby09im406qhnsfa0d2l8gp6nz8pq6j";
};
- vendorSha256 = "0yryc799k4563wy53z7amraj89cyprklj0lfv207530hwv5i5gm6";
+ vendorSha256 = "0475y95qma5m346ng898n80xv2rxzndx89c9ygjcvjs513yzcba2";
meta = with stdenv.lib; {
homepage = "https://github.com/mozilla/sops";
diff --git a/pkgs/tools/security/zmap/cmake-json-0.14-fix.patch b/pkgs/tools/security/zmap/cmake-json-0.14-fix.patch
new file mode 100644
index 00000000000..1c132948af6
--- /dev/null
+++ b/pkgs/tools/security/zmap/cmake-json-0.14-fix.patch
@@ -0,0 +1,13 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 8bd825f..694d9b2 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -72,6 +72,8 @@ if(WITH_JSON)
+ endif()
+
+ add_definitions("-DJSON")
++ # JSON_CFLAGS is a list, i.e. semicolon-separated, convert it to space-separated
++ string(REPLACE ";" " " JSON_CFLAGS "${JSON_CFLAGS}")
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${JSON_CFLAGS}")
+ endif()
+
diff --git a/pkgs/tools/security/zmap/default.nix b/pkgs/tools/security/zmap/default.nix
index ef36b21641b..e2350b67c7d 100644
--- a/pkgs/tools/security/zmap/default.nix
+++ b/pkgs/tools/security/zmap/default.nix
@@ -13,6 +13,11 @@ stdenv.mkDerivation rec {
sha256 = "0yaahaiawkjk020hvsb8pndbrk8k10wxkfba1irp12a4sj6rywcs";
};
+ patches = [
+ # fix build with json-c 0.14 https://github.com/zmap/zmap/pull/609
+ ./cmake-json-0.14-fix.patch
+ ];
+
cmakeFlags = [ "-DRESPECT_INSTALL_PREFIX_CONFIG=ON" ];
dontUseCmakeBuildDir = true;
diff --git a/pkgs/tools/system/rocm-smi/default.nix b/pkgs/tools/system/rocm-smi/default.nix
new file mode 100644
index 00000000000..159b41fd1ce
--- /dev/null
+++ b/pkgs/tools/system/rocm-smi/default.nix
@@ -0,0 +1,30 @@
+{ lib, buildPythonApplication, fetchFromGitHub }:
+
+buildPythonApplication rec {
+ pname = "rocm-smi";
+ version = "3.5.0";
+
+ src = fetchFromGitHub {
+ owner = "RadeonOpenCompute";
+ repo = "ROC-smi";
+ rev = "rocm-${version}";
+ sha256 = "189mpvmcv46nfwshyc1wla6k71kbraldik5an20g4v9s13ycrpx9";
+ };
+
+ format = "other";
+
+ dontConfigure = true;
+ dontBuild = true;
+
+ installPhase = ''
+ install -Dm0755 rocm_smi.py $out/bin/rocm-smi
+ '';
+
+ meta = with lib; {
+ description = "System management interface for AMD GPUs supported by ROCm";
+ homepage = "https://github.com/RadeonOpenCompute/ROC-smi";
+ license = with licenses; [ mit ];
+ maintainers = with maintainers; [ danieldk ];
+ platforms = platforms.linux;
+ };
+}
diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix
index ea14afa47e7..82d1e5b7809 100644
--- a/pkgs/top-level/aliases.nix
+++ b/pkgs/top-level/aliases.nix
@@ -448,6 +448,8 @@ mapAliases ({
rdiff_backup = rdiff-backup; # added 2014-11-23
rdmd = dtools; # added 2017-08-19
rhc = throw "deprecated in 2019-04-09: abandoned by upstream.";
+ riot-desktop = element-desktop; # added 2020-07-15
+ riot-web = element-web; # added 2020-07-15
rng_tools = rng-tools; # added 2018-10-24
robomongo = robo3t; #added 2017-09-28
rssglx = rss-glx; #added 2015-03-25
@@ -545,6 +547,7 @@ mapAliases ({
surf-webkit2 = surf; # added 2017-04-02
sup = throw "deprecated in 2019-09-10: abandoned by upstream";
system_config_printer = system-config-printer; # added 2016-01-03
+ 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
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index a22d7923782..2ea3f0985bd 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -1791,6 +1791,12 @@ in
eksctl = callPackage ../tools/admin/eksctl { };
+ 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 { };
@@ -2265,12 +2271,6 @@ in
ring-daemon = callPackage ../applications/networking/instant-messengers/ring-daemon { };
- riot-desktop = callPackage ../applications/networking/instant-messengers/riot/riot-desktop.nix { };
-
- riot-web = callPackage ../applications/networking/instant-messengers/riot/riot-web.nix {
- conf = config.riot-web.conf or {};
- };
-
ripasso-cursive = callPackage ../tools/security/ripasso/cursive.nix {
inherit (darwin.apple_sdk.frameworks) AppKit Security;
};
@@ -2569,33 +2569,16 @@ in
circus = callPackage ../tools/networking/circus { };
- citrix_workspace_unwrapped = callPackage ../applications/networking/remote/citrix-workspace { };
- citrix_workspace_unwrapped_20_06_0 = citrix_workspace_unwrapped.override { version = "20.06.0"; };
- citrix_workspace_unwrapped_20_04_0 = citrix_workspace_unwrapped.override { version = "20.04.0"; };
- citrix_workspace_unwrapped_19_12_0 = citrix_workspace_unwrapped.override { version = "19.12.0"; };
- citrix_workspace_unwrapped_19_10_0 = citrix_workspace_unwrapped.override { version = "19.10.0"; };
- citrix_workspace_unwrapped_19_8_0 = citrix_workspace_unwrapped.override { version = "19.8.0"; };
- citrix_workspace_unwrapped_19_6_0 = citrix_workspace_unwrapped.override { version = "19.6.0"; };
-
citrix_workspace = citrix_workspace_20_06_0;
- citrix_workspace_20_06_0 = callPackage ../applications/networking/remote/citrix-workspace/wrapper.nix {
- citrix_workspace = citrix_workspace_unwrapped_20_06_0;
- };
- citrix_workspace_20_04_0 = callPackage ../applications/networking/remote/citrix-workspace/wrapper.nix {
- citrix_workspace = citrix_workspace_unwrapped_20_04_0;
- };
- citrix_workspace_19_12_0 = callPackage ../applications/networking/remote/citrix-workspace/wrapper.nix {
- citrix_workspace = citrix_workspace_unwrapped_19_12_0;
- };
- citrix_workspace_19_10_0 = callPackage ../applications/networking/remote/citrix-workspace/wrapper.nix {
- citrix_workspace = citrix_workspace_unwrapped_19_10_0;
- };
- citrix_workspace_19_8_0 = callPackage ../applications/networking/remote/citrix-workspace/wrapper.nix {
- citrix_workspace = citrix_workspace_unwrapped_19_8_0;
- };
- citrix_workspace_19_6_0 = callPackage ../applications/networking/remote/citrix-workspace/wrapper.nix {
- citrix_workspace = citrix_workspace_unwrapped_19_6_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
+ ;
citra = libsForQt5.callPackage ../misc/emulators/citra { };
@@ -5934,9 +5917,13 @@ in
perceptualdiff = callPackage ../tools/graphics/perceptualdiff { };
- percona-xtrabackup = callPackage ../tools/backup/percona-xtrabackup {
+ 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 { };
@@ -9284,6 +9271,11 @@ in
rocm-runtime = callPackage ../development/libraries/rocm-runtime { };
+ rocm-runtime-ext = callPackage ../development/libraries/rocm-runtime-ext { };
+
+ # 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 {
@@ -9293,10 +9285,14 @@ in
rust_1_44 = callPackage ../development/compilers/rust/1_44.nix {
inherit (darwin.apple_sdk.frameworks) CoreFoundation Security;
};
- rust = rust_1_44;
+ rust_1_45 = callPackage ../development/compilers/rust/1_45.nix {
+ inherit (darwin.apple_sdk.frameworks) CoreFoundation Security;
+ };
+ rust = rust_1_45;
rustPackages_1_44 = rust_1_44.packages.stable;
- rustPackages = rustPackages_1_44;
+ rustPackages_1_45 = rust_1_45.packages.stable;
+ rustPackages = rustPackages_1_45;
inherit (rustPackages) cargo clippy rustc rustPlatform;
inherit (rust) makeRustPlatform;
@@ -10230,6 +10226,8 @@ in
bazel-gazelle = callPackage ../development/tools/bazel-gazelle { };
+ bazel-kazel = callPackage ../development/tools/bazel-kazel { };
+
bazelisk = callPackage ../development/tools/bazelisk { };
buildBazelPackage = callPackage ../build-support/build-bazel-package { };
@@ -11426,8 +11424,6 @@ in
arrayfire = callPackage ../development/libraries/arrayfire {};
arrow-cpp = callPackage ../development/libraries/arrow-cpp ({
- # Workaround until #91984 is in, this will need to be removed later.
- zstd = zstd.override { enableShared = false; };
} // stdenv.lib.optionalAttrs (stdenv.hostPlatform.isi686 && stdenv.cc.isGNU) {
stdenv = overrideCC stdenv buildPackages.gcc6; # hidden symbol `__divmoddi4'
});
@@ -12040,6 +12036,7 @@ in
gf2x = callPackage ../development/libraries/gf2x {};
gd = callPackage ../development/libraries/gd {
+ automake = automake115x;
libtiff = null;
libXpm = null;
};
@@ -14110,6 +14107,7 @@ in
};
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 { };
@@ -16072,6 +16070,8 @@ in
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 { };
@@ -16143,6 +16143,8 @@ in
osrm-backend = callPackage ../servers/osrm-backend { };
+ oven-media-engine = callPackage ../servers/misc/oven-media-engine { };
+
p910nd = callPackage ../servers/p910nd { };
petidomo = callPackage ../servers/mail/petidomo { };
@@ -16402,6 +16404,7 @@ in
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 { };
@@ -16861,9 +16864,7 @@ in
directvnc = callPackage ../os-specific/linux/directvnc { };
- dmraid = callPackage ../os-specific/linux/dmraid {
- lvm2 = lvm2.override {enable_dmeventd = true;};
- };
+ dmraid = callPackage ../os-specific/linux/dmraid { lvm2 = lvm2_dmeventd; };
drbd = callPackage ../os-specific/linux/drbd { };
@@ -17566,6 +17567,10 @@ in
lsscsi = callPackage ../os-specific/linux/lsscsi { };
lvm2 = callPackage ../os-specific/linux/lvm2 { };
+ lvm2_dmeventd = callPackage ../os-specific/linux/lvm2 {
+ enableDmeventd = true;
+ enableCmdlib = true;
+ };
mbpfan = callPackage ../os-specific/linux/mbpfan { };
@@ -17884,14 +17889,6 @@ in
# standalone cryptsetup generator for systemd
systemd-cryptsetup-generator = callPackage ../os-specific/linux/systemd/cryptsetup-generator.nix { };
- # In nixos, you can set systemd.package = pkgs.systemd_with_lvm2 to get
- # LVM2 working in systemd.
- systemd_with_lvm2 = pkgs.appendToName "with-lvm2" (pkgs.lib.overrideDerivation pkgs.systemd (p: {
- postInstall = p.postInstall + ''
- cp "${pkgs.lvm2}/lib/systemd/system-generators/"* $out/lib/systemd/system-generators
- '';
- }));
-
systemd-wait = callPackage ../os-specific/linux/systemd-wait { };
sysvinit = callPackage ../os-specific/linux/sysvinit { };
@@ -18914,6 +18911,8 @@ in
amarok = libsForQt5.callPackage ../applications/audio/amarok { };
amarok-kf5 = amarok; # for compatibility
+ amfora = callPackage ../applications/networking/browsers/amfora { };
+
AMB-plugins = callPackage ../applications/audio/AMB-plugins { };
ams-lv2 = callPackage ../applications/audio/ams-lv2 { };
@@ -18986,8 +18985,8 @@ in
aucatctl = callPackage ../applications/audio/aucatctl { };
- audacious = callPackage ../applications/audio/audacious { };
- audaciousQt5 = libsForQt5.callPackage ../applications/audio/audacious/qt-5.nix { };
+ audacious = libsForQt5.callPackage ../applications/audio/audacious { };
+ audaciousQt5 = audacious;
audacity = callPackage ../applications/audio/audacity { };
@@ -19956,6 +19955,7 @@ in
firefoxPackages = recurseIntoAttrs (callPackage ../applications/networking/browsers/firefox/packages.nix {
callPackage = pkgs.newScope {
+ inherit (rustPackages_1_44) cargo rustc;
libpng = libpng_apng;
python = python2;
gnused = gnused_422;
@@ -21698,6 +21698,11 @@ in
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 {};
@@ -22679,6 +22684,7 @@ in
thonny = callPackage ../applications/editors/thonny { };
thunderbird = callPackage ../applications/networking/mailreaders/thunderbird {
+ inherit (rustPackages_1_44) cargo rustc;
libpng = libpng_apng;
gtk3Support = true;
};
@@ -24735,6 +24741,7 @@ in
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 { };
gsconnect = callPackage ../desktops/gnome-3/extensions/gsconnect { };
icon-hider = callPackage ../desktops/gnome-3/extensions/icon-hider { };
impatience = callPackage ../desktops/gnome-3/extensions/impatience { };
diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index aa50da11edf..86cc2a29adc 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -21324,16 +21324,16 @@ let
url = "mirror://cpan/authors/id/S/SZ/SZBALINT/WWW-Curl-4.17.tar.gz";
sha256 = "1fmp9aib1kaps9vhs4dwxn7b15kgnlz9f714bxvqsd1j1q8spzsj";
};
- patches = [ ../development/perl-modules/WWW-Curl-4.17-Skip-preprocessor-symbol-only-CURL_STRICTER.patch ];
+ 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 ];
- preConfigure =
- ''
- substituteInPlace Makefile.PL --replace '"cpp"' '"gcc -E"'
- substituteInPlace Makefile.PL --replace '_LASTENTRY\z' '_LASTENTRY\z|CURL_DID_MEMORY_FUNC_TYPEDEFS\z'
- '';
- NIX_CFLAGS_COMPILE = "-DCURL_STRICTER";
doCheck = false; # performs network access
- meta.broken = stdenv.lib.versionAtLeast (stdenv.lib.getVersion pkgs.curl) "7.66"; # broken since "curl: 7.65.3 -> 7.66.0"
};
WWWFormUrlEncoded = buildPerlModule {
diff --git a/pkgs/top-level/php-packages.nix b/pkgs/top-level/php-packages.nix
index 8bbc28b72b0..e45f9a5bf15 100644
--- a/pkgs/top-level/php-packages.nix
+++ b/pkgs/top-level/php-packages.nix
@@ -232,12 +232,12 @@ in
};
phpstan = mkDerivation rec {
- version = "0.12.25";
+ version = "0.12.32";
pname = "phpstan";
src = pkgs.fetchurl {
url = "https://github.com/phpstan/phpstan/releases/download/${version}/phpstan.phar";
- sha256 = "1a864v7fxpv5kp24nkvczrir3ldl6wxvaq85rd391ppa8ahdhvdd";
+ sha256 = "0sb7yhjjh4wj8wbv4cdf0n1lvhx1ciz7ch8lr73maajj2xbvy1zk";
};
phases = [ "installPhase" ];
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index cf3c2f23aab..62e79e83d6c 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -6988,6 +6988,8 @@ in {
torchvision = callPackage ../development/python-modules/torchvision { };
+ torchgpipe = callPackage ../development/python-modules/torchgpipe { };
+
jenkinsapi = callPackage ../development/python-modules/jenkinsapi { };
jenkins-job-builder = callPackage ../development/python-modules/jenkins-job-builder { };
diff --git a/pkgs/top-level/static.nix b/pkgs/top-level/static.nix
index fcfe856398e..b4c1ee9ab3d 100644
--- a/pkgs/top-level/static.nix
+++ b/pkgs/top-level/static.nix
@@ -242,7 +242,7 @@ in {
};
zstd = super.zstd.override {
- enableShared = false;
+ static = true;
};
llvmPackages_8 = super.llvmPackages_8 // {