Merge master into haskell-updates
This commit is contained in:
commit
d22a0470ec
|
@ -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
|
||||
|
|
|
@ -1918,12 +1918,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";
|
||||
|
@ -6371,7 +6369,7 @@
|
|||
keys = [{
|
||||
longkeyid = "rsa4096/0x7248991EFA8EFBEE";
|
||||
fingerprint = "01F5 0A29 D4AA 9117 5A11 BDB1 7248 991E FA8E FBEE";
|
||||
}];
|
||||
}];
|
||||
};
|
||||
kiwi = {
|
||||
email = "envy1988@gmail.com";
|
||||
|
@ -7026,7 +7024,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 = "Advaith Madhukar"; # this is my legal name, I prefer Luna; please keep that in mind!
|
||||
};
|
||||
lionello = {
|
||||
email = "lio@lunesu.com";
|
||||
|
@ -10624,14 +10622,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";
|
||||
|
@ -11512,10 +11516,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>
|
||||
|
|
|
@ -397,6 +397,24 @@
|
|||
<literal>~/.local/share/polymc/polymc.cfg</literal>.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
The terraform 0.12 compatibility has been removed and the
|
||||
<literal>terraform.withPlugins</literal> and
|
||||
<literal>terraform-providers.mkProvider</literal>
|
||||
implementations simplified. Providers now need to be stored
|
||||
under
|
||||
<literal>$out/libexec/terraform-providers/<registry>/<owner>/<name>/<version>/<os>_<arch>/terraform-provider-<name>_v<version></literal>
|
||||
(which mkProvider does).
|
||||
</para>
|
||||
<para>
|
||||
This breaks back-compat so it’s not possible to mix-and-match
|
||||
with previous versions of nixpkgs. In exchange, it now becomes
|
||||
possible to use the providers from
|
||||
<link xlink:href="https://github.com/numtide/nixpkgs-terraform-providers-bin">nixpkgs-terraform-providers-bin</link>
|
||||
directly.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<literal>pkgs.noto-fonts-cjk</literal> is now deprecated in
|
||||
|
@ -589,6 +607,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
|
||||
|
|
|
@ -124,6 +124,11 @@ In addition to numerous new and upgraded packages, this release has the followin
|
|||
|
||||
- MultiMC has been replaced with the fork PolyMC due to upstream developers being hostile to 3rd party package maintainers. PolyMC removes all MultiMC branding and is aimed at providing proper 3rd party packages like the one contained in Nixpkgs. This change affects the data folder where game instances and other save and configuration files are stored. Users with existing installations should rename `~/.local/share/multimc` to `~/.local/share/polymc`. The main config file's path has also moved from `~/.local/share/multimc/multimc.cfg` to `~/.local/share/polymc/polymc.cfg`.
|
||||
|
||||
- The terraform 0.12 compatibility has been removed and the `terraform.withPlugins` and `terraform-providers.mkProvider` implementations simplified. Providers now need to be stored under
|
||||
`$out/libexec/terraform-providers/<registry>/<owner>/<name>/<version>/<os>_<arch>/terraform-provider-<name>_v<version>` (which mkProvider does).
|
||||
|
||||
This breaks back-compat so it's not possible to mix-and-match with previous versions of nixpkgs. In exchange, it now becomes possible to use the providers from [nixpkgs-terraform-providers-bin](https://github.com/numtide/nixpkgs-terraform-providers-bin) directly.
|
||||
|
||||
- `pkgs.noto-fonts-cjk` is now deprecated in favor of `pkgs.noto-fonts-cjk-sans`
|
||||
and `pkgs.noto-fonts-cjk-serif` because they each have different release
|
||||
schedules. To maintain compatibility with prior releases of Nixpkgs,
|
||||
|
@ -206,6 +211,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,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";
|
||||
|
|
|
@ -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;
|
||||
}
|
||||
|
|
|
@ -19,7 +19,8 @@ let
|
|||
, vendorSha256 ? throw "vendorSha256 missing: please use `buildGoModule`" /* added 2022/01 */
|
||||
, deleteVendor ? false
|
||||
, proxyVendor ? false
|
||||
, provider-source-address
|
||||
, # Looks like "registry.terraform.io/vancluever/acme"
|
||||
provider-source-address
|
||||
}@attrs:
|
||||
buildGoModule {
|
||||
pname = repo;
|
||||
|
@ -34,9 +35,15 @@ let
|
|||
inherit owner repo rev sha256;
|
||||
};
|
||||
|
||||
# Terraform allow checking the provider versions, but this breaks
|
||||
# if the versions are not provided via file paths.
|
||||
postBuild = "mv $NIX_BUILD_TOP/go/bin/${repo}{,_v${version}}";
|
||||
# Move the provider to libexec
|
||||
postInstall = ''
|
||||
dir=$out/libexec/terraform-providers/${provider-source-address}/${version}/''${GOOS}_''${GOARCH}
|
||||
mkdir -p "$dir"
|
||||
mv $out/bin/* "$dir/terraform-provider-$(basename ${provider-source-address})_${version}"
|
||||
rmdir $out/bin
|
||||
'';
|
||||
|
||||
# Keep the attributes around for later consumption
|
||||
passthru = attrs;
|
||||
};
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
{ stdenv
|
||||
, lib
|
||||
, buildEnv
|
||||
, buildGoModule
|
||||
, fetchFromGitHub
|
||||
, makeWrapper
|
||||
|
@ -62,9 +63,9 @@ let
|
|||
babariviere
|
||||
kalbasit
|
||||
marsam
|
||||
maxeaubrey
|
||||
timstott
|
||||
zimbatm
|
||||
maxeaubrey
|
||||
zowoq
|
||||
];
|
||||
};
|
||||
|
@ -76,39 +77,6 @@ let
|
|||
let
|
||||
actualPlugins = plugins terraform.plugins;
|
||||
|
||||
# Make providers available in Terraform 0.13 and 0.12 search paths.
|
||||
pluginDir = lib.concatMapStrings
|
||||
(pl:
|
||||
let
|
||||
inherit (pl) version GOOS GOARCH;
|
||||
|
||||
pname = pl.pname or (throw "${pl.name} is missing a pname attribute");
|
||||
|
||||
# This is just the name, without the terraform-provider- prefix
|
||||
plugin_name = lib.removePrefix "terraform-provider-" pname;
|
||||
|
||||
slug = pl.passthru.provider-source-address or "registry.terraform.io/nixpkgs/${plugin_name}";
|
||||
|
||||
shim = writeText "shim" ''
|
||||
#!${runtimeShell}
|
||||
exec ${pl}/bin/${pname}_v${version} "$@"
|
||||
'';
|
||||
in
|
||||
''
|
||||
TF_0_13_PROVIDER_PATH=$out/plugins/${slug}/${version}/${GOOS}_${GOARCH}/${pname}_v${version}
|
||||
mkdir -p "$(dirname $TF_0_13_PROVIDER_PATH)"
|
||||
|
||||
cp ${shim} "$TF_0_13_PROVIDER_PATH"
|
||||
chmod +x "$TF_0_13_PROVIDER_PATH"
|
||||
|
||||
TF_0_12_PROVIDER_PATH=$out/plugins/${pname}_v${version}
|
||||
|
||||
cp ${shim} "$TF_0_12_PROVIDER_PATH"
|
||||
chmod +x "$TF_0_12_PROVIDER_PATH"
|
||||
''
|
||||
)
|
||||
actualPlugins;
|
||||
|
||||
# Wrap PATH of plugins propagatedBuildInputs, plugins may have runtime dependencies on external binaries
|
||||
wrapperInputs = lib.unique (lib.flatten
|
||||
(lib.catAttrs "propagatedBuildInputs"
|
||||
|
@ -134,18 +102,16 @@ let
|
|||
terraform.overrideAttrs
|
||||
(orig: { passthru = orig.passthru // passthru; })
|
||||
else
|
||||
lib.appendToName "with-plugins" (stdenv.mkDerivation {
|
||||
lib.appendToName "with-plugins" (buildEnv {
|
||||
inherit (terraform) name meta;
|
||||
paths = actualPlugins;
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
||||
buildCommand = pluginDir + ''
|
||||
mkdir -p $out/bin/
|
||||
postBuild = ''
|
||||
mkdir -p $out/bin
|
||||
makeWrapper "${terraform}/bin/terraform" "$out/bin/terraform" \
|
||||
--set NIX_TERRAFORM_PLUGIN_DIR $out/plugins \
|
||||
--set NIX_TERRAFORM_PLUGIN_DIR $out/libexec/terraform-providers \
|
||||
--prefix PATH : "${lib.makeBinPath wrapperInputs}"
|
||||
'';
|
||||
|
||||
inherit passthru;
|
||||
});
|
||||
in
|
||||
withPlugins (_: [ ]);
|
||||
|
|
|
@ -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 ];
|
||||
|
|
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 ];
|
||||
|
|
|
@ -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 ];
|
||||
|
|
|
@ -7,11 +7,11 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "googleapis-common-protos";
|
||||
version = "1.53.0";
|
||||
version = "1.54.0";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "a88ee8903aa0a81f6c3cec2d5cf62d3c8aa67c06439b0496b49048fb1854ebf4";
|
||||
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,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"
|
||||
|
|
|
@ -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,
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
{
|
||||
"url": "https://github.com/nvim-neorg/tree-sitter-norg",
|
||||
"rev": "665736e400cfd52ae92ead244ca9f5d44db98151",
|
||||
"date": "2021-12-14T15:04:57+01:00",
|
||||
"path": "/nix/store/crbl24rj54f8c9pjq8igadz3wqcw6qrw-tree-sitter-norg",
|
||||
"sha256": "0hxar07a7n3ghqagr0qjxbz4sgzcpyxwgd4dbj1vvy4xnk07i0br",
|
||||
"rev": "c4be6addec0a8ada234684ced6c928189fd399af",
|
||||
"date": "2022-01-22T17:12:52+01:00",
|
||||
"path": "/nix/store/x73fgsrav1fg0vzydcy4ayrawn0cw7w2-tree-sitter-norg",
|
||||
"sha256": "14wf53p6lkf4xknzb4bngh9fsas6hnr8iv73xnalyf8mqq1977pc",
|
||||
"fetchLFS": false,
|
||||
"fetchSubmodules": false,
|
||||
"deepClone": false,
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
{
|
||||
"url": "https://github.com/milisims/tree-sitter-org",
|
||||
"rev": "39a377f5072ee9f79884e227dc49d42c2eba67d8",
|
||||
"date": "2021-11-01T23:43:23-04:00",
|
||||
"path": "/nix/store/cgsn53p4gp1ahq2zl38jz51xal60dckf-tree-sitter-org",
|
||||
"sha256": "0vfnph4xxvkalzk3rgvzi6ckqkjg31ddzgh4mwbk7qwsacbq9rss",
|
||||
"rev": "f110024d539e676f25b72b7c80b0fd43c34264ef",
|
||||
"date": "2021-11-28T23:04:31-05:00",
|
||||
"path": "/nix/store/8vc7ddhd2wzrin3cj14zrw5mmi58f8sl-tree-sitter-org",
|
||||
"sha256": "1gvqvdapqfac1ny1a0l590h1w617wczwv234fsnal6amfdyganxc",
|
||||
"fetchLFS": false,
|
||||
"fetchSubmodules": false,
|
||||
"deepClone": false,
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
{
|
||||
"url": "https://github.com/ganezdragon/tree-sitter-perl",
|
||||
"rev": "0ac2c6da562c7a2c26ed7e8691d4a590f7e8b90a",
|
||||
"date": "2021-11-01T14:40:51-04:00",
|
||||
"path": "/nix/store/1yzkap7jvps3xdj19pygyv1bn6c33qak-tree-sitter-perl",
|
||||
"sha256": "184zaicrl9i4cywhyc2cxpghw7daz9pi0fhwkkgpv7j6kvp1ig2w",
|
||||
"rev": "ab2b39439f2fc82fd5ea0b7e08509760d4cbacd5",
|
||||
"date": "2022-01-23T13:55:11-05:00",
|
||||
"path": "/nix/store/s55aybm3r5n7l7nx916mhjyry96xcvin-tree-sitter-perl",
|
||||
"sha256": "16ap0yq9gmh0kbyka7zcpjw3dl368n23sxp3v82z4ccwzmgfmaw4",
|
||||
"fetchLFS": false,
|
||||
"fetchSubmodules": false,
|
||||
"deepClone": false,
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
{
|
||||
"url": "https://github.com/nvim-treesitter/tree-sitter-query",
|
||||
"rev": "9a2ccff9f672f1f3d320cf925b8e5acc89b27055",
|
||||
"date": "2021-07-13T08:51:40-05:00",
|
||||
"path": "/nix/store/k843gr9rlkd5jaf9arvlwcs31wsznn81-tree-sitter-query",
|
||||
"sha256": "0x5ssq8pb767s1l68123jaa5p4570xmz74ii94kckd46wmqbk4v9",
|
||||
"rev": "5217c6805c09f8fc00ed13d17d5fcb791437aee6",
|
||||
"date": "2021-12-23T16:48:02-05:00",
|
||||
"path": "/nix/store/b8n553bwlyzi05p8vn08qv6vbzg9875q-tree-sitter-query",
|
||||
"sha256": "00q6cpw5rkb20cypx820glqhfs4vsgqdymj5y0sknd874lq6crfg",
|
||||
"fetchLFS": false,
|
||||
"fetchSubmodules": false,
|
||||
"deepClone": false,
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
{
|
||||
"url": "https://github.com/r-lib/tree-sitter-r",
|
||||
"rev": "91f587e5685f46e26f9f6e55f2e06d503f8f0fc0",
|
||||
"date": "2021-12-03T10:44:27-05:00",
|
||||
"path": "/nix/store/z89yfih6g05fkrzz6s7snkyqp8wj8pi5-tree-sitter-r",
|
||||
"sha256": "0dds34vgrvgxi1918a2w6xcw5l8n9ch3qi43vql769p8zxf8qijp",
|
||||
"rev": "d9868735e401e4870a3d4422790b585fea3faec8",
|
||||
"date": "2022-01-10T10:12:40-05:00",
|
||||
"path": "/nix/store/b2dp06sk8s3ksm382gndshhd1mxmd6n6-tree-sitter-r",
|
||||
"sha256": "1pl38gksb4cwdgrb92rbmkanxn65m99i6c8w8xldhs0q97d1v5k0",
|
||||
"fetchLFS": false,
|
||||
"fetchSubmodules": false,
|
||||
"deepClone": false,
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
{
|
||||
"url": "https://github.com/tree-sitter/tree-sitter-regex",
|
||||
"rev": "7b97502cfc3ffa7110f6b68bb39fb259c9a0500c",
|
||||
"date": "2021-08-17T11:21:39-07:00",
|
||||
"path": "/nix/store/3lpj820c141i26p20kin465xlr5jpyjs-tree-sitter-regex",
|
||||
"sha256": "0n9lmwwgij00078v3fr19vfn1g3wh3agm8jqp80v1cnrcsmpn97p",
|
||||
"rev": "e1cfca3c79896ff79842f057ea13e529b66af636",
|
||||
"date": "2022-01-03T09:37:11-08:00",
|
||||
"path": "/nix/store/24lr7jzznsd3z7cld007aww25kbwcf51-tree-sitter-regex",
|
||||
"sha256": "0j6j0h8ciyhgmcq9iy3843anyfvd7s0biqzgbsqgwbgbqbg2nfwl",
|
||||
"fetchLFS": false,
|
||||
"fetchSubmodules": false,
|
||||
"deepClone": false,
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
{
|
||||
"url": "https://github.com/stsewd/tree-sitter-rst",
|
||||
"rev": "a5514617ae3644effa80d4696be428e4a371c01a",
|
||||
"date": "2021-11-05T20:58:51-05:00",
|
||||
"path": "/nix/store/is0j0cpd3i7q7liqlcrfdflabmm9rnlg-tree-sitter-rst",
|
||||
"sha256": "1bw0yry968qz4arzckxpyz5zkw6ajyirrxyf78m9lr1zmz1vnivy",
|
||||
"rev": "b74770c0166f28c1a0ab293513a78712ca1c338b",
|
||||
"date": "2022-01-22T20:59:44-05:00",
|
||||
"path": "/nix/store/ymhzq6hwq43gf918zyxk7can4qfkz7n1-tree-sitter-rst",
|
||||
"sha256": "0q50vwk72lrgnrdjjn5aj1fjksrwkd0gfmdnrjy59a6cw8m1gmf0",
|
||||
"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