Merge staging-next into staging

This commit is contained in:
github-actions[bot] 2020-12-07 12:19:52 +00:00 committed by GitHub
commit eb09c5dbdb
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
52 changed files with 816 additions and 807 deletions

View File

@ -0,0 +1,158 @@
# Bower {#sec-bower}
[Bower](https://bower.io) is a package manager for web site front-end components. Bower packages (comprising of build artefacts and sometimes sources) are stored in `git` repositories, typically on Github. The package registry is run by the Bower team with package metadata coming from the `bower.json` file within each package.
The end result of running Bower is a `bower_components` directory which can be included in the web app's build process.
Bower can be run interactively, by installing `nodePackages.bower`. More interestingly, the Bower components can be declared in a Nix derivation, with the help of `nodePackages.bower2nix`.
## bower2nix usage {#ssec-bower2nix-usage}
Suppose you have a `bower.json` with the following contents:
### Example bower.json {#ex-bowerJson}
```json
"name": "my-web-app",
"dependencies": {
"angular": "~1.5.0",
"bootstrap": "~3.3.6"
}
```
Running `bower2nix` will produce something like the following output:
```nix
{ fetchbower, buildEnv }:
buildEnv { name = "bower-env"; ignoreCollisions = true; paths = [
(fetchbower "angular" "1.5.3" "~1.5.0" "1749xb0firxdra4rzadm4q9x90v6pzkbd7xmcyjk6qfza09ykk9y")
(fetchbower "bootstrap" "3.3.6" "~3.3.6" "1vvqlpbfcy0k5pncfjaiskj3y6scwifxygfqnw393sjfxiviwmbv")
(fetchbower "jquery" "2.2.2" "1.9.1 - 2" "10sp5h98sqwk90y4k6hbdviwqzvzwqf47r3r51pakch5ii2y7js1")
];
```
Using the `bower2nix` command line arguments, the output can be redirected to a file. A name like `bower-packages.nix` would be fine.
The resulting derivation is a union of all the downloaded Bower packages (and their dependencies). To use it, they still need to be linked together by Bower, which is where `buildBowerComponents` is useful.
## buildBowerComponents function {#ssec-build-bower-components}
The function is implemented in [pkgs/development/bower-modules/generic/default.nix](https://github.com/NixOS/nixpkgs/blob/master/pkgs/development/bower-modules/generic/default.nix).
### Example buildBowerComponents {#ex-buildBowerComponents}
```{=docbook}
<programlisting language="nix">
bowerComponents = buildBowerComponents {
name = "my-web-app";
generated = ./bower-packages.nix; <co xml:id="ex-buildBowerComponents-1" />
src = myWebApp; <co xml:id="ex-buildBowerComponents-2" />
};
</programlisting>
```
In ["buildBowerComponents" example](#ex-buildBowerComponents) the following arguments are of special significance to the function:
```{=docbook}
<calloutlist>
<callout arearefs="ex-buildBowerComponents-1">
<para>
<varname>generated</varname> specifies the file which was created by <command>bower2nix</command>.
</para>
</callout>
<callout arearefs="ex-buildBowerComponents-2">
<para>
<varname>src</varname> is your project's sources. It needs to contain a <filename>bower.json</filename> file.
</para>
</callout>
</calloutlist>
```
`buildBowerComponents` will run Bower to link together the output of `bower2nix`, resulting in a `bower_components` directory which can be used.
Here is an example of a web frontend build process using `gulp`. You might use `grunt`, or anything else.
### Example build script (gulpfile.js) {#ex-bowerGulpFile}
```javascript
var gulp = require('gulp');
gulp.task('default', [], function () {
gulp.start('build');
});
gulp.task('build', [], function () {
console.log("Just a dummy gulp build");
gulp
.src(["./bower_components/**/*"])
.pipe(gulp.dest("./gulpdist/"));
});
```
### Example Full example — default.nix {#ex-buildBowerComponentsDefaultNix}
```{=docbook}
<programlisting language="nix">
{ myWebApp ? { outPath = ./.; name = "myWebApp"; }
, pkgs ? import &lt;nixpkgs&gt; {}
}:
pkgs.stdenv.mkDerivation {
name = "my-web-app-frontend";
src = myWebApp;
buildInputs = [ pkgs.nodePackages.gulp ];
bowerComponents = pkgs.buildBowerComponents { <co xml:id="ex-buildBowerComponentsDefault-1" />
name = "my-web-app";
generated = ./bower-packages.nix;
src = myWebApp;
};
buildPhase = ''
cp --reflink=auto --no-preserve=mode -R $bowerComponents/bower_components . <co xml:id="ex-buildBowerComponentsDefault-2" />
export HOME=$PWD <co xml:id="ex-buildBowerComponentsDefault-3" />
${pkgs.nodePackages.gulp}/bin/gulp build <co xml:id="ex-buildBowerComponentsDefault-4" />
'';
installPhase = "mv gulpdist $out";
}
</programlisting>
```
A few notes about [Full example — `default.nix`](#ex-buildBowerComponentsDefaultNix):
```{=docbook}
<calloutlist>
<callout arearefs="ex-buildBowerComponentsDefault-1">
<para>
The result of <varname>buildBowerComponents</varname> is an input to the frontend build.
</para>
</callout>
<callout arearefs="ex-buildBowerComponentsDefault-2">
<para>
Whether to symlink or copy the <filename>bower_components</filename> directory depends on the build tool in use. In this case a copy is used to avoid <command>gulp</command> silliness with permissions.
</para>
</callout>
<callout arearefs="ex-buildBowerComponentsDefault-3">
<para>
<command>gulp</command> requires <varname>HOME</varname> to refer to a writeable directory.
</para>
</callout>
<callout arearefs="ex-buildBowerComponentsDefault-4">
<para>
The actual build command. Other tools could be used.
</para>
</callout>
</calloutlist>
```
## Troubleshooting {#ssec-bower2nix-troubleshooting}
### ENOCACHE errors from buildBowerComponents
This means that Bower was looking for a package version which doesn't exist in the generated `bower-packages.nix`.
If `bower.json` has been updated, then run `bower2nix` again.
It could also be a bug in `bower2nix` or `fetchbower`. If possible, try reformulating the version specification in `bower.json`.

View File

@ -1,196 +0,0 @@
<section xmlns="http://docbook.org/ns/docbook"
xmlns:xlink="http://www.w3.org/1999/xlink"
xml:id="sec-bower">
<title>Bower</title>
<para>
<link xlink:href="http://bower.io">Bower</link> is a package manager for web site front-end components. Bower packages (comprising of build artefacts and sometimes sources) are stored in <command>git</command> repositories, typically on Github. The package registry is run by the Bower team with package metadata coming from the <filename>bower.json</filename> file within each package.
</para>
<para>
The end result of running Bower is a <filename>bower_components</filename> directory which can be included in the web app's build process.
</para>
<para>
Bower can be run interactively, by installing <varname>nodePackages.bower</varname>. More interestingly, the Bower components can be declared in a Nix derivation, with the help of <varname>nodePackages.bower2nix</varname>.
</para>
<section xml:id="ssec-bower2nix-usage">
<title><command>bower2nix</command> usage</title>
<para>
Suppose you have a <filename>bower.json</filename> with the following contents:
<example xml:id="ex-bowerJson">
<title><filename>bower.json</filename></title>
<programlisting language="json">
<![CDATA[{
"name": "my-web-app",
"dependencies": {
"angular": "~1.5.0",
"bootstrap": "~3.3.6"
}
}]]>
</programlisting>
</example>
</para>
<para>
Running <command>bower2nix</command> will produce something like the following output:
<programlisting language="nix">
<![CDATA[{ fetchbower, buildEnv }:
buildEnv { name = "bower-env"; ignoreCollisions = true; paths = [
(fetchbower "angular" "1.5.3" "~1.5.0" "1749xb0firxdra4rzadm4q9x90v6pzkbd7xmcyjk6qfza09ykk9y")
(fetchbower "bootstrap" "3.3.6" "~3.3.6" "1vvqlpbfcy0k5pncfjaiskj3y6scwifxygfqnw393sjfxiviwmbv")
(fetchbower "jquery" "2.2.2" "1.9.1 - 2" "10sp5h98sqwk90y4k6hbdviwqzvzwqf47r3r51pakch5ii2y7js1")
]; }]]>
</programlisting>
</para>
<para>
Using the <command>bower2nix</command> command line arguments, the output can be redirected to a file. A name like <filename>bower-packages.nix</filename> would be fine.
</para>
<para>
The resulting derivation is a union of all the downloaded Bower packages (and their dependencies). To use it, they still need to be linked together by Bower, which is where <varname>buildBowerComponents</varname> is useful.
</para>
</section>
<section xml:id="ssec-build-bower-components">
<title><varname>buildBowerComponents</varname> function</title>
<para>
The function is implemented in <link xlink:href="https://github.com/NixOS/nixpkgs/blob/master/pkgs/development/bower-modules/generic/default.nix"> <filename>pkgs/development/bower-modules/generic/default.nix</filename></link>. Example usage:
<example xml:id="ex-buildBowerComponents">
<title>buildBowerComponents</title>
<programlisting language="nix">
bowerComponents = buildBowerComponents {
name = "my-web-app";
generated = ./bower-packages.nix; <co xml:id="ex-buildBowerComponents-1" />
src = myWebApp; <co xml:id="ex-buildBowerComponents-2" />
};
</programlisting>
</example>
</para>
<para>
In <xref linkend="ex-buildBowerComponents" />, the following arguments are of special significance to the function:
<calloutlist>
<callout arearefs="ex-buildBowerComponents-1">
<para>
<varname>generated</varname> specifies the file which was created by <command>bower2nix</command>.
</para>
</callout>
<callout arearefs="ex-buildBowerComponents-2">
<para>
<varname>src</varname> is your project's sources. It needs to contain a <filename>bower.json</filename> file.
</para>
</callout>
</calloutlist>
</para>
<para>
<varname>buildBowerComponents</varname> will run Bower to link together the output of <command>bower2nix</command>, resulting in a <filename>bower_components</filename> directory which can be used.
</para>
<para>
Here is an example of a web frontend build process using <command>gulp</command>. You might use <command>grunt</command>, or anything else.
</para>
<example xml:id="ex-bowerGulpFile">
<title>Example build script (<filename>gulpfile.js</filename>)</title>
<programlisting language="javascript">
<![CDATA[var gulp = require('gulp');
gulp.task('default', [], function () {
gulp.start('build');
});
gulp.task('build', [], function () {
console.log("Just a dummy gulp build");
gulp
.src(["./bower_components/**/*"])
.pipe(gulp.dest("./gulpdist/"));
});]]>
</programlisting>
</example>
<example xml:id="ex-buildBowerComponentsDefaultNix">
<title>Full example — <filename>default.nix</filename></title>
<programlisting language="nix">
{ myWebApp ? { outPath = ./.; name = "myWebApp"; }
, pkgs ? import &lt;nixpkgs&gt; {}
}:
pkgs.stdenv.mkDerivation {
name = "my-web-app-frontend";
src = myWebApp;
buildInputs = [ pkgs.nodePackages.gulp ];
bowerComponents = pkgs.buildBowerComponents { <co xml:id="ex-buildBowerComponentsDefault-1" />
name = "my-web-app";
generated = ./bower-packages.nix;
src = myWebApp;
};
buildPhase = ''
cp --reflink=auto --no-preserve=mode -R $bowerComponents/bower_components . <co xml:id="ex-buildBowerComponentsDefault-2" />
export HOME=$PWD <co xml:id="ex-buildBowerComponentsDefault-3" />
${pkgs.nodePackages.gulp}/bin/gulp build <co xml:id="ex-buildBowerComponentsDefault-4" />
'';
installPhase = "mv gulpdist $out";
}
</programlisting>
</example>
<para>
A few notes about <xref linkend="ex-buildBowerComponentsDefaultNix" />:
<calloutlist>
<callout arearefs="ex-buildBowerComponentsDefault-1">
<para>
The result of <varname>buildBowerComponents</varname> is an input to the frontend build.
</para>
</callout>
<callout arearefs="ex-buildBowerComponentsDefault-2">
<para>
Whether to symlink or copy the <filename>bower_components</filename> directory depends on the build tool in use. In this case a copy is used to avoid <command>gulp</command> silliness with permissions.
</para>
</callout>
<callout arearefs="ex-buildBowerComponentsDefault-3">
<para>
<command>gulp</command> requires <varname>HOME</varname> to refer to a writeable directory.
</para>
</callout>
<callout arearefs="ex-buildBowerComponentsDefault-4">
<para>
The actual build command. Other tools could be used.
</para>
</callout>
</calloutlist>
</para>
</section>
<section xml:id="ssec-bower2nix-troubleshooting">
<title>Troubleshooting</title>
<variablelist>
<varlistentry>
<term>
<literal>ENOCACHE</literal> errors from <varname>buildBowerComponents</varname>
</term>
<listitem>
<para>
This means that Bower was looking for a package version which doesn't exist in the generated <filename>bower-packages.nix</filename>.
</para>
<para>
If <filename>bower.json</filename> has been updated, then run <command>bower2nix</command> again.
</para>
<para>
It could also be a bug in <command>bower2nix</command> or <command>fetchbower</command>. If possible, try reformulating the version specification in <filename>bower.json</filename>.
</para>
</listitem>
</varlistentry>
</variablelist>
</section>
</section>

View File

@ -8,7 +8,7 @@
<xi:include href="agda.section.xml" />
<xi:include href="android.section.xml" />
<xi:include href="beam.section.xml" />
<xi:include href="bower.xml" />
<xi:include href="bower.section.xml" />
<xi:include href="coq.section.xml" />
<xi:include href="crystal.section.xml" />
<xi:include href="emscripten.section.xml" />
@ -22,7 +22,7 @@
<xi:include href="maven.section.xml" />
<xi:include href="node.section.xml" />
<xi:include href="ocaml.section.xml" />
<xi:include href="perl.xml" />
<xi:include href="perl.section.xml" />
<xi:include href="php.section.xml" />
<xi:include href="python.section.xml" />
<xi:include href="qt.section.xml" />

View File

@ -0,0 +1,163 @@
# Perl {#sec-language-perl}
## Running perl programs on the shell {#ssec-perl-running}
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:
```perl
#!/usr/bin/env perl
```
to take the Perl installation from the `PATH` environment variable, or invoke Perl directly with:
```ShellSession
$ perl ./myscript.pl
```
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:
```ShellSession
$ nix-shell -p perl perlPackages.DBFile --run ./myscript.pl
```
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:
```perl
#!/usr/bin/env nix-shell
#! nix-shell -i perl -p perl perlPackages.DBFile
```
## Packaging Perl programs {#ssec-perl-packaging}
Nixpkgs provides a function `buildPerlPackage`, a generic package builder function for any Perl package that has a standard `Makefile.PL`. Its implemented in [pkgs/development/perl-modules/generic](https://github.com/NixOS/nixpkgs/blob/master/pkgs/development/perl-modules/generic).
Perl packages from CPAN are defined in [pkgs/top-level/perl-packages.nix](https://github.com/NixOS/nixpkgs/blob/master/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:
```nix
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 were 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
```nix
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:
```ShellSession
$ 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:
```ShellSession
$ 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:
1. 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`
2. 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.)
3. 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`:
```nix
{ 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 its (also) a runtime dependency, use `propagatedBuildInputs`. For instance, this builds a Perl module that has runtime dependencies on a bunch of other modules:
```nix
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:
```nix
{ 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 {#ssec-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:
```ShellSession
$ 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:
```ShellSession
$ 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 {#ssec-perl-cross-compilation}
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.

View File

@ -1,195 +0,0 @@
<section xmlns="http://docbook.org/ns/docbook"
xmlns:xlink="http://www.w3.org/1999/xlink"
xml:id="sec-language-perl">
<title>Perl</title>
<section xml:id="ssec-perl-running">
<title>Running perl programs on the shell</title>
<para>
When executing a Perl script, it is possible you get an error such as <literal>./myscript.pl: bad interpreter: /usr/bin/perl: no such file or directory</literal>. This happens when the script expects Perl to be installed at <filename>/usr/bin/perl</filename>, which is not the case when using Perl from nixpkgs. You can fix the script by changing the first line to:
<programlisting>
#!/usr/bin/env perl
</programlisting>
to take the Perl installation from the <literal>PATH</literal> environment variable, or invoke Perl directly with:
<screen>
<prompt>$ </prompt>perl ./myscript.pl
</screen>
</para>
<para>
When the script is using a Perl library that is not installed globally, you might get an error such as <literal>Can't locate DB_File.pm in @INC (you may need to install the DB_File module)</literal>. In that case, you can use <command>nix-shell</command> to start an ad-hoc shell with that library installed, for instance:
<screen>
<prompt>$ </prompt>nix-shell -p perl perlPackages.DBFile --run ./myscript.pl
</screen>
</para>
<para>
If you are always using the script in places where <command>nix-shell</command> is available, you can embed the <command>nix-shell</command> invocation in the shebang like this:
<programlisting>
#!/usr/bin/env nix-shell
#! nix-shell -i perl -p perl perlPackages.DBFile
</programlisting>
</para>
</section>
<section xml:id="ssec-perl-packaging">
<title>Packaging Perl programs</title>
<para>
Nixpkgs provides a function <varname>buildPerlPackage</varname>, a generic package builder function for any Perl package that has a standard <varname>Makefile.PL</varname>. Its implemented in <link
xlink:href="https://github.com/NixOS/nixpkgs/blob/master/pkgs/development/perl-modules/generic"><filename>pkgs/development/perl-modules/generic</filename></link>.
</para>
<para>
Perl packages from CPAN are defined in <link
xlink:href="https://github.com/NixOS/nixpkgs/blob/master/pkgs/top-level/perl-packages.nix"><filename>pkgs/top-level/perl-packages.nix</filename></link>, rather than <filename>pkgs/all-packages.nix</filename>. 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 <filename>perl-packages.nix</filename>. However, more complicated packages should be put in a separate file, typically in <filename>pkgs/development/perl-modules</filename>. Here is an example of the former:
<programlisting>
ClassC3 = buildPerlPackage rec {
name = "Class-C3-0.21";
src = fetchurl {
url = "mirror://cpan/authors/id/F/FL/FLORA/${name}.tar.gz";
sha256 = "1bl8z095y4js66pwxnm7s853pi9czala4sqc743fdlnk27kq94gz";
};
};
</programlisting>
Note the use of <literal>mirror://cpan/</literal>, and the <literal>${name}</literal> in the URL definition to ensure that the name attribute is consistent with the source that were actually downloading. Perl packages are made available in <filename>all-packages.nix</filename> through the variable <varname>perlPackages</varname>. For instance, if you have a package that needs <varname>ClassC3</varname>, you would typically write
<programlisting>
foo = import ../path/to/foo.nix {
inherit stdenv fetchurl ...;
inherit (perlPackages) ClassC3;
};
</programlisting>
in <filename>all-packages.nix</filename>. You can test building a Perl package as follows:
<screen>
<prompt>$ </prompt>nix-build -A perlPackages.ClassC3
</screen>
<varname>buildPerlPackage</varname> adds <literal>perl-</literal> to the start of the name attribute, so the package above is actually called <literal>perl-Class-C3-0.21</literal>. So to install it, you can say:
<screen>
<prompt>$ </prompt>nix-env -i perl-Class-C3
</screen>
(Of course you can also install using the attribute name: <literal>nix-env -i -A perlPackages.ClassC3</literal>.)
</para>
<para>
So what does <varname>buildPerlPackage</varname> do? It does the following:
<orderedlist>
<listitem>
<para>
In the configure phase, it calls <literal>perl Makefile.PL</literal> to generate a Makefile. You can set the variable <varname>makeMakerFlags</varname> to pass flags to <filename>Makefile.PL</filename>
</para>
</listitem>
<listitem>
<para>
It adds the contents of the <envar>PERL5LIB</envar> environment variable to <literal>#! .../bin/perl</literal> line of Perl scripts as <literal>-I<replaceable>dir</replaceable></literal> 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.)
</para>
</listitem>
<listitem>
<para>
In the fixup phase, it writes the propagated build inputs (<varname>propagatedBuildInputs</varname>) to the file <filename>$out/nix-support/propagated-user-env-packages</filename>. <command>nix-env</command> 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.
</para>
</listitem>
</orderedlist>
</para>
<para>
<varname>buildPerlPackage</varname> is built on top of <varname>stdenv</varname>, so everything can be customised in the usual way. For instance, the <literal>BerkeleyDB</literal> module has a <varname>preConfigure</varname> hook to generate a configuration file used by <filename>Makefile.PL</filename>:
<programlisting>
{ 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
'';
}
</programlisting>
</para>
<para>
Dependencies on other Perl packages can be specified in the <varname>buildInputs</varname> and <varname>propagatedBuildInputs</varname> attributes. If something is exclusively a build-time dependency, use <varname>buildInputs</varname>; if its (also) a runtime dependency, use <varname>propagatedBuildInputs</varname>. For instance, this builds a Perl module that has runtime dependencies on a bunch of other modules:
<programlisting>
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
];
};
</programlisting>
</para>
<para>
On Darwin, if a script has too many <literal>-I<replaceable>dir</replaceable></literal> flags in its first line (its “shebang line”), it will not run. This can be worked around by calling the <literal>shortenPerlShebang</literal> function from the <literal>postInstall</literal> phase:
<programlisting>
{ 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
'';
};
</programlisting>
This will remove the <literal>-I</literal> flags from the shebang line, rewrite them in the <literal>use lib</literal> 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.
</para>
<section xml:id="ssec-generation-from-CPAN">
<title>Generation from CPAN</title>
<para>
Nix expressions for Perl packages can be generated (almost) automatically from CPAN. This is done by the program <command>nix-generate-from-cpan</command>, which can be installed as follows:
</para>
<screen>
<prompt>$ </prompt>nix-env -i nix-generate-from-cpan
</screen>
<para>
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:
<screen>
<prompt>$ </prompt>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 ];
};
};
</screen>
The output can be pasted into <filename>pkgs/top-level/perl-packages.nix</filename> or wherever else you need it.
</para>
</section>
<section xml:id="ssec-perl-cross-compilation">
<title>Cross-compiling modules</title>
<para>
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 <filename>lib/perl5/site_perl/cross_perl/${perl.version}</filename>. See the <varname>postInstall</varname> for <varname>DBI</varname> for an example.
</para>
</section>
</section>
</section>

View File

@ -3,13 +3,13 @@
stdenv.mkDerivation rec {
pname = "MIDIVisualizer";
version = "5.2";
version = "6.0";
src = fetchFromGitHub {
owner = "kosua20";
repo = pname;
rev = "v${version}";
sha256 = "19z8m6clirz8kwfjp0z1j69fjfna8ar7hkgqnlm3lrc84gyx2rpf";
sha256 = "052zpabkbkqzqzf8r6mdq9p6arn9mr1ywx6x3y9rqxj6sfprxd65";
};
nativeBuildInputs = [ cmake pkg-config makeWrapper];

View File

@ -23,6 +23,7 @@
, libsamplerate
, libsndfile
, libebur128
, rnnoise
, boost
, dbus
, fftwFloat
@ -44,13 +45,13 @@ let
];
in stdenv.mkDerivation rec {
pname = "pulseeffects";
version = "4.8.2";
version = "4.8.3";
src = fetchFromGitHub {
owner = "wwmm";
repo = "pulseeffects";
rev = "v${version}";
sha256 = "19h47mrxjm6x83pqcxfsshf48kd1babfk0kwdy1c7fjri7kj0g0s";
sha256 = "0k5p5y3im7xnf0ikaghh56nfhirkdwf95c8fr17wasgdpw2m86i2";
};
nativeBuildInputs = [
@ -79,6 +80,7 @@ in stdenv.mkDerivation rec {
libebur128
libsamplerate
libsndfile
rnnoise
boost
dbus
fftwFloat

View File

@ -4,13 +4,13 @@ with python3.pkgs;
buildPythonApplication rec {
pname = "thonny";
version = "3.3.0";
version = "3.3.1";
src = fetchFromGitHub {
owner = pname;
repo = pname;
rev = "v${version}";
sha256 = "1k1iy01az65w463j6id7iyrbinjbjd220i100mrnxyn569dxmf34";
sha256 = "0nk4kx6apmnd6fyd9zw77yprjzgjf7micvcws2i2sci0d9fff34c";
};
propagatedBuildInputs = with python3.pkgs; [

View File

@ -1,28 +0,0 @@
From 0d677475b710b9bb61d4b3ac5435c36b47d3a155 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Wed, 8 Feb 2017 11:28:42 +0100
Subject: [PATCH] bash-completion: quote pattern argument to grep
Without the quotes, bash might expand that pattern based on the contents of the
current working directory or -- if nullglob is set -- the argument disappears
outright if no directory entry matches.
---
scripts/bash/task.sh | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/scripts/bash/task.sh b/scripts/bash/task.sh
index e0c7fb03..d15ed3eb 100644
--- a/scripts/bash/task.sh
+++ b/scripts/bash/task.sh
@@ -72,7 +72,7 @@ _task_offer_contexts() {
COMPREPLY=( $(compgen -W "$($taskcommand _context) define delete list none show" -- $cur) )
}
-_task_context_alias=$($taskcommand show | grep alias.*context | cut -d' ' -f1 | cut -d. -f2)
+_task_context_alias=$($taskcommand show | grep "alias.*context" | cut -d' ' -f1 | cut -d. -f2)
_task()
{
--
2.11.1

View File

@ -1,16 +1,17 @@
{ stdenv, fetchurl, cmake, libuuid, gnutls }:
{ stdenv, fetchFromGitHub, cmake, libuuid, gnutls }:
stdenv.mkDerivation rec {
pname = "taskwarrior";
version = "2.5.1";
version = "2.5.2";
src = fetchurl {
url = "https://taskwarrior.org/download/task-${version}.tar.gz";
sha256 = "059a9yc58wcicc6xxsjh1ph7k2yrag0spsahp1wqmsq6h7jwwyyq";
src = fetchFromGitHub {
owner = "GothenburgBitFactory";
repo = "taskwarrior";
rev = "v${version}";
sha256 = "0jv5b56v75qhdqbrfsddfwizmbizcsv3mn8gp92nckwlx9hrk5id";
fetchSubmodules = true;
};
patches = [ ./0001-bash-completion-quote-pattern-argument-to-grep.patch ];
nativeBuildInputs = [ cmake libuuid gnutls ];
postInstall = ''

View File

@ -1,4 +1,4 @@
{ pythonPackages, fetchurl, lib, nixosTests }:
{ pythonPackages, fetchurl, fetchpatch, lib, nixosTests }:
with pythonPackages;
@ -14,6 +14,19 @@ buildPythonApplication rec {
sha256 = "12w6x80wsw6xm17fxyymnl45aavsagg932zw621wcjz154vjghjr";
};
patches = [
(fetchpatch {
name = "rss2email-feedparser6.patch";
url = "https://github.com/rss2email/rss2email/pull/149/commits/338343c92f956c31ff5249ef4bcf7aeea81f687e.patch";
sha256 = "0h8b3g9332vdrkqbh6lp00k97asrhmlxi13zghrgc78ia13czy3z";
})
(fetchpatch {
name = "rss2email-feedparser6-test.patch";
url = "https://github.com/rss2email/rss2email/pull/149/commits/8c99651eced3f29f05ba2c0ca02abb8bb9a18967.patch";
sha256 = "1scljak6xyqxlilg3j39v4qm9a9jks1bnvnrh62hyf3g53yw2xlg";
})
];
outputs = [ "out" "man" "doc" ];
postPatch = ''

View File

@ -344,8 +344,6 @@ in (mkDrv rec {
# Schema files for validation are not included in the source tarball
"--without-export-validation"
"--disable-libnumbertext" # system-libnumbertext"
# We do tarball prefetching ourselves
"--disable-fetch-external"
"--enable-build-opensymbol"
@ -368,6 +366,7 @@ in (mkDrv rec {
"--without-system-libfreehand"
"--without-system-liblangtag"
"--without-system-libmspub"
"--without-system-libnumbertext"
"--without-system-libpagemaker"
"--without-system-libstaroffice"
"--without-system-libepubgen"

View File

@ -1,5 +1,5 @@
{ stdenv, lib, fetchurl, gettext, perlPackages, intltool, pkgconfig, glib,
libxml2, sqlite, zlib, sg3_utils, gdk-pixbuf, taglib,
{ stdenv, lib, fetchurl, perlPackages, intltool, autoreconfHook,
pkg-config, glib, libxml2, sqlite, zlib, sg3_utils, gdk-pixbuf, taglib,
libimobiledevice,
monoSupport ? false, mono, gtk-sharp-2_0
}:
@ -15,11 +15,15 @@ stdenv.mkDerivation rec {
outputs = [ "out" "dev" ];
preConfigure = "configureFlagsArray=( --with-udev-dir=$out/lib/udev )";
postPatch = ''
# support libplist 2.2
substituteInPlace configure.ac --replace 'libplist >= 1.0' 'libplist-2.0 >= 2.2'
'';
configureFlags = [
"--without-hal"
"--enable-udev"
"--with-udev-dir=${placeholder "out"}/lib/udev"
] ++ lib.optionals monoSupport [ "--with-mono" ];
dontStrip = true;
@ -27,7 +31,7 @@ stdenv.mkDerivation rec {
propagatedBuildInputs = [ glib libxml2 sqlite zlib sg3_utils
gdk-pixbuf taglib libimobiledevice ];
nativeBuildInputs = [ gettext intltool pkgconfig ]
nativeBuildInputs = [ autoreconfHook intltool pkg-config ]
++ (with perlPackages; [ perl XMLParser ])
++ lib.optionals monoSupport [ mono gtk-sharp-2_0 ];

View File

@ -3,13 +3,13 @@
stdenv.mkDerivation rec {
pname = "libimobiledevice";
version = "2020-01-20";
version = "1.3.0";
src = fetchFromGitHub {
owner = pname;
repo = pname;
rev = "61babf5f54e7734ebf3044af4c6294524d4b29b5";
sha256 = "02dnq6xza72li52kk4p2ak0gq2js3ssfp2fpjlgsv0bbn5mkg2hi";
rev = version;
sha256 = "1jkq3hpg4n5a6s1k618ib0s80pwf00nlfcby7xckysq8mnd2pp39";
};
outputs = [ "out" "dev" ];

View File

@ -5,13 +5,13 @@
stdenv.mkDerivation rec {
pname = "libirecovery";
version = "2020-01-14";
version = "1.0.0";
src = fetchFromGitHub {
owner = "libimobiledevice";
repo = pname;
rev = "10a1f8dd11a11a0b8980fbf26f11e3ce74e7a923";
sha256 = "1v5c9dbbkrsplj1zkcczzm0i31ar3wcx6fpxb0pi4dsgj8846aic";
rev = version;
sha256 = "0p9ncqnz5kb7qisw00ynvasw1hax5qx241h9nwppi2g544i9lbnr";
};
outputs = [ "out" "dev" ];

View File

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "libplist";
version = "2019-04-04";
version = "2.2.0";
src = fetchFromGitHub {
owner = "libimobiledevice";
repo = pname;
rev = "42bb64ba966082b440cb68cbdadf317f44710017";
sha256 = "19yw80yblq29i2jx9yb7bx0lfychy9dncri3fk4as35kq5bf26i8";
rev = version;
sha256 = "1vxhpjxniybqsg5wcygmdmr5dv7p2zb34dqnd3bi813rnnzsdjm6";
};
outputs = ["bin" "dev" "out" ] ++ stdenv.lib.optional enablePython "py";

View File

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "libusbmuxd";
version = "2019-03-23";
version = "2.0.2";
src = fetchFromGitHub {
owner = "libimobiledevice";
repo = pname;
rev = "873252dc8b4e469c7dc692064ac616104fca5f65";
sha256 = "0qx3q0n1f2ajfm3vnairikayzln6iyb2y0i7sqfl8mj45ahl6wyj";
rev = version;
sha256 = "139pzsnixkck6ly1q6p0diqr0hgd0mx0pr4xx1jamm3f3656kpf9";
};
nativeBuildInputs = [ autoreconfHook pkgconfig ];

View File

@ -1,24 +1,30 @@
{ lib, fetchFromGitHub, buildDunePackage
{ lib, fetchurl, buildDunePackage, ocaml
, astring, cmdliner, cppo, fpath, result, tyxml
, markup, alcotest, yojson, sexplib, jq
}:
buildDunePackage rec {
pname = "odoc";
version = "1.5.1";
version = "1.5.2";
src = fetchFromGitHub {
owner = "ocaml";
repo = pname;
rev = version;
sha256 = "0z2nisg1vb5xlk41hqw8drvj90v52wli7zvnih6a844cg6xsvvj2";
minimumOCamlVersion = "4.02";
src = fetchurl {
url = "https://github.com/ocaml/odoc/releases/download/${version}/odoc-${version}.tbz";
sha256 = "0wa87h8q6izcc6rkzqn944vrb3hmc21lf0d0rmr8rhhbcvr66i6j";
};
useDune2 = true;
buildInputs = [ astring cmdliner cppo fpath result tyxml ];
checkInputs = [ alcotest markup yojson sexplib jq ];
doCheck = lib.versionAtLeast ocaml.version "4.05";
meta = {
description = "A documentation generator for OCaml";
license = lib.licenses.isc;
maintainers = [ lib.maintainers.vbgl ];
inherit (src.meta) homepage;
homepage = "https://github.com/ocaml/odoc";
};
}

View File

@ -13,12 +13,12 @@
buildPythonPackage rec {
pname = "bandit";
version = "1.6.2";
version = "1.6.3";
disabled = !isPy3k;
src = fetchPypi {
inherit pname version;
sha256 = "0rb034c99pyhb4a60z7f2kz40cjydhm8m9v2blaal1rmhlam7rs1";
sha256 = "d02dfe250f4aa2d166c127ad81d192579e2bfcdb8501717c0e2005e35a6bcf60";
};
propagatedBuildInputs = [

View File

@ -1,5 +1,6 @@
{ lib, buildPythonPackage, fetchPypi, libredirect
, case, pytest, boto3, moto, kombu, billiard, pytz, future, vine
{ lib, buildPythonPackage, fetchPypi
, billiard, click, click-didyoumean, click-repl, kombu, pytz, vine
, boto3, case, moto, pytest, pytest-celery, pytest-subtests, pytest-timeout
}:
buildPythonPackage rec {
@ -12,13 +13,14 @@ buildPythonPackage rec {
};
postPatch = ''
substituteInPlace requirements/default.txt \
--replace "kombu>=4.6.10,<4.7" "kombu"
substituteInPlace requirements/test.txt \
--replace "moto==1.3.7" moto \
--replace "pytest>=4.3.1,<4.4.0" pytest
--replace "moto==1.3.7" moto
'';
propagatedBuildInputs = [ billiard click click-didyoumean click-repl kombu pytz vine ];
checkInputs = [ boto3 case moto pytest pytest-celery pytest-subtests pytest-timeout ];
# ignore test that's incompatible with pytest5
# test_eventlet touches network
# test_mongodb requires pymongo
@ -32,9 +34,6 @@ buildPythonPackage rec {
--ignore=t/unit/backends/test_mongodb.py
'';
checkInputs = [ case pytest boto3 moto ];
propagatedBuildInputs = [ kombu billiard pytz future vine ];
meta = with lib; {
homepage = "https://github.com/celery/celery/";
description = "Distributed task queue";

View File

@ -8,11 +8,11 @@
buildPythonPackage rec {
pname = "Flask-SocketIO";
version = "4.3.1";
version = "4.3.2";
src = fetchPypi {
inherit pname version;
sha256 = "36c1d5765010d1f4e4f05b4cc9c20c289d9dc70698c88d1addd0afcfedc5b062";
sha256 = "37001b3507f2fa5d1c8d9c8e211dd88da6c5286ff0ebce16f27cb1b467d25d68";
};
propagatedBuildInputs = [

View File

@ -2,12 +2,16 @@
buildPythonPackage rec {
pname = "flufl.i18n";
version = "2.0.2";
version = "3.1.3";
propagatedBuildInputs = [ atpublic ];
doCheck = false;
pythonImportsCheck = [ "flufl.i18n" ];
src = fetchPypi {
inherit pname version;
sha256 = "1csgds59nx0ann9v2alqr69lakp1cnc1ikmbgn96l6n23js7c2ah";
sha256 = "dcca738be27f2c43ddf6f9307667a17478353190071f38a9f92c9af8d2252ba4";
};
}

View File

@ -4,11 +4,11 @@
buildPythonPackage rec {
pname = "google-cloud-pubsub";
version = "2.1.0";
version = "2.2.0";
src = fetchPypi {
inherit pname version;
sha256 = "0358g5q4igq1pgy8dznbbkc6y7zf36y4m81hhh8hvzzhaa37vc22";
sha256 = "bc50a60803f5c409a295ec0e31cdd4acc271611ce3f4963a072036bbfa5ccde5";
};
disabled = pythonOlder "3.6";

View File

@ -5,11 +5,11 @@
buildPythonPackage rec {
pname = "google-cloud-secret-manager";
version = "2.0.0";
version = "2.1.0";
src = fetchPypi {
inherit pname version;
sha256 = "c2b0c93b559c3b6eb2dc75f7ab33d49fad8fe954f6094ac2b14323ce053058f0";
sha256 = "2f08b49164aca8623b2e4ee07352980b3ffca909ce205c03568e203bbc455c30";
};
propagatedBuildInputs = [

View File

@ -0,0 +1,25 @@
{ lib, buildPythonPackage, fetchFromGitHub, pytestCheckHook, six, }:
buildPythonPackage rec {
pname = "jsonstreams";
version = "0.5.0";
src = fetchFromGitHub {
owner = "dcbaker";
repo = pname;
rev = version;
sha256 = "0c85fdqkj5k4b0v0ngx2d9qbmzdsvglh4j9k9h7508bvn7l8fa4b";
};
propagatedBuildInputs = [ six ];
checkInputs = [ pytestCheckHook ];
pytestFlagsArray = [ "tests --doctest-modules jsonstreams" ];
meta = with lib; {
description = "A JSON streaming writer";
homepage = "https://github.com/dcbaker/jsonstreams";
license = licenses.mit;
maintainers = with maintainers; [ chkno ];
};
}

View File

@ -12,11 +12,11 @@
buildPythonPackage rec {
pname = "kaggle";
version = "1.5.9";
version = "1.5.10";
src = fetchPypi {
inherit pname version;
sha256 = "444aeecfb646dbb889c767ee2ab071f63fe3a2b85f72f08f2bd772353d3e3b93";
sha256 = "05a2a3d4adeebc8a465d037999ba8db2cb471a24b41d623d4bcb80aac02ddbc9";
};
# The version bounds in the setup.py file are unnecessarily restrictive.

View File

@ -0,0 +1,59 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, isPy27
, numpy
, scipy
, pytestCheckHook
, pytestcov
, pytest-timeout
, h5py
, matplotlib
, nibabel
, pandas
, scikitlearn
}:
buildPythonPackage rec {
pname = "mne-python";
version = "0.21.2";
disabled = isPy27;
# PyPI dist insufficient to run tests
src = fetchFromGitHub {
owner = "mne-tools";
repo = pname;
rev = "v${version}";
sha256 = "18nfdbkffmxzkkbp3d4w8r2kfi0sxip3hy997d3mx6dy74jc7nmg";
};
propagatedBuildInputs = [ numpy scipy ];
# all tests pass, but Pytest hangs afterwards - probably some thread hasn't terminated
doCheck = false;
checkInputs = [
pytestCheckHook
pytestcov
pytest-timeout
h5py
matplotlib
nibabel
pandas
scikitlearn
];
preCheck = ''
export HOME=$TMP
export MNE_SKIP_TESTING_DATASET_TESTS=true
export MNE_SKIP_NETWORK_TESTS=1
'';
pythonImportsCheck = [ "mne" ];
meta = with lib; {
homepage = "https://mne.tools";
description = "Magnetoencephelography and electroencephalography in Python";
license = licenses.bsd3;
maintainers = with maintainers; [ bcdarwin ];
};
}

View File

@ -16,11 +16,11 @@
buildPythonPackage rec {
pname = "oauthenticator";
version = "0.12.2";
version = "0.12.3";
src = fetchPypi {
inherit pname version;
sha256 = "a4e8d8c528b0386340fc59ba98118a2aeb668a3741288b7ac15fd35124a91813";
sha256 = "f86e18e954ae37796ee149fe01ab0be0707d9e0415d62336ba3447e7b4383461";
};
checkPhase = ''

View File

@ -3,12 +3,12 @@
buildPythonPackage rec {
pname = "py-air-control-exporter";
version = "0.1.4";
version = "0.1.5";
disabled = isPy27;
src = fetchPypi {
inherit pname version;
sha256 = "1f13d3mlj6c3xvkclimahx7gpqqn8z56lh4kwy1d3gkjm7zs9zw9";
sha256 = "46eff1c801a299cf2ad37e6bd0c579449779cb6a47f1007264bfcabf12739f8b";
};
nativeBuildInputs = [ setuptools_scm ];

View File

@ -21,11 +21,11 @@
buildPythonPackage rec {
pname = "pymatgen";
version = "2020.11.11";
version = "2020.12.3";
src = fetchPypi {
inherit pname version;
sha256 = "2c51c2c8862ea0d59346114f43be9e65ea134ed5b2bbd8dae766c4f6b02f5e3c";
sha256 = "a7ae7aba87e88965c3e1490f5b9742c95e06150f2fc73da69647a9366dd88018";
};
nativeBuildInputs = [ glibcLocales ];

View File

@ -0,0 +1,21 @@
{ stdenv, buildPythonPackage, fetchPypi, pytest, setuptools_scm }:
buildPythonPackage rec {
pname = "pytest-celery";
version = "0.0.0a1";
src = fetchPypi {
inherit pname version;
sha256 = "0qifwi7q8dfwbzz2vm5m40lw23qh2fzibngbmw6qgwnkq8bhh3iy";
};
patches = [ ./no-celery.patch ];
doCheck = false; # This package has nothing to test or import.
meta = with stdenv.lib; {
description = "pytest plugin for unittest subTest() support and subtests fixture";
homepage = "https://github.com/pytest-dev/pytest-subtests";
license = licenses.mit;
};
}

View File

@ -0,0 +1,9 @@
This plugin is needed to test celery itself, so it can't depend on celery.
--- a/setup.py
+++ b/setup.py
@@ -6,3 +6,3 @@ from distutils.core import setup
install_requires = \
-['celery >= 4.4.0']
+[]

View File

@ -5,6 +5,7 @@
, matplotlib
, nose
, pillow
, pytestCheckHook
}:
buildPythonPackage rec {
@ -16,7 +17,9 @@ buildPythonPackage rec {
sha256 = "4a223909e5148c99bd18891848c7871457729322c752c9c470bd8dd6bdf9f940";
};
buildInputs = [ pytest ];
buildInputs = [
pytest
];
propagatedBuildInputs = [
matplotlib
@ -25,16 +28,20 @@ buildPythonPackage rec {
];
checkInputs = [
pytest
pytestCheckHook
];
checkPhase = ''
# Broken since b6e98f18950c2b5dbdc725c1181df2ad1be19fee
disabledTests = [
"test_hash_fails"
"test_hash_missing"
];
preCheck = ''
export HOME=$(mktemp -d)
mkdir -p $HOME/.config/matplotlib
echo "backend: ps" > $HOME/.config/matplotlib/matplotlibrc
ln -s $HOME/.config/matplotlib $HOME/.matplotlib
pytest
'';
meta = with stdenv.lib; {

View File

@ -0,0 +1,22 @@
{ lib, buildPythonPackage, isPy27, fetchPypi, setuptools_scm, pytestCheckHook }:
buildPythonPackage rec {
pname = "pytest-subtests";
version = "0.3.2";
disabled = isPy27;
src = fetchPypi {
inherit pname version;
sha256 = "1mxg91mrn8672f8hwg0f31xkyarnq7q0hr4fvb9hcb09jshq2wk7";
};
nativeBuildInputs = [ setuptools_scm ];
checkInputs = [ pytestCheckHook ];
meta = with lib; {
description = "pytest plugin for unittest subTest() support and subtests fixture";
homepage = "https://github.com/pytest-dev/pytest-subtests";
license = licenses.mit;
};
}

View File

@ -1,130 +1,40 @@
{ lib
, buildPythonPackage
, fetchPypi
, httptools
, aiofiles
, websockets
, multidict
, uvloop
, ujson
, pytest
, gunicorn
, aiohttp
, beautifulsoup4
, pytest-sanic
, pytest-benchmark
# required just httpcore / requests-async
, h11
, h2
, certifi
, chardet
, idna
, requests
, rfc3986
, uvicorn
{ lib, buildPythonPackage, fetchPypi
, aiofiles, httptools, httpx, multidict, ujson, uvloop, websockets
, pytestCheckHook, beautifulsoup4, gunicorn, httpcore, uvicorn
, pytest-asyncio, pytest-benchmark, pytest-dependency, pytest-sanic, pytest-sugar, pytestcov
}:
let
# This version of sanic depends on two packages that have been deprecated by
# their development teams:
#
# - requests-async [where first line of pypi says to use `http3` instead now]
# - httpcore [where the homepage redirects to `http3` now]
#
# Since no other packages in nixpkg depend on these right now, define these
# packages just as local dependencies here, to avoid bloat.
httpcore = buildPythonPackage rec {
pname = "httpcore";
version = "0.3.0";
src = fetchPypi {
inherit pname version;
sha256 = "0n3bamaixxhcm27gf1ws3g6rkamvqx87087c88r6hyyl52si1ycn";
};
propagatedBuildInputs = [ certifi chardet h11 h2 idna rfc3986 ];
# relax pinned old version of h11
postConfigure = ''
substituteInPlace setup.py \
--replace "h11==0.8.*" "h11"
'';
# LICENCE.md gets propagated without this, causing collisions
postInstall = ''
rm $out/LICENSE.md
'';
};
requests-async = buildPythonPackage rec {
pname = "requests-async";
version = "0.5.0";
src = fetchPypi {
inherit pname version;
sha256 = "8731420451383196ecf2fd96082bfc8ae5103ada90aba185888499d7784dde6f";
};
propagatedBuildInputs = [ requests httpcore ];
# LICENCE.md gets propagated without this, causing collisions
postInstall = ''
rm $out/LICENSE.md
'';
};
in
buildPythonPackage rec {
pname = "sanic";
version = "19.6.3";
version = "20.9.1";
src = fetchPypi {
inherit pname version;
sha256 = "0b1qqsvdjkibrw5kgr0pm7n7jzb1403132wjmb0lx3k5wyvqfi95";
sha256 = "06p0lsxqbfbka2yaqlpp0bg5pf7ma44zi6kq7qbb6hhry48dp1w6";
};
patchPhase = ''
substituteInPlace setup.py \
--replace '"multidict==5.0.0"' '"multidict"' \
--replace '"httpx==0.15.4"' '"httpx"' \
--replace '"httpcore==0.3.0"' '"httpcore"' \
--replace '"pytest==5.2.1"' '"pytest"'
'';
propagatedBuildInputs = [
httptools
aiofiles
websockets
multidict
requests-async
uvloop
ujson
aiofiles httptools httpx multidict ujson uvloop websockets
];
checkInputs = [
pytest
gunicorn
aiohttp
beautifulsoup4
pytest-sanic
pytest-benchmark
uvicorn
pytestCheckHook beautifulsoup4 gunicorn httpcore uvicorn
pytest-asyncio pytest-benchmark pytest-dependency pytest-sanic pytest-sugar pytestcov
];
# Sanic says it needs websockets 7.x, but the changelog for 8.x is actually
# nearly compatible with sanic's use. So relax this constraint, with a small
# required code change.
postConfigure = ''
substituteInPlace setup.py --replace \
"websockets>=7.0,<8.0" \
"websockets>=7.0,<9.0"
substituteInPlace sanic/websocket.py --replace \
"self.websocket.subprotocol = subprotocol" \
"self.websocket.subprotocol = subprotocol
self.websocket.is_client = False"
'';
# 10/500 tests ignored due to missing directory and
# requiring network access
checkPhase = ''
pytest --ignore tests/test_blueprints.py \
--ignore tests/test_routes.py \
--ignore tests/test_worker.py
'';
disabledTests = [
"test_gunicorn" # No "examples" directory in pypi distribution.
"test_logo" # Fails to filter out "DEBUG asyncio:selector_events.py:59 Using selector: EpollSelector"
"test_zero_downtime" # No "examples.delayed_response.app" module in pypi distribution.
];
meta = with lib; {
description = "A microframework based on uvloop, httptools, and learnings of flask";

View File

@ -2,11 +2,11 @@
buildPythonPackage rec {
pname = "trimesh";
version = "3.8.15";
version = "3.8.17";
src = fetchPypi {
inherit pname version;
sha256 = "3ab9c15e53916fd68d0c0ca9b46d95693d3238f164ffcf528a974c6e15cd353e";
sha256 = "10834032ff314ea9c8a6a9f4f1f846422fe8825657dfd2d9db3ae2fa5a838fdb";
};
propagatedBuildInputs = [ numpy ];

View File

@ -4,18 +4,23 @@
buildPythonPackage rec {
pname = "ueberzug";
version = "18.1.6";
version = "18.1.7";
disabled = isPy27;
src = fetchPypi {
inherit pname version;
sha256 = "13a9q9rvkbsym5nrc1y2anhyx317vj1vi8k8kln8gin2yw311pyb";
sha256 = "ef0d6ac5815446ede654a38da550d2c44abd0fc05c901b2232935a65bcbca875";
};
buildInputs = [ libX11 libXext ];
propagatedBuildInputs = [ attrs docopt pillow psutil xlib ];
doCheck = false;
pythonImportsCheck = [ "ueberzug" ];
meta = with lib; {
homepage = "https://github.com/seebye/ueberzug";
description = "An alternative for w3mimgdisplay";

View File

@ -2,11 +2,11 @@
buildPythonPackage rec {
pname = "vertica-python";
version = "1.0.0";
version = "1.0.1";
src = fetchPypi {
inherit pname version;
sha256 = "f042cf60ddd69eeb17c9f1586bae25da5b7282ca53d9afe0be30b943b4194d52";
sha256 = "94cff37e03f89fc4c5e4b2d4c913c7d5d7450f5a205d14f709b39e0a4202be95";
};
propagatedBuildInputs = [ future dateutil six ];

View File

@ -7,11 +7,11 @@
buildPythonPackage rec {
pname = "zstandard";
version = "0.14.0";
version = "0.14.1";
src = fetchPypi {
inherit pname version;
sha256 = "0lkn7n3bfp7zip6hkqwkqwc8pxmhhs4rr699k77h51rfln6kjllh";
sha256 = "5dd700e52ec28c64d43f681ccde76b6436c8f89a332d6c9e22a6b629f28daeb5";
};
propagatedBuildInputs = [ cffi ];

View File

@ -30,7 +30,7 @@ buildDunePackage rec {
minimumOCamlVersion = "4.06";
useDune2 = lib.versionAtLeast version "0.14";
useDune2 = true;
buildInputs =
if lib.versionAtLeast version "0.14"

View File

@ -233,12 +233,12 @@ let
barbar-nvim = buildVimPluginFrom2Nix {
pname = "barbar-nvim";
version = "2020-11-26";
version = "2020-12-04";
src = fetchFromGitHub {
owner = "romgrk";
repo = "barbar.nvim";
rev = "447a5863f91ac4e2b1e843829e3e200f59d687bb";
sha256 = "1x7jjh444ddn1rxyvn5sn2cpm6xdag05x2kj4lm14q96przi5f90";
rev = "f6ad62aadd892b643239f078f991b6af468d1070";
sha256 = "0sgq05gcdnihsb3k38zc7n0b87kadpagk4h1kg9as9lq15zy60b5";
};
meta.homepage = "https://github.com/romgrk/barbar.nvim/";
};
@ -317,12 +317,12 @@ let
calendar-vim = buildVimPluginFrom2Nix {
pname = "calendar-vim";
version = "2020-11-20";
version = "2020-11-30";
src = fetchFromGitHub {
owner = "itchyny";
repo = "calendar.vim";
rev = "9eb05f05f11ce281bff8b2ee980e70244e29d7ae";
sha256 = "15d763gv1939jhxg8431pxjxq8a86bfz898hdscakq7wf3wsc6kr";
rev = "4a27972d1af6a4a659cebefeed8ec81f3c783c79";
sha256 = "17wy2zybnlcajy91rcs2px726c0c1gjssggwyilx14wkp52ag0zn";
};
meta.homepage = "https://github.com/itchyny/calendar.vim/";
};
@ -341,12 +341,12 @@ let
caw-vim = buildVimPluginFrom2Nix {
pname = "caw-vim";
version = "2020-11-04";
version = "2020-12-01";
src = fetchFromGitHub {
owner = "tyru";
repo = "caw.vim";
rev = "41be34ca231c97d6be6c05e7ecb5b020f79cd37f";
sha256 = "0da1v913nlf9kddyk1hqx4h6n95r67b0lxa71hkp8lhqzy9z0gw0";
rev = "27be5a97a3971f185a23cfbea91d1651cbb4f388";
sha256 = "0aahsx4i1c5025didi9ajqdwbx534lpafcsdd2169zhqxgzqlhds";
};
meta.homepage = "https://github.com/tyru/caw.vim/";
};
@ -449,12 +449,12 @@ let
coc-fzf = buildVimPluginFrom2Nix {
pname = "coc-fzf";
version = "2020-11-28";
version = "2020-11-30";
src = fetchFromGitHub {
owner = "antoinemadec";
repo = "coc-fzf";
rev = "ce0cdfd91b184da76874024265d6e7d1ac06e073";
sha256 = "07v094rn7vh8sa5psw0cg47m5v2qypzndd4ddcpgmxdr64z8xqgs";
rev = "d994439ace0be8033c85db99f23c4f909d8ee41f";
sha256 = "07pl2ccj5rn873j5y0ls5dwry80iahlicjdcz059rf12fmgym702";
};
meta.homepage = "https://github.com/antoinemadec/coc-fzf/";
};
@ -485,12 +485,12 @@ let
coc-nvim = buildVimPluginFrom2Nix {
pname = "coc-nvim";
version = "2020-11-28";
version = "2020-12-05";
src = fetchFromGitHub {
owner = "neoclide";
repo = "coc.nvim";
rev = "708aaad11cb2b7a6473f2d527182647f889fee66";
sha256 = "0z3si82c3kzvm1kc4a96nmcs77dyhv1ym1kqw86al5nlpz5iadvp";
rev = "586790276ceeb4d6bda8a23e846177cbf6313897";
sha256 = "02libgk8nv4kc20fy9y5p6nq596rpcvg9wyy5z87hxgkhfgdndsa";
};
meta.homepage = "https://github.com/neoclide/coc.nvim/";
};
@ -642,12 +642,12 @@ let
Coqtail = buildVimPluginFrom2Nix {
pname = "Coqtail";
version = "2020-11-18";
version = "2020-12-02";
src = fetchFromGitHub {
owner = "whonore";
repo = "Coqtail";
rev = "2556bf597c7230bf89fbe2c2d842192a212b05e2";
sha256 = "1g5g74s6g90rard81h467wrs0piz0x5nin34z7pn5z04v6jv80mq";
rev = "f2c48d99015bb4f8317c53b8eb0f3a39406ed4cb";
sha256 = "1h6ngs1kdnhxjnas0b62yvbx94zjn87q18hinccr4cis3qz902is";
};
meta.homepage = "https://github.com/whonore/Coqtail/";
};
@ -786,12 +786,12 @@ let
defx-nvim = buildVimPluginFrom2Nix {
pname = "defx-nvim";
version = "2020-11-19";
version = "2020-12-05";
src = fetchFromGitHub {
owner = "Shougo";
repo = "defx.nvim";
rev = "c5f1a646122eb4f6048f97b1ef8a936ad49f18eb";
sha256 = "08j9msy49i1lz12bg2z98r7226c1khdixnj81c0pfnq4m8mprfz5";
rev = "0c5cff346fe81eda43e9ac4bb76b8f75b24d7b3e";
sha256 = "05y51mvbhmmw05ssjybr1grjg1fmhh38zvq011i2w27xya188kh7";
};
meta.homepage = "https://github.com/Shougo/defx.nvim/";
};
@ -846,12 +846,12 @@ let
deol-nvim = buildVimPluginFrom2Nix {
pname = "deol-nvim";
version = "2020-09-02";
version = "2020-12-05";
src = fetchFromGitHub {
owner = "Shougo";
repo = "deol.nvim";
rev = "2c4d9117186a6cf86030d213ef2de60b5dbced19";
sha256 = "1aka5zg7jihy1958xp4j2z3kdzmb2d4w5cbl95na4hik5rz4hyxj";
rev = "af1094adf913538b1edd33e161a63a31d313b52d";
sha256 = "0hyrm3mbmgfsqacyjpmasp7jsjjw82a8r6fivvz3vr10wsl5w8w3";
};
meta.homepage = "https://github.com/Shougo/deol.nvim/";
};
@ -1028,12 +1028,12 @@ let
deoplete-tabnine = buildVimPluginFrom2Nix {
pname = "deoplete-tabnine";
version = "2020-11-18";
version = "2020-11-30";
src = fetchFromGitHub {
owner = "tbodt";
repo = "deoplete-tabnine";
rev = "f3427c7633d9a79fbeea7942d2046e5b43f824dd";
sha256 = "0xixn23k4a6s8bqp636gm5ws71r9xgg8r92xgcv1d1whx5p2yvl9";
rev = "a9bc7ffddbcae9c90be2c56f06842890e07126ce";
sha256 = "1ar0ccr09m76arjcz4n5q7l9k8l1klc4sdxl5g0v87jjmiiazzvg";
};
meta.homepage = "https://github.com/tbodt/deoplete-tabnine/";
};
@ -1076,12 +1076,12 @@ let
deoplete-nvim = buildVimPluginFrom2Nix {
pname = "deoplete-nvim";
version = "2020-11-20";
version = "2020-12-04";
src = fetchFromGitHub {
owner = "Shougo";
repo = "deoplete.nvim";
rev = "a39f78f5e599ef29cc15c46c352ec5560e0f8e73";
sha256 = "0g0n1xbz2429ghsys06ij4csd88y2nx0yz7lqpp8924nhzlw2355";
rev = "7e1949752f52ba5b8cd8316915be20c475fbd100";
sha256 = "0srn575974dhxzlj40xi203kfpm9x23vx55ma22w0dh8x8xhjpy1";
};
meta.homepage = "https://github.com/Shougo/deoplete.nvim/";
};
@ -2016,12 +2016,12 @@ let
lightline-bufferline = buildVimPluginFrom2Nix {
pname = "lightline-bufferline";
version = "2020-11-25";
version = "2020-12-03";
src = fetchFromGitHub {
owner = "mengelbrecht";
repo = "lightline-bufferline";
rev = "087893a9c67fb5f49ad209866194a128e00f95f1";
sha256 = "0savwpgnff4sm7ij3ii2mkrd9lv4nmihyab7mcp9w66i8zdq1kyh";
rev = "9dffe95e90e331faaf363e179970ffc46afaeb59";
sha256 = "05d1b0gzy6pz2pky8kxz3pdqzz2pmafjjib3yhskf11fd9k8q4l1";
};
meta.homepage = "https://github.com/mengelbrecht/lightline-bufferline/";
};
@ -2052,12 +2052,12 @@ let
lsp_extensions-nvim = buildVimPluginFrom2Nix {
pname = "lsp_extensions-nvim";
version = "2020-11-04";
version = "2020-11-30";
src = fetchFromGitHub {
owner = "nvim-lua";
repo = "lsp_extensions.nvim";
rev = "eaa389f8a80d9700cc2c3bce787b00b61761a0f0";
sha256 = "0zndlyn3xgzxwshjk79yfva5914xchzg9v8qimfgn7jlmn5ljhwm";
rev = "25951aca067b3a22f303f59d8eac2101d861850a";
sha256 = "0bl7y9xpvlmisizyyykjskxmrg01s6p7nkgdfskx14dv2f8dmv8q";
};
meta.homepage = "https://github.com/nvim-lua/lsp_extensions.nvim/";
};
@ -2400,12 +2400,12 @@ let
neoformat = buildVimPluginFrom2Nix {
pname = "neoformat";
version = "2020-11-05";
version = "2020-12-02";
src = fetchFromGitHub {
owner = "sbdchd";
repo = "neoformat";
rev = "0b1c3ed1d19fceb3c7367fe40ef9934819effb13";
sha256 = "0479vh85cdrijrghpkva5s4sv0q66hs5n2gl5nhqplz52may0xxg";
rev = "7e458dafae64b7f14f8c2eaecb886b7a85b8f66d";
sha256 = "00x6yx4y4m45p3silwz084scs1a602d4xazyr39lgc0ssv6d9jhv";
};
meta.homepage = "https://github.com/sbdchd/neoformat/";
};
@ -2484,12 +2484,12 @@ let
neoterm = buildVimPluginFrom2Nix {
pname = "neoterm";
version = "2020-11-05";
version = "2020-12-01";
src = fetchFromGitHub {
owner = "kassio";
repo = "neoterm";
rev = "78461935fcd6888c02e4368126a2cb645b80816e";
sha256 = "07szw3jd5vj4sxzmrdalk79pdba7cm0c7k3rvn5bw4lyjgzml7ll";
rev = "1283da9f078669593f3828e4345b68b59ee9740f";
sha256 = "1262bxgh6mcrm1w6w47hsngsaj2fn4dw8jwp433clxvzsf2myk38";
};
meta.homepage = "https://github.com/kassio/neoterm/";
};
@ -2532,12 +2532,12 @@ let
nerdcommenter = buildVimPluginFrom2Nix {
pname = "nerdcommenter";
version = "2020-11-19";
version = "2020-12-03";
src = fetchFromGitHub {
owner = "preservim";
repo = "nerdcommenter";
rev = "253eafd3a71ce2a48306fe4a7bdfc4208d0c2eb5";
sha256 = "1v6rwsndnl9g77vscxyy8lffb3viydk9r44vkikdrdqwl4h6h0n2";
rev = "f02686f2f60fd9cfb18976f12d791c2663cf17c8";
sha256 = "023ra0nilvsrpcs7dv8dgfgk32cgbgiv75zpv6rmp91x119rp5fg";
};
meta.homepage = "https://github.com/preservim/nerdcommenter/";
};
@ -2556,24 +2556,24 @@ let
nerdtree-git-plugin = buildVimPluginFrom2Nix {
pname = "nerdtree-git-plugin";
version = "2020-11-11";
version = "2020-11-30";
src = fetchFromGitHub {
owner = "Xuyuanp";
repo = "nerdtree-git-plugin";
rev = "9e33a3fe8aa90f5ece2439f3b1b3a98fe7e35f85";
sha256 = "1qv526rn4yysvpka6pigs4p6gk5izqh0ik32b5aa2qk3059lkpx4";
rev = "6b843d3742d01b98a229ed2e6d3782f6d3f21651";
sha256 = "10mc9ir2h9swbyqfvg4gl3qkyc95s478wfl449zypsjnfisq7526";
};
meta.homepage = "https://github.com/Xuyuanp/nerdtree-git-plugin/";
};
neuron-vim = buildVimPluginFrom2Nix {
pname = "neuron-vim";
version = "2020-11-25";
version = "2020-12-06";
src = fetchFromGitHub {
owner = "fiatjaf";
repo = "neuron.vim";
rev = "853fbe273f9f40defe69a9d50d267fee1bbc6b5a";
sha256 = "0l6qxmd1y67jam8np37ywks95nbs53bvmh51y4ak4078mz2n1nji";
rev = "0b820b2191bf239c38e62ffa63501333590d6810";
sha256 = "0x00y0a46jwqq9gx741m3j7p78ps7nycp5hl3bjxqmwj289gc12y";
};
meta.homepage = "https://github.com/fiatjaf/neuron.vim/";
};
@ -2664,24 +2664,24 @@ let
nvim-dap = buildVimPluginFrom2Nix {
pname = "nvim-dap";
version = "2020-11-27";
version = "2020-12-03";
src = fetchFromGitHub {
owner = "mfussenegger";
repo = "nvim-dap";
rev = "07538909ab5934313d8bdb234481d05d6cefa565";
sha256 = "0jvz0j0pp53r080cz4r2z81vx73czhis9a5yl7p3xaw88sr5s23g";
rev = "ef830470c8b39a5bc4bc798315d2bff9dbdf3fe7";
sha256 = "19zq00fx3pvx46q5fvgzb4zs9gq74905zbg94crbyigvbvp7kc43";
};
meta.homepage = "https://github.com/mfussenegger/nvim-dap/";
};
nvim-dap-virtual-text = buildVimPluginFrom2Nix {
pname = "nvim-dap-virtual-text";
version = "2020-11-09";
version = "2020-12-06";
src = fetchFromGitHub {
owner = "theHamsta";
repo = "nvim-dap-virtual-text";
rev = "7c4bbfb1caa2b5be1e863962bd0bc142e10b801f";
sha256 = "1ry4799s4nj4nhfd2p0hbb3r8vp87zgwn0cw1h8w1hhyv9gfjn82";
rev = "5257a5a7b759ba5d4fe695b02569526cdd32ad43";
sha256 = "0ghf6g5wdxdzja9i2d1r4s4p828safw6vx8636yx798lqqlvp8i7";
};
meta.homepage = "https://github.com/theHamsta/nvim-dap-virtual-text/";
};
@ -2700,12 +2700,12 @@ let
nvim-highlite = buildVimPluginFrom2Nix {
pname = "nvim-highlite";
version = "2020-11-25";
version = "2020-12-05";
src = fetchFromGitHub {
owner = "Iron-E";
repo = "nvim-highlite";
rev = "c4f98237c54bd2478bb3826500f9c9b654612801";
sha256 = "0x82fsc9hvydyhi31wh7if2gdi8azgls88klc4hn476jx7rm5n58";
rev = "2541117eb64f442bc801bbabd37750d5b0845791";
sha256 = "0jsaflrjmsh95bpkvval27vzs62sgy7c9gdr13792zba4k5ycw1d";
};
meta.homepage = "https://github.com/Iron-E/nvim-highlite/";
};
@ -2724,24 +2724,24 @@ let
nvim-lspconfig = buildVimPluginFrom2Nix {
pname = "nvim-lspconfig";
version = "2020-11-26";
version = "2020-12-03";
src = fetchFromGitHub {
owner = "neovim";
repo = "nvim-lspconfig";
rev = "09fc9449e88b8a4f97d14e87af3685a48df2137f";
sha256 = "0fygy2qnsk8kqlb5233hb16rq3xyqqr00nn5nxzrhbqsdwy2xw7r";
rev = "76f11625481eddb7bcbf86b3e4f592a1aef35b37";
sha256 = "0ynkyyyzlmb4dmwd88gs47aqli2hq6j7y4905k0kpmsvfcfkpb36";
};
meta.homepage = "https://github.com/neovim/nvim-lspconfig/";
};
nvim-lsputils = buildVimPluginFrom2Nix {
pname = "nvim-lsputils";
version = "2020-11-27";
version = "2020-11-29";
src = fetchFromGitHub {
owner = "RishabhRD";
repo = "nvim-lsputils";
rev = "7582dc5b176c8990d00d16a2d69b0555ead09051";
sha256 = "0pwafd9hjkhxxn08nh2c1k01y67gdl3n2bx36k41452pkzxc8x9c";
rev = "cf5184a84217549966ae3fa156bc459d2448c7b8";
sha256 = "1wfmlr3scl3lawhvpya94f9zy3w3kyx622llxyg8s1frahzc9a3m";
};
meta.homepage = "https://github.com/RishabhRD/nvim-lsputils/";
};
@ -2760,24 +2760,24 @@ let
nvim-tree-lua = buildVimPluginFrom2Nix {
pname = "nvim-tree-lua";
version = "2020-11-29";
version = "2020-12-07";
src = fetchFromGitHub {
owner = "kyazdani42";
repo = "nvim-tree.lua";
rev = "9c3bc7d031527f0be6457c17215a131627ff6b9b";
sha256 = "1q5gy8viw6jhs3dk0qplp1zp55si8zm0m4knsl3is5ab48hh9sry";
rev = "2cec5892d7933be90b0207373733d793beaef1a1";
sha256 = "0dvl4x5fjq4w0pcxbbfxhlmijd6casvh1jihpaqzb95n0mys6fny";
};
meta.homepage = "https://github.com/kyazdani42/nvim-tree.lua/";
};
nvim-treesitter = buildVimPluginFrom2Nix {
pname = "nvim-treesitter";
version = "2020-11-29";
version = "2020-12-06";
src = fetchFromGitHub {
owner = "nvim-treesitter";
repo = "nvim-treesitter";
rev = "7cea2981444841403a5b85838edd26c390adcdb3";
sha256 = "1sqd4r3csaqafhsihfxap9ldzq7p0h4g5ysazgsq6ckcc7ksf0wq";
rev = "939d2e574ee82e77e243efebc50b746ed417d4b3";
sha256 = "0zhccdxlavc45fqr1cckchmzkpyfmjvsvmsk76wh8xhpymsn9scn";
};
meta.homepage = "https://github.com/nvim-treesitter/nvim-treesitter/";
};
@ -2808,24 +2808,24 @@ let
nvim-treesitter-textobjects = buildVimPluginFrom2Nix {
pname = "nvim-treesitter-textobjects";
version = "2020-11-20";
version = "2020-12-03";
src = fetchFromGitHub {
owner = "nvim-treesitter";
repo = "nvim-treesitter-textobjects";
rev = "42bca9550fa6ad5389d6e95ba9876bf05a8d0406";
sha256 = "0zvjjbffvpnmc9rgrkj8cx5jqbkw8yvjwnj0jk8ccxpl0s9v2yi6";
rev = "af6c04593e15abcc462389420ba33b9a631ccfbf";
sha256 = "187yjwqk5s6cs8lxrkd943jc5hda0fn69yv9srvvjz5w24rl41g5";
};
meta.homepage = "https://github.com/nvim-treesitter/nvim-treesitter-textobjects/";
};
nvim-ts-rainbow = buildVimPluginFrom2Nix {
pname = "nvim-ts-rainbow";
version = "2020-11-25";
version = "2020-11-30";
src = fetchFromGitHub {
owner = "p00f";
repo = "nvim-ts-rainbow";
rev = "f8d1c895dfadb16f6ac61d5272098f2cd989e8aa";
sha256 = "1gdblzlh5f8cnjwkszxsvv72ryqwywbb4i1hanv879l3ji857iqi";
rev = "a17dc0244045239f323b237b7c30d3ef7597b346";
sha256 = "02gnicvrbrl6d09zmxn7r34j7g1mdsdaw7w51qpgddm7p295qaqi";
};
meta.homepage = "https://github.com/p00f/nvim-ts-rainbow/";
};
@ -2880,12 +2880,12 @@ let
onedark-vim = buildVimPluginFrom2Nix {
pname = "onedark-vim";
version = "2020-08-12";
version = "2020-12-01";
src = fetchFromGitHub {
owner = "joshdick";
repo = "onedark.vim";
rev = "7f9b1802b0d76f4f8fe7ad5bbef472c96e1c104f";
sha256 = "11fk496xk0564fcfmc77b2m98l6dmvb4ph50vyq73a1mlcs1438c";
rev = "935016df2693590cb4fd2264c7ca9b129fae200c";
sha256 = "0h7682ky6925sk50synk8yhbhbkvc3vka84vjz0nv0vwr1kd9qz6";
};
meta.homepage = "https://github.com/joshdick/onedark.vim/";
};
@ -2940,12 +2940,12 @@ let
papercolor-theme = buildVimPluginFrom2Nix {
pname = "papercolor-theme";
version = "2020-11-09";
version = "2020-12-04";
src = fetchFromGitHub {
owner = "NLKNguyen";
repo = "papercolor-theme";
rev = "0428fc228afc50085326bfd43746b7734e42c428";
sha256 = "092zp0f5jvfwh2q8asxdnkrhz9djgw0lqzg70g38xk606fxy16a9";
rev = "845cfa94d95d404ff59e0bdc578b299279e1dc07";
sha256 = "1r6p9ll3bfblz9sfzg0391zjswvmi8wwcc010w8mjsayjclmpwf8";
};
meta.homepage = "https://github.com/NLKNguyen/papercolor-theme/";
};
@ -3000,12 +3000,12 @@ let
playground = buildVimPluginFrom2Nix {
pname = "playground";
version = "2020-11-24";
version = "2020-12-04";
src = fetchFromGitHub {
owner = "nvim-treesitter";
repo = "playground";
rev = "86ad6e00dfbc80aeffa841043582f170c4c744ac";
sha256 = "02ji6p77v85gq8df5fs9lnns6kyf41806iq38zd92y5blps04ihl";
rev = "bc68ffe8efab3a3b575122a26cf434e13e084844";
sha256 = "1vlgx149fzkbxlznlwkcqbvlj4bg4g0g7xr1skvxg1qgmlgzwfx3";
};
meta.homepage = "https://github.com/nvim-treesitter/playground/";
};
@ -3036,12 +3036,12 @@ let
popfix = buildVimPluginFrom2Nix {
pname = "popfix";
version = "2020-11-29";
version = "2020-12-06";
src = fetchFromGitHub {
owner = "RishabhRD";
repo = "popfix";
rev = "b834b0165282f204f4047e675bc714455df3e5fb";
sha256 = "05w7lcssrfadkjnc09ihg0srfl514banc4v9fhp4sx1zwkrqm60v";
rev = "2b0a2dfae0b32d218b1dbcacb72035b6c68067c7";
sha256 = "1vg337p85cn2rknw9kxbjm750bwjrg61272yf8p2ncm8apfgnzjg";
};
meta.homepage = "https://github.com/RishabhRD/popfix/";
};
@ -3120,12 +3120,12 @@ let
quick-scope = buildVimPluginFrom2Nix {
pname = "quick-scope";
version = "2020-07-31";
version = "2020-12-05";
src = fetchFromGitHub {
owner = "unblevable";
repo = "quick-scope";
rev = "64a5e6f9791e75f4d87b176d5c11f31041aa4169";
sha256 = "1b1s8jmfip40s9m466c78jczp22dq2brbsnmdaz7gc1fgxyb5858";
rev = "5cd7d8493256b5900984af6d82a7ff81ce57d544";
sha256 = "12v9h9q6lr06r563y1ryvd56zf8m0xshmg27sgm2453k2xps31ly";
};
meta.homepage = "https://github.com/unblevable/quick-scope/";
};
@ -3528,12 +3528,12 @@ let
splitjoin-vim = buildVimPluginFrom2Nix {
pname = "splitjoin-vim";
version = "2020-10-25";
version = "2020-12-04";
src = fetchFromGitHub {
owner = "AndrewRadev";
repo = "splitjoin.vim";
rev = "1c1b94a6aa218c429421c82bcc56a216301b6e85";
sha256 = "1jkny1ag82zvkfjvbzrkkh4s54jcf9hq5n9ak3g691zcddhmrp17";
rev = "680aff68e0848dcfd5c33f886cabd7c9755b29e0";
sha256 = "1h29g177fx9yp7hzw0vy94wf5flcw8q9iicwirpg5cvda8kx7i2w";
fetchSubmodules = true;
};
meta.homepage = "https://github.com/AndrewRadev/splitjoin.vim/";
@ -3649,12 +3649,12 @@ let
tagbar = buildVimPluginFrom2Nix {
pname = "tagbar";
version = "2020-11-23";
version = "2020-11-30";
src = fetchFromGitHub {
owner = "preservim";
repo = "tagbar";
rev = "ed1bbe554d7ce4d9b6286ee3514ed4d3021408ee";
sha256 = "0h8ai0lhb52d279fw9fc06zmi5sxvjf468mwrbpfh0cq7fkb45yz";
rev = "b63e8cb83f08165d15474ea1291c51f6661f1f7e";
sha256 = "0vghkl7i6pldyasb4fr0prjc53aq1jj567pxh9mssn2sy9l8ishg";
};
meta.homepage = "https://github.com/preservim/tagbar/";
};
@ -3697,12 +3697,12 @@ let
telescope-nvim = buildVimPluginFrom2Nix {
pname = "telescope-nvim";
version = "2020-11-29";
version = "2020-12-03";
src = fetchFromGitHub {
owner = "nvim-telescope";
repo = "telescope.nvim";
rev = "07ce3c341a8c2824c44fcf50841917debf215058";
sha256 = "0chb32kc4id419km7hakfdmq5fh4vbz82yvzmibnrgm70zwl8vrr";
rev = "655295ef64ebb0b769de45146dae65b89212a8f0";
sha256 = "1avmkzn5bfn1zricvgnic9jdaizbb0nh970jl5bdszw80qilc6sn";
};
meta.homepage = "https://github.com/nvim-telescope/telescope.nvim/";
};
@ -4190,12 +4190,12 @@ let
vim-airline = buildVimPluginFrom2Nix {
pname = "vim-airline";
version = "2020-11-27";
version = "2020-12-06";
src = fetchFromGitHub {
owner = "vim-airline";
repo = "vim-airline";
rev = "06117a61e1218b2a866451d2ac4d8ddcd82c8543";
sha256 = "0c3qgk248bkvmfh5rzhgnz0z0i1yxlmfcaz1bn91g41n9k1a50ab";
rev = "2cea83eb88e0a6d1461a4f081016d6ca4f1c29c8";
sha256 = "1hi2hgnkwqw3yl64a3l5ddh1bl9kc21419bhx72v89yx5xvzzj5q";
};
meta.homepage = "https://github.com/vim-airline/vim-airline/";
};
@ -4418,12 +4418,12 @@ let
vim-clap = buildVimPluginFrom2Nix {
pname = "vim-clap";
version = "2020-11-27";
version = "2020-12-06";
src = fetchFromGitHub {
owner = "liuchengxu";
repo = "vim-clap";
rev = "4ca999b5c302610fb5de8ef8a74f77408a2c4a64";
sha256 = "0as6mngcmn1g0d8lgrmrs1pazby31s5svydwr367ik0waqf9rl8s";
rev = "bd497eaf5eef009e2557d40e9dc56e8a6c551f10";
sha256 = "0v1yzaqr7nv14d71823iviikmq6sq6wrsjqryk59j5pd8nb1jcwl";
};
meta.homepage = "https://github.com/liuchengxu/vim-clap/";
};
@ -4670,12 +4670,12 @@ let
vim-devicons = buildVimPluginFrom2Nix {
pname = "vim-devicons";
version = "2020-11-04";
version = "2020-12-01";
src = fetchFromGitHub {
owner = "ryanoasis";
repo = "vim-devicons";
rev = "383159d338024f09e4d56585a9301958b6fefad6";
sha256 = "1mzr45pxjm3xfc0x92clybxzj67akwmfjwwbmdd1wxjw37qdjvpw";
rev = "7bfc9bb4a3f6c23cbb24ee8862dc60cf6ab9297c";
sha256 = "0ip2p266b0f0f78q4rgwfy97fqwy4iw39rlfy40gr4gsn2ia76pb";
};
meta.homepage = "https://github.com/ryanoasis/vim-devicons/";
};
@ -4982,12 +4982,12 @@ let
vim-floaterm = buildVimPluginFrom2Nix {
pname = "vim-floaterm";
version = "2020-11-28";
version = "2020-11-30";
src = fetchFromGitHub {
owner = "voldikss";
repo = "vim-floaterm";
rev = "60facc9c12049b16015490ecff61a0dd4e580ee9";
sha256 = "0fm43d2m0s07y5b448drf6smb7fpz38vv1wvd5r0ch6ac53mc74m";
rev = "d7880f46f9b339f935e9912bb3f41c9b346ae992";
sha256 = "1hyvfsjwpgyk5sgrr4zn8r0r530p1v3z8gz8a1dhjgpdykb90mpw";
};
meta.homepage = "https://github.com/voldikss/vim-floaterm/";
};
@ -5126,36 +5126,36 @@ let
vim-go = buildVimPluginFrom2Nix {
pname = "vim-go";
version = "2020-11-22";
version = "2020-12-05";
src = fetchFromGitHub {
owner = "fatih";
repo = "vim-go";
rev = "069113c1c03ec9330fbcccb36f79b268f8b88c1d";
sha256 = "10423k7rxs34qxb7nfdyfs0yjhgnkmlkd33bwrv2zrahp342kfwv";
rev = "fa406d940636cc774bc6018df3b0fd591f6478ba";
sha256 = "02djm695libpas4911qris4vbxwl6fhjzls7rda6wdvazdi7d3vy";
};
meta.homepage = "https://github.com/fatih/vim-go/";
};
vim-grammarous = buildVimPluginFrom2Nix {
pname = "vim-grammarous";
version = "2020-09-16";
version = "2020-11-30";
src = fetchFromGitHub {
owner = "rhysd";
repo = "vim-grammarous";
rev = "a3d67402099ca3554dc06eb7cb514865e39ec0ea";
sha256 = "0w1qicka7g386qg7iyfg7fh30hmdx5yvmh3qza6ifj5x4w99l0ri";
rev = "db46357465ce587d5325e816235b5e92415f8c05";
sha256 = "014g5q3kdqq4w5jvp61h26n0jfq05xz82rhwgcp3bgq0ffhrch7j";
};
meta.homepage = "https://github.com/rhysd/vim-grammarous/";
};
vim-graphql = buildVimPluginFrom2Nix {
pname = "vim-graphql";
version = "2020-11-12";
version = "2020-12-06";
src = fetchFromGitHub {
owner = "jparise";
repo = "vim-graphql";
rev = "c2fe34c8c950aceb56b9b4c69e9e95922fa7a78e";
sha256 = "1q7v0qyd1my9hgxyhz921fr4c6x9ipfgqlm41546iz097vnv715p";
rev = "2e3b8fb97845136d43d6470c4aa4b73685a904e1";
sha256 = "1cliwmjw7p7mp0nqhiv2ffmjrq41gx0yd0i46js8a7xyz3fwa0aa";
};
meta.homepage = "https://github.com/jparise/vim-graphql/";
};
@ -5584,12 +5584,12 @@ let
vim-jsx-typescript = buildVimPluginFrom2Nix {
pname = "vim-jsx-typescript";
version = "2020-11-26";
version = "2020-12-03";
src = fetchFromGitHub {
owner = "peitalin";
repo = "vim-jsx-typescript";
rev = "b099549ffd1810eb6f7979202202406939abb77e";
sha256 = "1jlifxhwjarxqn1i22q3r7rh5z5ianmay91rrazjkahhji2701yy";
rev = "22df470d92651426f2377e3166488672f7b4b4ef";
sha256 = "13w7n8km927v9yvm91c4z8g343bn2mp0k80nwv5y0sz279x4x9n7";
};
meta.homepage = "https://github.com/peitalin/vim-jsx-typescript/";
};
@ -5837,12 +5837,12 @@ let
vim-matchup = buildVimPluginFrom2Nix {
pname = "vim-matchup";
version = "2020-11-27";
version = "2020-12-05";
src = fetchFromGitHub {
owner = "andymass";
repo = "vim-matchup";
rev = "ac1d0f73a0eee3d2597f09789d45d9d332c64be5";
sha256 = "1zi16whmc21iwbkvax65a883ylphcdjjhagmxihp1i52vx90vz5i";
rev = "44c634b3306783d5a43c4ef918a4bca538adcf2f";
sha256 = "1gb03wng4bag53h6j6mnpslpp82mk5h03apn6fbkga4i1alab55l";
};
meta.homepage = "https://github.com/andymass/vim-matchup/";
};
@ -5861,12 +5861,12 @@ let
vim-merginal = buildVimPluginFrom2Nix {
pname = "vim-merginal";
version = "2020-01-29";
version = "2020-12-06";
src = fetchFromGitHub {
owner = "idanarye";
repo = "vim-merginal";
rev = "02ac69b0468b7aec437df48df07f939558e85c9a";
sha256 = "0m5lym56xzp1gnwb79vjmigfi6ar0iqbzaydv2r8c47jj7xyxiz6";
rev = "7e1446614cdfb3a8eca621e5006631af72cda0f8";
sha256 = "133lddbwz63djr6pyg3dqy2pn795b48i3y4ps9ssyy6yjyi3pnrg";
};
meta.homepage = "https://github.com/idanarye/vim-merginal/";
};
@ -5897,12 +5897,12 @@ let
vim-monokai = buildVimPluginFrom2Nix {
pname = "vim-monokai";
version = "2020-11-29";
version = "2020-12-02";
src = fetchFromGitHub {
owner = "crusoexia";
repo = "vim-monokai";
rev = "5ad3f66370a3d77d1cde18d953446b34bfa9c96e";
sha256 = "04lb05kn1i5qg48f98rp6am0ngaaa5psc0pxqzg7qlwrfby94j09";
rev = "7f42bcd0e05921c7a5d7333c96bae8b21fa76064";
sha256 = "10ip0y9p2qf869h2yhp2zs6qc048rw1x5i0spziajca96251gvig";
};
meta.homepage = "https://github.com/crusoexia/vim-monokai/";
};
@ -6305,12 +6305,12 @@ let
vim-plug = buildVimPluginFrom2Nix {
pname = "vim-plug";
version = "2020-11-03";
version = "2020-12-03";
src = fetchFromGitHub {
owner = "junegunn";
repo = "vim-plug";
rev = "2f4e28161e114cc4b34a9b8ff0f51f4906f37b0b";
sha256 = "1wfcyrjqqngnf4l9afc0342avkys8ipfrna7zlgiypwji926y2k7";
rev = "5430b6213a5c6c3bafd7e25b1e80ccb2afd7f5ba";
sha256 = "1jzf6wbvwhvm3vjn6rlwic4s9niin6kap5lzi2xpip7yl809wz5x";
};
meta.homepage = "https://github.com/junegunn/vim-plug/";
};
@ -6485,12 +6485,12 @@ let
vim-racer = buildVimPluginFrom2Nix {
pname = "vim-racer";
version = "2020-10-21";
version = "2020-12-07";
src = fetchFromGitHub {
owner = "racer-rust";
repo = "vim-racer";
rev = "4c8b8843de2bbf4a6b44a570f284534d5e75a989";
sha256 = "1rkp75q0m8w9br35nngdbdlvfpha4x4yilaff40d62mcmb8xmhvj";
rev = "83ba638104f6a56def3354c6c9b1df04d12f1d3d";
sha256 = "1qpxdam0qn7lyvgzyip30bs6k99c0qnpd5qgkkps6mcyzd1rqlqv";
};
meta.homepage = "https://github.com/racer-rust/vim-racer/";
};
@ -6749,12 +6749,12 @@ let
vim-slime = buildVimPluginFrom2Nix {
pname = "vim-slime";
version = "2020-11-18";
version = "2020-12-05";
src = fetchFromGitHub {
owner = "jpalardy";
repo = "vim-slime";
rev = "2a75f2424e259d3b9a287f8bb9bd748255c94b44";
sha256 = "1jswyib5czgi8finv1p30hsnfk259bnkdkj0ly653vbblwp00pyi";
rev = "59d5e6c4bd99f6a1825ec83e9d56a333b12be36b";
sha256 = "0679rn285z4v237gmxnkxdsx4gc0phh453bnhynsmr353x5a6gn3";
};
meta.homepage = "https://github.com/jpalardy/vim-slime/";
};
@ -7013,12 +7013,12 @@ let
vim-terraform = buildVimPluginFrom2Nix {
pname = "vim-terraform";
version = "2020-11-14";
version = "2020-12-05";
src = fetchFromGitHub {
owner = "hashivim";
repo = "vim-terraform";
rev = "a6be9fea8757f6672397cadfb2784230914130c6";
sha256 = "1c8k170hly5y82f9a1ddqm70afab2hb6hcj45s5db1nkh486p0a0";
rev = "fcc3912658d0d0dff60975a487d17f919b94595c";
sha256 = "1pf1hbs7ixyqyl3rvlmn8lgrbnix1x5qfrhk00ji4vnm7m4mcng5";
};
meta.homepage = "https://github.com/hashivim/vim-terraform/";
};
@ -7038,12 +7038,12 @@ let
vim-test = buildVimPluginFrom2Nix {
pname = "vim-test";
version = "2020-11-17";
version = "2020-12-01";
src = fetchFromGitHub {
owner = "vim-test";
repo = "vim-test";
rev = "e11fa044b312f87843313edbdfa0d7bb8db0d040";
sha256 = "0qmpddmnj7g6l82xnbj9qjmrf885qs7flpni3cqkm0g4dzapkscf";
rev = "180c8ced850ed288bf7ce9c44c6b4451f995f275";
sha256 = "0yza1lgilgg1qlpcw4kg5232mylbqjb0gar0l4rjxk6i7xvpxryi";
};
meta.homepage = "https://github.com/vim-test/vim-test/";
};
@ -7326,12 +7326,12 @@ let
vim-vsnip = buildVimPluginFrom2Nix {
pname = "vim-vsnip";
version = "2020-11-28";
version = "2020-12-06";
src = fetchFromGitHub {
owner = "hrsh7th";
repo = "vim-vsnip";
rev = "7983a425d676e79d7fbd8e8870ecee3b15f9a78c";
sha256 = "0c3rh0vkg65n2d2kmqfizigwn9jkb8azjla1ymgc49yzmy49jghf";
rev = "17afebf49f3a13a4dbf44c90c0b5a9caf1cdbeb4";
sha256 = "0xarnz4d9liwckgblckjma5yc66mal4ilggfjcr41i68h6mhdj88";
};
meta.homepage = "https://github.com/hrsh7th/vim-vsnip/";
};
@ -7422,12 +7422,12 @@ let
vim-xkbswitch = buildVimPluginFrom2Nix {
pname = "vim-xkbswitch";
version = "2020-11-29";
version = "2020-12-02";
src = fetchFromGitHub {
owner = "lyokha";
repo = "vim-xkbswitch";
rev = "02e9ffb1d83101eafe4d1115b26116e5f3c6ca3f";
sha256 = "1kpfs1q6ikd0bbl89hi7m0359az03r1jw0aq1p5nmd96rfs2w9lw";
rev = "f851600045c543f3646c709d7e03e231408eab81";
sha256 = "0pi85rzls3g7ilb18idk8xbqya8ygjab5ndk09p4xmmww9z4v711";
};
meta.homepage = "https://github.com/lyokha/vim-xkbswitch/";
};
@ -7590,12 +7590,12 @@ let
vimspector = buildVimPluginFrom2Nix {
pname = "vimspector";
version = "2020-11-28";
version = "2020-12-05";
src = fetchFromGitHub {
owner = "puremourning";
repo = "vimspector";
rev = "4ac9785217557bb8ba063aa8c7f8320ac7a452fa";
sha256 = "1vyzf5pixiv0glq8asmg7qicspn527yxij5xicaaih1c3x3sawks";
rev = "2eb32f31533b79520ca6788fd41634525234d7e5";
sha256 = "0zmllgk1wi8hbmrbgg300csg7q6km0pxichr9lagrxm7y4w3dnqg";
fetchSubmodules = true;
};
meta.homepage = "https://github.com/puremourning/vimspector/";
@ -7603,12 +7603,12 @@ let
vimtex = buildVimPluginFrom2Nix {
pname = "vimtex";
version = "2020-11-29";
version = "2020-12-05";
src = fetchFromGitHub {
owner = "lervag";
repo = "vimtex";
rev = "6267c58c6bffdfd3ef67ac2b377377e4730d15d3";
sha256 = "0fysk82rzp6p8n4bmp4x543ajfpyr1ry53xabs3d4hbdap5gp4c3";
rev = "4236c7b0e390064f2df43a312386946d814d4664";
sha256 = "1zfgyk1k1ai3ip8jbrgj7mli5vw5q7ikgqyy6ddkfd4bkmp0shia";
};
meta.homepage = "https://github.com/lervag/vimtex/";
};
@ -7687,12 +7687,12 @@ let
webapi-vim = buildVimPluginFrom2Nix {
pname = "webapi-vim";
version = "2019-11-18";
version = "2020-12-02";
src = fetchFromGitHub {
owner = "mattn";
repo = "webapi-vim";
rev = "10b8e926d85a3ab689c2966a3df1139bcb4e197f";
sha256 = "1hbm2mgsncqdjjfgabgncr4ji90mjsa3z0cx7813vdf113v41x26";
rev = "6f5ffb6f547cda1b6cbc26a06f12d81e6283bd82";
sha256 = "1144jk4dfqb8pzblqksc1wjgbraxy6pdgr4q567wzcf93bviv81l";
};
meta.homepage = "https://github.com/mattn/webapi-vim/";
};
@ -7771,12 +7771,12 @@ let
yats-vim = buildVimPluginFrom2Nix {
pname = "yats-vim";
version = "2020-11-24";
version = "2020-12-06";
src = fetchFromGitHub {
owner = "HerringtonDarkholme";
repo = "yats.vim";
rev = "49c70e60159e9607f8c787f4105133353d020dc0";
sha256 = "116c7lyl0jpfqpzrwdsbpranbiw61f4vpq8nvpik2yx1wizv77lx";
rev = "a488d15f535cddd2acc6c8b77c6c4381debcadbf";
sha256 = "0rxv4hmpw0lcmp99kcgax4yll6m896d5vljv1hb7ycmz1q25ij52";
fetchSubmodules = true;
};
meta.homepage = "https://github.com/HerringtonDarkholme/yats.vim/";

View File

@ -198,7 +198,7 @@ jonbri/vim-colorstepper
jonsmithers/vim-html-template-literals
joonty/vim-xdebug
joshdick/onedark.vim
jpalardy/vim-slime
jpalardy/vim-slime@main
jparise/vim-graphql
jparise/vim-phabricator
jreybert/vimagit

View File

@ -3,6 +3,7 @@
, ninja
, pkgconfig
, fetchFromGitLab
, fetchpatch
, python3
, umockdev
, gobject-introspection
@ -60,8 +61,18 @@ stdenv.mkDerivation rec {
(p: [ p.pygobject3 p.dbus-python p.python-dbusmock ]))
];
# meson install tries to create /var/lib/boltd
patches = [ ./0001-skip-mkdir.patch ];
patches = [
# meson install tries to create /var/lib/boltd
./0001-skip-mkdir.patch
# https://github.com/NixOS/nixpkgs/issues/104429
# Upstream issue: https://gitlab.freedesktop.org/bolt/bolt/-/issues/167
(fetchpatch {
name = "disable-atime-tests.diff";
url = "https://gitlab.freedesktop.org/roberth/bolt/-/commit/1f672a7de2ebc4dd51590bb90f3b873a8ac0f4e6.diff";
sha256 = "134f5s6kjqs6612pwq5pm1miy58crn1kxbyyqhzjnzmf9m57fnc8";
})
];
postPatch = ''
patchShebangs scripts tests

View File

@ -48,6 +48,8 @@ buildPythonPackage rec {
# 'runner' scripts.
dontWrapPythonPrograms = true;
doCheck = false;
meta = {
homepage = "https://www.gnu.org/software/mailman/";
description = "Free software for managing electronic mail discussion and newsletter lists";

View File

@ -2,11 +2,11 @@
buildPythonApplication rec {
pname = "python-swiftclient";
version = "3.10.1";
version = "3.11.0";
src = fetchPypi {
inherit pname version;
sha256 = "0176b17aa14cc2ef82a327dc70b66af670bdb39dcf836896f81269db376932ea";
sha256 = "3972f8b1986e60ea786ad01697e6882f331209ae947ef8b795531940f1e0732b";
};
propagatedBuildInputs = [ requests six pbr setuptools ];

View File

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "ifuse";
version = "2018-10-08";
version = "1.1.4";
src = fetchFromGitHub {
owner = "libimobiledevice";
repo = pname;
rev = "e75d32c34d0e8b80320f0a007d5ecbb3f55ef7f0";
sha256 = "1b9w2i0sliswlkkb890l9i0rxrf631xywxf8ihygfmjdsfw47h1m";
rev = version;
sha256 = "1r12y3h1j7ikkwk874h9969kr4ksyamvrwywx19ml6rsr01arw84";
};
nativeBuildInputs = [ autoreconfHook pkgconfig fuse usbmuxd libimobiledevice ];

View File

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "ideviceinstaller";
version = "2018-10-01";
version = "1.1.1";
src = fetchFromGitHub {
owner = "libimobiledevice";
repo = pname;
rev = "f14def7cd9303a0fe622732fae9830ae702fdd7c";
sha256 = "1biwhbldvgdhn8ygp7w79ca0rivzdjpykr76pyhy7r2fa56mrwq8";
rev = version;
sha256 = "1xp0sjgfx2z19x9mxihn18ybsmrnrcfc55zbh5a44g3vrmagmlzz";
};
nativeBuildInputs = [ autoreconfHook pkgconfig usbmuxd libimobiledevice libzip ];
@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
and enumerate installed or archived apps.
'';
license = licenses.gpl2;
platforms = platforms.linux;
platforms = platforms.linux ++ platforms.darwin;
maintainers = with maintainers; [ aristid infinisil ];
};
}

View File

@ -9,13 +9,13 @@
stdenv.mkDerivation rec {
pname = "idevicerestore";
version = "2019-12-26";
version = "1.0.0";
src = fetchFromGitHub {
owner = "libimobiledevice";
repo = pname;
rev = "8207daaa2ac3cb3a5107aae6aefee8ecbe39b6d4";
sha256 = "1jz72bzk1fh12bs65pv06l85135hgfz1aqnbb084bvqcpj4gl40h";
rev = version;
sha256 = "1w7ywp77xc6v4hifi3j9ywrj447vv7fkwg2w26w0lq95f3bkblqr";
};
nativeBuildInputs = [

View File

@ -2,13 +2,13 @@
rustPlatform.buildRustPackage rec {
pname = "mcfly";
version = "0.5.0";
version = "0.5.1";
src = fetchFromGitHub {
owner = "cantino";
repo = "mcfly";
rev = "v${version}";
sha256 = "155x745jakfcpr6kmp24cy8xwdhv81jdfjjhd149bnw5ilg0z037";
sha256 = "1biahx4bji8kasqcxnixnpmfx3qwwibw1vdd172px3i75pbyybqn";
};
postInstall = ''
@ -20,7 +20,7 @@ rustPlatform.buildRustPackage rec {
install -Dm644 -t $out/share/mcfly mcfly.fish
'';
cargoSha256 = "0y6sjbzg5qqqip9sc9ajyd5ra3n2wwvarj6nhpzjhh05kqz3qja4";
cargoSha256 = "139pdhrqgl0ai94w2c948aal1j73qw4jxxdd4gxn4apglbnma1xz";
meta = with stdenv.lib; {
homepage = "https://github.com/cantino/mcfly";

View File

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "usbmuxd";
version = "2019-11-11";
version = "1.1.1";
src = fetchFromGitHub {
owner = "libimobiledevice";
repo = pname;
rev = "9af2b12552693a47601347e1eafc1e94132d727e";
sha256 = "0w8mf2wfpqijg882vhb8xarlp6zja23xf0b59z5zi774pnpjbqvj";
rev = version;
sha256 = "0a2xgrb4b3ndam448z74wh1267nmrz1wcbpx4xz86pwbdc93snab";
};
nativeBuildInputs = [ autoreconfHook pkgconfig ];
@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
in parallel. The higher-level layers are handled by libimobiledevice.
'';
license = licenses.gpl2Plus;
platforms = platforms.linux;
platforms = platforms.linux ++ platforms.darwin;
maintainers = with maintainers; [ infinisil ];
};
}

View File

@ -13312,10 +13312,10 @@ let
Mojolicious = buildPerlPackage {
pname = "Mojolicious";
version = "8.63";
version = "8.67";
src = fetchurl {
url = "mirror://cpan/authors/id/S/SR/SRI/Mojolicious-8.63.tar.gz";
sha256 = "1nw500wi6kdyawc2aq37lnx6zfkpby3sczflh5pjz623i8nw4b66";
url = "mirror://cpan/authors/id/S/SR/SRI/Mojolicious-8.67.tar.gz";
sha256 = "0b1ajsfvpzcmy7qp1rjr2n1z263yk5bkzmal0kx72ajg1l1dd85v";
};
meta = {
homepage = "https://mojolicious.org";

View File

@ -3199,6 +3199,8 @@ in {
jsonschema = callPackage ../development/python-modules/jsonschema { };
jsonstreams = callPackage ../development/python-modules/jsonstreams { };
jsonwatch = callPackage ../development/python-modules/jsonwatch { };
jug = callPackage ../development/python-modules/jug { };
@ -3832,6 +3834,8 @@ in {
mnemonic = callPackage ../development/python-modules/mnemonic { };
mne-python = callPackage ../development/python-modules/mne-python { };
mnist = callPackage ../development/python-modules/mnist { };
mocket = callPackage ../development/python-modules/mocket { };
@ -5708,6 +5712,8 @@ in {
pytest-catchlog = callPackage ../development/python-modules/pytest-catchlog { };
pytest-celery = callPackage ../development/python-modules/pytest-celery { };
pytest-check = callPackage ../development/python-modules/pytest-check { };
pytest-click = callPackage ../development/python-modules/pytest-click { };
@ -5815,6 +5821,8 @@ in {
pytest-subtesthack = callPackage ../development/python-modules/pytest-subtesthack { };
pytest-subtests = callPackage ../development/python-modules/pytest-subtests { };
pytest-sugar = callPackage ../development/python-modules/pytest-sugar { };
pytest-testmon = callPackage ../development/python-modules/pytest-testmon { };