git.iko.soy/typeable/nixpkgs
on master help sign in
Merge master into staging-next
commita45818989adb69966bbaa992b9b0d1c743d4726e authorgithub-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> dateMon 24 Jan 2022, 18:01 (5 years ago) parent2f14e11a982e38
51 files changed+784−326
lib/meta.nix+1−1 lib/options.nix+44 nixos/doc/manual/development/option-declarations.section.md+74 nixos/doc/manual/from_md/development/option-declarations.section.xml+206−103 nixos/modules/services/web-apps/dokuwiki.nix+17−21 nixos/modules/services/web-servers/nginx/default.nix+13−6 nixos/tests/quorum.nix+32−9 pkgs/applications/misc/clight/default.nix+2−2 pkgs/applications/misc/expenses/default.nix+14−5 pkgs/applications/misc/heimer/default.nix+2−2 pkgs/applications/misc/koreader/default.nix+2−2 pkgs/applications/misc/rofi-file-browser/default.nix+2−2 pkgs/applications/misc/topydo/default.nix+2−2 pkgs/applications/networking/instant-messengers/signal-cli/default.nix+2−2 pkgs/applications/radio/gqrx/default.nix+2−7 pkgs/applications/terminal-emulators/havoc/default.nix+20−8 pkgs/data/icons/nordzy-icon-theme/default.nix+54 pkgs/data/themes/orchis-theme/default.nix+5 pkgs/development/compilers/fstar/default.nix+2−2 pkgs/development/libraries/globalarrays/default.nix+2−2 pkgs/development/libraries/science/math/scs/default.nix+2−2 pkgs/development/python-modules/google-cloud-core/default.nix+2−2 pkgs/development/python-modules/googleapis-common-protos/default.nix+2−2 pkgs/development/python-modules/groestlcoin_hash/default.nix+26 pkgs/development/python-modules/oslo-utils/default.nix+2−2 pkgs/development/python-modules/pymdown-extensions/default.nix+77 pkgs/development/tools/clj-kondo/default.nix+2−2 pkgs/development/tools/cocogitto/default.nix+3−3 pkgs/development/tools/dyff/default.nix+3−3 pkgs/development/tools/gosec/default.nix+3−3 pkgs/development/tools/lazygit/default.nix+2−2 pkgs/games/opensupaplex/default.nix+89 pkgs/games/xcowsay/default.nix+2−2 pkgs/misc/emulators/ryujinx/default.nix+7−4 pkgs/misc/emulators/ryujinx/deps.nix+22−21 pkgs/misc/emulators/ryujinx/updater.sh+1−1 pkgs/os-specific/linux/tuigreet/default.nix+3−3 pkgs/servers/consul/default.nix+3−3 pkgs/servers/imgproxy/default.nix+2−2 pkgs/servers/mattermost/default.nix+6−3 pkgs/tools/admin/procs/default.nix+3−3 pkgs/tools/filesystems/irods/common.nix+1−1 pkgs/tools/networking/gvpe/default.nix+6−7 pkgs/tools/networking/gvpe/gvpe-3.0-glibc-2.26.patch−18 pkgs/tools/networking/htpdate/default.nix+2−2 pkgs/tools/networking/libreswan/default.nix+3−1 pkgs/tools/security/corsmisc/default.nix−25 pkgs/tools/security/sigurlx/default.nix−25 pkgs/top-level/aliases.nix+2 pkgs/top-level/all-packages.nix+6−8 pkgs/top-level/python-packages.nix+4
lib/meta.nix+1−1
@@ -78,7 +78,7 @@ rec {
7878
7979 2. (modern) a pattern for the platform `parsed` field.
8080
81− We can inject these into a patten for the whole of a structured platform,
81+ We can inject these into a pattern for the whole of a structured platform,
8282 and then match that.
8383 */
8484 platformMatch = platform: elem: let
lib/options.nix+44
@@ -26,6 +26,7 @@ let
2626 take
2727 ;
2828 inherit (lib.attrsets)
29+ attrByPath
2930 optionalAttrs
3031 ;
3132 inherit (lib.strings)
@@ -99,6 +100,49 @@ rec {
99100 type = lib.types.bool;
100101 };
101102
103+ /* Creates an Option attribute set for an option that specifies the
104+ package a module should use for some purpose.
105+
106+ Type: mkPackageOption :: pkgs -> string -> { default :: [string], example :: null | string | [string] } -> option
107+
108+ The package is specified as a list of strings representing its attribute path in nixpkgs.
109+
110+ Because of this, you need to pass nixpkgs itself as the first argument.
111+
112+ The second argument is the name of the option, used in the description "The <name> package to use.".
113+
114+ You can also pass an example value, either a literal string or a package's attribute path.
115+
116+ You can omit the default path if the name of the option is also attribute path in nixpkgs.
117+
118+ Example:
119+ mkPackageOption pkgs "hello" { }
120+ => { _type = "option"; default = «derivation /nix/store/3r2vg51hlxj3cx5vscp0vkv60bqxkaq0-hello-2.10.drv»; defaultText = { ... }; description = "The hello package to use."; type = { ... }; }
121+
122+ Example:
123+ mkPackageOption pkgs "GHC" {
124+ default = [ "ghc" ];
125+ example = "pkgs.haskell.package.ghc921.ghc.withPackages (hkgs: [ hkgs.primes ])";
126+ }
127+ => { _type = "option"; default = «derivation /nix/store/jxx55cxsjrf8kyh3fp2ya17q99w7541r-ghc-8.10.7.drv»; defaultText = { ... }; description = "The GHC package to use."; example = { ... }; type = { ... }; }
128+ */
129+ mkPackageOption =
130+ # Package set (a specific version of nixpkgs)
131+ pkgs:
132+ # Name for the package, shown in option description
133+ name:
134+ { default ? [ name ], example ? null }:
135+ let default' = if !isList default then [ default ] else default;
136+ in mkOption {
137+ type = lib.types.package;
138+ description = "The ${name} package to use.";
139+ default = attrByPath default'
140+ (throw "${concatStringsSep "." default'} cannot be found in pkgs") pkgs;
141+ defaultText = literalExpression ("pkgs." + concatStringsSep "." default');
142+ ${if example != null then "example" else null} = literalExpression
143+ (if isList example then "pkgs." + concatStringsSep "." example else example);
144+ };
145+
102146 /* This option accepts anything, but it does not produce any result.
103147
104148 This is useful for sharing a module across different module sets
nixos/doc/manual/development/option-declarations.section.md+74
@@ -57,6 +57,80 @@ The function `mkOption` accepts the following arguments.
5757: A textual description of the option, in DocBook format, that will be
5858 included in the NixOS manual.
5959
60+## Utility functions for common option patterns {#sec-option-declarations-util}
61+
62+### `mkEnableOption` {#sec-option-declarations-util-mkEnableOption}
63+
64+Creates an Option attribute set for a boolean value option i.e an
65+option to be toggled on or off.
66+
67+This function takes a single string argument, the name of the thing to be toggled.
68+
69+The option's description is "Whether to enable \<name\>.".
70+
71+For example:
72+
73+::: {#ex-options-declarations-util-mkEnableOption-magic .example}
74+```nix
75+lib.mkEnableOption "magic"
76+# is like
77+lib.mkOption {
78+ type = lib.types.bool;
79+ default = false;
80+ example = true;
81+ description = "Whether to enable magic.";
82+}
83+```
84+
85+### `mkPackageOption` {#sec-option-declarations-util-mkPackageOption}
86+
87+Usage:
88+
89+```nix
90+mkPackageOption pkgs "name" { default = [ "path" "in" "pkgs" ]; example = "literal example"; }
91+```
92+
93+Creates an Option attribute set for an option that specifies the package a module should use for some purpose.
94+
95+**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).
96+
97+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.
98+
99+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.
100+
101+You can omit the default path if the name of the option is also attribute path in nixpkgs.
102+
103+::: {#ex-options-declarations-util-mkPackageOption .title}
104+Examples:
105+
106+::: {#ex-options-declarations-util-mkPackageOption-hello .example}
107+```nix
108+lib.mkPackageOption pkgs "hello" { }
109+# is like
110+lib.mkOption {
111+ type = lib.types.package;
112+ default = pkgs.hello;
113+ defaultText = lib.literalExpression "pkgs.hello";
114+ description = "The hello package to use.";
115+}
116+```
117+
118+::: {#ex-options-declarations-util-mkPackageOption-ghc .example}
119+```nix
120+lib.mkPackageOption pkgs "GHC" {
121+ default = [ "ghc" ];
122+ example = "pkgs.haskell.package.ghc921.ghc.withPackages (hkgs: [ hkgs.primes ])";
123+}
124+# is like
125+lib.mkOption {
126+ type = lib.types.package;
127+ default = pkgs.ghc;
128+ defaultText = lib.literalExpression "pkgs.ghc";
129+ example = lib.literalExpression "pkgs.haskell.package.ghc921.ghc.withPackages (hkgs: [ hkgs.primes ])";
130+ description = "The GHC package to use.";
131+}
132+```
133+
60134## Extensible Option Types {#sec-option-declarations-eot}
61135
62136Extensible option types is a feature that allow to extend certain types
nixos/doc/manual/from_md/development/option-declarations.section.xml+206−103
@@ -97,125 +97,228 @@ options = {
9797 </listitem>
9898 </varlistentry>
9999 </variablelist>
100− <section xml:id="sec-option-declarations-eot">
101− <title>Extensible Option Types</title>
102− <para>
103− Extensible option types is a feature that allow to extend certain
104− types declaration through multiple module files. This feature only
105− work with a restricted set of types, namely
106− <literal>enum</literal> and <literal>submodules</literal> and any
107− composed forms of them.
108− </para>
109− <para>
110− Extensible option types can be used for <literal>enum</literal>
111− options that affects multiple modules, or as an alternative to
112− related <literal>enable</literal> options.
113− </para>
114− <para>
115− As an example, we will take the case of display managers. There is
116− a central display manager module for generic display manager
117− options and a module file per display manager backend (sddm, gdm
118− ...).
119− </para>
120− <para>
121− There are two approach to this module structure:
122− </para>
123− <itemizedlist>
124− <listitem>
100+ <section xml:id="sec-option-declarations-util">
101+ <title>Utility functions for common option patterns</title>
102+ <section xml:id="sec-option-declarations-util-mkEnableOption">
103+ <title><literal>mkEnableOption</literal></title>
104+ <para>
105+ Creates an Option attribute set for a boolean value option i.e
106+ an option to be toggled on or off.
107+ </para>
108+ <para>
109+ This function takes a single string argument, the name of the
110+ thing to be toggled.
111+ </para>
112+ <para>
113+ The option’s description is <quote>Whether to enable
114+ &lt;name&gt;.</quote>.
115+ </para>
116+ <para>
117+ For example:
118+ </para>
119+ <anchor xml:id="ex-options-declarations-util-mkEnableOption-magic" />
120+ <programlisting language="bash">
121+lib.mkEnableOption &quot;magic&quot;
122+# is like
123+lib.mkOption {
124+ type = lib.types.bool;
125+ default = false;
126+ example = true;
127+ description = &quot;Whether to enable magic.&quot;;
128+}
129+</programlisting>
130+ <section xml:id="sec-option-declarations-util-mkPackageOption">
131+ <title><literal>mkPackageOption</literal></title>
125132 <para>
126− Managing the display managers independently by adding an
127− enable option to every display manager module backend. (NixOS)
133+ Usage:
128134 </para>
129− </listitem>
130− <listitem>
135+ <programlisting language="bash">
136+mkPackageOption pkgs &quot;name&quot; { default = [ &quot;path&quot; &quot;in&quot; &quot;pkgs&quot; ]; example = &quot;literal example&quot;; }
137+</programlisting>
131138 <para>
132− Managing the display managers in the central module by adding
133− an option to select which display manager backend to use.
139+ Creates an Option attribute set for an option that specifies
140+ the package a module should use for some purpose.
134141 </para>
135− </listitem>
136− </itemizedlist>
137− <para>
138− Both approaches have problems.
139− </para>
140− <para>
141− Making backends independent can quickly become hard to manage. For
142− display managers, there can be only one enabled at a time, but the
143− type system can not enforce this restriction as there is no
144− relation between each backend <literal>enable</literal> option. As
145− a result, this restriction has to be done explicitely by adding
146− assertions in each display manager backend module.
147− </para>
148− <para>
149− On the other hand, managing the display managers backends in the
150− central module will require to change the central module option
151− every time a new backend is added or removed.
152− </para>
153− <para>
154− By using extensible option types, it is possible to create a
155− placeholder option in the central module
156− (<link linkend="ex-option-declaration-eot-service">Example:
157− Extensible type placeholder in the service module</link>), and to
158− extend it in each backend module
159− (<link linkend="ex-option-declaration-eot-backend-gdm">Example:
160− Extending
161− <literal>services.xserver.displayManager.enable</literal> in the
162− <literal>gdm</literal> module</link>,
163− <link linkend="ex-option-declaration-eot-backend-sddm">Example:
164− Extending
165− <literal>services.xserver.displayManager.enable</literal> in the
166− <literal>sddm</literal> module</link>).
167− </para>
168− <para>
169− As a result, <literal>displayManager.enable</literal> option
170− values can be added without changing the main service module file
171− and the type system automatically enforce that there can only be a
172− single display manager enabled.
173− </para>
174− <anchor xml:id="ex-option-declaration-eot-service" />
175− <para>
176− <emphasis role="strong">Example: Extensible type placeholder in
177− the service module</emphasis>
178− </para>
179− <programlisting language="bash">
142+ <para>
143+ <emphasis role="strong">Note</emphasis>: You shouldn’t
144+ necessarily make package options for all of your modules. You
145+ can always overwrite a specific package throughout nixpkgs by
146+ using
147+ <link xlink:href="https://nixos.org/manual/nixpkgs/stable/#chap-overlays">nixpkgs
148+ overlays</link>.
149+ </para>
150+ <para>
151+ The default package is specified as a list of strings
152+ representing its attribute path in nixpkgs. Because of this,
153+ you need to pass nixpkgs itself as the first argument.
154+ </para>
155+ <para>
156+ The second argument is the name of the option, used in the
157+ description <quote>The &lt;name&gt; package to use.</quote>.
158+ You can also pass an example value, either a literal string or
159+ a package’s attribute path.
160+ </para>
161+ <para>
162+ You can omit the default path if the name of the option is
163+ also attribute path in nixpkgs.
164+ </para>
165+ <anchor xml:id="ex-options-declarations-util-mkPackageOption" />
166+ <para>
167+ Examples:
168+ </para>
169+ <anchor xml:id="ex-options-declarations-util-mkPackageOption-hello" />
170+ <programlisting language="bash">
171+lib.mkPackageOption pkgs &quot;hello&quot; { }
172+# is like
173+lib.mkOption {
174+ type = lib.types.package;
175+ default = pkgs.hello;
176+ defaultText = lib.literalExpression &quot;pkgs.hello&quot;;
177+ description = &quot;The hello package to use.&quot;;
178+}
179+</programlisting>
180+ <anchor xml:id="ex-options-declarations-util-mkPackageOption-ghc" />
181+ <programlisting language="bash">
182+lib.mkPackageOption pkgs &quot;GHC&quot; {
183+ default = [ &quot;ghc&quot; ];
184+ example = &quot;pkgs.haskell.package.ghc921.ghc.withPackages (hkgs: [ hkgs.primes ])&quot;;
185+}
186+# is like
187+lib.mkOption {
188+ type = lib.types.package;
189+ default = pkgs.ghc;
190+ defaultText = lib.literalExpression &quot;pkgs.ghc&quot;;
191+ example = lib.literalExpression &quot;pkgs.haskell.package.ghc921.ghc.withPackages (hkgs: [ hkgs.primes ])&quot;;
192+ description = &quot;The GHC package to use.&quot;;
193+}
194+</programlisting>
195+ <section xml:id="sec-option-declarations-eot">
196+ <title>Extensible Option Types</title>
197+ <para>
198+ Extensible option types is a feature that allow to extend
199+ certain types declaration through multiple module files.
200+ This feature only work with a restricted set of types,
201+ namely <literal>enum</literal> and
202+ <literal>submodules</literal> and any composed forms of
203+ them.
204+ </para>
205+ <para>
206+ Extensible option types can be used for
207+ <literal>enum</literal> options that affects multiple
208+ modules, or as an alternative to related
209+ <literal>enable</literal> options.
210+ </para>
211+ <para>
212+ As an example, we will take the case of display managers.
213+ There is a central display manager module for generic
214+ display manager options and a module file per display
215+ manager backend (sddm, gdm ...).
216+ </para>
217+ <para>
218+ There are two approach to this module structure:
219+ </para>
220+ <itemizedlist>
221+ <listitem>
222+ <para>
223+ Managing the display managers independently by adding an
224+ enable option to every display manager module backend.
225+ (NixOS)
226+ </para>
227+ </listitem>
228+ <listitem>
229+ <para>
230+ Managing the display managers in the central module by
231+ adding an option to select which display manager backend
232+ to use.
233+ </para>
234+ </listitem>
235+ </itemizedlist>
236+ <para>
237+ Both approaches have problems.
238+ </para>
239+ <para>
240+ Making backends independent can quickly become hard to
241+ manage. For display managers, there can be only one enabled
242+ at a time, but the type system can not enforce this
243+ restriction as there is no relation between each backend
244+ <literal>enable</literal> option. As a result, this
245+ restriction has to be done explicitely by adding assertions
246+ in each display manager backend module.
247+ </para>
248+ <para>
249+ On the other hand, managing the display managers backends in
250+ the central module will require to change the central module
251+ option every time a new backend is added or removed.
252+ </para>
253+ <para>
254+ By using extensible option types, it is possible to create a
255+ placeholder option in the central module
256+ (<link linkend="ex-option-declaration-eot-service">Example:
257+ Extensible type placeholder in the service module</link>),
258+ and to extend it in each backend module
259+ (<link linkend="ex-option-declaration-eot-backend-gdm">Example:
260+ Extending
261+ <literal>services.xserver.displayManager.enable</literal> in
262+ the <literal>gdm</literal> module</link>,
263+ <link linkend="ex-option-declaration-eot-backend-sddm">Example:
264+ Extending
265+ <literal>services.xserver.displayManager.enable</literal> in
266+ the <literal>sddm</literal> module</link>).
267+ </para>
268+ <para>
269+ As a result, <literal>displayManager.enable</literal> option
270+ values can be added without changing the main service module
271+ file and the type system automatically enforce that there
272+ can only be a single display manager enabled.
273+ </para>
274+ <anchor xml:id="ex-option-declaration-eot-service" />
275+ <para>
276+ <emphasis role="strong">Example: Extensible type placeholder
277+ in the service module</emphasis>
278+ </para>
279+ <programlisting language="bash">
180280services.xserver.displayManager.enable = mkOption {
181281 description = &quot;Display manager to use&quot;;
182282 type = with types; nullOr (enum [ ]);
183283};
184284</programlisting>
185− <anchor xml:id="ex-option-declaration-eot-backend-gdm" />
186− <para>
187− <emphasis role="strong">Example: Extending
188− <literal>services.xserver.displayManager.enable</literal> in the
189− <literal>gdm</literal> module</emphasis>
190− </para>
191− <programlisting language="bash">
285+ <anchor xml:id="ex-option-declaration-eot-backend-gdm" />
286+ <para>
287+ <emphasis role="strong">Example: Extending
288+ <literal>services.xserver.displayManager.enable</literal> in
289+ the <literal>gdm</literal> module</emphasis>
290+ </para>
291+ <programlisting language="bash">
192292services.xserver.displayManager.enable = mkOption {
193293 type = with types; nullOr (enum [ &quot;gdm&quot; ]);
194294};
195295</programlisting>
196− <anchor xml:id="ex-option-declaration-eot-backend-sddm" />
197− <para>
198− <emphasis role="strong">Example: Extending
199− <literal>services.xserver.displayManager.enable</literal> in the
200− <literal>sddm</literal> module</emphasis>
201− </para>
202− <programlisting language="bash">
296+ <anchor xml:id="ex-option-declaration-eot-backend-sddm" />
297+ <para>
298+ <emphasis role="strong">Example: Extending
299+ <literal>services.xserver.displayManager.enable</literal> in
300+ the <literal>sddm</literal> module</emphasis>
301+ </para>
302+ <programlisting language="bash">
203303services.xserver.displayManager.enable = mkOption {
204304 type = with types; nullOr (enum [ &quot;sddm&quot; ]);
205305};
206306</programlisting>
207− <para>
208− The placeholder declaration is a standard
209− <literal>mkOption</literal> declaration, but it is important that
210− extensible option declarations only use the
211− <literal>type</literal> argument.
212− </para>
213− <para>
214− Extensible option types work with any of the composed variants of
215− <literal>enum</literal> such as
216− <literal>with types; nullOr (enum [ &quot;foo&quot; &quot;bar&quot; ])</literal>
217− or
218− <literal>with types; listOf (enum [ &quot;foo&quot; &quot;bar&quot; ])</literal>.
219− </para>
307+ <para>
308+ The placeholder declaration is a standard
309+ <literal>mkOption</literal> declaration, but it is important
310+ that extensible option declarations only use the
311+ <literal>type</literal> argument.
312+ </para>
313+ <para>
314+ Extensible option types work with any of the composed
315+ variants of <literal>enum</literal> such as
316+ <literal>with types; nullOr (enum [ &quot;foo&quot; &quot;bar&quot; ])</literal>
317+ or
318+ <literal>with types; listOf (enum [ &quot;foo&quot; &quot;bar&quot; ])</literal>.
319+ </para>
320+ </section>
321+ </section>
322+ </section>
220323 </section>
221324</section>
nixos/modules/services/web-apps/dokuwiki.nix+17−21
@@ -249,33 +249,29 @@ in
249249{
250250 # interface
251251 options = {
252− services.dokuwiki = mkOption {
253− type = types.submodule {
252+ services.dokuwiki = {
254253
255− options.sites = mkOption {
256− type = types.attrsOf (types.submodule siteOpts);
257− default = {};
258− description = "Specification of one or more DokuWiki sites to serve";
259− };
254+ sites = mkOption {
255+ type = types.attrsOf (types.submodule siteOpts);
256+ default = {};
257+ description = "Specification of one or more DokuWiki sites to serve";
258+ };
260259
261− options.webserver = mkOption {
262− type = types.enum [ "nginx" "caddy" ];
263− default = "nginx";
264− description = ''
265− Whether to use nginx or caddy for virtual host management.
260+ webserver = mkOption {
261+ type = types.enum [ "nginx" "caddy" ];
262+ default = "nginx";
263+ description = ''
264+ Whether to use nginx or caddy for virtual host management.
266265
267− Further nginx configuration can be done by adapting <literal>services.nginx.virtualHosts.&lt;name&gt;</literal>.
268− See <xref linkend="opt-services.nginx.virtualHosts"/> for further information.
266+ Further nginx configuration can be done by adapting <literal>services.nginx.virtualHosts.&lt;name&gt;</literal>.
267+ See <xref linkend="opt-services.nginx.virtualHosts"/> for further information.
269268
270− Further apache2 configuration can be done by adapting <literal>services.httpd.virtualHosts.&lt;name&gt;</literal>.
271− See <xref linkend="opt-services.httpd.virtualHosts"/> for further information.
272− '';
273− };
269+ Further apache2 configuration can be done by adapting <literal>services.httpd.virtualHosts.&lt;name&gt;</literal>.
270+ See <xref linkend="opt-services.httpd.virtualHosts"/> for further information.
271+ '';
274272 };
275− default = {};
276− description = "DokuWiki configuration";
277− };
278273
274+ };
279275 };
280276
281277 # implementation
nixos/modules/services/web-servers/nginx/default.nix+13−6
@@ -245,12 +245,9 @@ let
245245 defaultListen =
246246 if vhost.listen != [] then vhost.listen
247247 else
248− let addrs = if vhost.listenAddresses != [] then vhost.listenAddresses else (
249− [ "0.0.0.0" ] ++ optional enableIPv6 "[::0]"
250− );
251− in
252− optionals (hasSSL || vhost.rejectSSL) (map (addr: { inherit addr; port = 443; ssl = true; }) addrs)
253− ++ optionals (!onlySSL) (map (addr: { inherit addr; port = 80; ssl = false; }) addrs);
248+ let addrs = if vhost.listenAddresses != [] then vhost.listenAddresses else cfg.defaultListenAddresses;
249+ in optionals (hasSSL || vhost.rejectSSL) (map (addr: { inherit addr; port = 443; ssl = true; }) addrs)
250+ ++ optionals (!onlySSL) (map (addr: { inherit addr; port = 80; ssl = false; }) addrs);
254251
255252 hostListen =
256253 if vhost.forceSSL
@@ -432,6 +429,16 @@ in
432429 ";
433430 };
434431
432+ defaultListenAddresses = mkOption {
433+ type = types.listOf types.str;
434+ default = [ "0.0.0.0" ] ++ optional enableIPv6 "[::0]";
435+ defaultText = literalExpression ''[ "0.0.0.0" ] ++ lib.optional config.networking.enableIPv6 "[::0]"'';
436+ example = literalExpression ''[ "10.0.0.12" "[2002:a00:1::]" ]'';
437+ description = "
438+ If vhosts do not specify listenAddresses, use these addresses by default.
439+ ";
440+ };
441+
435442 package = mkOption {
436443 default = pkgs.nginxStable;
437444 defaultText = literalExpression "pkgs.nginxStable";
nixos/tests/quorum.nix+32−9
@@ -1,4 +1,29 @@
1−import ./make-test-python.nix ({ pkgs, ... }: {
1+import ./make-test-python.nix ({ pkgs, ... }:
2+let
3+ keystore = {
4+ address = "9377bc3936de934c497e22917b81aa8774ac3bb0";
5+ crypto = {
6+ cipher = "aes-128-ctr";
7+ ciphertext = "ad8341d8ef225650403fd366c955f41095e438dd966a3c84b3d406818c1e366c";
8+ cipherparams = {
9+ iv = "2a09f7a72fd6dff7c43150ff437e6ac2";
10+ };
11+ kdf = "scrypt";
12+ kdfparams = {
13+ dklen = 32;
14+ n = 262144;
15+ p = 1;
16+ r = 8;
17+ salt = "d1a153845bb80cd6274c87c5bac8ac09fdfac5ff131a6f41b5ed319667f12027";
18+ };
19+ mac = "a9621ad88fa1d042acca6fc2fcd711f7e05bfbadea3f30f379235570c8e270d3";
20+ };
21+ id = "89e847a3-1527-42f6-a321-77de0a14ce02";
22+ version = 3;
23+ };
24+ keystore-file = pkgs.writeText "keystore-file" (builtins.toJSON keystore);
25+in
26+{
227 name = "quorum";
328 meta = with pkgs.lib.maintainers; {
429 maintainers = [ mmahut ];
@@ -62,18 +87,16 @@ import ./make-test-python.nix ({ pkgs, ... }: {
6287
6388 testScript = ''
6489 start_all()
65− machine.wait_until_succeeds("mkdir -p /var/lib/quorum/keystore")
66− machine.wait_until_succeeds(
67− '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'
90+ machine.succeed("mkdir -p /var/lib/quorum/keystore")
91+ machine.succeed(
92+ 'cp ${keystore-file} /var/lib/quorum/keystore/UTC--2020-03-23T11-08-34.144812212Z--${keystore.address}'
6893 )
69− machine.wait_until_succeeds(
94+ machine.succeed(
7095 "echo fe2725c4e8f7617764b845e8d939a65c664e7956eb47ed7d934573f16488efc1 > /var/lib/quorum/nodekey"
7196 )
72− machine.wait_until_succeeds("systemctl restart quorum")
97+ machine.succeed("systemctl restart quorum")
7398 machine.wait_for_unit("quorum.service")
7499 machine.sleep(15)
75− machine.wait_until_succeeds(
76− 'geth attach /var/lib/quorum/geth.ipc --exec "eth.accounts" | grep 0x9377bc3936de934c497e22917b81aa8774ac3bb0'
77− )
100+ machine.succeed('geth attach /var/lib/quorum/geth.ipc --exec "eth.accounts" | grep ${keystore.address}')
78101 '';
79102})
pkgs/applications/misc/clight/default.nix+2−2
@@ -6,13 +6,13 @@
66
77stdenv.mkDerivation rec {
88 pname = "clight";
9− version = "4.7";
9+ version = "4.8";
1010
1111 src = fetchFromGitHub {
1212 owner = "FedeDP";
1313 repo = "Clight";
1414 rev = version;
15− sha256 = "sha256-+u50XorUyeDsn4FaKdD0wEtQHkwtiyVDY0IAi0vehEQ=";
15+ sha256 = "sha256-nDI5Rq1iPVkj25HRpxmS9zxNDUy+9YsSwbZnEwYt86E=";
1616 };
1717
1818 # dbus-1.pc has datadir=/etc
pkgs/applications/misc/expenses/default.nix+14−5
@@ -1,32 +1,41 @@
11{ lib
2−
32, buildGoModule
43, fetchFromGitHub
54, sqlite
5+, installShellFiles
66}:
77
88buildGoModule rec {
99 pname = "expenses";
10− version = "0.2.2";
10+ version = "0.2.3";
1111
1212 src = fetchFromGitHub {
1313 owner = "manojkarthick";
1414 repo = "expenses";
1515 rev = "v${version}";
16− sha256 = "sha256-CaIbLtP7ziv9UBQE+QsNnqX65OV+6GIvkLwKm1G++iY=";
16+ sha256 = "sha256-sqsogF2swMvYZL7Kj+ealrB1AAgIe7ZXXDLRdHL6Q+0=";
1717 };
1818
19− vendorSha256 = "sha256-NWTFxF4QCH1q1xx+hmVmpvDeOlqH5Ai2+0ParE5px9M=";
19+ vendorSha256 = "sha256-Ac3f17Ws3Ne8Zo0vT+qlaMm/rhak9ua2jh5jlT6jF2Y=";
2020
21− # package does not contain any tests as of v0.2.2
21+ # package does not contain any tests as of v0.2.3
2222 doCheck = false;
2323
24+ nativeBuildInputs = [ installShellFiles ];
25+
2426 buildInputs = [ sqlite ];
2527
2628 ldflags = [
2729 "-s" "-w" "-X github.com/manojkarthick/expenses/cmd.Version=${version}"
2830 ];
2931
32+ postInstall = ''
33+ installShellCompletion --cmd expenses \
34+ --bash <($out/bin/expenses completion bash) \
35+ --zsh <($out/bin/expenses completion zsh) \
36+ --fish <($out/bin/expenses completion fish)
37+ '';
38+
3039 meta = with lib; {
3140 description = "An interactive command line expense logger";
3241 license = licenses.mit;
pkgs/applications/misc/heimer/default.nix+2−2
@@ -2,13 +2,13 @@
22
33mkDerivation rec {
44 pname = "heimer";
5− version = "3.1.0";
5+ version = "3.2.0";
66
77 src = fetchFromGitHub {
88 owner = "juzzlin";
99 repo = pname;
1010 rev = version;
11− sha256 = "sha256-F0Pl6Wk+sGfOegy7iljQH63kAMYlRYv7G9nBAAtDEkg=";
11+ sha256 = "sha256-aAFhShsC3FLGgtF/8XJbWIMBEO3/gcGeDZei69Luz+s=";
1212 };
1313
1414 nativeBuildInputs = [ cmake ];
pkgs/applications/misc/koreader/default.nix+2−2
@@ -13,12 +13,12 @@
1313let font-droid = nerdfonts.override { fonts = [ "DroidSansMono" ]; };
1414in stdenv.mkDerivation rec {
1515 pname = "koreader";
16− version = "2021.12.1";
16+ version = "2022.01";
1717
1818 src = fetchurl {
1919 url =
2020 "https://github.com/koreader/koreader/releases/download/v${version}/koreader-${version}-amd64.deb";
21− sha256 = "sha256-Ia0oCSGs6UYcvZVEhNpiOh3D08FgXqjqpgsQJojd3dk=";
21+ sha256 = "sha256-XuIYNvGhzJ649LxVPit2AOmb+YOHtZA4AhDyxjaB5OE=";
2222 };
2323
2424 sourceRoot = ".";
pkgs/applications/misc/rofi-file-browser/default.nix+2−2
@@ -2,13 +2,13 @@
22
33stdenv.mkDerivation rec {
44 pname = "rofi-file-browser-extended";
5− version = "1.2.0";
5+ version = "1.3.0";
66
77 src = fetchFromGitHub {
88 owner = "marvinkreis";
99 repo = pname;
1010 rev = version;
11− sha256 = "1grcal8ga4gpaj3p1dvx4zmqai93jjz2izpj91lxwj0dbz1gmbdm";
11+ sha256 = "sha256-TNAAImQaIJRgvD8kFf2oHNj4bQiq1NhD8KkCgW5dSK8=";
1212 fetchSubmodules = true;
1313 };
1414
pkgs/applications/misc/topydo/default.nix+2−2
@@ -4,13 +4,13 @@ with python3Packages;
44
55buildPythonApplication rec {
66 pname = "topydo";
7− version = "0.13";
7+ version = "0.14";
88
99 src = fetchFromGitHub {
1010 owner = "bram85";
1111 repo = pname;
1212 rev = version;
13− sha256 = "0b3dz137lpbvpjvfy42ibqvj3yk526x4bpn819fd11lagn77w69r";
13+ sha256 = "1lpfdai0pf90ffrzgmmkadbd86rb7250i3mglpkc82aj6prjm6yb";
1414 };
1515
1616 propagatedBuildInputs = [
pkgs/applications/networking/instant-messengers/signal-cli/default.nix+2−2
@@ -2,12 +2,12 @@
22
33stdenv.mkDerivation rec {
44 pname = "signal-cli";
5− version = "0.10.1";
5+ version = "0.10.2";
66
77 # Building from source would be preferred, but is much more involved.
88 src = fetchurl {
99 url = "https://github.com/AsamK/signal-cli/releases/download/v${version}/signal-cli-${version}.tar.gz";
10− sha256 = "sha256-xj/fR/scfzOPxkWB79OhA129V7QG7QUkAbw1bNgzVas=";
10+ sha256 = "sha256-etCO7sy48A7aL3mnXWitClNiw/E122G4eD6YfVmXEPw=";
1111 };
1212
1313 buildInputs = lib.optionals stdenv.isLinux [ libmatthew_java dbus dbus_java ];
pkgs/applications/radio/gqrx/default.nix+2−7
@@ -24,13 +24,13 @@ assert !(pulseaudioSupport && portaudioSupport);
2424
2525gnuradio3_8Minimal.pkgs.mkDerivation rec {
2626 pname = "gqrx";
27− version = "2.15.4";
27+ version = "2.15.7";
2828
2929 src = fetchFromGitHub {
3030 owner = "gqrx-sdr";
3131 repo = "gqrx";
3232 rev = "v${version}";
33− sha256 = "sha256-iQlrnkc1EMR8sUUAHh+7RfS/05unrcDm/kJ/Q4Vst2Q=";
33+ sha256 = "sha256-4tXWwBkVmNZ4s3d6/n6XBdbh9Fv7821L3vkYmjgv1ds=";
3434 };
3535
3636 nativeBuildInputs = [
@@ -68,11 +68,6 @@ gnuradio3_8Minimal.pkgs.mkDerivation rec {
6868 "-DLINUX_AUDIO_BACKEND=${audioBackend}"
6969 ];
7070
71− postInstall = ''
72− install -vD $src/gqrx.desktop -t "$out/share/applications/"
73− install -vD $src/resources/icons/gqrx.svg -t "$out/share/pixmaps/"
74− '';
75−
7671 meta = with lib; {
7772 description = "Software defined radio (SDR) receiver";
7873 longDescription = ''
pkgs/applications/terminal-emulators/havoc/default.nix+20−8
@@ -1,20 +1,32 @@
1−{ lib, stdenv, fetchFromGitHub
2−, pkg-config, libxkbcommon, wayland, wayland-protocols }:
1+{ lib
2+, stdenv
3+, fetchFromGitHub
4+, libxkbcommon
5+, pkg-config
6+, wayland
7+, wayland-protocols
8+}:
39
410stdenv.mkDerivation rec {
5−
611 pname = "havoc";
7− version = "0.3.1";
12+ version = "0.4.0";
813
914 src = fetchFromGitHub {
1015 owner = "ii8";
1116 repo = pname;
1217 rev = version;
13− sha256 = "1g05r9j6srwz1krqvzckx80jn8fm48rkb4xp68953gy9yp2skg3k";
18+ hash = "sha256-zNKDQqkDeNj5fB5EdMVfAs2H4uBgLh6Fp3uSjiJ1VhQ=";
1419 };
1520
16− nativeBuildInputs = [ pkg-config ];
17− buildInputs = [ libxkbcommon wayland wayland-protocols ];
21+ nativeBuildInputs = [
22+ pkg-config
23+ ];
24+
25+ buildInputs = [
26+ libxkbcommon
27+ wayland
28+ wayland-protocols
29+ ];
1830
1931 dontConfigure = true;
2032
@@ -26,8 +38,8 @@ stdenv.mkDerivation rec {
2638 '';
2739
2840 meta = with lib; {
29− description = "A minimal terminal emulator for Wayland";
3041 homepage = "https://github.com/ii8/havoc";
42+ description = "A minimal terminal emulator for Wayland";
3143 license = with licenses; [ mit publicDomain ];
3244 platforms = with platforms; unix;
3345 maintainers = with maintainers; [ AndersonTorres ];
pkgs/data/icons/nordzy-icon-theme/default.nixnew file+54
@@ -0,0 +1,54 @@
1+{ stdenvNoCC
2+, fetchFromGitHub
3+, lib
4+, gtk3
5+, jdupes
6+, nordzy-themes ? [ "all" ] # Override this to only install selected themes
7+}:
8+
9+stdenvNoCC.mkDerivation {
10+ pname = "nordzy-icon-theme";
11+ version = "unstable-2022-01-23";
12+
13+ src = fetchFromGitHub {
14+ owner = "alvatip";
15+ repo = "Nordzy-icon";
16+ rev = "10b9ee80ef5c4cac1d1770d89a6d55046521ea36";
17+ sha256 = "1b8abhs5gzr2qy407jq818pr67vjky8zn3pa3c8n552ayybblibk";
18+ };
19+
20+ # In the post patch phase we should first make sure to patch shebangs.
21+ postPatch = ''
22+ patchShebangs install.sh
23+ '';
24+
25+ nativeBuildInputs = [
26+ gtk3
27+ jdupes
28+ ];
29+
30+ dontDropIconThemeCache = true;
31+
32+ installPhase = ''
33+ runHook preInstall
34+
35+ name= ./install.sh --dest $out/share/icons \
36+ ${lib.optionalString (nordzy-themes != []) (lib.strings.concatMapStrings (theme: "-t ${theme} ") nordzy-themes)}
37+
38+ # Replace duplicate files with hardlinks to the first file in each
39+ # set of duplicates, reducing the installed size in about 87%
40+ jdupes -L -r $out/share
41+
42+ runHook postInstall
43+ '';
44+
45+ dontFixup = true;
46+
47+ meta = with lib; {
48+ description = "Icon theme using the Nord color palette, based on WhiteSur and Numix icon themes";
49+ homepage = "https://github.com/alvatip/Nordzy-icon";
50+ license = licenses.gpl3Only;
51+ platforms = platforms.linux;
52+ maintainers = with maintainers; [ alexnortung ];
53+ };
54+}
pkgs/data/themes/orchis-theme/default.nix+5
@@ -6,6 +6,7 @@
66, gtk-engine-murrine
77, sassc
88, tweaks ? [ ] # can be "solid" "compact" "black" "primary"
9+, withWallpapers ? false
910}:
1011
1112let
@@ -42,6 +43,10 @@ rec {
4243 installPhase = ''
4344 runHook preInstall
4445 bash install.sh -d $out/share/themes -t all ${lib.optionalString (tweaks != []) "--tweaks " + builtins.toString tweaks}
46+ ${lib.optionalString withWallpapers ''
47+ mkdir -p $out/share/backgrounds
48+ cp src/wallpaper/{1080p,2k,4k}.jpg $out/share/backgrounds
49+ ''}
4550 runHook postInstall
4651 '';
4752
pkgs/development/compilers/fstar/default.nix+2−2
@@ -2,13 +2,13 @@
22
33stdenv.mkDerivation rec {
44 pname = "fstar";
5− version = "2021.12.25";
5+ version = "2022.01.15";
66
77 src = fetchFromGitHub {
88 owner = "FStarLang";
99 repo = "FStar";
1010 rev = "v${version}";
11− sha256 = "RmXKv/admC1w26z/ClNhH11J8n87WTfDr2lYOF6Fx7I=";
11+ sha256 = "sha256-bK3McF/wTjT9q6luihPaEXjx7Lu6+ZbQ9G61Mc4KoB0=";
1212 };
1313
1414 nativeBuildInputs = [ makeWrapper installShellFiles ];
pkgs/development/libraries/globalarrays/default.nix+2−2
@@ -4,13 +4,13 @@
44
55stdenv.mkDerivation rec {
66 pname = "globalarrays";
7− version = "5.8";
7+ version = "5.8.1";
88
99 src = fetchFromGitHub {
1010 owner = "GlobalArrays";
1111 repo = "ga";
1212 rev = "v${version}";
13− sha256 = "0bky91ncz6vy0011ps9prsnq9f4a5s5xwr23kkmi39xzg0417mnd";
13+ sha256 = "sha256-IyHdeIUHu/T4lb/etGGnNB2guIspual8/v9eS807Qco=";
1414 };
1515
1616 nativeBuildInputs = [ autoreconfHook gfortran ];
pkgs/development/libraries/science/math/scs/default.nix+2−2
@@ -4,13 +4,13 @@ assert (!blas.isILP64) && (!lapack.isILP64);
44
55stdenv.mkDerivation rec {
66 pname = "scs";
7− version = "3.0.0";
7+ version = "3.1.0";
88
99 src = fetchFromGitHub {
1010 owner = "cvxgrp";
1111 repo = "scs";
1212 rev = version;
13− sha256 = "sha256-Lly28KDDZ5hJyiMOhiX/3VaKs0iPcSqizOurZevhfCo=";
13+ sha256 = "sha256-yoh25DmvY7fohAvABCiSLkvr7TskGd0ED2K3rIa/IeM=";
1414 };
1515
1616 # Actually link and add libgfortran to the rpath
pkgs/development/python-modules/google-cloud-core/default.nix+2−2
@@ -8,11 +8,11 @@
88
99buildPythonPackage rec {
1010 pname = "google-cloud-core";
11− version = "2.2.1";
11+ version = "2.2.2";
1212
1313 src = fetchPypi {
1414 inherit pname version;
15− sha256 = "476d1f71ab78089e0638e0aaf34bfdc99bab4fce8f4170ba6321a5243d13c5c7";
15+ sha256 = "sha256-fRm/iGi0ENC99aA0aKPz8tsjPA7oagI/TswreksV9zY=";
1616 };
1717
1818 propagatedBuildInputs = [ google-api-core ];
pkgs/development/python-modules/googleapis-common-protos/default.nix+2−2
@@ -7,11 +7,11 @@
77
88buildPythonPackage rec {
99 pname = "googleapis-common-protos";
10− version = "1.53.0";
10+ version = "1.54.0";
1111
1212 src = fetchPypi {
1313 inherit pname version;
14− sha256 = "a88ee8903aa0a81f6c3cec2d5cf62d3c8aa67c06439b0496b49048fb1854ebf4";
14+ sha256 = "sha256-pAMdbsbCsbbcPgvn4Qob1y+wsYsH75vntR8sEATOJDc=";
1515 };
1616
1717 propagatedBuildInputs = [ grpc protobuf ];
pkgs/development/python-modules/groestlcoin_hash/default.nixnew file+26
@@ -0,0 +1,26 @@
1+{ lib
2+, buildPythonPackage
3+, fetchPypi
4+}:
5+
6+buildPythonPackage rec {
7+ pname = "groestlcoin_hash";
8+ version = "1.0.1";
9+ format = "setuptools";
10+
11+ src = fetchPypi {
12+ inherit pname version;
13+ sha256 = "sha256-Nkco8ZA0rJaT9Mx4NIcptMvzd4h0BsRn2+gomdesirg=";
14+ };
15+
16+ pythonImportsCheck = [
17+ "groestlcoin_hash"
18+ ];
19+
20+ meta = with lib; {
21+ description = "Bindings for groestl key derivation function library used in Groestlcoin";
22+ homepage = "https://pypi.org/project/groestlcoin_hash/";
23+ maintainers = with maintainers; [ gruve-p ];
24+ license = licenses.unfree;
25+ };
26+}
pkgs/development/python-modules/oslo-utils/default.nix+2−2
@@ -23,12 +23,12 @@
2323
2424buildPythonPackage rec {
2525 pname = "oslo-utils";
26− version = "4.12.0";
26+ version = "4.12.1";
2727
2828 src = fetchPypi {
2929 pname = "oslo.utils";
3030 inherit version;
31− sha256 = "37aa1ee2c6cd8f3933912dd4323cbf7cd2d141e6dedb3debb764e491a9c9cf4d";
31+ sha256 = "sha256-zzEhx2/jwpY+1WOo68PJ/TvDy6XUT76K7LVAfUMMMJI=";
3232 };
3333
3434 postPatch = ''
pkgs/development/python-modules/pymdown-extensions/default.nixnew file+77
@@ -0,0 +1,77 @@
1+{ lib
2+, buildPythonPackage
3+, fetchFromGitHub
4+, fetchpatch
5+, pytestCheckHook
6+, markdown
7+, pyyaml
8+, pygments
9+}:
10+
11+let
12+ extensions = [
13+ "arithmatex"
14+ "b64"
15+ "betterem"
16+ "caret"
17+ "critic"
18+ "details"
19+ "emoji"
20+ "escapeall"
21+ "extra"
22+ "highlight"
23+ "inlinehilite"
24+ "keys"
25+ "magiclink"
26+ "mark"
27+ "pathconverter"
28+ "progressbar"
29+ "saneheaders"
30+ "smartsymbols"
31+ "snippets"
32+ "striphtml"
33+ "superfences"
34+ "tabbed"
35+ "tasklist"
36+ "tilde"
37+ ];
38+in
39+buildPythonPackage rec {
40+ pname = "pymdown-extensions";
41+ version = "9.1";
42+ format = "pyproject";
43+
44+ src = fetchFromGitHub {
45+ owner = "facelessuser";
46+ repo = "pymdown-extensions";
47+ rev = version;
48+ sha256 = "sha256-II8Po8144h3wPFrzMbOB/qiCm2HseYrcZkyIZFGT+ek=";
49+ };
50+
51+ patches = [
52+ # this patch is needed to allow tests to pass for later versions of the
53+ # markdown dependency
54+ #
55+ # it can be removed after the next pymdown-extensions release
56+ (fetchpatch {
57+ url = "https://github.com/facelessuser/pymdown-extensions/commit/8ee5b5caec8f9373e025f50064585fb9d9b71f86.patch";
58+ sha256 = "sha256-jTHNcsV0zL0EkSTSj8zCGXXtpUaLnNPldmL+krZj3Gk=";
59+ })
60+ ];
61+
62+ propagatedBuildInputs = [ markdown pygments ];
63+
64+ checkInputs = [
65+ pytestCheckHook
66+ pyyaml
67+ ];
68+
69+ pythonImportsCheck = map (ext: "pymdownx.${ext}") extensions;
70+
71+ meta = with lib; {
72+ description = "Extensions for Python Markdown";
73+ homepage = "https://facelessuser.github.io/pymdown-extensions/";
74+ license = with licenses; [ mit bsd2 ];
75+ maintainers = with maintainers; [ cpcloud ];
76+ };
77+}
pkgs/development/tools/clj-kondo/default.nix+2−2
@@ -2,11 +2,11 @@
22
33buildGraalvmNativeImage rec {
44 pname = "clj-kondo";
5− version = "2021.12.19";
5+ version = "2022.01.15";
66
77 src = fetchurl {
88 url = "https://github.com/clj-kondo/${pname}/releases/download/v${version}/${pname}-${version}-standalone.jar";
9− sha256 = "sha256-CjqzsYT3Hc2Ej7ALHkuKwBPHMAQkQQilUZhuC3hcZQg=";
9+ sha256 = "sha256-s1SdCy4GaxFL9M3Fp/WGu1C6qY2Kst5PXFShrGCizUE=";
1010 };
1111
1212 extraNativeImageBuildArgs = [
pkgs/development/tools/cocogitto/default.nix+3−3
@@ -2,16 +2,16 @@
22
33rustPlatform.buildRustPackage rec {
44 pname = "cocogitto";
5− version = "4.0.1";
5+ version = "4.1.0";
66
77 src = fetchFromGitHub {
88 owner = "oknozor";
99 repo = pname;
1010 rev = version;
11− sha256 = "sha256-uSKzHo1lEBiXsi1rOKvfD2zVlkAUVZ5k0y8iiTXYE2A=";
11+ sha256 = "sha256-g7NBtqr7Mx7ALzij4hfoVXN3izbu4ShXYhHPYw9qnWk=";
1212 };
1313
14− cargoSha256 = "sha256-gss3+XXyM//zER3gnN9qemIWaVDfs/f4gljmukMxoq0=";
14+ cargoSha256 = "sha256-kXspbXySY5ridLUvAjv49Rm0RGt1fNsfNw9a3vd4hyI=";
1515
1616 # Test depend on git configuration that would likly exist in a normal user enviroment
1717 # and might be failing to create the test repository it works in.
pkgs/development/tools/dyff/default.nix+3−3
@@ -2,16 +2,16 @@
22
33buildGoModule rec {
44 pname = "dyff";
5− version = "1.4.6";
5+ version = "1.4.7";
66
77 src = fetchFromGitHub {
88 owner = "homeport";
99 repo = "dyff";
1010 rev = "v${version}";
11− sha256 = "sha256-xODOKKMGlpMePwO3A4IVReqsR1Kx0CwBjrhsvN+uDR4=";
11+ sha256 = "sha256-0/pn+Ld7o4gBnddA+uMzBhrFnov1XoqpRGkTT/vNH3Y=";
1212 };
1313
14− vendorSha256 = "sha256-W882fD4O4lPVH27KWmkRsS58R6qw7ENhKA2UgpNKvTw=";
14+ vendorSha256 = "sha256-9FkRazgZlzwvimsbqWCYJLxwRRlHa0i/jPPuf+AGSOA=";
1515
1616 subPackages = [
1717 "cmd/dyff"
pkgs/development/tools/gosec/default.nix+3−3
@@ -5,16 +5,16 @@
55
66buildGoModule rec {
77 pname = "gosec";
8− version = "2.9.5";
8+ version = "2.9.6";
99
1010 src = fetchFromGitHub {
1111 owner = "securego";
1212 repo = pname;
1313 rev = "v${version}";
14− sha256 = "sha256-YXAUDICQhZFeafP/wezd+dLpXpd7waz3wUCVCwVb12I=";
14+ sha256 = "sha256-eDzLVoOPYm8WG07dfi6s+xtBliCwf1LXoHxQ10YWs1A=";
1515 };
1616
17− vendorSha256 = "sha256-Mob8XxTALtuG9q7gMWKvp1k2cUDKI0QHAeXfQK47NDo=";
17+ vendorSha256 = "sha256-ELfbdrMMeK6ZG+hnibhHNB+k/Zvkepl+cbUx+E/Dvr8=";
1818
1919 subPackages = [
2020 "cmd/gosec"
pkgs/development/tools/lazygit/default.nix+2−2
@@ -2,13 +2,13 @@
22
33buildGoModule rec {
44 pname = "lazygit";
5− version = "0.31.4";
5+ version = "0.32.2";
66
77 src = fetchFromGitHub {
88 owner = "jesseduffield";
99 repo = pname;
1010 rev = "v${version}";
11− sha256 = "sha256-yze4UaSEbyHwHSyj0mM7uCzaDED+p4O3HVVlHJi/FKU=";
11+ sha256 = "sha256-tawsBfHz6gq8va9YLtCwp9Ec8EWcvhdbYwdVtvvtJeY=";
1212 };
1313
1414 vendorSha256 = null;
pkgs/games/opensupaplex/default.nixnew file+89
@@ -0,0 +1,89 @@
1+{ lib
2+, stdenv
3+, fetchFromGitHub
4+, fetchurl
5+, makeDesktopItem
6+, copyDesktopItems
7+, testVersion
8+, opensupaplex
9+, SDL2
10+, SDL2_mixer
11+}:
12+
13+let
14+ # Doesn't seem to be included in tagged releases, but does exist on master.
15+ icon = fetchurl {
16+ url = "https://raw.githubusercontent.com/sergiou87/open-supaplex/b102548699cf16910b59559f689ecfad88d2a7d2/open-supaplex.svg";
17+ sha256 = "sha256-nKeSBUGjSulbEP7xxc6smsfCRjyc/xsLykH0o3Rq5wo=";
18+ };
19+in
20+stdenv.mkDerivation rec {
21+ pname = "opensupaplex";
22+ version = "7.1.2";
23+
24+ src = fetchFromGitHub {
25+ owner = "sergiou87";
26+ repo = "open-supaplex";
27+ rev = "v${version}";
28+ sha256 = "sha256-hP8dJlLXE5J/oxPhRkrrBl1Y5e9MYbJKi8OApFM3+GU=";
29+ };
30+
31+ nativeBuildInputs = [
32+ SDL2 # For "sdl2-config"
33+ copyDesktopItems
34+ ];
35+ buildInputs = [ SDL2_mixer ];
36+
37+ enableParallelBuilding = true;
38+
39+ NIX_CFLAGS_COMPILE = [
40+ "-DFILE_DATA_PATH=${placeholder "out"}/lib/opensupaplex"
41+ "-DFILE_FHS_XDG_DIRS"
42+ ];
43+
44+ preBuild = ''
45+ # Makefile is located in this directory
46+ pushd linux
47+ '';
48+
49+ postBuild = ''
50+ popd
51+ '';
52+
53+ installPhase = ''
54+ runHook preInstall
55+
56+ mkdir -p $out/{bin,lib,share/icons/hicolor/scalable/apps}
57+
58+ install -D ./linux/opensupaplex $out/bin/opensupaplex
59+ cp -R ./resources $out/lib/opensupaplex
60+ cp ${icon} $out/share/icons/hicolor/scalable/apps/open-supaplex.svg
61+
62+ runHook postInstall
63+ '';
64+
65+ passthru.tests.version = testVersion {
66+ package = opensupaplex;
67+ command = "opensupaplex --help";
68+ version = "v${version}";
69+ };
70+
71+ desktopItems = [(makeDesktopItem {
72+ name = "opensupaplex";
73+ exec = meta.mainProgram;
74+ icon = "open-supaplex";
75+ desktopName = "OpenSupaplex";
76+ comment = meta.description;
77+ categories = "Application;Game;";
78+ })];
79+
80+ meta = with lib; {
81+ description = "A decompilation of Supaplex in C and SDL";
82+ homepage = "https://github.com/sergiou87/open-supaplex";
83+ changelog = "https://github.com/sergiou87/open-supaplex/blob/master/changelog/v${version}.txt";
84+ license = licenses.gpl3Only;
85+ maintainers = [ maintainers.ivar ];
86+ platforms = platforms.linux; # Many more are supported upstream, but only linux is tested.
87+ mainProgram = "opensupaplex";
88+ };
89+}
pkgs/games/xcowsay/default.nix+2−2
@@ -5,11 +5,11 @@
55
66stdenv.mkDerivation rec {
77 pname = "xcowsay";
8− version = "1.5.1";
8+ version = "1.6";
99
1010 src = fetchurl {
1111 url = "http://www.nickg.me.uk/files/xcowsay-${version}.tar.gz";
12− sha256 = "sha256-wypsfAp634wbaAI+fxzmr3J5AmvQzChVi/wp/BPxiA0=";
12+ sha256 = "sha256-RqzoZP8o0tIfS3BY8CleGNAEGhIMEHipUfpDxOD1yMU=";
1313 };
1414
1515 buildInputs = [
pkgs/misc/emulators/ryujinx/default.nix+7−4
@@ -1,20 +1,23 @@
11{ lib, buildDotnetModule, fetchFromGitHub, makeDesktopItem, copyDesktopItems
2−, libX11, libgdiplus, ffmpeg
2+, dotnetCorePackages, libX11, libgdiplus, ffmpeg
33, SDL2_mixer, openal, libsoundio, sndio, pulseaudio
44, gtk3, gdk-pixbuf, wrapGAppsHook
55}:
66
77buildDotnetModule rec {
88 pname = "ryujinx";
9− version = "1.0.7105"; # Versioning is based off of the official appveyor builds: https://ci.appveyor.com/project/gdkchan/ryujinx
9+ version = "1.0.7168"; # Versioning is based off of the official appveyor builds: https://ci.appveyor.com/project/gdkchan/ryujinx
1010
1111 src = fetchFromGitHub {
1212 owner = "Ryujinx";
1313 repo = "Ryujinx";
14− rev = "b9d83cc97ee1cb8c60d9b01c162bab742567fe6e";
15− sha256 = "0plchh8f9xhhza1wfw3ys78f0pa1bh3898fqhfhcc0kxb39px9is";
14+ rev = "6e0799580f0d1b473a79471c5d365c6524d97a86";
15+ sha256 = "145sn9xkjxj79292faypcdmpmbxm1w70q0iprg6pfymf9920gvfv";
1616 };
1717
18+ dotnet-sdk = dotnetCorePackages.sdk_6_0;
19+ dotnet-runtime = dotnetCorePackages.runtime_6_0;
20+
1821 projectFile = "Ryujinx.sln";
1922 nugetDeps = ./deps.nix;
2023
pkgs/misc/emulators/ryujinx/deps.nix+22−21
@@ -11,22 +11,25 @@
1111 (fetchNuGet { pname = "GLibSharp"; version = "3.22.25.128"; sha256 = "1j8i5izk97ga30z1qpd765zqd2q5w71y8bhnkqq4bj59768fyxp5"; })
1212 (fetchNuGet { pname = "GtkSharp"; version = "3.22.25.128"; sha256 = "0z0wx0p3gc02r8d7y88k1rw307sb2vapbr1k1yc5qdc38fxz5jsy"; })
1313 (fetchNuGet { pname = "GtkSharp.Dependencies"; version = "1.1.0"; sha256 = "1g1rhcn38ww97638rds6l5bysra43hkhv47fy71fvq89623zgyxn"; })
14− (fetchNuGet { pname = "LibHac"; version = "0.13.3"; sha256 = "0mh7q1i9wk5mj7xc1rbsasfmd0d1y6xs5m4nllmclk4drzkzsi56"; })
15− (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-x64"; version = "5.0.12"; sha256 = "1asph5v7kgmscfgsyv9gg7cwvg52gnm6m0ldm2m4pfkpsxqyp2mi"; })
16− (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.osx-x64"; version = "5.0.12"; sha256 = "02kv8xh6xvpav7vqj281321ly1imghxcc18cdgadiq8dwgm87xwp"; })
17− (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-x64"; version = "5.0.12"; sha256 = "062zb8gqbzxq2xrmr8lbl215pnhw1fdidq43m975vsfgzmqrga8f"; })
14+ (fetchNuGet { pname = "LibHac"; version = "0.14.3"; sha256 = "13pv5dwffj8c2mfibra3hkd1pgg5cj075sf48kgp82y501l25q5m"; })
15+ (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-x64"; version = "6.0.0"; sha256 = "0r6jyxl3h1asj30la78skd5gsxgwjpvkspmkw1gglxfg85hnqc8w"; })
16+ (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.osx-x64"; version = "6.0.0"; sha256 = "1hnqhvgjp342nx9s47w5sknmlpkfxbcfi50pa4vary2r7sv8ka2w"; })
17+ (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-x64"; version = "6.0.0"; sha256 = "1j8cn97swc67ly7ca7m05akczrswbg0gjsk7473vad6770ph79vm"; })
1818 (fetchNuGet { pname = "Microsoft.CodeCoverage"; version = "16.8.0"; sha256 = "1y05sjk7wgd29a47v1yhn2s1lrd8wgazkilvmjbvivmrrm3fqjs8"; })
1919 (fetchNuGet { pname = "Microsoft.CSharp"; version = "4.0.1"; sha256 = "0zxc0apx1gcx361jlq8smc9pfdgmyjh6hpka8dypc9w23nlsh6yj"; })
20+ (fetchNuGet { pname = "Microsoft.CSharp"; version = "4.5.0"; sha256 = "01i28nvzccxbqmiz217fxs6hnjwmd5fafs37rd49a6qp53y6623l"; })
2021 (fetchNuGet { pname = "Microsoft.DotNet.InternalAbstractions"; version = "1.0.0"; sha256 = "0mp8ihqlb7fsa789frjzidrfjc1lrhk88qp3xm5qvr7vf4wy4z8x"; })
21− (fetchNuGet { pname = "Microsoft.NETCore.App.Host.osx-x64"; version = "5.0.12"; sha256 = "0950m6x86jp5dybzakfsp74qzrk4pk8wkazc178v36j14sqmj2zq"; })
22− (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-x64"; version = "5.0.12"; sha256 = "173zymcac00rjb0l4yvksglj32b6fnwxzi60kpi0ki3z3a2k8kd3"; })
23− (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-x64"; version = "5.0.12"; sha256 = "1fdbrjrmjd31y1amp0inlmki9w3fwzv8nz41pqmc943g3cpmyg9f"; })
24− (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.osx-x64"; version = "5.0.12"; sha256 = "0z8l0gzy9dih0mn5a2rknyph1w73y4m03s250wghym1zp6rz910p"; })
25− (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-x64"; version = "5.0.12"; sha256 = "1s4klc4p5wiqiiqcfqyi56cci9f29b588h52vj7na7gfqry4b51l"; })
22+ (fetchNuGet { pname = "Microsoft.IdentityModel.JsonWebTokens"; version = "6.15.0"; sha256 = "0dwx7dk8jr10784nriqbi364qbxzfwq0c6xia0ac5rzrp7179r4d"; })
23+ (fetchNuGet { pname = "Microsoft.IdentityModel.Logging"; version = "6.15.0"; sha256 = "0jn9a20a2zixnkm3bmpmvmiv7mk0hqdlnpi0qgjkg1nir87czm19"; })
24+ (fetchNuGet { pname = "Microsoft.IdentityModel.Tokens"; version = "6.15.0"; sha256 = "1nbgydr45f7lp980xyrkzpyaw2mkkishjwp3slgxk7f0mz6q8i1v"; })
25+ (fetchNuGet { pname = "Microsoft.NETCore.App.Host.osx-x64"; version = "6.0.0"; sha256 = "188cbx99ahvksap9w20943p62fmzxa6fl133w4r7c6bjpsrm29a4"; })
26+ (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-x64"; version = "6.0.0"; sha256 = "1016ld3kg4dav2yxxh0i32cy0ixv7s0wl9czydbhkbs2d8669kfx"; })
27+ (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-x64"; version = "6.0.0"; sha256 = "0qaylw18flrfl3vxnbp8wsiz29znidmn6dhv7k4v4jj2za16wmji"; })
28+ (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.osx-x64"; version = "6.0.0"; sha256 = "1njh3iky5wyxdrisz8xfpy7kzbsrvzfhpdl01xbavvz189x4ajqp"; })
29+ (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-x64"; version = "6.0.0"; sha256 = "13x1nkigy3nhbr8gxalij7krmzxpciyq4i8k7jdy9278zs1lm5a6"; })
2630 (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.0.1"; sha256 = "01al6cfxp68dscl15z7rxfw9zvhm64dncsw09a1vmdkacsa2v6lr"; })
2731 (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.1.0"; sha256 = "08vh1r12g6ykjygq5d3vq09zylgb84l63k49jc4v8faw9g93iqqm"; })
2832 (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "2.0.0"; sha256 = "1fk2fk2639i7nzy58m9dvpdnzql4vb8yl8vr19r2fp8lmj9w2jr0"; })
29− (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "5.0.0"; sha256 = "0mwpwdflidzgzfx2dlpkvvnkgkr2ayaf0s80737h4wa35gaj11rc"; })
3033 (fetchNuGet { pname = "Microsoft.NETCore.Targets"; version = "1.0.1"; sha256 = "0ppdkwy6s9p7x9jix3v4402wb171cdiibq7js7i13nxpdky7074p"; })
3134 (fetchNuGet { pname = "Microsoft.NETCore.Targets"; version = "1.1.0"; sha256 = "193xwf33fbm0ni3idxzbr5fdq3i2dlfgihsac9jj7whj0gd902nh"; })
3235 (fetchNuGet { pname = "Microsoft.NET.Test.Sdk"; version = "16.8.0"; sha256 = "1ln2mva7j2mpsj9rdhpk8vhm3pgd8wn563xqdcwd38avnhp74rm9"; })
@@ -36,9 +39,7 @@
3639 (fetchNuGet { pname = "Microsoft.Win32.Primitives"; version = "4.3.0"; sha256 = "0j0c1wj4ndj21zsgivsc24whiya605603kxrbiw6wkfdync464wq"; })
3740 (fetchNuGet { pname = "Microsoft.Win32.Registry"; version = "4.3.0"; sha256 = "1gxyzxam8163vk1kb6xzxjj4iwspjsz9zhgn1w9rjzciphaz0ig7"; })
3841 (fetchNuGet { pname = "Microsoft.Win32.Registry"; version = "4.5.0"; sha256 = "1zapbz161ji8h82xiajgriq6zgzmb1f3ar517p2h63plhsq5gh2q"; })
39− (fetchNuGet { pname = "Microsoft.Win32.Registry"; version = "5.0.0"; sha256 = "102hvhq2gmlcbq8y2cb7hdr2dnmjzfp2k3asr1ycwrfacwyaak7n"; })
40− (fetchNuGet { pname = "Microsoft.Win32.SystemEvents"; version = "5.0.0"; sha256 = "0sja4ba0mrvdamn0r9mhq38b9dxi08yb3c1hzh29n1z6ws1hlrcq"; })
41− (fetchNuGet { pname = "Mono.Posix.NETStandard"; version = "1.0.0"; sha256 = "0xlja36hwpjm837haq15mjh2prcf68lyrmn72nvgpz8qnf9vappw"; })
42+ (fetchNuGet { pname = "Microsoft.Win32.SystemEvents"; version = "6.0.0"; sha256 = "0c6pcj088g1yd1vs529q3ybgsd2vjlk5y1ic6dkmbhvrp5jibl9p"; })
4243 (fetchNuGet { pname = "MsgPack.Cli"; version = "1.0.1"; sha256 = "1dk2bs3g16lsxcjjm7gfx6jxa4667wccw94jlh2ql7y7smvh9z8r"; })
4344 (fetchNuGet { pname = "NETStandard.Library"; version = "1.6.0"; sha256 = "0nmmv4yw7gw04ik8ialj3ak0j6pxa9spih67hnn1h2c38ba8h58k"; })
4445 (fetchNuGet { pname = "NETStandard.Library"; version = "2.0.0"; sha256 = "1bc4ba8ahgk15m8k4nd7x406nhi0kwqzbgjk2dmw52ss553xz7iy"; })
@@ -104,16 +105,16 @@
104105 (fetchNuGet { pname = "Ryujinx.Graphics.Nvdec.Dependencies"; version = "4.4.0-build7"; sha256 = "0g1l3lgs0ffxp64ka81v6q1cgsdirl1qlf73255v29r3v337074m"; })
105106 (fetchNuGet { pname = "Ryujinx.Graphics.Nvdec.Dependencies"; version = "4.4.0-build9"; sha256 = "121zmh0byi22qsc9b25wv58kwcq6pmk7zf4f2rfafmdjvwx8bkxc"; })
106107 (fetchNuGet { pname = "Ryujinx.SDL2-CS"; version = "2.0.17-build18"; sha256 = "0j0vs6075c4fniydqxhpp18pg3x679mq463x4gxqgkri3vhpj4vl"; })
107− (fetchNuGet { pname = "SharpZipLib"; version = "1.3.0"; sha256 = "1pizj82wisch28nfdaszwqm9bz19lnl0s5mq8c0zybm2vhnrhvk4"; })
108+ (fetchNuGet { pname = "SharpZipLib"; version = "1.3.3"; sha256 = "1gij11wfj1mqm10631cjpnhzw882bnzx699jzwhdqakxm1610q8x"; })
108109 (fetchNuGet { pname = "SixLabors.Fonts"; version = "1.0.0-beta0013"; sha256 = "0r0aw8xxd32rwcawawcz6asiyggz02hnzg5hvz8gimq8hvwx1wql"; })
109− (fetchNuGet { pname = "SixLabors.ImageSharp"; version = "1.0.2"; sha256 = "0fhk9sn8k18slfb26wz8mal0j699f7djwhxgv97snz6b10wynfaj"; })
110+ (fetchNuGet { pname = "SixLabors.ImageSharp"; version = "1.0.4"; sha256 = "0fmgn414my76gjgp89qlc210a0lqvnvkvk2fcwnpwxdhqpfvyilr"; })
110111 (fetchNuGet { pname = "SixLabors.ImageSharp.Drawing"; version = "1.0.0-beta11"; sha256 = "0hl0rs3kr1zdnx3gdssxgli6fyvmwzcfp99f4db71s0i8j8b2bp5"; })
111− (fetchNuGet { pname = "SPB"; version = "0.0.3-build15"; sha256 = "0h00yi2j65q31r5npsziq2rpiw832vf9r72j1hjqibp2l5m6v6yw"; })
112+ (fetchNuGet { pname = "SPB"; version = "0.0.4-build17"; sha256 = "0arp7mwdn1w67qx8a0m90xh8waj15154ynswrbsp5w4wmzkcss1i"; })
112113 (fetchNuGet { pname = "System.AppContext"; version = "4.1.0"; sha256 = "0fv3cma1jp4vgj7a8hqc9n7hr1f1kjp541s6z0q1r6nazb4iz9mz"; })
113114 (fetchNuGet { pname = "System.Buffers"; version = "4.0.0"; sha256 = "13s659bcmg9nwb6z78971z1lr6bmh2wghxi1ayqyzl4jijd351gr"; })
114115 (fetchNuGet { pname = "System.Buffers"; version = "4.3.0"; sha256 = "0fgns20ispwrfqll4q1zc1waqcmylb3zc50ys9x8zlwxh9pmd9jy"; })
115116 (fetchNuGet { pname = "System.CodeDom"; version = "4.4.0"; sha256 = "1zgbafm5p380r50ap5iddp11kzhr9khrf2pnai6k593wjar74p1g"; })
116− (fetchNuGet { pname = "System.CodeDom"; version = "5.0.0"; sha256 = "14zs2wqkmdlxzj8ikx19n321lsbarx5vl2a8wrachymxn8zb5njh"; })
117+ (fetchNuGet { pname = "System.CodeDom"; version = "6.0.0"; sha256 = "1i55cxp8ycc03dmxx4n22qi6jkwfl23cgffb95izq7bjar8avxxq"; })
117118 (fetchNuGet { pname = "System.Collections"; version = "4.0.11"; sha256 = "1ga40f5lrwldiyw6vy67d0sg7jd7ww6kgwbksm19wrvq9hr0bsm6"; })
118119 (fetchNuGet { pname = "System.Collections"; version = "4.3.0"; sha256 = "19r4y64dqyrq6k4706dnyhhw7fs24kpp3awak7whzss39dakpxk9"; })
119120 (fetchNuGet { pname = "System.Collections.Concurrent"; version = "4.0.12"; sha256 = "07y08kvrzpak873pmyxs129g1ch8l27zmg51pcyj2jvq03n0r0fc"; })
@@ -131,13 +132,14 @@
131132 (fetchNuGet { pname = "System.Diagnostics.Tools"; version = "4.0.1"; sha256 = "19cknvg07yhakcvpxg3cxa0bwadplin6kyxd8mpjjpwnp56nl85x"; })
132133 (fetchNuGet { pname = "System.Diagnostics.Tracing"; version = "4.1.0"; sha256 = "1d2r76v1x610x61ahfpigda89gd13qydz6vbwzhpqlyvq8jj6394"; })
133134 (fetchNuGet { pname = "System.Diagnostics.Tracing"; version = "4.3.0"; sha256 = "1m3bx6c2s958qligl67q7grkwfz3w53hpy7nc97mh6f7j5k168c4"; })
134− (fetchNuGet { pname = "System.Drawing.Common"; version = "5.0.1"; sha256 = "14h722wq58k1wmgxmpws91xc7kh8109ijw0hcxjq9qkbhbi6pwmb"; })
135+ (fetchNuGet { pname = "System.Drawing.Common"; version = "6.0.0"; sha256 = "02n8rzm58dac2np8b3xw8ychbvylja4nh6938l5k2fhyn40imlgz"; })
135136 (fetchNuGet { pname = "System.Dynamic.Runtime"; version = "4.0.11"; sha256 = "1pla2dx8gkidf7xkciig6nifdsb494axjvzvann8g2lp3dbqasm9"; })
136137 (fetchNuGet { pname = "System.Globalization"; version = "4.0.11"; sha256 = "070c5jbas2v7smm660zaf1gh0489xanjqymkvafcs4f8cdrs1d5d"; })
137138 (fetchNuGet { pname = "System.Globalization"; version = "4.3.0"; sha256 = "1cp68vv683n6ic2zqh2s1fn4c2sd87g5hpp6l4d4nj4536jz98ki"; })
138139 (fetchNuGet { pname = "System.Globalization.Calendars"; version = "4.0.1"; sha256 = "0bv0alrm2ck2zk3rz25lfyk9h42f3ywq77mx1syl6vvyncnpg4qh"; })
139140 (fetchNuGet { pname = "System.Globalization.Extensions"; version = "4.0.1"; sha256 = "0hjhdb5ri8z9l93bw04s7ynwrjrhx2n0p34sf33a9hl9phz69fyc"; })
140141 (fetchNuGet { pname = "System.Globalization.Extensions"; version = "4.3.0"; sha256 = "02a5zfxavhv3jd437bsncbhd2fp1zv4gxzakp1an9l6kdq1mcqls"; })
142+ (fetchNuGet { pname = "System.IdentityModel.Tokens.Jwt"; version = "6.15.0"; sha256 = "0kzc9rqwn8xgixwm1z5zajf6bapa2rvi9lv8vgz7hlp1lgi964zk"; })
141143 (fetchNuGet { pname = "System.IO"; version = "4.1.0"; sha256 = "1g0yb8p11vfd0kbkyzlfsbsp5z44lwsvyc0h3dpw6vqnbi035ajp"; })
142144 (fetchNuGet { pname = "System.IO"; version = "4.3.0"; sha256 = "05l9qdrzhm4s5dixmx68kxwif4l99ll5gqmh7rqgw554fx0agv5f"; })
143145 (fetchNuGet { pname = "System.IO.Compression"; version = "4.1.0"; sha256 = "0iym7s3jkl8n0vzm3jd6xqg9zjjjqni05x45dwxyjr2dy88hlgji"; })
@@ -149,7 +151,7 @@
149151 (fetchNuGet { pname = "System.Linq"; version = "4.1.0"; sha256 = "1ppg83svb39hj4hpp5k7kcryzrf3sfnm08vxd5sm2drrijsla2k5"; })
150152 (fetchNuGet { pname = "System.Linq"; version = "4.3.0"; sha256 = "1w0gmba695rbr80l1k2h4mrwzbzsyfl2z4klmpbsvsg5pm4a56s7"; })
151153 (fetchNuGet { pname = "System.Linq.Expressions"; version = "4.1.0"; sha256 = "1gpdxl6ip06cnab7n3zlcg6mqp7kknf73s8wjinzi4p0apw82fpg"; })
152− (fetchNuGet { pname = "System.Management"; version = "5.0.0"; sha256 = "09hyv3p0zd549577clydlb2szl84m4gvdjnsry73n8b12ja7d75s"; })
154+ (fetchNuGet { pname = "System.Management"; version = "6.0.0"; sha256 = "0ra1g75ykapg6i5y0za721kpjd6xcq6dalijkdm6fsxxmz8iz4dr"; })
153155 (fetchNuGet { pname = "System.Net.Http"; version = "4.1.0"; sha256 = "1i5rqij1icg05j8rrkw4gd4pgia1978mqhjzhsjg69lvwcdfg8yb"; })
154156 (fetchNuGet { pname = "System.Net.NameResolution"; version = "4.3.0"; sha256 = "15r75pwc0rm3vvwsn8rvm2krf929mjfwliv0mpicjnii24470rkq"; })
155157 (fetchNuGet { pname = "System.Net.Primitives"; version = "4.0.11"; sha256 = "10xzzaynkzkakp7jai1ik3r805zrqjxiz7vcagchyxs2v26a516r"; })
@@ -188,10 +190,10 @@
188190 (fetchNuGet { pname = "System.Runtime.Numerics"; version = "4.0.1"; sha256 = "1y308zfvy0l5nrn46mqqr4wb4z1xk758pkk8svbz8b5ij7jnv4nn"; })
189191 (fetchNuGet { pname = "System.Runtime.Serialization.Primitives"; version = "4.1.1"; sha256 = "042rfjixknlr6r10vx2pgf56yming8lkjikamg3g4v29ikk78h7k"; })
190192 (fetchNuGet { pname = "System.Security.AccessControl"; version = "4.5.0"; sha256 = "1wvwanz33fzzbnd2jalar0p0z3x0ba53vzx1kazlskp7pwyhlnq0"; })
191− (fetchNuGet { pname = "System.Security.AccessControl"; version = "5.0.0"; sha256 = "17n3lrrl6vahkqmhlpn3w20afgz09n7i6rv0r3qypngwi7wqdr5r"; })
192193 (fetchNuGet { pname = "System.Security.Claims"; version = "4.3.0"; sha256 = "0jvfn7j22l3mm28qjy3rcw287y9h65ha4m940waaxah07jnbzrhn"; })
193194 (fetchNuGet { pname = "System.Security.Cryptography.Algorithms"; version = "4.2.0"; sha256 = "148s9g5dgm33ri7dnh19s4lgnlxbpwvrw2jnzllq2kijj4i4vs85"; })
194195 (fetchNuGet { pname = "System.Security.Cryptography.Cng"; version = "4.2.0"; sha256 = "118jijz446kix20blxip0f0q8mhsh9bz118mwc2ch1p6g7facpzc"; })
196+ (fetchNuGet { pname = "System.Security.Cryptography.Cng"; version = "4.5.0"; sha256 = "1pm4ykbcz48f1hdmwpia432ha6qbb9kbrxrrp7cg3m8q8xn52ngn"; })
195197 (fetchNuGet { pname = "System.Security.Cryptography.Csp"; version = "4.0.0"; sha256 = "1cwv8lqj8r15q81d2pz2jwzzbaji0l28xfrpw29kdpsaypm92z2q"; })
196198 (fetchNuGet { pname = "System.Security.Cryptography.Encoding"; version = "4.0.0"; sha256 = "0a8y1a5wkmpawc787gfmnrnbzdgxmx1a14ax43jf3rj9gxmy3vk4"; })
197199 (fetchNuGet { pname = "System.Security.Cryptography.OpenSsl"; version = "4.0.0"; sha256 = "16sx3cig3d0ilvzl8xxgffmxbiqx87zdi8fc73i3i7zjih1a7f4q"; })
@@ -200,7 +202,6 @@
200202 (fetchNuGet { pname = "System.Security.Principal"; version = "4.3.0"; sha256 = "12cm2zws06z4lfc4dn31iqv7072zyi4m910d4r6wm8yx85arsfxf"; })
201203 (fetchNuGet { pname = "System.Security.Principal.Windows"; version = "4.3.0"; sha256 = "00a0a7c40i3v4cb20s2cmh9csb5jv2l0frvnlzyfxh848xalpdwr"; })
202204 (fetchNuGet { pname = "System.Security.Principal.Windows"; version = "4.5.0"; sha256 = "0rmj89wsl5yzwh0kqjgx45vzf694v9p92r4x4q6yxldk1cv1hi86"; })
203− (fetchNuGet { pname = "System.Security.Principal.Windows"; version = "5.0.0"; sha256 = "1mpk7xj76lxgz97a5yg93wi8lj0l8p157a5d50mmjy3gbz1904q8"; })
204205 (fetchNuGet { pname = "System.Text.Encoding"; version = "4.0.11"; sha256 = "1dyqv0hijg265dwxg6l7aiv74102d6xjiwplh2ar1ly6xfaa4iiw"; })
205206 (fetchNuGet { pname = "System.Text.Encoding"; version = "4.3.0"; sha256 = "1f04lkir4iladpp51sdgmis9dj4y8v08cka0mbmsy0frc9a4gjqr"; })
206207 (fetchNuGet { pname = "System.Text.Encoding.Extensions"; version = "4.0.11"; sha256 = "08nsfrpiwsg9x5ml4xyl3zyvjfdi4mvbqf93kjdh11j4fwkznizs"; })
pkgs/misc/emulators/ryujinx/updater.sh+1−1
@@ -1,5 +1,5 @@
11#! /usr/bin/env nix-shell
2−#! nix-shell -i bash -p coreutils gnused curl common-updater-scripts nuget-to-nix nix-prefetch-git jq dotnet-sdk_5
2+#! nix-shell -i bash -p coreutils gnused curl common-updater-scripts nuget-to-nix nix-prefetch-git jq dotnet-sdk_6
33set -eo pipefail
44cd "$(dirname "${BASH_SOURCE[0]}")"
55
pkgs/os-specific/linux/tuigreet/default.nix+3−3
@@ -5,16 +5,16 @@
55
66rustPlatform.buildRustPackage rec {
77 pname = "tuigreet";
8− version = "0.7.1";
8+ version = "0.7.2";
99
1010 src = fetchFromGitHub {
1111 owner = "apognu";
1212 repo = pname;
1313 rev = version;
14− sha256 = "sha256-Ecp79q/xN6KDAD346ANzunTM3xW+z5UaRy/lblOCLaE=";
14+ sha256 = "sha256-Mu4GGlX7ZjBaBECXRD6iJCqDMSzcj17BriJ6Nas0J70=";
1515 };
1616
17− cargoSha256 = "sha256-eam+85c2y+eNSOlfhO7oIhGqy0HPyi3FuqxHBDkZRVE=";
17+ cargoSha256 = "sha256-H5xqk7Yd3M8sFGHlmhAS0fhh3eM4dkvkNQGVxRSXUJs=";
1818
1919 meta = with lib; {
2020 description = "Graphical console greter for greetd";
pkgs/servers/consul/default.nix+3−3
@@ -2,7 +2,7 @@
22
33buildGoModule rec {
44 pname = "consul";
5− version = "1.11.1";
5+ version = "1.11.2";
66 rev = "v${version}";
77
88 # Note: Currently only release tags are supported, because they have the Consul UI
@@ -17,7 +17,7 @@ buildGoModule rec {
1717 owner = "hashicorp";
1818 repo = pname;
1919 inherit rev;
20− sha256 = "0x374capaz6h8mzvq2pfz4zg3gz27fjbqax65f23zqyl46haj01p";
20+ sha256 = "sha256-Ql8MAo4OVvOIOkFbeOLHqzloWe3I8HviUIfWrvo6INk=";
2121 };
2222
2323 passthru.tests.consul = nixosTests.consul;
@@ -26,7 +26,7 @@ buildGoModule rec {
2626 # has a split module structure in one repo
2727 subPackages = ["." "connect/certgen"];
2828
29− vendorSha256 = "09rz2xv407ym71dap7f6bbqhdnqvylvbd9zg6f6h7qsb88nvyzsp";
29+ vendorSha256 = "sha256-BRLDV/9dXS82V8B0dxExiSMBq2MkIfC5//2tOrcZY7c=";
3030
3131 doCheck = false;
3232
pkgs/servers/imgproxy/default.nix+2−2
@@ -3,12 +3,12 @@
33
44buildGoModule rec {
55 pname = "imgproxy";
6− version = "3.1.3";
6+ version = "3.2.1";
77
88 src = fetchFromGitHub {
99 owner = pname;
1010 repo = pname;
11− sha256 = "sha256-aQ+EKUsqmsdCvEeKNNoF2Sj5+BN8yuhJAbL4BnYWINM=";
11+ sha256 = "sha256-89LBpENzDIvlRfNeigSvzBrprw8MRsdRZMQ5qUs0wI8=";
1212 rev = "v${version}";
1313 };
1414
pkgs/servers/mattermost/default.nix+6−3
@@ -10,7 +10,7 @@
1010, storePathAsBuildHash ? false }:
1111
1212let
13− version = "6.3.0";
13+ version = "6.3.1";
1414
1515 goPackagePath = "github.com/mattermost/mattermost-server";
1616
@@ -22,7 +22,7 @@ let
2222 owner = "mattermost";
2323 repo = "mattermost-server";
2424 rev = "v${version}";
25− sha256 = "y3VTDl01UrMpgoN06lf98C+uTu2N9u0EAWYADPpOI3w=";
25+ sha256 = "cUeGjKutz6Yeq/cP7nYx0zPJ87GKOQWRyNSERzq/nPw=";
2626 };
2727
2828 ldflags = [
@@ -65,7 +65,7 @@ let
6565
6666 src = fetchurl {
6767 url = "https://releases.mattermost.com/${version}/mattermost-${version}-linux-amd64.tar.gz";
68− sha256 = "PqinkPC7J6Ng1fjTrcAa6ZqiyB2JKkGRdvJ6h2wNS5w=";
68+ sha256 = "lFwSZsAcQuuWTN+4wCe7GDLkhp1ASn5GE7/K5Vppr14=";
6969 };
7070
7171 installPhase = ''
@@ -76,6 +76,9 @@ let
7676 mattermost/fonts \
7777 mattermost/templates \
7878 mattermost/config
79+
80+ # For some reason a bunch of these files are +x...
81+ find $out -type f -exec chmod -x {} \;
7982 '';
8083 };
8184
pkgs/tools/admin/procs/default.nix+3−3
@@ -2,16 +2,16 @@
22
33rustPlatform.buildRustPackage rec {
44 pname = "procs";
5− version = "0.11.13";
5+ version = "0.12.0";
66
77 src = fetchFromGitHub {
88 owner = "dalance";
99 repo = pname;
1010 rev = "v${version}";
11− sha256 = "sha256-OgV4iqtGpia8l+GCySDD+aRIk1mNnJCB0OqZzITTj2I=";
11+ sha256 = "sha256-UZTt/+K8jDFhkNIMRfyDzRqOlceAEQKWwgEf1lcZIkY=";
1212 };
1313
14− cargoSha256 = "sha256-d5GsCzigR5A1pJnvs6rjqMJqUB+H52Gaa1SzkHK5X+Y=";
14+ cargoSha256 = "sha256-VE161UZKUiG2WW7CwjazQfR9ouOAsYCjiA5dczFQliM=";
1515
1616 nativeBuildInputs = [ installShellFiles ];
1717
pkgs/tools/filesystems/irods/common.nix+1−1
@@ -17,7 +17,7 @@
1717 "-DIRODS_EXTERNALS_FULLPATH_CPPZMQ=${cppzmq}"
1818 "-DIRODS_EXTERNALS_FULLPATH_CATCH2=${catch2}"
1919 "-DIRODS_LINUX_DISTRIBUTION_NAME=nix"
20− "-DIRODS_LINUX_DISTRIBUTION_VERSION_MAJOR=${builtins.nixVersion}"
20+ "-DIRODS_LINUX_DISTRIBUTION_VERSION_MAJOR=1.0"
2121 "-DCPACK_GENERATOR=TGZ"
2222 "-DCMAKE_CXX_FLAGS=-I${lib.getDev libcxx}/include/c++/v1"
2323 ];
pkgs/tools/networking/gvpe/default.nix+6−7
@@ -1,25 +1,24 @@
1−{ lib, stdenv, fetchurl, openssl, gmp, zlib, iproute2, nettools }:
1+{ lib, stdenv, fetchurl, openssl, gmp, zlib, iproute2, nettools, pkg-config }:
22
33stdenv.mkDerivation rec {
44 pname = "gvpe";
5− version = "3.0";
5+ version = "3.1";
66
77 src = fetchurl {
88 url = "https://ftp.gnu.org/gnu/gvpe/gvpe-${version}.tar.gz";
9− sha256 = "1v61mj25iyd91z0ir7cmradkkcm1ffbk52c96v293ibsvjs2s2hf";
9+ sha256 = "sha256-8evVctclu5QOCAdxocEIZ8NQnc2DFvYRSBRQPcux6LM=";
1010 };
1111
12− patches = [ ./gvpe-3.0-glibc-2.26.patch ];
13−
12+ nativeBuildInputs = [ pkg-config ];
1413 buildInputs = [ openssl gmp zlib ];
1514
1615 configureFlags = [
1716 "--enable-tcp"
1817 "--enable-http-proxy"
1918 "--enable-dns"
20− ];
19+ ];
2120
22− preBuild = ''
21+ postPatch = ''
2322 sed -e 's@"/sbin/ifconfig.*"@"${iproute2}/sbin/ip link set $IFNAME address $MAC mtu $MTU"@' -i src/device-linux.C
2423 sed -e 's@/sbin/ifconfig@${nettools}/sbin/ifconfig@g' -i src/device-*.C
2524 '';
pkgs/tools/networking/gvpe/gvpe-3.0-glibc-2.26.patchdeleted−18
@@ -1,18 +0,0 @@
1−diff --git a/lib/getopt.h b/lib/getopt.h
2−index 2d02142..5e7d8d4 100644
3−--- a/lib/getopt.h
4−+++ b/lib/getopt.h
5−@@ -101,13 +101,6 @@ struct option
6− #define optional_argument 2
7−
8− #if defined (__STDC__) && __STDC__
9−-#ifdef __GNU_LIBRARY__
10−-/* Many other libraries have conflicting prototypes for getopt, with
11−- differences in the consts, in stdlib.h. To avoid compilation
12−- errors, only prototype getopt for the GNU C library. */
13−-extern int getopt (int argc, char *const *argv, const char *shortopts);
14−-#else /* not __GNU_LIBRARY__ */
15−-#endif /* __GNU_LIBRARY__ */
16− extern int getopt_long (int argc, char *const *argv, const char *shortopts,
17− const struct option *longopts, int *longind);
18− extern int getopt_long_only (int argc, char *const *argv,
pkgs/tools/networking/htpdate/default.nix+2−2
@@ -1,14 +1,14 @@
11{ stdenv, lib, fetchFromGitHub }:
22
33stdenv.mkDerivation rec {
4− version = "1.3.1";
4+ version = "1.3.3";
55 pname = "htpdate";
66
77 src = fetchFromGitHub {
88 owner = "twekkel";
99 repo = pname;
1010 rev = "v${version}";
11− sha256 = "JPaxbu7LlGV+Bh5qxVxeNSPnMQNqLaLYWBRbpETSpQs=";
11+ sha256 = "sha256-/xZxwEui8V5kyfGsmwRRkiyhj7lcJQaTmOjBihvdWg8=";
1212 };
1313
1414 makeFlags = [
pkgs/tools/networking/libreswan/default.nix+3−1
@@ -14,6 +14,7 @@
1414, curl
1515, nspr
1616, bash
17+, runtimeShell
1718, iproute2
1819, iptables
1920, procps
@@ -71,8 +72,9 @@ stdenv.mkDerivation rec {
7172
7273 prePatch = ''
7374 # Correct iproute2 and iptables path
74− sed -e 's|/sbin/ip|${iproute2}/bin/ip|' \
75+ sed -e 's|/sbin/ip|${iproute2}/bin/ip|g' \
7576 -e 's|/sbin/\(ip6\?tables\)|${iptables}/bin/\1|' \
77+ -e 's|/bin/bash|${runtimeShell}|g' \
7678 -i initsystems/systemd/ipsec.service.in \
7779 programs/barf/barf.in \
7880 programs/verify/verify.in
pkgs/tools/security/corsmisc/default.nixdeleted−25
@@ -1,25 +0,0 @@
1−{ buildGoModule
2−, fetchFromGitHub
3−, lib
4−}:
5−
6−buildGoModule rec {
7− pname = "corsmisc";
8− version = "1.3.0";
9−
10− src = fetchFromGitHub {
11− owner = "drsigned";
12− repo = pname;
13− rev = "v${version}";
14− sha256 = "18a70v093jl85vnih80i50wvac8hsg3f2gmcws9jyhj2brndq2qj";
15− };
16−
17− vendorSha256 = "1bp6bf99rxlyg91pn1y228q18lawpykmvkl22cydmclms0q0n238";
18−
19− meta = with lib; {
20− description = "Tool to discover CORS misconfigurations vulnerabilities";
21− homepage = "https://github.com/drsigned/corsmisc";
22− license = with licenses; [ mit ];
23− maintainers = with maintainers; [ fab ];
24− };
25−}
pkgs/tools/security/sigurlx/default.nixdeleted−25
@@ -1,25 +0,0 @@
1−{ buildGoModule
2−, fetchFromGitHub
3−, lib
4−}:
5−
6−buildGoModule rec {
7− pname = "sigurlx";
8− version = "2.1.0";
9−
10− src = fetchFromGitHub {
11− owner = "drsigned";
12− repo = pname;
13− rev = "v${version}";
14− sha256 = "1q5vy05387qx7h4xcccvn2z2ks1kiff3mfbd2w3w0l0a4qgz74xs";
15− };
16−
17− vendorSha256 = "1bp6bf99rxlyg91pn1y228q18lawpykmvkl22cydmclms0q0n238";
18−
19− meta = with lib; {
20− description = "Tool to map the attack surface of web applications";
21− homepage = "https://github.com/drsigned/sigurlx";
22− license = with licenses; [ mit ];
23− maintainers = with maintainers; [ fab ];
24− };
25−}
pkgs/top-level/aliases.nix+2
@@ -157,6 +157,7 @@ mapAliases ({
157157 couchdb = throw "couchdb was removed from nixpkgs, use couchdb3 instead"; # added 2021-03-03
158158 couchdb2 = throw "couchdb2 was removed from nixpkgs, use couchdb3 instead"; # added 2021-03-03
159159 coredumper = throw "coredumper has been removed: abandoned by upstream."; # added 2019-11-16
160+ corsmisc = throw "corsmisc has been removed (upstream is gone)"; # added 2022-01-24
160161 cpp_ethereum = throw "cpp_ethereum has been removed; abandoned upstream."; # added 2020-11-30
161162 cpuminer-multi = throw "cpuminer-multi has been removed: deleted by upstream"; # added 2022-01-07
162163 crafty = throw "crafty has been removed: deleted by upstream"; # 2022-01-07
@@ -924,6 +925,7 @@ mapAliases ({
924925 shared_mime_info = shared-mime-info; # added 2018-02-25
925926 sickbeard = throw "sickbeard has been removed from nixpkgs, as it was unmaintained."; # added 2022-01-01
926927 sickrage = throw "sickbeard has been removed from nixpkgs, as it was unmaintained."; # added 2022-01-01
928+ sigurlx = throw "sigurlx has been removed (upstream is gone)"; # added 2022-01-24
927929 skrooge2 = skrooge; # added 2017-02-18
928930 sky = throw "sky has been removed from nixpkgs (2020-09-16)";
929931 skype = skypeforlinux; # added 2017-07-27
pkgs/top-level/all-packages.nix+6−8
@@ -1633,8 +1633,6 @@ with pkgs;
16331633
16341634 corsair = with python3Packages; toPythonApplication corsair-scan;
16351635
1636− corsmisc = callPackage ../tools/security/corsmisc { };
1637−
16381636 cosign = callPackage ../tools/security/cosign {
16391637 inherit (darwin.apple_sdk.frameworks) PCSC;
16401638 };
@@ -6224,9 +6222,7 @@ with pkgs;
62246222
62256223 gvm-tools = with python3.pkgs; toPythonApplication gvm-tools;
62266224
6227− gvpe = callPackage ../tools/networking/gvpe {
6228− openssl = openssl_1_0_2;
6229− };
6225+ gvpe = callPackage ../tools/networking/gvpe {};
62306226
62316227 gvolicon = callPackage ../tools/audio/gvolicon {};
62326228
@@ -19290,6 +19286,8 @@ with pkgs;
1929019286
1929119287 opensubdiv = callPackage ../development/libraries/opensubdiv { };
1929219288
19289+ opensupaplex = callPackage ../games/opensupaplex { };
19290+
1929319291 open-wbo = callPackage ../applications/science/logic/open-wbo {};
1929419292
1929519293 openwsman = callPackage ../development/libraries/openwsman {};
@@ -21864,8 +21862,6 @@ with pkgs;
2186421862
2186521863 sickgear = callPackage ../servers/sickbeard/sickgear.nix { };
2186621864
21867− sigurlx = callPackage ../tools/security/sigurlx { };
21868−
2186921865 sipwitch = callPackage ../servers/sip/sipwitch { };
2187021866
2187121867 slimserver = callPackage ../servers/slimserver { };
@@ -23804,6 +23800,8 @@ with pkgs;
2380423800
2380523801 nordzy-cursor-theme = callPackage ../data/icons/nordzy-cursor-theme { };
2380623802
23803+ nordzy-icon-theme = callPackage ../data/icons/nordzy-icon-theme { };
23804+
2380723805 inherit (callPackages ../data/fonts/noto-fonts {})
2380823806 noto-fonts
2380923807 noto-fonts-cjk-sans
@@ -33502,7 +33500,7 @@ with pkgs;
3350233500 retroarchFull = retroarch.override {
3350333501 cores = builtins.filter
3350433502 # Remove cores not supported on platform
33505− (c: c ? libretroCore && (builtins.elem stdenv.hostPlatform.system c.meta.platforms))
33503+ (c: c ? libretroCore && (lib.meta.availableOn stdenv.hostPlatform c))
3350633504 (builtins.attrValues libretro);
3350733505 };
3350833506
pkgs/top-level/python-packages.nix+4
@@ -3510,6 +3510,8 @@ in {
35103510
35113511 grip = callPackage ../development/python-modules/grip { };
35123512
3513+ groestlcoin_hash = callPackage ../development/python-modules/groestlcoin_hash { };
3514+
35133515 grpc-google-iam-v1 = callPackage ../development/python-modules/grpc-google-iam-v1 { };
35143516
35153517 grpcio = callPackage ../development/python-modules/grpcio { };
@@ -7043,6 +7045,8 @@ in {
70437045
70447046 pymdstat = callPackage ../development/python-modules/pymdstat { };
70457047
7048+ pymdown-extensions = callPackage ../development/python-modules/pymdown-extensions { };
7049+
70467050 pymediainfo = callPackage ../development/python-modules/pymediainfo { };
70477051
70487052 pymediaroom = callPackage ../development/python-modules/pymediaroom { };