Merge remote-tracking branch 'origin/staging-next' into staging
Conflicts: pkgs/development/python-modules/googleapis-common-protos/default.nix
This commit is contained in:
commit
e379e3d4bb
169 changed files with 1683 additions and 789 deletions
|
@ -78,7 +78,7 @@ rec {
|
|||
|
||||
2. (modern) a pattern for the platform `parsed` field.
|
||||
|
||||
We can inject these into a patten for the whole of a structured platform,
|
||||
We can inject these into a pattern for the whole of a structured platform,
|
||||
and then match that.
|
||||
*/
|
||||
platformMatch = platform: elem: let
|
||||
|
|
|
@ -26,6 +26,7 @@ let
|
|||
take
|
||||
;
|
||||
inherit (lib.attrsets)
|
||||
attrByPath
|
||||
optionalAttrs
|
||||
;
|
||||
inherit (lib.strings)
|
||||
|
@ -99,6 +100,49 @@ rec {
|
|||
type = lib.types.bool;
|
||||
};
|
||||
|
||||
/* Creates an Option attribute set for an option that specifies the
|
||||
package a module should use for some purpose.
|
||||
|
||||
Type: mkPackageOption :: pkgs -> string -> { default :: [string], example :: null | string | [string] } -> option
|
||||
|
||||
The package is specified as a list of strings representing its attribute path in nixpkgs.
|
||||
|
||||
Because of this, you need to pass nixpkgs itself as the first argument.
|
||||
|
||||
The second argument is the name of the option, used in the description "The <name> package to use.".
|
||||
|
||||
You can also pass an example value, either a literal string or a package's attribute path.
|
||||
|
||||
You can omit the default path if the name of the option is also attribute path in nixpkgs.
|
||||
|
||||
Example:
|
||||
mkPackageOption pkgs "hello" { }
|
||||
=> { _type = "option"; default = «derivation /nix/store/3r2vg51hlxj3cx5vscp0vkv60bqxkaq0-hello-2.10.drv»; defaultText = { ... }; description = "The hello package to use."; type = { ... }; }
|
||||
|
||||
Example:
|
||||
mkPackageOption pkgs "GHC" {
|
||||
default = [ "ghc" ];
|
||||
example = "pkgs.haskell.package.ghc921.ghc.withPackages (hkgs: [ hkgs.primes ])";
|
||||
}
|
||||
=> { _type = "option"; default = «derivation /nix/store/jxx55cxsjrf8kyh3fp2ya17q99w7541r-ghc-8.10.7.drv»; defaultText = { ... }; description = "The GHC package to use."; example = { ... }; type = { ... }; }
|
||||
*/
|
||||
mkPackageOption =
|
||||
# Package set (a specific version of nixpkgs)
|
||||
pkgs:
|
||||
# Name for the package, shown in option description
|
||||
name:
|
||||
{ default ? [ name ], example ? null }:
|
||||
let default' = if !isList default then [ default ] else default;
|
||||
in mkOption {
|
||||
type = lib.types.package;
|
||||
description = "The ${name} package to use.";
|
||||
default = attrByPath default'
|
||||
(throw "${concatStringsSep "." default'} cannot be found in pkgs") pkgs;
|
||||
defaultText = literalExpression ("pkgs." + concatStringsSep "." default');
|
||||
${if example != null then "example" else null} = literalExpression
|
||||
(if isList example then "pkgs." + concatStringsSep "." example else example);
|
||||
};
|
||||
|
||||
/* This option accepts anything, but it does not produce any result.
|
||||
|
||||
This is useful for sharing a module across different module sets
|
||||
|
|
|
@ -1920,12 +1920,10 @@
|
|||
github = "cburstedde";
|
||||
githubId = 109908;
|
||||
name = "Carsten Burstedde";
|
||||
keys = [
|
||||
{
|
||||
longkeyid = "rsa2048/0x0704CD9E550A6BCD";
|
||||
fingerprint = "1127 A432 6524 BF02 737B 544E 0704 CD9E 550A 6BCD";
|
||||
}
|
||||
];
|
||||
keys = [{
|
||||
longkeyid = "rsa2048/0x0704CD9E550A6BCD";
|
||||
fingerprint = "1127 A432 6524 BF02 737B 544E 0704 CD9E 550A 6BCD";
|
||||
}];
|
||||
};
|
||||
cdepillabout = {
|
||||
email = "cdep.illabout@gmail.com";
|
||||
|
@ -6373,7 +6371,7 @@
|
|||
keys = [{
|
||||
longkeyid = "rsa4096/0x7248991EFA8EFBEE";
|
||||
fingerprint = "01F5 0A29 D4AA 9117 5A11 BDB1 7248 991E FA8E FBEE";
|
||||
}];
|
||||
}];
|
||||
};
|
||||
kiwi = {
|
||||
email = "envy1988@gmail.com";
|
||||
|
@ -7028,7 +7026,7 @@
|
|||
email = "nullarequest@vivlaid.net";
|
||||
github = "Lunarequest";
|
||||
githubId = 30698906;
|
||||
name = "Advaith Madhukar"; #this is my legal name, I prefer Luna; please keep that in mind!
|
||||
name = "Luna D Dragon";
|
||||
};
|
||||
lionello = {
|
||||
email = "lio@lunesu.com";
|
||||
|
@ -10626,14 +10624,20 @@
|
|||
name = "Samuel Dionne-Riel";
|
||||
};
|
||||
samuelgrf = {
|
||||
email = "git@samuelgrf.com";
|
||||
email = "s@muel.gr";
|
||||
github = "samuelgrf";
|
||||
githubId = 67663538;
|
||||
name = "Samuel Gräfenstein";
|
||||
keys = [{
|
||||
longkeyid = "rsa4096/0xEF76A063F15C63C8";
|
||||
fingerprint = "FF24 5832 8FAF 4660 18C6 186E EF76 A063 F15C 63C8";
|
||||
}];
|
||||
keys = [
|
||||
{
|
||||
longkeyid = "rsa4096/0xDE75F92E318123F0";
|
||||
fingerprint = "6F2E 2A90 423C 8111 BFF2 895E DE75 F92E 3181 23F0";
|
||||
}
|
||||
{
|
||||
longkeyid = "rsa4096/0xEF76A063F15C63C8";
|
||||
fingerprint = "FF24 5832 8FAF 4660 18C6 186E EF76 A063 F15C 63C8";
|
||||
}
|
||||
];
|
||||
};
|
||||
samuelrivas = {
|
||||
email = "samuelrivas@gmail.com";
|
||||
|
@ -11514,10 +11518,10 @@
|
|||
name = "Justus K";
|
||||
};
|
||||
SubhrajyotiSen = {
|
||||
email = "subhrajyoti12@gmail.com";
|
||||
github = "SubhrajyotiSen";
|
||||
githubId = 12984845;
|
||||
name = "Subhrajyoti Sen";
|
||||
email = "subhrajyoti12@gmail.com";
|
||||
github = "SubhrajyotiSen";
|
||||
githubId = 12984845;
|
||||
name = "Subhrajyoti Sen";
|
||||
};
|
||||
suhr = {
|
||||
email = "suhr@i2pmail.org";
|
||||
|
|
|
@ -57,6 +57,80 @@ The function `mkOption` accepts the following arguments.
|
|||
: A textual description of the option, in DocBook format, that will be
|
||||
included in the NixOS manual.
|
||||
|
||||
## Utility functions for common option patterns {#sec-option-declarations-util}
|
||||
|
||||
### `mkEnableOption` {#sec-option-declarations-util-mkEnableOption}
|
||||
|
||||
Creates an Option attribute set for a boolean value option i.e an
|
||||
option to be toggled on or off.
|
||||
|
||||
This function takes a single string argument, the name of the thing to be toggled.
|
||||
|
||||
The option's description is "Whether to enable \<name\>.".
|
||||
|
||||
For example:
|
||||
|
||||
::: {#ex-options-declarations-util-mkEnableOption-magic .example}
|
||||
```nix
|
||||
lib.mkEnableOption "magic"
|
||||
# is like
|
||||
lib.mkOption {
|
||||
type = lib.types.bool;
|
||||
default = false;
|
||||
example = true;
|
||||
description = "Whether to enable magic.";
|
||||
}
|
||||
```
|
||||
|
||||
### `mkPackageOption` {#sec-option-declarations-util-mkPackageOption}
|
||||
|
||||
Usage:
|
||||
|
||||
```nix
|
||||
mkPackageOption pkgs "name" { default = [ "path" "in" "pkgs" ]; example = "literal example"; }
|
||||
```
|
||||
|
||||
Creates an Option attribute set for an option that specifies the package a module should use for some purpose.
|
||||
|
||||
**Note**: You shouldn’t necessarily make package options for all of your modules. You can always overwrite a specific package throughout nixpkgs by using [nixpkgs overlays](https://nixos.org/manual/nixpkgs/stable/#chap-overlays).
|
||||
|
||||
The default package is specified as a list of strings representing its attribute path in nixpkgs. Because of this, you need to pass nixpkgs itself as the first argument.
|
||||
|
||||
The second argument is the name of the option, used in the description "The \<name\> package to use.". You can also pass an example value, either a literal string or a package's attribute path.
|
||||
|
||||
You can omit the default path if the name of the option is also attribute path in nixpkgs.
|
||||
|
||||
::: {#ex-options-declarations-util-mkPackageOption .title}
|
||||
Examples:
|
||||
|
||||
::: {#ex-options-declarations-util-mkPackageOption-hello .example}
|
||||
```nix
|
||||
lib.mkPackageOption pkgs "hello" { }
|
||||
# is like
|
||||
lib.mkOption {
|
||||
type = lib.types.package;
|
||||
default = pkgs.hello;
|
||||
defaultText = lib.literalExpression "pkgs.hello";
|
||||
description = "The hello package to use.";
|
||||
}
|
||||
```
|
||||
|
||||
::: {#ex-options-declarations-util-mkPackageOption-ghc .example}
|
||||
```nix
|
||||
lib.mkPackageOption pkgs "GHC" {
|
||||
default = [ "ghc" ];
|
||||
example = "pkgs.haskell.package.ghc921.ghc.withPackages (hkgs: [ hkgs.primes ])";
|
||||
}
|
||||
# is like
|
||||
lib.mkOption {
|
||||
type = lib.types.package;
|
||||
default = pkgs.ghc;
|
||||
defaultText = lib.literalExpression "pkgs.ghc";
|
||||
example = lib.literalExpression "pkgs.haskell.package.ghc921.ghc.withPackages (hkgs: [ hkgs.primes ])";
|
||||
description = "The GHC package to use.";
|
||||
}
|
||||
```
|
||||
|
||||
## Extensible Option Types {#sec-option-declarations-eot}
|
||||
|
||||
Extensible option types is a feature that allow to extend certain types
|
||||
|
|
|
@ -97,125 +97,228 @@ options = {
|
|||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
<section xml:id="sec-option-declarations-eot">
|
||||
<title>Extensible Option Types</title>
|
||||
<para>
|
||||
Extensible option types is a feature that allow to extend certain
|
||||
types declaration through multiple module files. This feature only
|
||||
work with a restricted set of types, namely
|
||||
<literal>enum</literal> and <literal>submodules</literal> and any
|
||||
composed forms of them.
|
||||
</para>
|
||||
<para>
|
||||
Extensible option types can be used for <literal>enum</literal>
|
||||
options that affects multiple modules, or as an alternative to
|
||||
related <literal>enable</literal> options.
|
||||
</para>
|
||||
<para>
|
||||
As an example, we will take the case of display managers. There is
|
||||
a central display manager module for generic display manager
|
||||
options and a module file per display manager backend (sddm, gdm
|
||||
...).
|
||||
</para>
|
||||
<para>
|
||||
There are two approach to this module structure:
|
||||
</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<section xml:id="sec-option-declarations-util">
|
||||
<title>Utility functions for common option patterns</title>
|
||||
<section xml:id="sec-option-declarations-util-mkEnableOption">
|
||||
<title><literal>mkEnableOption</literal></title>
|
||||
<para>
|
||||
Creates an Option attribute set for a boolean value option i.e
|
||||
an option to be toggled on or off.
|
||||
</para>
|
||||
<para>
|
||||
This function takes a single string argument, the name of the
|
||||
thing to be toggled.
|
||||
</para>
|
||||
<para>
|
||||
The option’s description is <quote>Whether to enable
|
||||
<name>.</quote>.
|
||||
</para>
|
||||
<para>
|
||||
For example:
|
||||
</para>
|
||||
<anchor xml:id="ex-options-declarations-util-mkEnableOption-magic" />
|
||||
<programlisting language="bash">
|
||||
lib.mkEnableOption "magic"
|
||||
# is like
|
||||
lib.mkOption {
|
||||
type = lib.types.bool;
|
||||
default = false;
|
||||
example = true;
|
||||
description = "Whether to enable magic.";
|
||||
}
|
||||
</programlisting>
|
||||
<section xml:id="sec-option-declarations-util-mkPackageOption">
|
||||
<title><literal>mkPackageOption</literal></title>
|
||||
<para>
|
||||
Managing the display managers independently by adding an
|
||||
enable option to every display manager module backend. (NixOS)
|
||||
Usage:
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<programlisting language="bash">
|
||||
mkPackageOption pkgs "name" { default = [ "path" "in" "pkgs" ]; example = "literal example"; }
|
||||
</programlisting>
|
||||
<para>
|
||||
Managing the display managers in the central module by adding
|
||||
an option to select which display manager backend to use.
|
||||
Creates an Option attribute set for an option that specifies
|
||||
the package a module should use for some purpose.
|
||||
</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
<para>
|
||||
Both approaches have problems.
|
||||
</para>
|
||||
<para>
|
||||
Making backends independent can quickly become hard to manage. For
|
||||
display managers, there can be only one enabled at a time, but the
|
||||
type system can not enforce this restriction as there is no
|
||||
relation between each backend <literal>enable</literal> option. As
|
||||
a result, this restriction has to be done explicitely by adding
|
||||
assertions in each display manager backend module.
|
||||
</para>
|
||||
<para>
|
||||
On the other hand, managing the display managers backends in the
|
||||
central module will require to change the central module option
|
||||
every time a new backend is added or removed.
|
||||
</para>
|
||||
<para>
|
||||
By using extensible option types, it is possible to create a
|
||||
placeholder option in the central module
|
||||
(<link linkend="ex-option-declaration-eot-service">Example:
|
||||
Extensible type placeholder in the service module</link>), and to
|
||||
extend it in each backend module
|
||||
(<link linkend="ex-option-declaration-eot-backend-gdm">Example:
|
||||
Extending
|
||||
<literal>services.xserver.displayManager.enable</literal> in the
|
||||
<literal>gdm</literal> module</link>,
|
||||
<link linkend="ex-option-declaration-eot-backend-sddm">Example:
|
||||
Extending
|
||||
<literal>services.xserver.displayManager.enable</literal> in the
|
||||
<literal>sddm</literal> module</link>).
|
||||
</para>
|
||||
<para>
|
||||
As a result, <literal>displayManager.enable</literal> option
|
||||
values can be added without changing the main service module file
|
||||
and the type system automatically enforce that there can only be a
|
||||
single display manager enabled.
|
||||
</para>
|
||||
<anchor xml:id="ex-option-declaration-eot-service" />
|
||||
<para>
|
||||
<emphasis role="strong">Example: Extensible type placeholder in
|
||||
the service module</emphasis>
|
||||
</para>
|
||||
<programlisting language="bash">
|
||||
<para>
|
||||
<emphasis role="strong">Note</emphasis>: You shouldn’t
|
||||
necessarily make package options for all of your modules. You
|
||||
can always overwrite a specific package throughout nixpkgs by
|
||||
using
|
||||
<link xlink:href="https://nixos.org/manual/nixpkgs/stable/#chap-overlays">nixpkgs
|
||||
overlays</link>.
|
||||
</para>
|
||||
<para>
|
||||
The default package is specified as a list of strings
|
||||
representing its attribute path in nixpkgs. Because of this,
|
||||
you need to pass nixpkgs itself as the first argument.
|
||||
</para>
|
||||
<para>
|
||||
The second argument is the name of the option, used in the
|
||||
description <quote>The <name> package to use.</quote>.
|
||||
You can also pass an example value, either a literal string or
|
||||
a package’s attribute path.
|
||||
</para>
|
||||
<para>
|
||||
You can omit the default path if the name of the option is
|
||||
also attribute path in nixpkgs.
|
||||
</para>
|
||||
<anchor xml:id="ex-options-declarations-util-mkPackageOption" />
|
||||
<para>
|
||||
Examples:
|
||||
</para>
|
||||
<anchor xml:id="ex-options-declarations-util-mkPackageOption-hello" />
|
||||
<programlisting language="bash">
|
||||
lib.mkPackageOption pkgs "hello" { }
|
||||
# is like
|
||||
lib.mkOption {
|
||||
type = lib.types.package;
|
||||
default = pkgs.hello;
|
||||
defaultText = lib.literalExpression "pkgs.hello";
|
||||
description = "The hello package to use.";
|
||||
}
|
||||
</programlisting>
|
||||
<anchor xml:id="ex-options-declarations-util-mkPackageOption-ghc" />
|
||||
<programlisting language="bash">
|
||||
lib.mkPackageOption pkgs "GHC" {
|
||||
default = [ "ghc" ];
|
||||
example = "pkgs.haskell.package.ghc921.ghc.withPackages (hkgs: [ hkgs.primes ])";
|
||||
}
|
||||
# is like
|
||||
lib.mkOption {
|
||||
type = lib.types.package;
|
||||
default = pkgs.ghc;
|
||||
defaultText = lib.literalExpression "pkgs.ghc";
|
||||
example = lib.literalExpression "pkgs.haskell.package.ghc921.ghc.withPackages (hkgs: [ hkgs.primes ])";
|
||||
description = "The GHC package to use.";
|
||||
}
|
||||
</programlisting>
|
||||
<section xml:id="sec-option-declarations-eot">
|
||||
<title>Extensible Option Types</title>
|
||||
<para>
|
||||
Extensible option types is a feature that allow to extend
|
||||
certain types declaration through multiple module files.
|
||||
This feature only work with a restricted set of types,
|
||||
namely <literal>enum</literal> and
|
||||
<literal>submodules</literal> and any composed forms of
|
||||
them.
|
||||
</para>
|
||||
<para>
|
||||
Extensible option types can be used for
|
||||
<literal>enum</literal> options that affects multiple
|
||||
modules, or as an alternative to related
|
||||
<literal>enable</literal> options.
|
||||
</para>
|
||||
<para>
|
||||
As an example, we will take the case of display managers.
|
||||
There is a central display manager module for generic
|
||||
display manager options and a module file per display
|
||||
manager backend (sddm, gdm ...).
|
||||
</para>
|
||||
<para>
|
||||
There are two approach to this module structure:
|
||||
</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>
|
||||
Managing the display managers independently by adding an
|
||||
enable option to every display manager module backend.
|
||||
(NixOS)
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
Managing the display managers in the central module by
|
||||
adding an option to select which display manager backend
|
||||
to use.
|
||||
</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
<para>
|
||||
Both approaches have problems.
|
||||
</para>
|
||||
<para>
|
||||
Making backends independent can quickly become hard to
|
||||
manage. For display managers, there can be only one enabled
|
||||
at a time, but the type system can not enforce this
|
||||
restriction as there is no relation between each backend
|
||||
<literal>enable</literal> option. As a result, this
|
||||
restriction has to be done explicitely by adding assertions
|
||||
in each display manager backend module.
|
||||
</para>
|
||||
<para>
|
||||
On the other hand, managing the display managers backends in
|
||||
the central module will require to change the central module
|
||||
option every time a new backend is added or removed.
|
||||
</para>
|
||||
<para>
|
||||
By using extensible option types, it is possible to create a
|
||||
placeholder option in the central module
|
||||
(<link linkend="ex-option-declaration-eot-service">Example:
|
||||
Extensible type placeholder in the service module</link>),
|
||||
and to extend it in each backend module
|
||||
(<link linkend="ex-option-declaration-eot-backend-gdm">Example:
|
||||
Extending
|
||||
<literal>services.xserver.displayManager.enable</literal> in
|
||||
the <literal>gdm</literal> module</link>,
|
||||
<link linkend="ex-option-declaration-eot-backend-sddm">Example:
|
||||
Extending
|
||||
<literal>services.xserver.displayManager.enable</literal> in
|
||||
the <literal>sddm</literal> module</link>).
|
||||
</para>
|
||||
<para>
|
||||
As a result, <literal>displayManager.enable</literal> option
|
||||
values can be added without changing the main service module
|
||||
file and the type system automatically enforce that there
|
||||
can only be a single display manager enabled.
|
||||
</para>
|
||||
<anchor xml:id="ex-option-declaration-eot-service" />
|
||||
<para>
|
||||
<emphasis role="strong">Example: Extensible type placeholder
|
||||
in the service module</emphasis>
|
||||
</para>
|
||||
<programlisting language="bash">
|
||||
services.xserver.displayManager.enable = mkOption {
|
||||
description = "Display manager to use";
|
||||
type = with types; nullOr (enum [ ]);
|
||||
};
|
||||
</programlisting>
|
||||
<anchor xml:id="ex-option-declaration-eot-backend-gdm" />
|
||||
<para>
|
||||
<emphasis role="strong">Example: Extending
|
||||
<literal>services.xserver.displayManager.enable</literal> in the
|
||||
<literal>gdm</literal> module</emphasis>
|
||||
</para>
|
||||
<programlisting language="bash">
|
||||
<anchor xml:id="ex-option-declaration-eot-backend-gdm" />
|
||||
<para>
|
||||
<emphasis role="strong">Example: Extending
|
||||
<literal>services.xserver.displayManager.enable</literal> in
|
||||
the <literal>gdm</literal> module</emphasis>
|
||||
</para>
|
||||
<programlisting language="bash">
|
||||
services.xserver.displayManager.enable = mkOption {
|
||||
type = with types; nullOr (enum [ "gdm" ]);
|
||||
};
|
||||
</programlisting>
|
||||
<anchor xml:id="ex-option-declaration-eot-backend-sddm" />
|
||||
<para>
|
||||
<emphasis role="strong">Example: Extending
|
||||
<literal>services.xserver.displayManager.enable</literal> in the
|
||||
<literal>sddm</literal> module</emphasis>
|
||||
</para>
|
||||
<programlisting language="bash">
|
||||
<anchor xml:id="ex-option-declaration-eot-backend-sddm" />
|
||||
<para>
|
||||
<emphasis role="strong">Example: Extending
|
||||
<literal>services.xserver.displayManager.enable</literal> in
|
||||
the <literal>sddm</literal> module</emphasis>
|
||||
</para>
|
||||
<programlisting language="bash">
|
||||
services.xserver.displayManager.enable = mkOption {
|
||||
type = with types; nullOr (enum [ "sddm" ]);
|
||||
};
|
||||
</programlisting>
|
||||
<para>
|
||||
The placeholder declaration is a standard
|
||||
<literal>mkOption</literal> declaration, but it is important that
|
||||
extensible option declarations only use the
|
||||
<literal>type</literal> argument.
|
||||
</para>
|
||||
<para>
|
||||
Extensible option types work with any of the composed variants of
|
||||
<literal>enum</literal> such as
|
||||
<literal>with types; nullOr (enum [ "foo" "bar" ])</literal>
|
||||
or
|
||||
<literal>with types; listOf (enum [ "foo" "bar" ])</literal>.
|
||||
</para>
|
||||
<para>
|
||||
The placeholder declaration is a standard
|
||||
<literal>mkOption</literal> declaration, but it is important
|
||||
that extensible option declarations only use the
|
||||
<literal>type</literal> argument.
|
||||
</para>
|
||||
<para>
|
||||
Extensible option types work with any of the composed
|
||||
variants of <literal>enum</literal> such as
|
||||
<literal>with types; nullOr (enum [ "foo" "bar" ])</literal>
|
||||
or
|
||||
<literal>with types; listOf (enum [ "foo" "bar" ])</literal>.
|
||||
</para>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
|
|
|
@ -620,6 +620,14 @@
|
|||
files.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
A new option
|
||||
<literal>boot.initrd.extraModprobeConfig</literal> has been
|
||||
added which can be used to configure kernel modules that are
|
||||
loaded in the initrd.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<literal>fetchFromSourcehut</literal> now allows fetching
|
||||
|
|
|
@ -217,6 +217,8 @@ In addition to numerous new and upgraded packages, this release has the followin
|
|||
|
||||
- The option `services.duplicati.dataDir` has been added to allow changing the location of duplicati's files.
|
||||
|
||||
- A new option `boot.initrd.extraModprobeConfig` has been added which can be used to configure kernel modules that are loaded in the initrd.
|
||||
|
||||
- `fetchFromSourcehut` now allows fetching repositories recursively
|
||||
using `fetchgit` or `fetchhg` if the argument `fetchSubmodules`
|
||||
is set to `true`.
|
||||
|
|
|
@ -249,33 +249,29 @@ in
|
|||
{
|
||||
# interface
|
||||
options = {
|
||||
services.dokuwiki = mkOption {
|
||||
type = types.submodule {
|
||||
services.dokuwiki = {
|
||||
|
||||
options.sites = mkOption {
|
||||
type = types.attrsOf (types.submodule siteOpts);
|
||||
default = {};
|
||||
description = "Specification of one or more DokuWiki sites to serve";
|
||||
};
|
||||
|
||||
options.webserver = mkOption {
|
||||
type = types.enum [ "nginx" "caddy" ];
|
||||
default = "nginx";
|
||||
description = ''
|
||||
Whether to use nginx or caddy for virtual host management.
|
||||
|
||||
Further nginx configuration can be done by adapting <literal>services.nginx.virtualHosts.<name></literal>.
|
||||
See <xref linkend="opt-services.nginx.virtualHosts"/> for further information.
|
||||
|
||||
Further apache2 configuration can be done by adapting <literal>services.httpd.virtualHosts.<name></literal>.
|
||||
See <xref linkend="opt-services.httpd.virtualHosts"/> for further information.
|
||||
'';
|
||||
};
|
||||
sites = mkOption {
|
||||
type = types.attrsOf (types.submodule siteOpts);
|
||||
default = {};
|
||||
description = "Specification of one or more DokuWiki sites to serve";
|
||||
};
|
||||
default = {};
|
||||
description = "DokuWiki configuration";
|
||||
};
|
||||
|
||||
webserver = mkOption {
|
||||
type = types.enum [ "nginx" "caddy" ];
|
||||
default = "nginx";
|
||||
description = ''
|
||||
Whether to use nginx or caddy for virtual host management.
|
||||
|
||||
Further nginx configuration can be done by adapting <literal>services.nginx.virtualHosts.<name></literal>.
|
||||
See <xref linkend="opt-services.nginx.virtualHosts"/> for further information.
|
||||
|
||||
Further apache2 configuration can be done by adapting <literal>services.httpd.virtualHosts.<name></literal>.
|
||||
See <xref linkend="opt-services.httpd.virtualHosts"/> for further information.
|
||||
'';
|
||||
};
|
||||
|
||||
};
|
||||
};
|
||||
|
||||
# implementation
|
||||
|
|
|
@ -245,12 +245,9 @@ let
|
|||
defaultListen =
|
||||
if vhost.listen != [] then vhost.listen
|
||||
else
|
||||
let addrs = if vhost.listenAddresses != [] then vhost.listenAddresses else (
|
||||
[ "0.0.0.0" ] ++ optional enableIPv6 "[::0]"
|
||||
);
|
||||
in
|
||||
optionals (hasSSL || vhost.rejectSSL) (map (addr: { inherit addr; port = 443; ssl = true; }) addrs)
|
||||
++ optionals (!onlySSL) (map (addr: { inherit addr; port = 80; ssl = false; }) addrs);
|
||||
let addrs = if vhost.listenAddresses != [] then vhost.listenAddresses else cfg.defaultListenAddresses;
|
||||
in optionals (hasSSL || vhost.rejectSSL) (map (addr: { inherit addr; port = 443; ssl = true; }) addrs)
|
||||
++ optionals (!onlySSL) (map (addr: { inherit addr; port = 80; ssl = false; }) addrs);
|
||||
|
||||
hostListen =
|
||||
if vhost.forceSSL
|
||||
|
@ -432,6 +429,16 @@ in
|
|||
";
|
||||
};
|
||||
|
||||
defaultListenAddresses = mkOption {
|
||||
type = types.listOf types.str;
|
||||
default = [ "0.0.0.0" ] ++ optional enableIPv6 "[::0]";
|
||||
defaultText = literalExpression ''[ "0.0.0.0" ] ++ lib.optional config.networking.enableIPv6 "[::0]"'';
|
||||
example = literalExpression ''[ "10.0.0.12" "[2002:a00:1::]" ]'';
|
||||
description = "
|
||||
If vhosts do not specify listenAddresses, use these addresses by default.
|
||||
";
|
||||
};
|
||||
|
||||
package = mkOption {
|
||||
default = pkgs.nginxStable;
|
||||
defaultText = literalExpression "pkgs.nginxStable";
|
||||
|
|
|
@ -34,6 +34,23 @@ with lib;
|
|||
type = types.lines;
|
||||
};
|
||||
|
||||
boot.initrd.extraModprobeConfig = mkOption {
|
||||
default = "";
|
||||
example =
|
||||
''
|
||||
options zfs zfs_arc_max=1073741824
|
||||
'';
|
||||
description = ''
|
||||
Does exactly the same thing as
|
||||
<option>boot.extraModprobeConfig</option>, except
|
||||
that the generated <filename>modprobe.conf</filename>
|
||||
file is also included in the initrd.
|
||||
This is useful for setting module options for kernel
|
||||
modules that are loaded during early boot in the initrd.
|
||||
'';
|
||||
type = types.lines;
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
|
||||
|
@ -50,6 +67,9 @@ with lib;
|
|||
'')}
|
||||
${config.boot.extraModprobeConfig}
|
||||
'';
|
||||
environment.etc."modprobe.d/nixos-initrd.conf".text = ''
|
||||
${config.boot.initrd.extraModprobeConfig}
|
||||
'';
|
||||
environment.etc."modprobe.d/debian.conf".source = pkgs.kmod-debian-aliases;
|
||||
|
||||
environment.systemPackages = [ pkgs.kmod ];
|
||||
|
|
|
@ -338,6 +338,9 @@ let
|
|||
{ object = pkgs.writeText "mdadm.conf" config.boot.initrd.mdadmConf;
|
||||
symlink = "/etc/mdadm.conf";
|
||||
}
|
||||
{ object = config.environment.etc."modprobe.d/nixos-initrd.conf".source;
|
||||
symlink = "/etc/modprobe.d/nixos-initrd.conf";
|
||||
}
|
||||
{ object = pkgs.runCommand "initrd-kmod-blacklist-ubuntu" {
|
||||
src = "${pkgs.kmod-blacklist-ubuntu}/modprobe.conf";
|
||||
preferLocalBuild = true;
|
||||
|
|
|
@ -54,6 +54,7 @@ in
|
|||
borgbackup = handleTest ./borgbackup.nix {};
|
||||
botamusique = handleTest ./botamusique.nix {};
|
||||
bpf = handleTestOn ["x86_64-linux" "aarch64-linux"] ./bpf.nix {};
|
||||
brscan5 = handleTest ./brscan5.nix {};
|
||||
btrbk = handleTest ./btrbk.nix {};
|
||||
buildbot = handleTest ./buildbot.nix {};
|
||||
buildkite-agents = handleTest ./buildkite-agents.nix {};
|
||||
|
@ -121,6 +122,7 @@ in
|
|||
docker-tools-cross = handleTestOn ["x86_64-linux" "aarch64-linux"] ./docker-tools-cross.nix {};
|
||||
docker-tools-overlay = handleTestOn ["x86_64-linux"] ./docker-tools-overlay.nix {};
|
||||
documize = handleTest ./documize.nix {};
|
||||
doh-proxy-rust = handleTest ./doh-proxy-rust.nix {};
|
||||
dokuwiki = handleTest ./dokuwiki.nix {};
|
||||
domination = handleTest ./domination.nix {};
|
||||
dovecot = handleTest ./dovecot.nix {};
|
||||
|
@ -130,6 +132,7 @@ in
|
|||
ecryptfs = handleTest ./ecryptfs.nix {};
|
||||
ejabberd = handleTest ./xmpp/ejabberd.nix {};
|
||||
elk = handleTestOn ["x86_64-linux"] ./elk.nix {};
|
||||
emacs-daemon = handleTest ./emacs-daemon.nix {};
|
||||
engelsystem = handleTest ./engelsystem.nix {};
|
||||
enlightenment = handleTest ./enlightenment.nix {};
|
||||
env = handleTest ./env.nix {};
|
||||
|
@ -141,6 +144,7 @@ in
|
|||
etesync-dav = handleTest ./etesync-dav.nix {};
|
||||
fancontrol = handleTest ./fancontrol.nix {};
|
||||
fcitx = handleTest ./fcitx {};
|
||||
fenics = handleTest ./fenics.nix {};
|
||||
ferm = handleTest ./ferm.nix {};
|
||||
firefox = handleTest ./firefox.nix { firefoxPackage = pkgs.firefox; };
|
||||
firefox-esr = handleTest ./firefox.nix { firefoxPackage = pkgs.firefox-esr; }; # used in `tested` job
|
||||
|
@ -157,6 +161,7 @@ in
|
|||
fsck = handleTest ./fsck.nix {};
|
||||
ft2-clone = handleTest ./ft2-clone.nix {};
|
||||
gerrit = handleTest ./gerrit.nix {};
|
||||
geth = handleTest ./geth.nix {};
|
||||
ghostunnel = handleTest ./ghostunnel.nix {};
|
||||
gitdaemon = handleTest ./gitdaemon.nix {};
|
||||
gitea = handleTest ./gitea.nix {};
|
||||
|
@ -181,6 +186,7 @@ in
|
|||
hadoop.all = handleTestOn [ "x86_64-linux" ] ./hadoop/hadoop.nix {};
|
||||
hadoop.hdfs = handleTestOn [ "x86_64-linux" ] ./hadoop/hdfs.nix {};
|
||||
hadoop.yarn = handleTestOn [ "x86_64-linux" ] ./hadoop/yarn.nix {};
|
||||
haka = handleTest ./haka.nix {};
|
||||
haproxy = handleTest ./haproxy.nix {};
|
||||
hardened = handleTest ./hardened.nix {};
|
||||
hedgedoc = handleTest ./hedgedoc.nix {};
|
||||
|
@ -218,14 +224,19 @@ in
|
|||
iodine = handleTest ./iodine.nix {};
|
||||
ipfs = handleTest ./ipfs.nix {};
|
||||
ipv6 = handleTest ./ipv6.nix {};
|
||||
iscsi-multipath-root = handleTest ./iscsi-multipath-root.nix {};
|
||||
iscsi-root = handleTest ./iscsi-root.nix {};
|
||||
isso = handleTest ./isso.nix {};
|
||||
jackett = handleTest ./jackett.nix {};
|
||||
jellyfin = handleTest ./jellyfin.nix {};
|
||||
jenkins = handleTest ./jenkins.nix {};
|
||||
jenkins-cli = handleTest ./jenkins-cli.nix {};
|
||||
jibri = handleTest ./jibri.nix {};
|
||||
jirafeau = handleTest ./jirafeau.nix {};
|
||||
jitsi-meet = handleTest ./jitsi-meet.nix {};
|
||||
k3s = handleTest ./k3s.nix {};
|
||||
k3s-single-node = handleTest ./k3s-single-node.nix {};
|
||||
k3s-single-node-docker = handleTest ./k3s-single-node-docker.nix {};
|
||||
kafka = handleTest ./kafka.nix {};
|
||||
kbd-setfont-decompress = handleTest ./kbd-setfont-decompress.nix {};
|
||||
kbd-update-search-paths-patch = handleTest ./kbd-update-search-paths-patch.nix {};
|
||||
|
@ -273,6 +284,7 @@ in
|
|||
matrix-conduit = handleTest ./matrix-conduit.nix {};
|
||||
matrix-synapse = handleTest ./matrix-synapse.nix {};
|
||||
mattermost = handleTest ./mattermost.nix {};
|
||||
mediatomb = handleTest ./mediatomb.nix {};
|
||||
mediawiki = handleTest ./mediawiki.nix {};
|
||||
meilisearch = handleTest ./meilisearch.nix {};
|
||||
memcached = handleTest ./memcached.nix {};
|
||||
|
@ -285,6 +297,7 @@ in
|
|||
misc = handleTest ./misc.nix {};
|
||||
mjolnir = handleTest ./matrix/mjolnir.nix {};
|
||||
mod_perl = handleTest ./mod_perl.nix {};
|
||||
molly-brown = handleTest ./molly-brown.nix {};
|
||||
mongodb = handleTest ./mongodb.nix {};
|
||||
moodle = handleTest ./moodle.nix {};
|
||||
morty = handleTest ./morty.nix {};
|
||||
|
@ -378,6 +391,7 @@ in
|
|||
php74 = handleTest ./php { php = pkgs.php74; };
|
||||
php80 = handleTest ./php { php = pkgs.php80; };
|
||||
php81 = handleTest ./php { php = pkgs.php81; };
|
||||
pict-rs = handleTest ./pict-rs.nix {};
|
||||
pinnwand = handleTest ./pinnwand.nix {};
|
||||
plasma5 = handleTest ./plasma5.nix {};
|
||||
plasma5-systemd-start = handleTest ./plasma5-systemd-start.nix {};
|
||||
|
@ -419,12 +433,16 @@ in
|
|||
rasdaemon = handleTest ./rasdaemon.nix {};
|
||||
redis = handleTest ./redis.nix {};
|
||||
redmine = handleTest ./redmine.nix {};
|
||||
resolv = handleTest ./resolv.nix {};
|
||||
restartByActivationScript = handleTest ./restart-by-activation-script.nix {};
|
||||
restic = handleTest ./restic.nix {};
|
||||
riak = handleTest ./riak.nix {};
|
||||
robustirc-bridge = handleTest ./robustirc-bridge.nix {};
|
||||
roundcube = handleTest ./roundcube.nix {};
|
||||
rspamd = handleTest ./rspamd.nix {};
|
||||
rss2email = handleTest ./rss2email.nix {};
|
||||
rstudio-server = handleTest ./rstudio-server.nix {};
|
||||
rsyncd = handleTest ./rsyncd.nix {};
|
||||
rsyslogd = handleTest ./rsyslogd.nix {};
|
||||
rxe = handleTest ./rxe.nix {};
|
||||
sabnzbd = handleTest ./sabnzbd.nix {};
|
||||
|
@ -445,6 +463,7 @@ in
|
|||
smokeping = handleTest ./smokeping.nix {};
|
||||
snapcast = handleTest ./snapcast.nix {};
|
||||
snapper = handleTest ./snapper.nix {};
|
||||
soapui = handleTest ./soapui.nix {};
|
||||
sogo = handleTest ./sogo.nix {};
|
||||
solanum = handleTest ./solanum.nix {};
|
||||
solr = handleTest ./solr.nix {};
|
||||
|
@ -481,6 +500,7 @@ in
|
|||
systemd-timesyncd = handleTest ./systemd-timesyncd.nix {};
|
||||
systemd-unit-path = handleTest ./systemd-unit-path.nix {};
|
||||
taskserver = handleTest ./taskserver.nix {};
|
||||
teeworlds = handleTest ./teeworlds.nix {};
|
||||
telegraf = handleTest ./telegraf.nix {};
|
||||
teleport = handleTest ./teleport.nix {};
|
||||
thelounge = handleTest ./thelounge.nix {};
|
||||
|
@ -524,6 +544,7 @@ in
|
|||
vscodium = discoverTests (import ./vscodium.nix);
|
||||
wasabibackend = handleTest ./wasabibackend.nix {};
|
||||
wiki-js = handleTest ./wiki-js.nix {};
|
||||
wine = handleTest ./wine.nix {};
|
||||
wireguard = handleTest ./wireguard {};
|
||||
without-nix = handleTest ./without-nix.nix {};
|
||||
wmderland = handleTest ./wmderland.nix {};
|
||||
|
|
|
@ -1,4 +1,29 @@
|
|||
import ./make-test-python.nix ({ pkgs, ... }: {
|
||||
import ./make-test-python.nix ({ pkgs, ... }:
|
||||
let
|
||||
keystore = {
|
||||
address = "9377bc3936de934c497e22917b81aa8774ac3bb0";
|
||||
crypto = {
|
||||
cipher = "aes-128-ctr";
|
||||
ciphertext = "ad8341d8ef225650403fd366c955f41095e438dd966a3c84b3d406818c1e366c";
|
||||
cipherparams = {
|
||||
iv = "2a09f7a72fd6dff7c43150ff437e6ac2";
|
||||
};
|
||||
kdf = "scrypt";
|
||||
kdfparams = {
|
||||
dklen = 32;
|
||||
n = 262144;
|
||||
p = 1;
|
||||
r = 8;
|
||||
salt = "d1a153845bb80cd6274c87c5bac8ac09fdfac5ff131a6f41b5ed319667f12027";
|
||||
};
|
||||
mac = "a9621ad88fa1d042acca6fc2fcd711f7e05bfbadea3f30f379235570c8e270d3";
|
||||
};
|
||||
id = "89e847a3-1527-42f6-a321-77de0a14ce02";
|
||||
version = 3;
|
||||
};
|
||||
keystore-file = pkgs.writeText "keystore-file" (builtins.toJSON keystore);
|
||||
in
|
||||
{
|
||||
name = "quorum";
|
||||
meta = with pkgs.lib.maintainers; {
|
||||
maintainers = [ mmahut ];
|
||||
|
@ -62,18 +87,16 @@ import ./make-test-python.nix ({ pkgs, ... }: {
|
|||
|
||||
testScript = ''
|
||||
start_all()
|
||||
machine.wait_until_succeeds("mkdir -p /var/lib/quorum/keystore")
|
||||
machine.wait_until_succeeds(
|
||||
'echo \{\\"address\\":\\"9377bc3936de934c497e22917b81aa8774ac3bb0\\",\\"crypto\\":\{\\"cipher\\":\\"aes-128-ctr\\",\\"ciphertext\\":\\"ad8341d8ef225650403fd366c955f41095e438dd966a3c84b3d406818c1e366c\\",\\"cipherparams\\":\{\\"iv\\":\\"2a09f7a72fd6dff7c43150ff437e6ac2\\"\},\\"kdf\\":\\"scrypt\\",\\"kdfparams\\":\{\\"dklen\\":32,\\"n\\":262144,\\"p\\":1,\\"r\\":8,\\"salt\\":\\"d1a153845bb80cd6274c87c5bac8ac09fdfac5ff131a6f41b5ed319667f12027\\"\},\\"mac\\":\\"a9621ad88fa1d042acca6fc2fcd711f7e05bfbadea3f30f379235570c8e270d3\\"\},\\"id\\":\\"89e847a3-1527-42f6-a321-77de0a14ce02\\",\\"version\\":3\}\\" > /var/lib/quorum/keystore/UTC--2020-03-23T11-08-34.144812212Z--9377bc3936de934c497e22917b81aa8774ac3bb0'
|
||||
machine.succeed("mkdir -p /var/lib/quorum/keystore")
|
||||
machine.succeed(
|
||||
'cp ${keystore-file} /var/lib/quorum/keystore/UTC--2020-03-23T11-08-34.144812212Z--${keystore.address}'
|
||||
)
|
||||
machine.wait_until_succeeds(
|
||||
machine.succeed(
|
||||
"echo fe2725c4e8f7617764b845e8d939a65c664e7956eb47ed7d934573f16488efc1 > /var/lib/quorum/nodekey"
|
||||
)
|
||||
machine.wait_until_succeeds("systemctl restart quorum")
|
||||
machine.succeed("systemctl restart quorum")
|
||||
machine.wait_for_unit("quorum.service")
|
||||
machine.sleep(15)
|
||||
machine.wait_until_succeeds(
|
||||
'geth attach /var/lib/quorum/geth.ipc --exec "eth.accounts" | grep 0x9377bc3936de934c497e22917b81aa8774ac3bb0'
|
||||
)
|
||||
machine.succeed('geth attach /var/lib/quorum/geth.ipc --exec "eth.accounts" | grep ${keystore.address}')
|
||||
'';
|
||||
})
|
||||
|
|
|
@ -35,7 +35,7 @@ let
|
|||
};
|
||||
};
|
||||
|
||||
variants = [ "base" "full" "minimal" "staging" "unstable" ];
|
||||
variants = [ "base" "full" "minimal" "staging" "unstable" "wayland" ];
|
||||
|
||||
in listToAttrs (map (makeWineTest "winePackages" [ hello32 ]) variants
|
||||
++ map (makeWineTest "wineWowPackages" [ hello32 hello64 ]) variants)
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ lib, fetchFromGitHub, rustPlatform, pkg-config, openssl, withRodio ? true
|
||||
{ lib, stdenv, fetchFromGitHub, rustPlatform, pkg-config, openssl, withRodio ? true
|
||||
, withALSA ? true, alsa-lib ? null, withPulseAudio ? false, libpulseaudio ? null
|
||||
, withPortAudio ? false, portaudio ? null }:
|
||||
|
||||
|
@ -35,5 +35,6 @@ rustPlatform.buildRustPackage rec {
|
|||
license = with licenses; [ mit ];
|
||||
maintainers = with maintainers; [ bennofs ];
|
||||
platforms = platforms.unix;
|
||||
broken = stdenv.isDarwin; # never built on Hydra https://hydra.nixos.org/job/nixpkgs/trunk/librespot.x86_64-darwin
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,22 +1,26 @@
|
|||
{ stdenv, lib, fetchFromGitHub, rustPlatform, pkg-config, ncurses, openssl, libiconv
|
||||
, withALSA ? true, alsa-lib ? null
|
||||
, withPulseAudio ? false, libpulseaudio ? null
|
||||
, withPortAudio ? false, portaudio ? null
|
||||
, withMPRIS ? false, dbus ? null
|
||||
, withALSA ? true, alsa-lib
|
||||
, withPulseAudio ? false, libpulseaudio
|
||||
, withPortAudio ? false, portaudio
|
||||
, withMPRIS ? false, dbus
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "ncspot";
|
||||
version = "0.9.3";
|
||||
version = "0.9.5";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "hrkfdn";
|
||||
repo = "ncspot";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-k4EGyQjjJCvUhp56OjYl63n+giI05GiIS2++I1SVhCg=";
|
||||
sha256 = "sha256-HnP0dXKkMssDAhrsA99bTCVGdov9t5+1y8fJ+BWTM80=";
|
||||
};
|
||||
|
||||
cargoSha256 = "sha256-YsjInqmkPnAwqgRBDiwcLH0DDqCF0NElrn+WO2v+ATM=";
|
||||
# Upstream now only supports rust 1.58+, but this version is not yet available in nixpkgs.
|
||||
# See https://github.com/hrkfdn/ncspot/issues/714
|
||||
patches = [ ./rust_1_57_support.patch ];
|
||||
|
||||
cargoSha256 = "sha256-g6UMwirsSV+/NtFIfEZrz5h/OitPQcDeSawh7wq4TLI=";
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
|
||||
|
|
21
pkgs/applications/audio/ncspot/rust_1_57_support.patch
Normal file
21
pkgs/applications/audio/ncspot/rust_1_57_support.patch
Normal file
|
@ -0,0 +1,21 @@
|
|||
diff --git a/src/ui/listview.rs b/src/ui/listview.rs
|
||||
index 17fead7..e6c72b6 100644
|
||||
--- a/src/ui/listview.rs
|
||||
+++ b/src/ui/listview.rs
|
||||
@@ -85,7 +85,7 @@ impl<I: ListItem> ListView<I> {
|
||||
|
||||
pub fn content_height_with_paginator(&self) -> usize {
|
||||
let content_len = self.content.read().unwrap().len();
|
||||
- log::info!("content len: {content_len}");
|
||||
+ log::info!("content len: {}", content_len);
|
||||
|
||||
// add 1 more row for paginator if we can paginate
|
||||
if self.can_paginate() {
|
||||
@@ -97,7 +97,7 @@ impl<I: ListItem> ListView<I> {
|
||||
|
||||
fn can_paginate(&self) -> bool {
|
||||
let loaded = self.get_pagination().loaded_content();
|
||||
- log::info!("can paginate: {loaded}");
|
||||
+ log::info!("can paginate: {}", loaded);
|
||||
self.get_pagination().max_content().unwrap_or(0) > self.get_pagination().loaded_content()
|
||||
}
|
|
@ -1,4 +1,4 @@
|
|||
{ lib, stdenv, buildGoModule, fetchFromGitHub, libobjc, IOKit }:
|
||||
{ lib, stdenv, buildGoModule, fetchFromGitHub, libobjc, IOKit, nixosTests }:
|
||||
|
||||
let
|
||||
# A list of binaries to put into separate outputs
|
||||
|
@ -50,6 +50,8 @@ in buildGoModule rec {
|
|||
propagatedBuildInputs =
|
||||
lib.optionals stdenv.isDarwin [ libobjc IOKit ];
|
||||
|
||||
passthru.tests = { inherit (nixosTests) geth; };
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://geth.ethereum.org/";
|
||||
description = "Official golang implementation of the Ethereum protocol";
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
, Xaw3d, libXcursor, pkg-config, gettext, libXft, dbus, libpng, libjpeg, giflib
|
||||
, libtiff, librsvg, gconf, libxml2, imagemagick, gnutls, libselinux
|
||||
, alsa-lib, cairo, acl, gpm, AppKit, GSS, ImageIO, m17n_lib, libotf
|
||||
, sigtool, jansson, harfbuzz, sqlite
|
||||
, sigtool, jansson, harfbuzz, sqlite, nixosTests
|
||||
, dontRecurseIntoAttrs ,emacsPackagesFor
|
||||
, libgccjit, targetPlatform, makeWrapper # native-comp params
|
||||
, systemd ? null
|
||||
|
@ -208,6 +208,7 @@ let emacs = stdenv.mkDerivation (lib.optionalAttrs nativeComp {
|
|||
passthru = {
|
||||
inherit nativeComp;
|
||||
pkgs = dontRecurseIntoAttrs (emacsPackagesFor emacs);
|
||||
tests = { inherit (nixosTests) emacs-daemon; };
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
|
|
|
@ -113,6 +113,9 @@ in
|
|||
substituteInPlace src/nvim/CMakeLists.txt --replace " util" ""
|
||||
'';
|
||||
|
||||
# For treesitter plugins, libstdc++.so.6 will be needed
|
||||
NIX_LDFLAGS = [ "-lstdc++"];
|
||||
|
||||
# export PATH=$PWD/build/bin:${PATH}
|
||||
shellHook=''
|
||||
export VIMRUNTIME=$PWD/runtime
|
||||
|
|
|
@ -34,6 +34,7 @@
|
|||
, server ? false # build server version
|
||||
, sqlite
|
||||
, pam
|
||||
, nixosTests
|
||||
}:
|
||||
|
||||
let
|
||||
|
@ -209,7 +210,10 @@ in
|
|||
platforms = platforms.linux;
|
||||
};
|
||||
|
||||
passthru = { inherit server; };
|
||||
passthru = {
|
||||
inherit server;
|
||||
tests = { inherit (nixosTests) rstudio-server; };
|
||||
};
|
||||
} // lib.optionalAttrs (!server) {
|
||||
qtWrapperArgs = [
|
||||
"--suffix PATH : ${lib.makeBinPath [ gnumake ]}"
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ stdenv, lib, fetchurl, callPackage, patchelf, makeWrapper, coreutils, libusb1, avahi-compat, glib, libredirect }:
|
||||
{ stdenv, lib, fetchurl, callPackage, patchelf, makeWrapper, coreutils, libusb1, avahi-compat, glib, libredirect, nixosTests }:
|
||||
let
|
||||
myPatchElf = file: with lib; ''
|
||||
patchelf --set-interpreter \
|
||||
|
@ -88,6 +88,8 @@ stdenv.mkDerivation rec {
|
|||
|
||||
dontPatchELF = true;
|
||||
|
||||
passthru.tests = { inherit (nixosTests) brscan5; };
|
||||
|
||||
meta = {
|
||||
description = "Brother brscan5 sane backend driver";
|
||||
homepage = "https://www.brother.com";
|
||||
|
|
|
@ -3,11 +3,11 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "binance";
|
||||
version = "1.29.0";
|
||||
version = "1.30.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/binance/desktop/releases/download/v${version}/${pname}-${version}-amd64-linux.deb";
|
||||
sha256 = "sha256-LQX5RUTVm6lBdRzCFMBq1NLGGiLBVyykJ1LY9FqINnY=";
|
||||
sha256 = "sha256-Su8pVf5GSBK770D778MmrgYr0ov/JBTNcnL8EZzoG3U=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -6,13 +6,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "clight";
|
||||
version = "4.7";
|
||||
version = "4.8";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "FedeDP";
|
||||
repo = "Clight";
|
||||
rev = version;
|
||||
sha256 = "sha256-+u50XorUyeDsn4FaKdD0wEtQHkwtiyVDY0IAi0vehEQ=";
|
||||
sha256 = "sha256-nDI5Rq1iPVkj25HRpxmS9zxNDUy+9YsSwbZnEwYt86E=";
|
||||
};
|
||||
|
||||
# dbus-1.pc has datadir=/etc
|
||||
|
|
|
@ -1,32 +1,41 @@
|
|||
{ lib
|
||||
|
||||
, buildGoModule
|
||||
, fetchFromGitHub
|
||||
, sqlite
|
||||
, installShellFiles
|
||||
}:
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "expenses";
|
||||
version = "0.2.2";
|
||||
version = "0.2.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "manojkarthick";
|
||||
repo = "expenses";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-CaIbLtP7ziv9UBQE+QsNnqX65OV+6GIvkLwKm1G++iY=";
|
||||
sha256 = "sha256-sqsogF2swMvYZL7Kj+ealrB1AAgIe7ZXXDLRdHL6Q+0=";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-NWTFxF4QCH1q1xx+hmVmpvDeOlqH5Ai2+0ParE5px9M=";
|
||||
vendorSha256 = "sha256-Ac3f17Ws3Ne8Zo0vT+qlaMm/rhak9ua2jh5jlT6jF2Y=";
|
||||
|
||||
# package does not contain any tests as of v0.2.2
|
||||
# package does not contain any tests as of v0.2.3
|
||||
doCheck = false;
|
||||
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
|
||||
buildInputs = [ sqlite ];
|
||||
|
||||
ldflags = [
|
||||
"-s" "-w" "-X github.com/manojkarthick/expenses/cmd.Version=${version}"
|
||||
];
|
||||
|
||||
postInstall = ''
|
||||
installShellCompletion --cmd expenses \
|
||||
--bash <($out/bin/expenses completion bash) \
|
||||
--zsh <($out/bin/expenses completion zsh) \
|
||||
--fish <($out/bin/expenses completion fish)
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "An interactive command line expense logger";
|
||||
license = licenses.mit;
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
mkDerivation rec {
|
||||
pname = "heimer";
|
||||
version = "3.1.0";
|
||||
version = "3.2.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "juzzlin";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "sha256-F0Pl6Wk+sGfOegy7iljQH63kAMYlRYv7G9nBAAtDEkg=";
|
||||
sha256 = "sha256-aAFhShsC3FLGgtF/8XJbWIMBEO3/gcGeDZei69Luz+s=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
|
|
@ -13,12 +13,12 @@
|
|||
let font-droid = nerdfonts.override { fonts = [ "DroidSansMono" ]; };
|
||||
in stdenv.mkDerivation rec {
|
||||
pname = "koreader";
|
||||
version = "2021.12.1";
|
||||
version = "2022.01";
|
||||
|
||||
src = fetchurl {
|
||||
url =
|
||||
"https://github.com/koreader/koreader/releases/download/v${version}/koreader-${version}-amd64.deb";
|
||||
sha256 = "sha256-Ia0oCSGs6UYcvZVEhNpiOh3D08FgXqjqpgsQJojd3dk=";
|
||||
sha256 = "sha256-XuIYNvGhzJ649LxVPit2AOmb+YOHtZA4AhDyxjaB5OE=";
|
||||
};
|
||||
|
||||
sourceRoot = ".";
|
||||
|
|
98
pkgs/applications/misc/pdfstudio/common.nix
Normal file
98
pkgs/applications/misc/pdfstudio/common.nix
Normal file
|
@ -0,0 +1,98 @@
|
|||
{ pname
|
||||
, src
|
||||
, year
|
||||
, version
|
||||
, desktopName
|
||||
, longDescription
|
||||
, buildFHSUserEnv
|
||||
, extraBuildInputs ? []
|
||||
, stdenv
|
||||
, lib
|
||||
, dpkg
|
||||
, makeDesktopItem
|
||||
, copyDesktopItems
|
||||
, autoPatchelfHook
|
||||
, sane-backends
|
||||
, cups
|
||||
, jdk11
|
||||
}:
|
||||
let
|
||||
thisPackage = stdenv.mkDerivation rec {
|
||||
inherit pname src version;
|
||||
strictDeps = true;
|
||||
|
||||
buildInputs = [
|
||||
sane-backends #for libsane.so.1
|
||||
jdk11
|
||||
] ++ extraBuildInputs;
|
||||
|
||||
nativeBuildInputs = [
|
||||
autoPatchelfHook
|
||||
dpkg
|
||||
copyDesktopItems
|
||||
];
|
||||
|
||||
desktopItems = [
|
||||
(makeDesktopItem {
|
||||
name = "${pname}${year}";
|
||||
desktopName = desktopName;
|
||||
genericName = "View and edit PDF files";
|
||||
exec = "${pname} %f";
|
||||
icon = "${pname}${year}";
|
||||
comment = "Views and edits PDF files";
|
||||
mimeType = "application/pdf";
|
||||
categories = "Office";
|
||||
type = "Application";
|
||||
terminal = false;
|
||||
})
|
||||
];
|
||||
|
||||
unpackCmd = "dpkg-deb -x $src ./${pname}-${version}";
|
||||
dontBuild = true;
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace opt/${pname}${year}/${pname}${year} --replace "# INSTALL4J_JAVA_HOME_OVERRIDE=" "INSTALL4J_JAVA_HOME_OVERRIDE=${jdk11.out}"
|
||||
substituteInPlace opt/${pname}${year}/updater --replace "# INSTALL4J_JAVA_HOME_OVERRIDE=" "INSTALL4J_JAVA_HOME_OVERRIDE=${jdk11.out}"
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p $out/{bin,share/pixmaps}
|
||||
rm -rf opt/${pname}${year}/jre
|
||||
cp -r opt/${pname}${year} $out/share/
|
||||
ln -s $out/share/${pname}${year}/.install4j/${pname}${year}.png $out/share/pixmaps/
|
||||
ln -s $out/share/${pname}${year}/${pname}${year} $out/bin/${pname}
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
};
|
||||
|
||||
in
|
||||
# Package with cups in FHS sandbox, because JAVA bin expects "/usr/bin/lpr" for printing.
|
||||
buildFHSUserEnv {
|
||||
name = pname;
|
||||
targetPkgs = pkgs: [
|
||||
cups
|
||||
thisPackage
|
||||
];
|
||||
runScript = pname;
|
||||
|
||||
# link desktop item and icon into FHS user environment
|
||||
extraInstallCommands = ''
|
||||
mkdir -p "$out/share/applications"
|
||||
mkdir -p "$out/share/pixmaps"
|
||||
ln -s ${thisPackage}/share/applications/*.desktop "$out/share/applications/"
|
||||
ln -s ${thisPackage}/share/pixmaps/*.png "$out/share/pixmaps/"
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://www.qoppa.com/${pname}/";
|
||||
description = "An easy to use, full-featured PDF editing software";
|
||||
longDescription = longDescription;
|
||||
license = licenses.unfree;
|
||||
platforms = platforms.linux;
|
||||
mainProgram = pname;
|
||||
maintainers = [ maintainers.pwoelfel ];
|
||||
};
|
||||
}
|
|
@ -1,87 +1,42 @@
|
|||
{ stdenv
|
||||
, lib
|
||||
{ program ? "pdfstudioviewer"
|
||||
, fetchurl
|
||||
, libgccjit
|
||||
, dpkg
|
||||
, makeDesktopItem
|
||||
, copyDesktopItems
|
||||
, autoPatchelfHook
|
||||
, sane-backends
|
||||
, jdk11
|
||||
, callPackage
|
||||
}:
|
||||
|
||||
# See also package 'pdfstudioviewer'
|
||||
# Differences are ${pname}, Download directory name (PDFStudio / PDFStudioViewer),
|
||||
# sha256, and libgccjit (not needed for PDFStudioViewer)
|
||||
let year = "2021";
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "pdfstudio";
|
||||
version = "${year}.1.2";
|
||||
strictDeps = true;
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://download.qoppa.com/${pname}/v${year}/PDFStudio_v${
|
||||
{
|
||||
pdfstudio = callPackage ./common.nix rec {
|
||||
pname = program;
|
||||
year = "2021";
|
||||
version = "${year}.1.2";
|
||||
desktopName = "PDF Studio";
|
||||
longDescription = ''
|
||||
PDF Studio is an easy to use, full-featured PDF editing software. This is the standard/pro edition, which requires a license. For the free PDF Studio Viewer see the package pdfstudioviewer.
|
||||
'';
|
||||
extraBuildInputs = [
|
||||
libgccjit #for libstdc++.so.6 and libgomp.so.1
|
||||
];
|
||||
src = fetchurl {
|
||||
url = "https://download.qoppa.com/${pname}/v${year}/PDFStudio_v${
|
||||
builtins.replaceStrings [ "." ] [ "_" ] version
|
||||
}_linux64.deb";
|
||||
sha256 = "1188ll2qz58rr2slavqxisbz4q3fdzidpasb1p33926z0ym3rk45";
|
||||
}_linux64.deb";
|
||||
sha256 = "1188ll2qz58rr2slavqxisbz4q3fdzidpasb1p33926z0ym3rk45";
|
||||
};
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
libgccjit #for libstdc++.so.6 and libgomp.so.1
|
||||
sane-backends #for libsane.so.1
|
||||
jdk11
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
autoPatchelfHook
|
||||
dpkg
|
||||
copyDesktopItems
|
||||
];
|
||||
|
||||
desktopItems = [
|
||||
(makeDesktopItem {
|
||||
name = "${pname}${year}";
|
||||
desktopName = "PDF Studio";
|
||||
genericName = "View and edit PDF files";
|
||||
exec = "${pname} %f";
|
||||
icon = "${pname}${year}";
|
||||
comment = "Views and edits PDF files";
|
||||
mimeType = "application/pdf";
|
||||
categories = "Office";
|
||||
type = "Application";
|
||||
terminal = false;
|
||||
})
|
||||
];
|
||||
|
||||
unpackPhase = "dpkg-deb -x $src .";
|
||||
dontBuild = true;
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace opt/${pname}${year}/${pname}${year} --replace "# INSTALL4J_JAVA_HOME_OVERRIDE=" "INSTALL4J_JAVA_HOME_OVERRIDE=${jdk11.out}"
|
||||
substituteInPlace opt/${pname}${year}/updater --replace "# INSTALL4J_JAVA_HOME_OVERRIDE=" "INSTALL4J_JAVA_HOME_OVERRIDE=${jdk11.out}"
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p $out/bin
|
||||
mkdir -p $out/share
|
||||
mkdir -p $out/share/pixmaps
|
||||
cp -r opt/${pname}${year} $out/share/
|
||||
rm -rf $out/share/${pname}${year}/jre
|
||||
ln -s $out/share/${pname}${year}/.install4j/${pname}${year}.png $out/share/pixmaps/
|
||||
ln -s $out/share/${pname}${year}/${pname}${year} $out/bin/${pname}
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://www.qoppa.com/pdfstudio/";
|
||||
description = "An easy to use, full-featured PDF editing software";
|
||||
license = licenses.unfree;
|
||||
platforms = platforms.linux;
|
||||
mainProgram = pname;
|
||||
maintainers = [ maintainers.pwoelfel ];
|
||||
pdfstudioviewer = callPackage ./common.nix rec {
|
||||
pname = program;
|
||||
year = "2021";
|
||||
version = "${year}.1.2";
|
||||
desktopName = "PDF Studio Viewer";
|
||||
longDescription = ''
|
||||
PDF Studio Viewer is an easy to use, full-featured PDF editing software. This is the free edition. For the standard/pro edition, see the package pdfstudio.
|
||||
'';
|
||||
src = fetchurl {
|
||||
url = "https://download.qoppa.com/${pname}/v${year}/PDFStudioViewer_v${
|
||||
builtins.replaceStrings [ "." ] [ "_" ] version
|
||||
}_linux64.deb";
|
||||
sha256 = "128k3fm8m8zdykx4s30g5m2zl7cgmvs4qinf1w525zh84v56agz6";
|
||||
};
|
||||
};
|
||||
}
|
||||
}.${program}
|
||||
|
|
|
@ -1,81 +0,0 @@
|
|||
{ stdenv
|
||||
, lib
|
||||
, fetchurl
|
||||
, dpkg
|
||||
, makeDesktopItem
|
||||
, copyDesktopItems
|
||||
, autoPatchelfHook
|
||||
, sane-backends
|
||||
, jdk11
|
||||
}:
|
||||
|
||||
let year = "2021";
|
||||
in stdenv.mkDerivation rec {
|
||||
pname = "pdfstudioviewer";
|
||||
version = "${year}.1.2";
|
||||
autoPatchelfIgnoreMissingDeps = false;
|
||||
strictDeps = true;
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://download.qoppa.com/${pname}/v${year}/PDFStudioViewer_v${
|
||||
builtins.replaceStrings [ "." ] [ "_" ] version
|
||||
}_linux64.deb";
|
||||
sha256 = "128k3fm8m8zdykx4s30g5m2zl7cgmvs4qinf1w525zh84v56agz6";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
sane-backends
|
||||
jdk11
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
autoPatchelfHook
|
||||
dpkg
|
||||
copyDesktopItems
|
||||
];
|
||||
|
||||
desktopItems = [
|
||||
(makeDesktopItem {
|
||||
name = "${pname}${year}";
|
||||
desktopName = "PDF Studio";
|
||||
genericName = "View and edit PDF files";
|
||||
exec = "${pname} %f";
|
||||
icon = "${pname}${year}";
|
||||
comment = "Views and edits PDF files";
|
||||
mimeType = "application/pdf";
|
||||
categories = "Office";
|
||||
type = "Application";
|
||||
terminal = false;
|
||||
})
|
||||
];
|
||||
|
||||
unpackPhase = "dpkg-deb -x $src .";
|
||||
dontBuild = true;
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace opt/${pname}${year}/${pname}${year} --replace "# INSTALL4J_JAVA_HOME_OVERRIDE=" "INSTALL4J_JAVA_HOME_OVERRIDE=${jdk11.out}"
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p $out/bin
|
||||
mkdir -p $out/share
|
||||
mkdir -p $out/share/pixmaps
|
||||
cp -r opt/${pname}${year} $out/share/
|
||||
rm -rf $out/share/${pname}${year}/jre
|
||||
ln -s $out/share/${pname}${year}/.install4j/${pname}${year}.png $out/share/pixmaps/
|
||||
ln -s $out/share/${pname}${year}/${pname}${year} $out/bin/${pname}
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://www.qoppa.com/pdfstudio/";
|
||||
description = "An easy to use, full-featured PDF editing software";
|
||||
license = licenses.unfree;
|
||||
platforms = platforms.linux;
|
||||
mainProgram = pname;
|
||||
maintainers = [ maintainers.pwoelfel ];
|
||||
};
|
||||
}
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "rofi-file-browser-extended";
|
||||
version = "1.2.0";
|
||||
version = "1.3.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "marvinkreis";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "1grcal8ga4gpaj3p1dvx4zmqai93jjz2izpj91lxwj0dbz1gmbdm";
|
||||
sha256 = "sha256-TNAAImQaIJRgvD8kFf2oHNj4bQiq1NhD8KkCgW5dSK8=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
|
|
|
@ -4,13 +4,13 @@ with python3Packages;
|
|||
|
||||
buildPythonApplication rec {
|
||||
pname = "topydo";
|
||||
version = "0.13";
|
||||
version = "0.14";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "bram85";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "0b3dz137lpbvpjvfy42ibqvj3yk526x4bpn819fd11lagn77w69r";
|
||||
sha256 = "1lpfdai0pf90ffrzgmmkadbd86rb7250i3mglpkc82aj6prjm6yb";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
|
@ -288,7 +288,7 @@ let
|
|||
google_api_key = "AIzaSyDGi15Zwl11UNe6Y-5XW_upsfyw31qwZPI";
|
||||
|
||||
# Optional features:
|
||||
use_gio = gnomeSupport;
|
||||
use_gio = gnomeSupport || chromiumVersionAtLeast "99";
|
||||
use_gnome_keyring = gnomeKeyringSupport;
|
||||
use_cups = cupsSupport;
|
||||
|
||||
|
|
|
@ -39,7 +39,7 @@ for entry in feed.entries:
|
|||
print('chromium: TODO -> ' + version + '\n')
|
||||
print(url)
|
||||
if fixes := re.search(r'This update includes .+ security fixes\.', content).group(0):
|
||||
zero_days = re.search(r'Google is aware( of reports)? that .+ in the wild\.', content)
|
||||
zero_days = re.search(r'Google is aware( of reports)? th(e|at) .+ in the wild\.', content)
|
||||
if zero_days:
|
||||
fixes += " " + zero_days.group(0)
|
||||
print('\n' + '\n'.join(textwrap.wrap(fixes, width=72)))
|
||||
|
|
|
@ -18,6 +18,7 @@
|
|||
, fetchzip
|
||||
, fetchgit
|
||||
, zstd
|
||||
, nixosTests
|
||||
}:
|
||||
|
||||
with lib;
|
||||
|
@ -289,5 +290,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
passthru.updateScript = ./update.sh;
|
||||
|
||||
passthru.tests = { inherit (nixosTests) k3s-single-node k3s-single-node-docker; };
|
||||
|
||||
meta = baseMeta;
|
||||
}
|
||||
|
|
|
@ -21,13 +21,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "kubernetes";
|
||||
version = "1.22.4";
|
||||
version = "1.22.6";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "kubernetes";
|
||||
repo = "kubernetes";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-6ivBecOttzbX85+WCttaU5nXjaiEiKU8xRhnCPkjLXg=";
|
||||
sha256 = "sha256-NL00GOdkVLVHTlj1RK1+stssioy+0xbtiKn4FZnCuzs=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ removeReferencesTo makeWrapper which go rsync installShellFiles ];
|
||||
|
|
|
@ -2,14 +2,14 @@
|
|||
|
||||
python3Packages.buildPythonApplication rec {
|
||||
pname = "flexget";
|
||||
version = "3.2.13";
|
||||
version = "3.2.15";
|
||||
|
||||
# Fetch from GitHub in order to use `requirements.in`
|
||||
src = fetchFromGitHub {
|
||||
owner = "flexget";
|
||||
repo = "flexget";
|
||||
rev = "v${version}";
|
||||
sha256 = "0pk6f9vrj01a91h86d5mvngwvxq9r6idbrfax1nfsissvssy6p07";
|
||||
sha256 = "0ygkygd0gcldwdx6wl1kbvzi93k75m0v05m614cahh0jc7j27xy7";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
|
|
@ -2,12 +2,12 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "signal-cli";
|
||||
version = "0.10.1";
|
||||
version = "0.10.2";
|
||||
|
||||
# Building from source would be preferred, but is much more involved.
|
||||
src = fetchurl {
|
||||
url = "https://github.com/AsamK/signal-cli/releases/download/v${version}/signal-cli-${version}.tar.gz";
|
||||
sha256 = "sha256-xj/fR/scfzOPxkWB79OhA129V7QG7QUkAbw1bNgzVas=";
|
||||
sha256 = "sha256-etCO7sy48A7aL3mnXWitClNiw/E122G4eD6YfVmXEPw=";
|
||||
};
|
||||
|
||||
buildInputs = lib.optionals stdenv.isLinux [ libmatthew_java dbus dbus_java ];
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ fetchurl, lib, stdenv, writeText, jdk, makeWrapper }:
|
||||
{ fetchurl, lib, stdenv, writeText, jdk, makeWrapper, nixosTests }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "soapui";
|
||||
|
@ -46,6 +46,8 @@ stdenv.mkDerivation rec {
|
|||
'')
|
||||
];
|
||||
|
||||
passthru.tests = { inherit (nixosTests) soapui; };
|
||||
|
||||
meta = with lib; {
|
||||
description = "The Most Advanced REST & SOAP Testing Tool in the World";
|
||||
homepage = "https://www.soapui.org/";
|
||||
|
|
|
@ -24,13 +24,13 @@ assert !(pulseaudioSupport && portaudioSupport);
|
|||
|
||||
gnuradio3_8Minimal.pkgs.mkDerivation rec {
|
||||
pname = "gqrx";
|
||||
version = "2.15.4";
|
||||
version = "2.15.7";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "gqrx-sdr";
|
||||
repo = "gqrx";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-iQlrnkc1EMR8sUUAHh+7RfS/05unrcDm/kJ/Q4Vst2Q=";
|
||||
sha256 = "sha256-4tXWwBkVmNZ4s3d6/n6XBdbh9Fv7821L3vkYmjgv1ds=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -68,11 +68,6 @@ gnuradio3_8Minimal.pkgs.mkDerivation rec {
|
|||
"-DLINUX_AUDIO_BACKEND=${audioBackend}"
|
||||
];
|
||||
|
||||
postInstall = ''
|
||||
install -vD $src/gqrx.desktop -t "$out/share/applications/"
|
||||
install -vD $src/resources/icons/gqrx.svg -t "$out/share/pixmaps/"
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Software defined radio (SDR) receiver";
|
||||
longDescription = ''
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "star";
|
||||
version = "2.7.9a";
|
||||
version = "2.7.10a";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
repo = "STAR";
|
||||
owner = "alexdobin";
|
||||
rev = version;
|
||||
sha256 = "sha256-p1yaIbSGu8K5AkqJj0BAzuoWsXr25eCNoQmLXYQeg4E=";
|
||||
sha256 = "sha256-qwddCGMOKWgx76qGwRQXwvv9fCSeVsZbWHmlBwEqGKE=";
|
||||
};
|
||||
|
||||
sourceRoot = "source/source";
|
||||
|
|
|
@ -1,20 +1,32 @@
|
|||
{ lib, stdenv, fetchFromGitHub
|
||||
, pkg-config, libxkbcommon, wayland, wayland-protocols }:
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, libxkbcommon
|
||||
, pkg-config
|
||||
, wayland
|
||||
, wayland-protocols
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
|
||||
pname = "havoc";
|
||||
version = "0.3.1";
|
||||
version = "0.4.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ii8";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "1g05r9j6srwz1krqvzckx80jn8fm48rkb4xp68953gy9yp2skg3k";
|
||||
hash = "sha256-zNKDQqkDeNj5fB5EdMVfAs2H4uBgLh6Fp3uSjiJ1VhQ=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
buildInputs = [ libxkbcommon wayland wayland-protocols ];
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
libxkbcommon
|
||||
wayland
|
||||
wayland-protocols
|
||||
];
|
||||
|
||||
dontConfigure = true;
|
||||
|
||||
|
@ -26,8 +38,8 @@ stdenv.mkDerivation rec {
|
|||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "A minimal terminal emulator for Wayland";
|
||||
homepage = "https://github.com/ii8/havoc";
|
||||
description = "A minimal terminal emulator for Wayland";
|
||||
license = with licenses; [ mit publicDomain ];
|
||||
platforms = with platforms; unix;
|
||||
maintainers = with maintainers; [ AndersonTorres ];
|
||||
|
|
|
@ -11,13 +11,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "conmon";
|
||||
version = "2.0.32";
|
||||
version = "2.1.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "containers";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-aj0RQVVJp2S8cIYT7fsbK1TLaK0auvdgEIgkZJktsdo=";
|
||||
sha256 = "sha256-75Xyp25+JJtrXJO+cRFPkDj64zgdlVTAygGwFuJ7jKA=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
|
|
54
pkgs/data/icons/nordzy-icon-theme/default.nix
Normal file
54
pkgs/data/icons/nordzy-icon-theme/default.nix
Normal file
|
@ -0,0 +1,54 @@
|
|||
{ stdenvNoCC
|
||||
, fetchFromGitHub
|
||||
, lib
|
||||
, gtk3
|
||||
, jdupes
|
||||
, nordzy-themes ? [ "all" ] # Override this to only install selected themes
|
||||
}:
|
||||
|
||||
stdenvNoCC.mkDerivation {
|
||||
pname = "nordzy-icon-theme";
|
||||
version = "unstable-2022-01-23";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "alvatip";
|
||||
repo = "Nordzy-icon";
|
||||
rev = "10b9ee80ef5c4cac1d1770d89a6d55046521ea36";
|
||||
sha256 = "1b8abhs5gzr2qy407jq818pr67vjky8zn3pa3c8n552ayybblibk";
|
||||
};
|
||||
|
||||
# In the post patch phase we should first make sure to patch shebangs.
|
||||
postPatch = ''
|
||||
patchShebangs install.sh
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
gtk3
|
||||
jdupes
|
||||
];
|
||||
|
||||
dontDropIconThemeCache = true;
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
name= ./install.sh --dest $out/share/icons \
|
||||
${lib.optionalString (nordzy-themes != []) (lib.strings.concatMapStrings (theme: "-t ${theme} ") nordzy-themes)}
|
||||
|
||||
# Replace duplicate files with hardlinks to the first file in each
|
||||
# set of duplicates, reducing the installed size in about 87%
|
||||
jdupes -L -r $out/share
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
dontFixup = true;
|
||||
|
||||
meta = with lib; {
|
||||
description = "Icon theme using the Nord color palette, based on WhiteSur and Numix icon themes";
|
||||
homepage = "https://github.com/alvatip/Nordzy-icon";
|
||||
license = licenses.gpl3Only;
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ alexnortung ];
|
||||
};
|
||||
}
|
|
@ -6,6 +6,7 @@
|
|||
, gtk-engine-murrine
|
||||
, sassc
|
||||
, tweaks ? [ ] # can be "solid" "compact" "black" "primary"
|
||||
, withWallpapers ? false
|
||||
}:
|
||||
|
||||
let
|
||||
|
@ -42,6 +43,10 @@ rec {
|
|||
installPhase = ''
|
||||
runHook preInstall
|
||||
bash install.sh -d $out/share/themes -t all ${lib.optionalString (tweaks != []) "--tweaks " + builtins.toString tweaks}
|
||||
${lib.optionalString withWallpapers ''
|
||||
mkdir -p $out/share/backgrounds
|
||||
cp src/wallpaper/{1080p,2k,4k}.jpg $out/share/backgrounds
|
||||
''}
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "fstar";
|
||||
version = "2021.12.25";
|
||||
version = "2022.01.15";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "FStarLang";
|
||||
repo = "FStar";
|
||||
rev = "v${version}";
|
||||
sha256 = "RmXKv/admC1w26z/ClNhH11J8n87WTfDr2lYOF6Fx7I=";
|
||||
sha256 = "sha256-bK3McF/wTjT9q6luihPaEXjx7Lu6+ZbQ9G61Mc4KoB0=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper installShellFiles ];
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "gleam";
|
||||
version = "0.18.2";
|
||||
version = "0.19.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "gleam-lang";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-uakZmaIkBgC/FTQ7us58pJT6IzpcF1cQxBfehlB3bWk=";
|
||||
sha256 = "sha256-pJ4RSijuwdKAL24WzcDIQen1RGofN1tUlbAA18zUvBE=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
|
@ -16,7 +16,7 @@ rustPlatform.buildRustPackage rec {
|
|||
buildInputs = [ openssl ] ++
|
||||
lib.optionals stdenv.isDarwin [ Security libiconv ];
|
||||
|
||||
cargoSha256 = "sha256-NogDrd7YWl/CV0aCd1jfYWYB9VZG7u890VLEktI3sOQ=";
|
||||
cargoSha256 = "sha256-f/6LdvKRykpBX2GlRuyUcSD719f6XzhbMHzhrGNU0Cg=";
|
||||
|
||||
meta = with lib; {
|
||||
description = "A statically typed language for the Erlang VM";
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
# How to obtain `sha256`:
|
||||
# nix-prefetch-url --unpack https://github.com/elixir-lang/elixir/archive/v${version}.tar.gz
|
||||
mkDerivation {
|
||||
version = "1.13.1";
|
||||
sha256 = "0z0b1w2vvw4vsnb99779c2jgn9bgslg7b1pmd9vlbv02nza9qj5p";
|
||||
version = "1.13.2";
|
||||
sha256 = "sha256-qv85aDP3RPCa1YBo45ykWRRZNanL6brNKDMPu9SZdbQ=";
|
||||
minimumOTPVersion = "22";
|
||||
}
|
||||
|
|
|
@ -7,13 +7,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "cpp-utilities";
|
||||
version = "5.11.3";
|
||||
version = "5.12.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Martchus";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-a/fuzZ8crmyO87QzIKuYPk0LC3EvvHZrWO17LtWu77I=";
|
||||
sha256 = "sha256-rpbD3x7zIJCDZuu4K0wDkaBKSBh36amtza/wE3rb0HM=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
|
|
@ -0,0 +1,27 @@
|
|||
From a66b58d61caaae452785a2d69f5de9259ab27138 Mon Sep 17 00:00:00 2001
|
||||
From: James Almer <jamrial@gmail.com>
|
||||
Date: Sun, 16 Jan 2022 00:32:52 -0300
|
||||
Subject: [PATCH] fate/ffmpeg: add missing samples dependency to fate-shortest
|
||||
|
||||
Signed-off-by: James Almer <jamrial@gmail.com>
|
||||
(cherry picked from commit b1ef5882e35d1a95e9c4838d0933084773055345)
|
||||
---
|
||||
tests/fate/ffmpeg.mak | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/tests/fate/ffmpeg.mak b/tests/fate/ffmpeg.mak
|
||||
index 0b00bb5b23..b80467d02e 100644
|
||||
--- a/tests/fate/ffmpeg.mak
|
||||
+++ b/tests/fate/ffmpeg.mak
|
||||
@@ -86,7 +86,7 @@ fate-unknown_layout-ac3: CMD = md5 -auto_conversion_filters \
|
||||
-guess_layout_max 0 -f s32le -ac 1 -ar 44100 -i $(TARGET_PATH)/$(AREF) \
|
||||
-f ac3 -flags +bitexact -c ac3_fixed
|
||||
|
||||
-FATE_FFMPEG-$(call ALLYES, FILE_PROTOCOL LAVFI_INDEV RAWVIDEO_DEMUXER \
|
||||
+FATE_SAMPLES_FFMPEG-$(call ALLYES, FILE_PROTOCOL LAVFI_INDEV RAWVIDEO_DEMUXER \
|
||||
SINE_FILTER PCM_S16LE_DECODER RAWVIDEO_DECODER \
|
||||
ARESAMPLE_FILTER AMIX_FILTER MPEG4_ENCODER \
|
||||
AC3_FIXED_ENCODER FRAMECRC_MUXER PIPE_PROTOCOL) \
|
||||
--
|
||||
2.33.1
|
||||
|
14
pkgs/development/libraries/ffmpeg/5.nix
Normal file
14
pkgs/development/libraries/ffmpeg/5.nix
Normal file
|
@ -0,0 +1,14 @@
|
|||
{ callPackage
|
||||
# Darwin frameworks
|
||||
, Cocoa, CoreMedia, VideoToolbox
|
||||
, ...
|
||||
}@args:
|
||||
|
||||
callPackage ./generic.nix (rec {
|
||||
version = "5.0";
|
||||
branch = version;
|
||||
sha256 = "1ndy6a2bhl6nvz9grmcaakh4xi0vss455466s47l6qy7na6hn4y0";
|
||||
darwinFrameworks = [ Cocoa CoreMedia VideoToolbox ];
|
||||
|
||||
patches = [ ./0001-fate-ffmpeg-add-missing-samples-dependency-to-fate-s.patch ];
|
||||
} // args)
|
|
@ -54,6 +54,8 @@ let
|
|||
|
||||
ifMinVer = minVer: flag: if reqMin minVer then flag else null;
|
||||
|
||||
ifVerOlder = maxVer: flag: if (lib.versionOlder branch maxVer) then flag else null;
|
||||
|
||||
# Version specific fix
|
||||
verFix = withoutFix: fixVer: withFix: if reqMatch fixVer then withFix else withoutFix;
|
||||
|
||||
|
@ -121,7 +123,7 @@ stdenv.mkDerivation rec {
|
|||
(ifMinVer "0.6" "--enable-avdevice")
|
||||
"--enable-avfilter"
|
||||
(ifMinVer "0.6" "--enable-avformat")
|
||||
(ifMinVer "1.0" "--enable-avresample")
|
||||
(ifMinVer "1.0" (ifVerOlder "5.0" "--enable-avresample"))
|
||||
(ifMinVer "1.1" "--enable-avutil")
|
||||
"--enable-postproc"
|
||||
(ifMinVer "0.9" "--enable-swresample")
|
||||
|
|
|
@ -4,13 +4,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "globalarrays";
|
||||
version = "5.8";
|
||||
version = "5.8.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "GlobalArrays";
|
||||
repo = "ga";
|
||||
rev = "v${version}";
|
||||
sha256 = "0bky91ncz6vy0011ps9prsnq9f4a5s5xwr23kkmi39xzg0417mnd";
|
||||
sha256 = "sha256-IyHdeIUHu/T4lb/etGGnNB2guIspual8/v9eS807Qco=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ autoreconfHook gfortran ];
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "lombok";
|
||||
version = "1.18.20";
|
||||
version = "1.18.22";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://projectlombok.org/downloads/lombok-${version}.jar";
|
||||
sha256 = "sha256-zpR75sL751n7vo7ztCtoJfgUyYyIU/EBPy2WMM7fdLA=";
|
||||
sha256 = "sha256-7O8VgUEdeoLMBCgWZ+4LrF18ClqudM/DhDA5bJHDGDE=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
|
|
@ -8,13 +8,13 @@
|
|||
|
||||
mkDerivation rec {
|
||||
pname = "qcoro";
|
||||
version = "0.3.0";
|
||||
version = "0.4.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "danvratil";
|
||||
repo = "qcoro";
|
||||
rev = "v${version}";
|
||||
sha256 = "09543hpy590dndmlxmcm8c58m97blhaii4wbjr655qxdanhhxgzi";
|
||||
sha256 = "sha256-RVpyL+BklX8Wyk9Xj9UyuvNK5Vev8ZsrOSMxX1HtcHU=";
|
||||
};
|
||||
|
||||
outputs = [ "out" "dev" ];
|
||||
|
@ -34,5 +34,6 @@ mkDerivation rec {
|
|||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ smitop ];
|
||||
platforms = platforms.linux;
|
||||
badPlatforms = platforms.aarch64;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -26,6 +26,7 @@
|
|||
, zlib
|
||||
, blas
|
||||
, lapack
|
||||
, nixosTests
|
||||
}:
|
||||
let
|
||||
version = "2019.1.0";
|
||||
|
@ -260,6 +261,7 @@ let
|
|||
pythonPackages.pybind11
|
||||
];
|
||||
doCheck = false; # Tries to orte_ess_init and call ssh to localhost
|
||||
passthru.tests = { inherit (nixosTests) fenics; };
|
||||
meta = {
|
||||
description = "Python bindings for the DOLFIN FEM compiler";
|
||||
homepage = "https://fenicsproject.org/";
|
||||
|
|
|
@ -4,13 +4,13 @@ assert (!blas.isILP64) && (!lapack.isILP64);
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "scs";
|
||||
version = "3.0.0";
|
||||
version = "3.1.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "cvxgrp";
|
||||
repo = "scs";
|
||||
rev = version;
|
||||
sha256 = "sha256-Lly28KDDZ5hJyiMOhiX/3VaKs0iPcSqizOurZevhfCo=";
|
||||
sha256 = "sha256-yoh25DmvY7fohAvABCiSLkvr7TskGd0ED2K3rIa/IeM=";
|
||||
};
|
||||
|
||||
# Actually link and add libgfortran to the rpath
|
||||
|
|
|
@ -8,12 +8,12 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "aenum";
|
||||
version = "3.1.6";
|
||||
version = "3.1.8";
|
||||
format = "setuptools";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "3ba2c25dd03fbf3992353595be18152e2fb6042f47b526ea66cd5838bb9f1fb6";
|
||||
sha256 = "8dbe15f446eb8264b788dfeca163fb0a043d408d212152397dc11377b851e4ae";
|
||||
};
|
||||
|
||||
checkInputs = [
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "bond-api";
|
||||
version = "0.1.15";
|
||||
version = "0.1.16";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
@ -19,7 +19,7 @@ buildPythonPackage rec {
|
|||
owner = "prystupa";
|
||||
repo = "bond-api";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-Uoz5knqRAtQkD7u/4oylXC60dR2ZU3AuMJNhmvB8fP4=";
|
||||
sha256 = "1nqf090b14nd7an2n776mb37yskddfnihmas2fy56pxclwvwqr9n";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "cyclonedx-python-lib";
|
||||
version = "1.1.1";
|
||||
version = "1.3.0";
|
||||
format = "pyproject";
|
||||
|
||||
disabled = pythonOlder "3.6";
|
||||
|
@ -26,7 +26,7 @@ buildPythonPackage rec {
|
|||
owner = "CycloneDX";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-gyqpd3kAW74ax3+ECVEmu4un2N0Xyl/aid4VrBihHxI=";
|
||||
hash = "sha256-/1kWvhTUS0JT0RwodiivJSUiWIDwQyXxdjF/KUlCNds=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -15,7 +15,7 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "denonavr";
|
||||
version = "0.10.9";
|
||||
version = "0.10.10";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.6";
|
||||
|
@ -24,7 +24,7 @@ buildPythonPackage rec {
|
|||
owner = "scarface-4711";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "sha256-Y0sFRKnKZAdP95EyE3h1g92AJeT0Xkshjjwfv/vnfW8=";
|
||||
sha256 = "sha256-ZL04JJZStOr6egoki85qCQrXoSTTO43RlLVbNBVz3QA=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
@ -42,11 +42,6 @@ buildPythonPackage rec {
|
|||
pytest-timeout
|
||||
];
|
||||
|
||||
disabledTestPaths = [
|
||||
# https://github.com/ol-iver/denonavr/issues/228
|
||||
"tests/test_denonavr.py"
|
||||
];
|
||||
|
||||
pythonImportsCheck = [
|
||||
"denonavr"
|
||||
];
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "flux-led";
|
||||
version = "0.28.8";
|
||||
version = "0.28.10";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
@ -17,7 +17,7 @@ buildPythonPackage rec {
|
|||
owner = "Danielhiversen";
|
||||
repo = "flux_led";
|
||||
rev = version;
|
||||
sha256 = "sha256-/dEIrTkioqHBJouqk9pTsR0Xhkd6FoIjjOc5HwMBGrI=";
|
||||
sha256 = "sha256-kH+0W+MgdA7+owqC5KsOnqCidErCaQ3mEueZdP8eAS0=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
|
@ -2,25 +2,26 @@
|
|||
, buildPythonPackage
|
||||
, pythonOlder
|
||||
, git
|
||||
, gnupg
|
||||
, fetchFromGitHub
|
||||
, pytestCheckHook
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "git-revise";
|
||||
version = "0.6.0";
|
||||
version = "0.7.0";
|
||||
|
||||
# Missing tests on PyPI
|
||||
src = fetchFromGitHub {
|
||||
owner = "mystor";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "03v791yhips9cxz9hr07rhsgxfhwyqq17rzi7ayjhwvy65s4hzs9";
|
||||
sha256 = "sha256-xV1Z9O5FO4Q/XEpNwnX31tbv8CrXY+wF1Ltpfq+ITRg=";
|
||||
};
|
||||
|
||||
disabled = pythonOlder "3.6";
|
||||
disabled = pythonOlder "3.8";
|
||||
|
||||
checkInputs = [ git pytestCheckHook ];
|
||||
checkInputs = [ git gnupg pytestCheckHook ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Efficiently update, split, and rearrange git commits";
|
||||
|
|
|
@ -8,11 +8,11 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "google-cloud-core";
|
||||
version = "2.2.1";
|
||||
version = "2.2.2";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "476d1f71ab78089e0638e0aaf34bfdc99bab4fce8f4170ba6321a5243d13c5c7";
|
||||
sha256 = "sha256-fRm/iGi0ENC99aA0aKPz8tsjPA7oagI/TswreksV9zY=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ google-api-core ];
|
||||
|
|
|
@ -11,7 +11,7 @@ buildPythonPackage rec {
|
|||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "a4031d6ec6c2b1b6dc3e0be7e10a1bd72fb0b18b07ef9be7b51f2c1004ce2437";
|
||||
sha256 = "sha256-pAMdbsbCsbbcPgvn4Qob1y+wsYsH75vntR8sEATOJDc=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ grpc protobuf ];
|
||||
|
|
26
pkgs/development/python-modules/groestlcoin_hash/default.nix
Normal file
26
pkgs/development/python-modules/groestlcoin_hash/default.nix
Normal file
|
@ -0,0 +1,26 @@
|
|||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchPypi
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "groestlcoin_hash";
|
||||
version = "1.0.1";
|
||||
format = "setuptools";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "sha256-Nkco8ZA0rJaT9Mx4NIcptMvzd4h0BsRn2+gomdesirg=";
|
||||
};
|
||||
|
||||
pythonImportsCheck = [
|
||||
"groestlcoin_hash"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Bindings for groestl key derivation function library used in Groestlcoin";
|
||||
homepage = "https://pypi.org/project/groestlcoin_hash/";
|
||||
maintainers = with maintainers; [ gruve-p ];
|
||||
license = licenses.unfree;
|
||||
};
|
||||
}
|
|
@ -9,7 +9,7 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "identify";
|
||||
version = "2.4.4";
|
||||
version = "2.4.5";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
@ -18,7 +18,7 @@ buildPythonPackage rec {
|
|||
owner = "pre-commit";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-G819m1mMtk5v1paMf9vdK/m/gbq08NNHM1bfW7jb+JA=";
|
||||
sha256 = "sha256-VXQ9lyouwAuw2iGr1m/2KFklUFgmQOP2/gwInATKB4k=";
|
||||
};
|
||||
|
||||
checkInputs = [
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "meshtastic";
|
||||
version = "1.2.58";
|
||||
version = "1.2.75";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.6";
|
||||
|
@ -27,7 +27,7 @@ buildPythonPackage rec {
|
|||
owner = "meshtastic";
|
||||
repo = "Meshtastic-python";
|
||||
rev = version;
|
||||
sha256 = "sha256-USUqVzVfkp9X4zRl4D6gGDkJ/tRG3sN36MqcmJebwL4=";
|
||||
sha256 = "sha256-VIeW7RloEIBU7YNG7f2e8PdFR+FauIwKLkd7v4qRCOA=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
|
@ -0,0 +1,60 @@
|
|||
{ lib
|
||||
, appdirs
|
||||
, beautifulsoup4
|
||||
, buildPythonPackage
|
||||
, colorlog
|
||||
, fetchFromGitHub
|
||||
, git
|
||||
, jsonschema
|
||||
, lxml
|
||||
, markdown
|
||||
, python
|
||||
, requests
|
||||
, substituteAll
|
||||
, toml
|
||||
}:
|
||||
|
||||
let
|
||||
# NOTE This is needed to download & run another Python program internally in
|
||||
# order to generate test cases for library-checker problems.
|
||||
pythonEnv = python.withPackages (ps: with ps; [ colorlog jinja2 markdown toml ]);
|
||||
in buildPythonPackage rec {
|
||||
pname = "online-judge-api-client";
|
||||
version = "10.10.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "online-judge-tools";
|
||||
repo = "api-client";
|
||||
rev = "v${version}";
|
||||
sha256 = "0lmryqi0bv82v9k9kf1rzzq9zr83smpmy8ivzw4fk31hvpczp4fn";
|
||||
};
|
||||
|
||||
patches = [ ./fix-paths.patch ];
|
||||
postPatch = ''
|
||||
substituteInPlace onlinejudge/service/library_checker.py \
|
||||
--subst-var-by git ${git} \
|
||||
--subst-var-by pythonInterpreter ${pythonEnv.interpreter}
|
||||
'';
|
||||
|
||||
propagatedBuildInputs = [
|
||||
appdirs
|
||||
beautifulsoup4
|
||||
colorlog
|
||||
jsonschema
|
||||
lxml
|
||||
requests
|
||||
toml
|
||||
];
|
||||
|
||||
# Requires internet access
|
||||
doCheck = false;
|
||||
|
||||
pythonImportsCheck = [ "onlinejudge" "onlinejudge_api" ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "API client to develop tools for competitive programming";
|
||||
homepage = "https://github.com/online-judge-tools/api-client";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ sei40kr ];
|
||||
};
|
||||
}
|
|
@ -0,0 +1,39 @@
|
|||
diff --git a/onlinejudge/service/library_checker.py b/onlinejudge/service/library_checker.py
|
||||
index b63c7b7..e062490 100644
|
||||
--- a/onlinejudge/service/library_checker.py
|
||||
+++ b/onlinejudge/service/library_checker.py
|
||||
@@ -51,7 +51,7 @@ class LibraryCheckerService(onlinejudge.type.Service):
|
||||
return
|
||||
|
||||
try:
|
||||
- subprocess.check_call(['git', '--version'], stdout=sys.stderr, stderr=sys.stderr)
|
||||
+ subprocess.check_call(['@git@/bin/git', '--version'], stdout=sys.stderr, stderr=sys.stderr)
|
||||
except FileNotFoundError:
|
||||
logger.error('git command not found')
|
||||
raise
|
||||
@@ -60,12 +60,12 @@ class LibraryCheckerService(onlinejudge.type.Service):
|
||||
if not path.exists():
|
||||
# init the problem repository
|
||||
url = 'https://github.com/yosupo06/library-checker-problems'
|
||||
- logger.info('$ git clone %s %s', url, path)
|
||||
- subprocess.check_call(['git', 'clone', url, str(path)], stdout=sys.stderr, stderr=sys.stderr)
|
||||
+ logger.info('$ @git@/bin/git clone %s %s', url, path)
|
||||
+ subprocess.check_call(['@git@/bin/git', 'clone', url, str(path)], stdout=sys.stderr, stderr=sys.stderr)
|
||||
else:
|
||||
# sync the problem repository
|
||||
- logger.info('$ git -C %s pull', str(path))
|
||||
- subprocess.check_call(['git', '-C', str(path), 'pull'], stdout=sys.stderr, stderr=sys.stderr)
|
||||
+ logger.info('$ @git@/bin/git -C %s pull', str(path))
|
||||
+ subprocess.check_call(['@git@/bin/git', '-C', str(path), 'pull'], stdout=sys.stderr, stderr=sys.stderr)
|
||||
|
||||
cls.is_repository_updated = True
|
||||
|
||||
@@ -100,7 +100,7 @@ class LibraryCheckerProblem(onlinejudge.type.Problem):
|
||||
logger.warning("generate.py may not work on Windows")
|
||||
|
||||
problem_spec = str(self._get_problem_directory_path() / 'info.toml')
|
||||
- command = [sys.executable, str(path / 'generate.py'), problem_spec]
|
||||
+ command = ['@pythonInterpreter@', str(path / 'generate.py'), problem_spec]
|
||||
if compile_checker:
|
||||
command.append('--compile-checker')
|
||||
logger.info('$ %s', ' '.join(command))
|
|
@ -0,0 +1,31 @@
|
|||
{ lib
|
||||
, buildPythonPackage
|
||||
, colorama
|
||||
, fetchFromGitHub
|
||||
, online-judge-api-client
|
||||
, requests
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "online-judge-tools";
|
||||
version = "11.5.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "online-judge-tools";
|
||||
repo = "oj";
|
||||
rev = "v${version}";
|
||||
sha256 = "0zkzmmjgjb6lyrzq1ip54cpnp7al9a7mcyjyi5vx58bvnx3q0c6m";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ colorama online-judge-api-client requests ];
|
||||
|
||||
# Requires internet access
|
||||
doCheck = false;
|
||||
|
||||
meta = with lib; {
|
||||
description = "Tools for various online judges. Download sample cases, generate additional test cases, test your code, and submit it.";
|
||||
homepage = "https://github.com/online-judge-tools/oj";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ sei40kr ];
|
||||
};
|
||||
}
|
|
@ -23,12 +23,12 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "oslo-utils";
|
||||
version = "4.12.0";
|
||||
version = "4.12.1";
|
||||
|
||||
src = fetchPypi {
|
||||
pname = "oslo.utils";
|
||||
inherit version;
|
||||
sha256 = "37aa1ee2c6cd8f3933912dd4323cbf7cd2d141e6dedb3debb764e491a9c9cf4d";
|
||||
sha256 = "sha256-zzEhx2/jwpY+1WOo68PJ/TvDy6XUT76K7LVAfUMMMJI=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
|
|
@ -0,0 +1,77 @@
|
|||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchFromGitHub
|
||||
, fetchpatch
|
||||
, pytestCheckHook
|
||||
, markdown
|
||||
, pyyaml
|
||||
, pygments
|
||||
}:
|
||||
|
||||
let
|
||||
extensions = [
|
||||
"arithmatex"
|
||||
"b64"
|
||||
"betterem"
|
||||
"caret"
|
||||
"critic"
|
||||
"details"
|
||||
"emoji"
|
||||
"escapeall"
|
||||
"extra"
|
||||
"highlight"
|
||||
"inlinehilite"
|
||||
"keys"
|
||||
"magiclink"
|
||||
"mark"
|
||||
"pathconverter"
|
||||
"progressbar"
|
||||
"saneheaders"
|
||||
"smartsymbols"
|
||||
"snippets"
|
||||
"striphtml"
|
||||
"superfences"
|
||||
"tabbed"
|
||||
"tasklist"
|
||||
"tilde"
|
||||
];
|
||||
in
|
||||
buildPythonPackage rec {
|
||||
pname = "pymdown-extensions";
|
||||
version = "9.1";
|
||||
format = "pyproject";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "facelessuser";
|
||||
repo = "pymdown-extensions";
|
||||
rev = version;
|
||||
sha256 = "sha256-II8Po8144h3wPFrzMbOB/qiCm2HseYrcZkyIZFGT+ek=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# this patch is needed to allow tests to pass for later versions of the
|
||||
# markdown dependency
|
||||
#
|
||||
# it can be removed after the next pymdown-extensions release
|
||||
(fetchpatch {
|
||||
url = "https://github.com/facelessuser/pymdown-extensions/commit/8ee5b5caec8f9373e025f50064585fb9d9b71f86.patch";
|
||||
sha256 = "sha256-jTHNcsV0zL0EkSTSj8zCGXXtpUaLnNPldmL+krZj3Gk=";
|
||||
})
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [ markdown pygments ];
|
||||
|
||||
checkInputs = [
|
||||
pytestCheckHook
|
||||
pyyaml
|
||||
];
|
||||
|
||||
pythonImportsCheck = map (ext: "pymdownx.${ext}") extensions;
|
||||
|
||||
meta = with lib; {
|
||||
description = "Extensions for Python Markdown";
|
||||
homepage = "https://facelessuser.github.io/pymdown-extensions/";
|
||||
license = with licenses; [ mit bsd2 ];
|
||||
maintainers = with maintainers; [ cpcloud ];
|
||||
};
|
||||
}
|
41
pkgs/development/python-modules/python-keycloak/default.nix
Normal file
41
pkgs/development/python-modules/python-keycloak/default.nix
Normal file
|
@ -0,0 +1,41 @@
|
|||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchFromGitHub
|
||||
, requests
|
||||
, python-jose
|
||||
, httmock
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "python-keycloak";
|
||||
version = "0.26.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "marcospereirampj";
|
||||
repo = "python-keycloak";
|
||||
rev = version;
|
||||
sha256 = "sha256-YWDj/dLN72XMxDXpSPQvkxHF5xJ15xWJjw3vtfmxlwo=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
requests
|
||||
python-jose
|
||||
];
|
||||
|
||||
checkInputs = [
|
||||
httmock
|
||||
];
|
||||
|
||||
checkPhase = ''
|
||||
python -m unittest discover
|
||||
'';
|
||||
|
||||
pythonImportsCheck = [ "keycloak" ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Provides access to the Keycloak API";
|
||||
homepage = "https://github.com/marcospereirampj/python-keycloak";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ costrouc ];
|
||||
};
|
||||
}
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "total-connect-client";
|
||||
version = "2021.12";
|
||||
version = "2022.1";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
@ -17,7 +17,7 @@ buildPythonPackage rec {
|
|||
owner = "craigjmidwinter";
|
||||
repo = "total-connect-client";
|
||||
rev = version;
|
||||
hash = "sha256-cgs6wIMSO8t8CPn6aR35sNcgfDaXDyFBldNEBOr850s=";
|
||||
hash = "sha256-sFVjAIFhTZf1z9XUTukHvNl8/ITL6FMOnZMMDKP7X30=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ lib, python, buildPythonPackage, pythonOlder, fetchPypi, isPy3k, incremental, ipaddress, twisted
|
||||
{ lib, stdenv, python, buildPythonPackage, pythonOlder, fetchPypi, isPy3k, incremental, ipaddress, twisted
|
||||
, automat, zope_interface, idna, pyopenssl, service-identity, pytest, mock, lsof
|
||||
, GeoIP}:
|
||||
|
||||
|
@ -22,6 +22,7 @@ buildPythonPackage rec {
|
|||
# as Python 3.5.
|
||||
disabled = pythonOlder "3.5";
|
||||
|
||||
doCheck = !(stdenv.isDarwin && stdenv.isAarch64);
|
||||
checkPhase = ''
|
||||
${python.interpreter} -m twisted.trial -j $NIX_BUILD_CORES ./test
|
||||
'';
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "cargo-tarpaulin";
|
||||
version = "0.18.5";
|
||||
version = "0.19.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "xd009642";
|
||||
repo = "tarpaulin";
|
||||
rev = version;
|
||||
sha256 = "sha256-vYfoCKHN7kaXSkZI7cdh9pzlX3LqYQNeENaoztKwcII=";
|
||||
sha256 = "sha256-H/EQTS+d317icCZdOWTvykzIFQC7ia7/jYFkImgogps=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -17,7 +17,7 @@ rustPlatform.buildRustPackage rec {
|
|||
buildInputs = [ openssl ]
|
||||
++ lib.optionals stdenv.isDarwin [ curl Security ];
|
||||
|
||||
cargoSha256 = "sha256-I7a3Vm/+oUqVLPYXvlz+I0Epuems7swePmV8vmmP6TU=";
|
||||
cargoSha256 = "sha256-A3J5od6yT7eVU66WfvG/umne0RDBZCf8IvQpW6OTZSE=";
|
||||
#checkFlags = [ "--test-threads" "1" ];
|
||||
doCheck = false;
|
||||
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
|
||||
buildGraalvmNativeImage rec {
|
||||
pname = "clj-kondo";
|
||||
version = "2021.12.19";
|
||||
version = "2022.01.15";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/clj-kondo/${pname}/releases/download/v${version}/${pname}-${version}-standalone.jar";
|
||||
sha256 = "sha256-CjqzsYT3Hc2Ej7ALHkuKwBPHMAQkQQilUZhuC3hcZQg=";
|
||||
sha256 = "sha256-s1SdCy4GaxFL9M3Fp/WGu1C6qY2Kst5PXFShrGCizUE=";
|
||||
};
|
||||
|
||||
extraNativeImageBuildArgs = [
|
||||
|
|
|
@ -2,16 +2,16 @@
|
|||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "cocogitto";
|
||||
version = "4.0.1";
|
||||
version = "4.1.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "oknozor";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "sha256-uSKzHo1lEBiXsi1rOKvfD2zVlkAUVZ5k0y8iiTXYE2A=";
|
||||
sha256 = "sha256-g7NBtqr7Mx7ALzij4hfoVXN3izbu4ShXYhHPYw9qnWk=";
|
||||
};
|
||||
|
||||
cargoSha256 = "sha256-gss3+XXyM//zER3gnN9qemIWaVDfs/f4gljmukMxoq0=";
|
||||
cargoSha256 = "sha256-kXspbXySY5ridLUvAjv49Rm0RGt1fNsfNw9a3vd4hyI=";
|
||||
|
||||
# Test depend on git configuration that would likly exist in a normal user enviroment
|
||||
# and might be failing to create the test repository it works in.
|
||||
|
|
|
@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
|
|||
'';
|
||||
|
||||
passthru = {
|
||||
tests = { inherit (nixosTests) jenkins; };
|
||||
tests = { inherit (nixosTests) jenkins jenkins-cli; };
|
||||
|
||||
updateScript = writeScript "update.sh" ''
|
||||
#!${stdenv.shell}
|
||||
|
|
|
@ -2,16 +2,16 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "dyff";
|
||||
version = "1.4.6";
|
||||
version = "1.4.7";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "homeport";
|
||||
repo = "dyff";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-xODOKKMGlpMePwO3A4IVReqsR1Kx0CwBjrhsvN+uDR4=";
|
||||
sha256 = "sha256-0/pn+Ld7o4gBnddA+uMzBhrFnov1XoqpRGkTT/vNH3Y=";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-W882fD4O4lPVH27KWmkRsS58R6qw7ENhKA2UgpNKvTw=";
|
||||
vendorSha256 = "sha256-9FkRazgZlzwvimsbqWCYJLxwRRlHa0i/jPPuf+AGSOA=";
|
||||
|
||||
subPackages = [
|
||||
"cmd/dyff"
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "efm-langserver";
|
||||
version = "0.0.38";
|
||||
version = "0.0.40";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "mattn";
|
||||
repo = "efm-langserver";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-+Q3vSifPiE9PyxJnoapJ1CBKUioTHExwBbWJgWD1iNI=";
|
||||
sha256 = "sha256-0C7iSWO7zzOhPgzxj9k2MK6poi4XaCbMjTGah3ohVJg=";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-tca+1SRrFyvU8ttHmfMFiGXd1A8rQSEWm1Mc2qp0EfI=";
|
||||
|
|
|
@ -5,16 +5,16 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "gosec";
|
||||
version = "2.9.5";
|
||||
version = "2.9.6";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "securego";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-YXAUDICQhZFeafP/wezd+dLpXpd7waz3wUCVCwVb12I=";
|
||||
sha256 = "sha256-eDzLVoOPYm8WG07dfi6s+xtBliCwf1LXoHxQ10YWs1A=";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-Mob8XxTALtuG9q7gMWKvp1k2cUDKI0QHAeXfQK47NDo=";
|
||||
vendorSha256 = "sha256-ELfbdrMMeK6ZG+hnibhHNB+k/Zvkepl+cbUx+E/Dvr8=";
|
||||
|
||||
subPackages = [
|
||||
"cmd/gosec"
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "lazygit";
|
||||
version = "0.31.4";
|
||||
version = "0.32.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "jesseduffield";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-yze4UaSEbyHwHSyj0mM7uCzaDED+p4O3HVVlHJi/FKU=";
|
||||
sha256 = "sha256-tawsBfHz6gq8va9YLtCwp9Ec8EWcvhdbYwdVtvvtJeY=";
|
||||
};
|
||||
|
||||
vendorSha256 = null;
|
||||
|
|
|
@ -29,9 +29,9 @@ let
|
|||
# 2) nix-build -A tree-sitter.updater.update-all-grammars
|
||||
# 3) OPTIONAL: Set GITHUB_TOKEN env variable to avoid api rate limit
|
||||
# 4) run the ./result script that is output by that (it updates ./grammars)
|
||||
version = "0.20.2";
|
||||
sha256 = "sha256-XCTS58q1XCl7XH6SLTZDZv22nUPBK8d4oqk063ZObkg=";
|
||||
cargoSha256 = "sha256-fKS9Q3BFGzyMnbNH6ItYnPj4dybeX7ucQfzYiOxVvhA=";
|
||||
version = "0.20.4";
|
||||
sha256 = "sha256-H/7j4HnaccmaH5m/FMTbi01uA3JtKVHiJLTQ4VZ7jfo=";
|
||||
cargoSha256 = "sha256-Pf/gVBQFssOomzq0IZp5H7MYwvFBRjMYfifLKCB7DCs=";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "tree-sitter";
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
{ lib }:
|
||||
|
||||
{
|
||||
tree-sitter-agda = lib.importJSON ./tree-sitter-agda.json;
|
||||
tree-sitter-bash = lib.importJSON ./tree-sitter-bash.json;
|
||||
|
@ -55,8 +54,8 @@
|
|||
tree-sitter-nix = lib.importJSON ./tree-sitter-nix.json;
|
||||
tree-sitter-norg = lib.importJSON ./tree-sitter-norg.json;
|
||||
tree-sitter-ocaml = lib.importJSON ./tree-sitter-ocaml.json;
|
||||
tree-sitter-perl = lib.importJSON ./tree-sitter-perl.json;
|
||||
tree-sitter-org = lib.importJSON ./tree-sitter-org.json;
|
||||
tree-sitter-perl = lib.importJSON ./tree-sitter-perl.json;
|
||||
tree-sitter-php = lib.importJSON ./tree-sitter-php.json;
|
||||
tree-sitter-pioasm = lib.importJSON ./tree-sitter-pioasm.json;
|
||||
tree-sitter-prisma = lib.importJSON ./tree-sitter-prisma.json;
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
{
|
||||
"url": "https://github.com/tree-sitter/tree-sitter-c-sharp",
|
||||
"rev": "3104df21065af0f3d51e05a96cd0e2ff16a6f982",
|
||||
"date": "2021-12-09T21:13:54+00:00",
|
||||
"path": "/nix/store/1xgrz7rm6mc6j2svaidj4x0zyda0ahz4-tree-sitter-c-sharp",
|
||||
"sha256": "14g8x5q4xc87s2wpycws6r6ci083j7pk1jdw6sr8qp96zyzs17pp",
|
||||
"rev": "352a4630c81a7a5cbd3bc67327743bd8d38f2dd2",
|
||||
"date": "2022-01-03T12:31:17+00:00",
|
||||
"path": "/nix/store/c7k10h98vzqag0rsywm0p71jaz57880x-tree-sitter-c-sharp",
|
||||
"sha256": "198n5i9bvks0mmbqgzjgrhv6hy1afnx806jnap10241iyd817jbf",
|
||||
"fetchLFS": false,
|
||||
"fetchSubmodules": false,
|
||||
"deepClone": false,
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
{
|
||||
"url": "https://github.com/stsewd/tree-sitter-comment",
|
||||
"rev": "5dd3c62f1bbe378b220fe16b317b85247898639e",
|
||||
"date": "2021-10-01T17:13:56-05:00",
|
||||
"path": "/nix/store/isrc5wlyxvcawfj35yi4nmblshy69b1j-tree-sitter-comment",
|
||||
"sha256": "1wk6lxzndaikbrn72pa54y59qs0xnfaffc8mxmm6c5v5x16l8vb3",
|
||||
"rev": "6975eb268f42df2afc313f96c0693e284685dba7",
|
||||
"date": "2022-01-22T20:58:19-05:00",
|
||||
"path": "/nix/store/nl4whdipy7a4g3ds2yv3c0qr7z4pifwn-tree-sitter-comment",
|
||||
"sha256": "009krarzs9qykd8fas67gychjzcbgj8j0jm9h0963dlxs4hyay73",
|
||||
"fetchLFS": false,
|
||||
"fetchSubmodules": false,
|
||||
"deepClone": false,
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
{
|
||||
"url": "https://github.com/tree-sitter/tree-sitter-cpp",
|
||||
"rev": "e8dcc9d2b404c542fd236ea5f7208f90be8a6e89",
|
||||
"date": "2021-10-28T08:16:36-05:00",
|
||||
"path": "/nix/store/d08ymiv4qjs9hnc8b0yw700da47879wb-tree-sitter-cpp",
|
||||
"sha256": "1h0q4prr8yf714abz16i2ym41sskmilmga521sxv9d75kqhyb3wl",
|
||||
"rev": "656d7ea44b2b0daece78791e30281e283f30001e",
|
||||
"date": "2022-01-17T09:06:11-06:00",
|
||||
"path": "/nix/store/w4qqya24zf0cd7rqw1440szrrad8nf23-tree-sitter-cpp",
|
||||
"sha256": "0vfgv9rw8pw4d41p5rndy7cjw8w0k0vnn54cwpxkm3r2vblnjn58",
|
||||
"fetchLFS": false,
|
||||
"fetchSubmodules": false,
|
||||
"deepClone": false,
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
{
|
||||
"url": "https://github.com/thehamsta/tree-sitter-cuda",
|
||||
"rev": "bc20ed7a36031437a69a88ef368af4b9f1ecec70",
|
||||
"date": "2021-12-10T00:43:38+01:00",
|
||||
"path": "/nix/store/zagrgq7zfh6n90z4qpp8cy002g588dhj-tree-sitter-cuda",
|
||||
"sha256": "04gnfjq5rd1vcby8737wxhzmg4vmn2ggjz6n94bbna8b96qc1xxj",
|
||||
"rev": "14cd86e18ba45e327017de5b3e0f8d8f7f8e98ec",
|
||||
"date": "2022-01-24T00:39:28+01:00",
|
||||
"path": "/nix/store/3lskjrhqd16ymvsbrwzcsdd80cyr7ljj-tree-sitter-cuda",
|
||||
"sha256": "09qpl5mfv39788smz87zbzp04i3rdhsckjjqngvr0w24dsw30nyx",
|
||||
"fetchLFS": false,
|
||||
"fetchSubmodules": false,
|
||||
"deepClone": false,
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
{
|
||||
"url": "https://github.com/elixir-lang/tree-sitter-elixir",
|
||||
"rev": "1b3ecf7765979a5602bbb8988b8fc0d9f4c887d6",
|
||||
"date": "2021-12-15T23:29:48+01:00",
|
||||
"path": "/nix/store/ahdmwdlw7g63wf681cvclxh92mp8waba-tree-sitter-elixir",
|
||||
"sha256": "09kmi989hp2fp7w1xsambnlnp49fnnivdh45pwz9y3dab8iyngsn",
|
||||
"rev": "de20391afe5cb03ef1e8a8e43167e7b58cc52869",
|
||||
"date": "2022-01-10T10:35:12-06:00",
|
||||
"path": "/nix/store/099pwd7iv86g1j4fplgq33a4jpwbvv60-tree-sitter-elixir",
|
||||
"sha256": "0zrkrwhw3g1vazsxcwrfd1fk4wvs9hdwmwp6073mfh370bz4140h",
|
||||
"fetchLFS": false,
|
||||
"fetchSubmodules": false,
|
||||
"deepClone": false,
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
{
|
||||
"url": "https://github.com/elm-tooling/tree-sitter-elm",
|
||||
"rev": "8dd06afd9ca60a420374c6b65831e58a1d1237ad",
|
||||
"date": "2021-07-26T03:59:46+02:00",
|
||||
"path": "/nix/store/pz5nbdx19mdq6dp238l1qc3n81l2i88f-tree-sitter-elm",
|
||||
"sha256": "1mncr0nvb616zn2172pqcjd2jrqzyfad0y1pz2mwh8pqwfr0c3nf",
|
||||
"rev": "bd50ccf66b42c55252ac8efc1086af4ac6bab8cd",
|
||||
"date": "2021-12-27T23:25:02+01:00",
|
||||
"path": "/nix/store/l5b9nhvrnq4a105rpmfi59dpg2xqs5nr-tree-sitter-elm",
|
||||
"sha256": "1ls9l81nkcyym92n6h983m3jjjxdlr27nxa21p9l6czwf34564ky",
|
||||
"fetchLFS": false,
|
||||
"fetchSubmodules": false,
|
||||
"deepClone": false,
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
{
|
||||
"url": "https://github.com/tree-sitter/tree-sitter-embedded-template",
|
||||
"rev": "1c03594a44df1fc2020b989d503cb084abd5fd01",
|
||||
"date": "2021-03-04T10:06:18-08:00",
|
||||
"path": "/nix/store/09b9drfnywcy1i8wlw6slnn76ch40kqk-tree-sitter-embedded-template",
|
||||
"sha256": "0c9l4i6kwb29zp05h616y3vk2hhcfc8bhdf9m436bk47pfy2zabg",
|
||||
"rev": "d21df11b0ecc6fd211dbe11278e92ef67bd17e97",
|
||||
"date": "2021-12-23T08:53:16-08:00",
|
||||
"path": "/nix/store/zy74brmd1x2q68bpvi5v4z52bhmkcmy8-tree-sitter-embedded-template",
|
||||
"sha256": "0h3nj6fz512riyx2b65pg9pjprkpkasnglwljlzi6s1in9fdig3x",
|
||||
"fetchLFS": false,
|
||||
"fetchSubmodules": false,
|
||||
"deepClone": false,
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
{
|
||||
"url": "https://github.com/thehamsta/tree-sitter-glsl",
|
||||
"rev": "26ba31a3f5a85ebed5d71e49eef11a003bed782b",
|
||||
"date": "2021-11-22T08:02:47+01:00",
|
||||
"path": "/nix/store/khlrphky7p7qdivnn34r8hxlpzgav3xm-tree-sitter-glsl",
|
||||
"sha256": "0qvn45whhd6q4wwqaihfd90197xr8lcynwjj418hxl83m9zy8xcz",
|
||||
"rev": "ffb93961426926554a0ba4a389ea6e9d6fafdea9",
|
||||
"date": "2022-01-24T11:15:06+01:00",
|
||||
"path": "/nix/store/x508b69xq0y2ly4hspkgyq5g0v29xvjz-tree-sitter-glsl",
|
||||
"sha256": "1b91wamhdzqq76l9k3vkmrdb1j98w5slzw8d4piqlgp70j396813",
|
||||
"fetchLFS": false,
|
||||
"fetchSubmodules": false,
|
||||
"deepClone": false,
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
{
|
||||
"url": "https://github.com/tree-sitter/tree-sitter-go",
|
||||
"rev": "1203c11e422c73350e672445c5c32b8c0f79266d",
|
||||
"date": "2021-12-03T14:22:11-08:00",
|
||||
"path": "/nix/store/5h584m7qgvlh0s5k10503zj3idggandz-tree-sitter-go",
|
||||
"sha256": "03i63mh5g21y424pf9whl42p7shqp9xlrx90xpyrd12dlc9zhh2j",
|
||||
"rev": "0fa917a7022d1cd2e9b779a6a8fc5dc7fad69c75",
|
||||
"date": "2022-01-06T10:54:10+01:00",
|
||||
"path": "/nix/store/bw2hilbj37ys9lig2fzz58cvjy7nhn3l-tree-sitter-go",
|
||||
"sha256": "0kgy4yyd0z8pydldnfwsfw2iwbhn4f43qxfhy94wvpwiwi74kfmg",
|
||||
"fetchLFS": false,
|
||||
"fetchSubmodules": false,
|
||||
"deepClone": false,
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
{
|
||||
"url": "https://github.com/tree-sitter/tree-sitter-haskell",
|
||||
"rev": "d72f2e42c0d5ccf8e8b1c39e3642428317e8fe02",
|
||||
"date": "2021-11-14T23:21:37+01:00",
|
||||
"path": "/nix/store/n36iwva3hk2045wx87mahbsfrqhx6mbw-tree-sitter-haskell",
|
||||
"sha256": "0clqyd1mnfz8xcpsr90nzh6j37pdgbgrr4jqf9ifn6m851k4f09g",
|
||||
"rev": "d6ccd2d9c40bdec29fee0027ef04fe5ff1ae4ceb",
|
||||
"date": "2022-01-07T03:13:04+01:00",
|
||||
"path": "/nix/store/biyjfajma7nr175xviaw65jksqfak893-tree-sitter-haskell",
|
||||
"sha256": "0zfxi3adqhy7d1w2dvnywkms8a4vfxkjswdhar7p5sxyps8a5wry",
|
||||
"fetchLFS": false,
|
||||
"fetchSubmodules": false,
|
||||
"deepClone": false,
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
{
|
||||
"url": "https://github.com/connorlay/tree-sitter-heex",
|
||||
"rev": "625a721ac38d9dd23d4f2b08eceb6700a2e670d5",
|
||||
"date": "2021-10-19T12:18:28-07:00",
|
||||
"path": "/nix/store/pr36q25xgnpmywm53w6rg58ygs9l93wj-tree-sitter-heex",
|
||||
"sha256": "1r7wrb1h2l35wp0hlswb3xpwcf55dr56r865sriq3ngv89y64yha",
|
||||
"rev": "d8b5b9f016cd3c7b0ee916cf031d9a2188c0fc44",
|
||||
"date": "2022-01-23T20:01:08-08:00",
|
||||
"path": "/nix/store/iv3vxp8cdnfhpr75gvqvm8hmvfw8hw51-tree-sitter-heex",
|
||||
"sha256": "0dx6l9k6l5ibvrdb7x13lqnpj5nmjz8f5lc8j8wh4cq2jdabfw0k",
|
||||
"fetchLFS": false,
|
||||
"fetchSubmodules": false,
|
||||
"deepClone": false,
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
{
|
||||
"url": "https://github.com/tree-sitter/tree-sitter-java",
|
||||
"rev": "ed3a87f750b1d1d533f15ab93fef3e1f5a46e234",
|
||||
"date": "2021-10-17T09:05:07+02:00",
|
||||
"path": "/nix/store/crd0zzw31hx5jw7m95dvpssr3pi60k5l-tree-sitter-java",
|
||||
"sha256": "14qwmpm7dzqwby59vy1nhyddfz2lpf69ajr65s7qaqh0jcs6rs19",
|
||||
"rev": "a24ae7d16de3517bff243a87d087d0b4877a65c5",
|
||||
"date": "2022-01-12T08:57:59-08:00",
|
||||
"path": "/nix/store/dipis7syj55xrmc72gvx2f9q672mn6dg-tree-sitter-java",
|
||||
"sha256": "0p01xkxzdjwx32hd6k4kqidlhkgj8q9b9lp4g4fra5gx9w159iqm",
|
||||
"fetchLFS": false,
|
||||
"fetchSubmodules": false,
|
||||
"deepClone": false,
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
{
|
||||
"url": "https://github.com/latex-lsp/tree-sitter-latex",
|
||||
"rev": "2c0d03a36ee979bc697f6a9dd119174cf0ef15e0",
|
||||
"date": "2021-07-19T17:50:34+02:00",
|
||||
"path": "/nix/store/vrpfbjfps3bd9vrx8760l0vx7m7ijhja-tree-sitter-latex",
|
||||
"sha256": "0dfpdv5sibvajf2grlc0mqhyggjf6ip9j01jikk58n1yc9va88ib",
|
||||
"rev": "6f796b700c69a8af28132e84ed6d0c8f0c17a5e2",
|
||||
"date": "2022-01-11T19:20:05+01:00",
|
||||
"path": "/nix/store/48rdm71qngr9szsfhr85708srwn6b4ra-tree-sitter-latex",
|
||||
"sha256": "0rbaql6jh3kwa4fap3b438l1733h2pbiazdbjzv38bbigkirad0n",
|
||||
"fetchLFS": false,
|
||||
"fetchSubmodules": false,
|
||||
"deepClone": false,
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
{
|
||||
"url": "https://github.com/benwilliamgraham/tree-sitter-llvm",
|
||||
"rev": "d4f61bed8ecb632addcd5e088c4f4cb9c1bf1c5b",
|
||||
"date": "2021-10-03T12:19:51-04:00",
|
||||
"path": "/nix/store/k9vpa9lvrvf1im6wx0c0xyjf2yzgbn0x-tree-sitter-llvm",
|
||||
"sha256": "0iiigra7knvwsb6v76qs7vxpkmfnggakd27gl6sz9dm6gimp1adp",
|
||||
"rev": "3b213925b9c4f42c1acfe2e10bfbb438d9c6834d",
|
||||
"date": "2021-12-27T14:02:51-05:00",
|
||||
"path": "/nix/store/hjg9z82l3iqyjw0s9lf1kkm31p5wlv3d-tree-sitter-llvm",
|
||||
"sha256": "0ymrdcajji11852c158w67mgcsycphwj9mh777q3n4jn8pp37y8j",
|
||||
"fetchLFS": false,
|
||||
"fetchSubmodules": false,
|
||||
"deepClone": false,
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue