···1122. Check out the target _release branch_, e.g. `release-22.11`. Do not use a _channel branch_ like `nixos-22.11` or `nixpkgs-22.11-darwin`.
1133. Create a branch for your change, e.g. `git checkout -b backport`.
1144. When the reason to backport is not obvious from the original commit message, use `git cherry-pick -xe <original commit>` and add a reason. Otherwise use `git cherry-pick -x <original commit>`. That's fine for minor version updates that only include security and bug fixes, commits that fixes an otherwise broken package or similar. Please also ensure the commits exists on the master branch; in the case of squashed or rebased merges, the commit hash will change and the new commits can be found in the merge message at the bottom of the master pull request.
115-5. Push to GitHub and open a backport pull request. Make sure to select the release branch (e.g. `release-22.11`) as the target branch of the pull request, and link to the pull request in which the original change was comitted to `master`. The pull request title should be the commit title with the release version as prefix, e.g. `[22.11]`.
1166. When the backport pull request is merged and you have the necessary privileges you can also replace the label `9.needs: port to stable` with `8.has: port to stable` on the original pull request. This way maintainers can keep track of missing backports easier.
117118## Criteria for Backporting changes
···1122. Check out the target _release branch_, e.g. `release-22.11`. Do not use a _channel branch_ like `nixos-22.11` or `nixpkgs-22.11-darwin`.
1133. Create a branch for your change, e.g. `git checkout -b backport`.
1144. When the reason to backport is not obvious from the original commit message, use `git cherry-pick -xe <original commit>` and add a reason. Otherwise use `git cherry-pick -x <original commit>`. That's fine for minor version updates that only include security and bug fixes, commits that fixes an otherwise broken package or similar. Please also ensure the commits exists on the master branch; in the case of squashed or rebased merges, the commit hash will change and the new commits can be found in the merge message at the bottom of the master pull request.
115+5. Push to GitHub and open a backport pull request. Make sure to select the release branch (e.g. `release-22.11`) as the target branch of the pull request, and link to the pull request in which the original change was committed to `master`. The pull request title should be the commit title with the release version as prefix, e.g. `[22.11]`.
1166. When the backport pull request is merged and you have the necessary privileges you can also replace the label `9.needs: port to stable` with `8.has: port to stable` on the original pull request. This way maintainers can keep track of missing backports easier.
117118## Criteria for Backporting changes
···185##### Comments
186```
187188-## Individual maintainer list {#reviewing-contributions-indvidual-maintainer-list}
189190When adding users to `maintainers/maintainer-list.nix`, the following
191checks should be performed:
···185##### Comments
186```
187188+## Individual maintainer list {#reviewing-contributions-individual-maintainer-list}
189190When adding users to `maintainers/maintainer-list.nix`, the following
191checks should be performed:
+1-1
doc/doc-support/lib-function-docs.nix
···1-# Generates the documentation for library functons via nixdoc. To add
2# another library function file to this list, the include list in the
3# file `doc/functions/library.xml` must also be updated.
4
···1+# Generates the documentation for library functions via nixdoc. To add
2# another library function file to this list, the include list in the
3# file `doc/functions/library.xml` must also be updated.
4
+1-1
doc/languages-frameworks/beam.section.md
···93- run `mix2nix > mix_deps.nix` in the upstream repo.
94- pass `mixNixDeps = with pkgs; import ./mix_deps.nix { inherit lib beamPackages; };` as an argument to mixRelease.
9596-If there are git depencencies.
9798- You'll need to fix the version artificially in mix.exs and regenerate the mix.lock with fixed version (on upstream). This will enable you to run `mix2nix > mix_deps.nix`.
99- From the mix_deps.nix file, remove the dependencies that had git versions and pass them as an override to the import function.
···93- run `mix2nix > mix_deps.nix` in the upstream repo.
94- pass `mixNixDeps = with pkgs; import ./mix_deps.nix { inherit lib beamPackages; };` as an argument to mixRelease.
9596+If there are git dependencies.
9798- You'll need to fix the version artificially in mix.exs and regenerate the mix.lock with fixed version (on upstream). This will enable you to run `mix2nix > mix_deps.nix`.
99- From the mix_deps.nix file, remove the dependencies that had git versions and pass them as an override to the import function.
+1-1
doc/languages-frameworks/coq.section.md
···8* `customOCamlPackages` (optional, defaults to `null`, which lets Coq choose a version automatically), which can be set to any of the ocaml packages attribute of `ocaml-ng` (such as `ocaml-ng.ocamlPackages_4_10` which is the default for Coq 8.11 for example).
9* `coq-version` (optional, defaults to the short version e.g. "8.10"), is a version number of the form "x.y" that indicates which Coq's version build behavior to mimic when using a source which is not a release. E.g. `coq.override { version = "d370a9d1328a4e1cdb9d02ee032f605a9d94ec7a"; coq-version = "8.10"; }`.
1011-The associated package set can be optained using `mkCoqPackages coq`, where `coq` is the derivation to use.
1213## Coq packages attribute sets: `coqPackages` {#coq-packages-attribute-sets-coqpackages}
14
···8* `customOCamlPackages` (optional, defaults to `null`, which lets Coq choose a version automatically), which can be set to any of the ocaml packages attribute of `ocaml-ng` (such as `ocaml-ng.ocamlPackages_4_10` which is the default for Coq 8.11 for example).
9* `coq-version` (optional, defaults to the short version e.g. "8.10"), is a version number of the form "x.y" that indicates which Coq's version build behavior to mimic when using a source which is not a release. E.g. `coq.override { version = "d370a9d1328a4e1cdb9d02ee032f605a9d94ec7a"; coq-version = "8.10"; }`.
1011+The associated package set can be obtained using `mkCoqPackages coq`, where `coq` is the derivation to use.
1213## Coq packages attribute sets: `coqPackages` {#coq-packages-attribute-sets-coqpackages}
14
+1-1
doc/languages-frameworks/cuda.section.md
···3839Nixpkgs tries to target support real architecture defaults based on the
40CUDA toolkit version with PTX support for future hardware. Experienced
41-users may optmize this configuration for a variety of reasons such as
42reducing binary size and compile time, supporting legacy hardware, or
43optimizing for specific hardware.
44
···3839Nixpkgs tries to target support real architecture defaults based on the
40CUDA toolkit version with PTX support for future hardware. Experienced
41+users may optimize this configuration for a variety of reasons such as
42reducing binary size and compile time, supporting legacy hardware, or
43optimizing for specific hardware.
44
+2-2
doc/languages-frameworks/cuelang.section.md
···37```
3839- The first parameter is the Cue schema file.
40-- The second paramter is an options parameter, currently, only: `document` can be passed.
4142-`document` : match your input data against this fragment of structure or definition, e.g. you may use the same schema file but differents documents based on the data you are validating.
4344Another example, given the following `validator.nix` :
45```
···37```
3839- The first parameter is the Cue schema file.
40+- The second parameter is an options parameter, currently, only: `document` can be passed.
4142+`document` : match your input data against this fragment of structure or definition, e.g. you may use the same schema file but different documents based on the data you are validating.
4344Another example, given the following `validator.nix` :
45```
+2-2
doc/languages-frameworks/hy.section.md
···45### Installation without packages {#installation-without-packages}
67-You can install `hy` via nix-env or by adding it to `configuration.nix` by reffering to it as a `hy` attribute. This kind of installation adds `hy` to your environment and it succesfully works with `python3`.
89::: {.caution}
10-Packages that are installed with your python derivation, are not accesible by `hy` this way.
11:::
1213### Installation with packages {#installation-with-packages}
···45### Installation without packages {#installation-without-packages}
67+You can install `hy` via nix-env or by adding it to `configuration.nix` by referring to it as a `hy` attribute. This kind of installation adds `hy` to your environment and it successfully works with `python3`.
89::: {.caution}
10+Packages that are installed with your python derivation, are not accessible by `hy` this way.
11:::
1213### Installation with packages {#installation-with-packages}
+1-1
doc/languages-frameworks/index.xml
···3 xml:id="chap-language-support">
4 <title>Languages and frameworks</title>
5 <para>
6- The <link linkend="chap-stdenv">standard build environment</link> makes it easy to build typical Autotools-based packages with very little code. Any other kind of package can be accomodated by overriding the appropriate phases of <literal>stdenv</literal>. However, there are specialised functions in Nixpkgs to easily build packages for other programming languages, such as Perl or Haskell. These are described in this chapter.
7 </para>
8 <xi:include href="agda.section.xml" />
9 <xi:include href="android.section.xml" />
···3 xml:id="chap-language-support">
4 <title>Languages and frameworks</title>
5 <para>
6+ The <link linkend="chap-stdenv">standard build environment</link> makes it easy to build typical Autotools-based packages with very little code. Any other kind of package can be accommodated by overriding the appropriate phases of <literal>stdenv</literal>. However, there are specialised functions in Nixpkgs to easily build packages for other programming languages, such as Perl or Haskell. These are described in this chapter.
7 </para>
8 <xi:include href="agda.section.xml" />
9 <xi:include href="android.section.xml" />
+2-2
doc/languages-frameworks/python.section.md
···605`test` command for a `checkPhase` which runs `pytest`. This is also beneficial
606when a package may need many items disabled to run the test suite.
607608-Using the example above, the analagous `pytestCheckHook` usage would be:
609610```
611 checkInputs = [ pytestCheckHook ];
···624 ];
625```
626627-This is expecially useful when tests need to be conditionally disabled,
628for example:
629630```
···605`test` command for a `checkPhase` which runs `pytest`. This is also beneficial
606when a package may need many items disabled to run the test suite.
607608+Using the example above, the analogous `pytestCheckHook` usage would be:
609610```
611 checkInputs = [ pytestCheckHook ];
···624 ];
625```
626627+This is especially useful when tests need to be conditionally disabled,
628for example:
629630```
+1-1
doc/languages-frameworks/rust.section.md
···319However, please check if it's possible to disable a problematic subset of the
320test suite and leave a comment explaining your reasoning.
321322-This can be achived with `--skip` in `checkFlags`:
323324```nix
325rustPlatform.buildRustPackage {
···319However, please check if it's possible to disable a problematic subset of the
320test suite and leave a comment explaining your reasoning.
321322+This can be achieved with `--skip` in `checkFlags`:
323324```nix
325rustPlatform.buildRustPackage {
+1-1
doc/old/cross.txt
···303This is used by the Nix build process to set the dynamic linker, glibc
304in the case of i686-linux using the default Nix packages collection.
305306-Obiously, since we need to compile libstc++ for arm-linux with uClibc linking
307will not be done correctly: you can't link object files built for arm-linux
308with a glibc built for i686-linux.
309
···303This is used by the Nix build process to set the dynamic linker, glibc
304in the case of i686-linux using the default Nix packages collection.
305306+Obviously, since we need to compile libstc++ for arm-linux with uClibc linking
307will not be done correctly: you can't link object files built for arm-linux
308with a glibc built for i686-linux.
309
+1-1
doc/stdenv/multiple-output.chapter.md
···29`nix-env` lacks an easy way to select the outputs to install. When installing a package, `nix-env` always installs the outputs listed in `meta.outputsToInstall`, even when the user explicitly selects an output.
3031::: {.warning}
32-`nix-env` silenty disregards the outputs selected by the user, and instead installs the outputs from `meta.outputsToInstall`. For example,
3334```ShellSession
35$ nix-env -iA nixpkgs.coreutils.info
···29`nix-env` lacks an easy way to select the outputs to install. When installing a package, `nix-env` always installs the outputs listed in `meta.outputsToInstall`, even when the user explicitly selects an output.
3031::: {.warning}
32+`nix-env` silently disregards the outputs selected by the user, and instead installs the outputs from `meta.outputsToInstall`. For example,
3334```ShellSession
35$ nix-env -iA nixpkgs.coreutils.info
+2-2
doc/stdenv/stdenv.chapter.md
···719720##### `dontStripHost` {#var-stdenv-dontStripHost}
721722-Like `dontStrip`, but only affects the `strip` command targetting the package’s host platform. Useful when supporting cross compilation, but otherwise feel free to ignore.
723724##### `dontStripTarget` {#var-stdenv-dontStripTarget}
725726-Like `dontStrip`, but only affects the `strip` command targetting the packages’ target platform. Useful when supporting cross compilation, but otherwise feel free to ignore.
727728##### `dontMoveSbin` {#var-stdenv-dontMoveSbin}
729
···719720##### `dontStripHost` {#var-stdenv-dontStripHost}
721722+Like `dontStrip`, but only affects the `strip` command targeting the package’s host platform. Useful when supporting cross compilation, but otherwise feel free to ignore.
723724##### `dontStripTarget` {#var-stdenv-dontStripTarget}
725726+Like `dontStrip`, but only affects the `strip` command targeting the packages’ target platform. Useful when supporting cross compilation, but otherwise feel free to ignore.
727728##### `dontMoveSbin` {#var-stdenv-dontMoveSbin}
729
+1-1
lib/attrsets.nix
···757 matchAttrs :: AttrSet -> AttrSet -> Bool
758 */
759 matchAttrs =
760- # Attribute set strucutre to match
761 pattern:
762 # Attribute set to find patterns in
763 attrs:
···757 matchAttrs :: AttrSet -> AttrSet -> Bool
758 */
759 matchAttrs =
760+ # Attribute set structure to match
761 pattern:
762 # Attribute set to find patterns in
763 attrs:
+1-1
lib/derivations.nix
···17 situations below.
1819 For illustration and/or testing, we define derivation such that its
20- evaluation is very noticable.
2122 let derivation = throw "This won't be evaluated.";
23
···17 situations below.
1819 For illustration and/or testing, we define derivation such that its
20+ evaluation is very noticeable.
2122 let derivation = throw "This won't be evaluated.";
23
+1-1
lib/modules.nix
···479 ) (lib.functionArgs f);
480481 # Note: we append in the opposite order such that we can add an error
482- # context on the explicited arguments of "args" too. This update
483 # operator is used to make the "args@{ ... }: with args.lib;" notation
484 # works.
485 in f (args // extraArgs)
···479 ) (lib.functionArgs f);
480481 # Note: we append in the opposite order such that we can add an error
482+ # context on the explicit arguments of "args" too. This update
483 # operator is used to make the "args@{ ... }: with args.lib;" notation
484 # works.
485 in f (args // extraArgs)
+2-2
lib/strings.nix
···185 */
186 makeBinPath = makeSearchPathOutput "bin" "bin";
187188- /* Normalize path, removing extranous /s
189190 Type: normalizePath :: string -> string
191···330 */
331 escape = list: replaceStrings list (map (c: "\\${c}") list);
332333- /* Escape occurence of the element of `list` in `string` by
334 converting to its ASCII value and prefixing it with \\x.
335 Only works for printable ascii characters.
336
···185 */
186 makeBinPath = makeSearchPathOutput "bin" "bin";
187188+ /* Normalize path, removing extraneous /s
189190 Type: normalizePath :: string -> string
191···330 */
331 escape = list: replaceStrings list (map (c: "\\${c}") list);
332333+ /* Escape occurrence of the element of `list` in `string` by
334 converting to its ASCII value and prefixing it with \\x.
335 Only works for printable ascii characters.
336
+1-1
lib/systems/architectures.nix
···67 #
68 # Note:
69 #
70- # - The succesors of `skylake` (`cannonlake`, `icelake`, etc) use `avx512`
71 # which no current AMD Zen michroarch support.
72 # - `znver1` uses `ABM`, `CLZERO`, `CX16`, `MWAITX`, and `SSE4A` which no
73 # current Intel microarch support.
···67 #
68 # Note:
69 #
70+ # - The successors of `skylake` (`cannonlake`, `icelake`, etc) use `avx512`
71 # which no current AMD Zen michroarch support.
72 # - `znver1` uses `ABM`, `CLZERO`, `CX16`, `MWAITX`, and `SSE4A` which no
73 # current Intel microarch support.
+2-2
lib/systems/default.nix
···20 # necessary.
21 #
22 # `parsed` is inferred from args, both because there are two options with one
23- # clearly prefered, and to prevent cycles. A simpler fixed point where the RHS
24 # always just used `final.*` would fail on both counts.
25 elaborate = args': let
26 args = if lib.isString args' then { system = args'; }
···62 linker =
63 /**/ if final.useLLVM or false then "lld"
64 else if final.isDarwin then "cctools"
65- # "bfd" and "gold" both come from GNU binutils. The existance of Gold
66 # is why we use the more obscure "bfd" and not "binutils" for this
67 # choice.
68 else "bfd";
···20 # necessary.
21 #
22 # `parsed` is inferred from args, both because there are two options with one
23+ # clearly preferred, and to prevent cycles. A simpler fixed point where the RHS
24 # always just used `final.*` would fail on both counts.
25 elaborate = args': let
26 args = if lib.isString args' then { system = args'; }
···62 linker =
63 /**/ if final.useLLVM or false then "lld"
64 else if final.isDarwin then "cctools"
65+ # "bfd" and "gold" both come from GNU binutils. The existence of Gold
66 # is why we use the more obscure "bfd" and not "binutils" for this
67 # choice.
68 else "bfd";
+1-1
lib/systems/flake-systems.nix
···1# See [RFC 46] for mandated platform support and ../../pkgs/stdenv for
2# implemented platform support. This list is mainly descriptive, i.e. all
3-# system doubles for platforms where nixpkgs can do native compiliation
4# reasonably well are included.
5#
6# [RFC 46]: https://github.com/NixOS/rfcs/blob/master/rfcs/0046-platform-support-tiers.md
···1# See [RFC 46] for mandated platform support and ../../pkgs/stdenv for
2# implemented platform support. This list is mainly descriptive, i.e. all
3+# system doubles for platforms where nixpkgs can do native compilation
4# reasonably well are included.
5#
6# [RFC 46]: https://github.com/NixOS/rfcs/blob/master/rfcs/0046-platform-support-tiers.md
+1-1
lib/tests/modules.sh
···246## Freeform modules
247# Assigning without a declared option should work
248checkConfigOutput '^"24"$' config.value ./freeform-attrsOf.nix ./define-value-string.nix
249-# No freeform assigments shouldn't make it error
250checkConfigOutput '^{ }$' config ./freeform-attrsOf.nix
251# but only if the type matches
252checkConfigError 'A definition for option .* is not of type .*' config.value ./freeform-attrsOf.nix ./define-value-list.nix
···246## Freeform modules
247# Assigning without a declared option should work
248checkConfigOutput '^"24"$' config.value ./freeform-attrsOf.nix ./define-value-string.nix
249+# No freeform assignments shouldn't make it error
250checkConfigOutput '^{ }$' config ./freeform-attrsOf.nix
251# but only if the type matches
252checkConfigError 'A definition for option .* is not of type .*' config.value ./freeform-attrsOf.nix ./define-value-list.nix
···7available to processes through the `/sys` and
8`/proc` filesystems. It also disables the User Namespaces
9feature of the kernel, which stops Nix from being able to build anything
10-(this particular setting can be overriden via
11[](#opt-security.allowUserNamespaces)). See the
12[profile source](https://github.com/nixos/nixpkgs/tree/master/nixos/modules/profiles/hardened.nix)
13for further detail on which settings are altered.
···7available to processes through the `/sys` and
8`/proc` filesystems. It also disables the User Namespaces
9feature of the kernel, which stops Nix from being able to build anything
10+(this particular setting can be overridden via
11[](#opt-security.allowUserNamespaces)). See the
12[profile source](https://github.com/nixos/nixpkgs/tree/master/nixos/modules/profiles/hardened.nix)
13for further detail on which settings are altered.
···3435An activation script can write to special files instructing
36`switch-to-configuration` to restart/reload units. The script will take these
37-requests into account and will incorperate the unit configuration as described
38above. This means that the activation script will "fake" a modified unit file
39and `switch-to-configuration` will act accordingly. By doing so, configuration
40like [systemd.services.\<name\>.restartIfChanged](#opt-systemd.services) is
···49`/run/nixos/dry-activation-reload-list`. Those files can contain
50newline-separated lists of unit names where duplicates are being ignored. These
51files are not create automatically and activation scripts must take the
52-possiblility into account that they have to create them first.
5354## NixOS snippets {#sec-activation-script-nixos-snippets}
55
···3435An activation script can write to special files instructing
36`switch-to-configuration` to restart/reload units. The script will take these
37+requests into account and will incorporate the unit configuration as described
38above. This means that the activation script will "fake" a modified unit file
39and `switch-to-configuration` will act accordingly. By doing so, configuration
40like [systemd.services.\<name\>.restartIfChanged](#opt-systemd.services) is
···49`/run/nixos/dry-activation-reload-list`. Those files can contain
50newline-separated lists of unit names where duplicates are being ignored. These
51files are not create automatically and activation scripts must take the
52+possibility into account that they have to create them first.
5354## NixOS snippets {#sec-activation-script-nixos-snippets}
55
···345It takes a parameter *`o`*, that should be a set, or a function returning
346a set with an `options` key defining the sub-options. Submodule option
347definitions are type-checked accordingly to the `options` declarations.
348-Of course, you can nest submodule option definitons for even higher
349modularity.
350351The option set can be defined directly
···345It takes a parameter *`o`*, that should be a set, or a function returning
346a set with an `options` key defining the sub-options. Submodule option
347definitions are type-checked accordingly to the `options` declarations.
348+Of course, you can nest submodule option definitions for even higher
349modularity.
350351The option set can be defined directly
···298299: Wait until the supplied regular expressions match a line of the
300 serial console output. This method is useful when OCR is not
301- possibile or accurate enough.
302303`wait_for_window`
304···351`start_job` and `stop_job`.
352353For faster dev cycles it\'s also possible to disable the code-linters
354-(this shouldn\'t be commited though):
355356```nix
357{
···298299: Wait until the supplied regular expressions match a line of the
300 serial console output. This method is useful when OCR is not
301+ possible or accurate enough.
302303`wait_for_window`
304···351`start_job` and `stop_job`.
352353For faster dev cycles it\'s also possible to disable the code-linters
354+(this shouldn\'t be committed though):
355356```nix
357{
···9 available to processes through the <literal>/sys</literal> and
10 <literal>/proc</literal> filesystems. It also disables the User
11 Namespaces feature of the kernel, which stops Nix from being able to
12- build anything (this particular setting can be overriden via
13 <xref linkend="opt-security.allowUserNamespaces" />). See the
14 <link xlink:href="https://github.com/nixos/nixpkgs/tree/master/nixos/modules/profiles/hardened.nix">profile
15 source</link> for further detail on which settings are altered.
···9 available to processes through the <literal>/sys</literal> and
10 <literal>/proc</literal> filesystems. It also disables the User
11 Namespaces feature of the kernel, which stops Nix from being able to
12+ build anything (this particular setting can be overridden via
13 <xref linkend="opt-security.allowUserNamespaces" />). See the
14 <link xlink:href="https://github.com/nixos/nixpkgs/tree/master/nixos/modules/profiles/hardened.nix">profile
15 source</link> for further detail on which settings are altered.
···45 An activation script can write to special files instructing
46 <literal>switch-to-configuration</literal> to restart/reload units.
47 The script will take these requests into account and will
48- incorperate the unit configuration as described above. This means
49 that the activation script will <quote>fake</quote> a modified unit
50 file and <literal>switch-to-configuration</literal> will act
51 accordingly. By doing so, configuration like
···66 <literal>/run/nixos/dry-activation-reload-list</literal>. Those
67 files can contain newline-separated lists of unit names where
68 duplicates are being ignored. These files are not create
69- automatically and activation scripts must take the possiblility into
70 account that they have to create them first.
71 </para>
72 <section xml:id="sec-activation-script-nixos-snippets">
···45 An activation script can write to special files instructing
46 <literal>switch-to-configuration</literal> to restart/reload units.
47 The script will take these requests into account and will
48+ incorporate the unit configuration as described above. This means
49 that the activation script will <quote>fake</quote> a modified unit
50 file and <literal>switch-to-configuration</literal> will act
51 accordingly. By doing so, configuration like
···66 <literal>/run/nixos/dry-activation-reload-list</literal>. Those
67 files can contain newline-separated lists of unit names where
68 duplicates are being ignored. These files are not create
69+ automatically and activation scripts must take the possibility into
70 account that they have to create them first.
71 </para>
72 <section xml:id="sec-activation-script-nixos-snippets">
···712 <literal>options</literal> key defining the sub-options. Submodule
713 option definitions are type-checked accordingly to the
714 <literal>options</literal> declarations. Of course, you can nest
715- submodule option definitons for even higher modularity.
716 </para>
717 <para>
718 The option set can be defined directly
···712 <literal>options</literal> key defining the sub-options. Submodule
713 option definitions are type-checked accordingly to the
714 <literal>options</literal> declarations. Of course, you can nest
715+ submodule option definitions for even higher modularity.
716 </para>
717 <para>
718 The option set can be defined directly
···536 <para>
537 Wait until the supplied regular expressions match a line of
538 the serial console output. This method is useful when OCR is
539- not possibile or accurate enough.
540 </para>
541 </listitem>
542 </varlistentry>
···631 </para>
632 <para>
633 For faster dev cycles it's also possible to disable the
634- code-linters (this shouldn't be commited though):
635 </para>
636 <programlisting language="bash">
637{
···536 <para>
537 Wait until the supplied regular expressions match a line of
538 the serial console output. This method is useful when OCR is
539+ not possible or accurate enough.
540 </para>
541 </listitem>
542 </varlistentry>
···631 </para>
632 <para>
633 For faster dev cycles it's also possible to disable the
634+ code-linters (this shouldn't be committed though):
635 </para>
636 <programlisting language="bash">
637{
···24 </itemizedlist>
25 <para>
26 System images, such as the live installer ones, know how to enforce
27- configuration settings on wich they immediately depend in order to
28 work correctly.
29 </para>
30 <para>
···102 it needs at a minimum for correct functioning, while the installer
103 base image overrides the entire file system layout because there
104 can’t be any other guarantees on a live medium than those given by
105- the live medium itself. The latter is especially true befor
106 formatting the target block device(s). On the other hand, the
107 netboot iso only overrides its minimum dependencies since netboot
108 images are always made-to-target.
···24 </itemizedlist>
25 <para>
26 System images, such as the live installer ones, know how to enforce
27+ configuration settings on which they immediately depend in order to
28 work correctly.
29 </para>
30 <para>
···102 it needs at a minimum for correct functioning, while the installer
103 base image overrides the entire file system layout because there
104 can’t be any other guarantees on a live medium than those given by
105+ the live medium itself. The latter is especially true before
106 formatting the target block device(s). On the other hand, the
107 netboot iso only overrides its minimum dependencies since netboot
108 images are always made-to-target.
···223 <para>
224 You'll likely want to set a root password for your first boot
225 using the configuration files because you won't have a chance to
226- enter a password until after you reboot. You can initalize the
227 root password to an empty one with this line: (and of course
228 don't forget to set one once you've rebooted or to lock the
229 account with <literal>sudo passwd -l root</literal> if you use
···223 <para>
224 You'll likely want to set a root password for your first boot
225 using the configuration files because you won't have a chance to
226+ enter a password until after you reboot. You can initialize the
227 root password to an empty one with this line: (and of course
228 don't forget to set one once you've rebooted or to lock the
229 account with <literal>sudo passwd -l root</literal> if you use
···1-<section xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="sec-instaling-virtualbox-guest">
2 <title>Installing in a VirtualBox guest</title>
3 <para>
4 Installing NixOS into a VirtualBox guest is convenient for users who
···1+<section xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="sec-installing-virtualbox-guest">
2 <title>Installing in a VirtualBox guest</title>
3 <para>
4 Installing NixOS into a VirtualBox guest is convenient for users who
···256 </para>
257 <para>
258 On the minimal installer, NetworkManager is not available, so
259- configuration must be perfomed manually. To configure the wifi,
260 first start wpa_supplicant with
261 <literal>sudo systemctl start wpa_supplicant</literal>, then run
262 <literal>wpa_cli</literal>. For most home networks, you need to
···256 </para>
257 <para>
258 On the minimal installer, NetworkManager is not available, so
259+ configuration must be performed manually. To configure the wifi,
260 first start wpa_supplicant with
261 <literal>sudo systemctl start wpa_supplicant</literal>, then run
262 <literal>wpa_cli</literal>. For most home networks, you need to
···545 <literal>services.udev.extraRules</literal> option now writes
546 rules to <literal>99-local.rules</literal> instead of
547 <literal>10-local.rules</literal>. This makes all the user rules
548- apply after others, so their results wouldn't be overriden by
549 anything else.
550 </para>
551 </listitem>
···545 <literal>services.udev.extraRules</literal> option now writes
546 rules to <literal>99-local.rules</literal> instead of
547 <literal>10-local.rules</literal>. This makes all the user rules
548+ apply after others, so their results wouldn't be overridden by
549 anything else.
550 </para>
551 </listitem>
···666 <listitem>
667 <para>
668 <literal>services.firefox.syncserver</literal> now runs by
669- default as a non-root user. To accomodate this change, the
670 default sqlite database location has also been changed.
671 Migration should work automatically. Refer to the description
672 of the options for more details.
···666 <listitem>
667 <para>
668 <literal>services.firefox.syncserver</literal> now runs by
669+ default as a non-root user. To accommodate this change, the
670 default sqlite database location has also been changed.
671 Migration should work automatically. Refer to the description
672 of the options for more details.
···271 <listitem>
272 <para>
273 The versioned <literal>postgresql</literal> have been renamed
274- to use underscore number seperators. For example,
275 <literal>postgresql96</literal> has been renamed to
276 <literal>postgresql_9_6</literal>.
277 </para>
···271 <listitem>
272 <para>
273 The versioned <literal>postgresql</literal> have been renamed
274+ to use underscore number separators. For example,
275 <literal>postgresql96</literal> has been renamed to
276 <literal>postgresql_9_6</literal>.
277 </para>
···498 <listitem>
499 <para>
500 The <literal>prometheus-nginx-exporter</literal> package now
501- uses the offical exporter provided by NGINX Inc. Its metrics
502 are differently structured and are incompatible to the old
503 ones. For information about the metrics, have a look at the
504 <link xlink:href="https://github.com/nginxinc/nginx-prometheus-exporter">official
···524 <para>
525 By default, prometheus exporters are now run with
526 <literal>DynamicUser</literal> enabled. Exporters that need a
527- real user, now run under a seperate user and group which
528 follow the pattern
529 <literal><exporter-name>-exporter</literal>, instead of
530 the previous default <literal>nobody</literal> and
···498 <listitem>
499 <para>
500 The <literal>prometheus-nginx-exporter</literal> package now
501+ uses the official exporter provided by NGINX Inc. Its metrics
502 are differently structured and are incompatible to the old
503 ones. For information about the metrics, have a look at the
504 <link xlink:href="https://github.com/nginxinc/nginx-prometheus-exporter">official
···524 <para>
525 By default, prometheus exporters are now run with
526 <literal>DynamicUser</literal> enabled. Exporters that need a
527+ real user, now run under a separate user and group which
528 follow the pattern
529 <literal><exporter-name>-exporter</literal>, instead of
530 the previous default <literal>nobody</literal> and
···1304 <listitem>
1305 <para>
1306 In the ACME module, the data used to build the hash for the
1307- account directory has changed to accomodate new features to
1308 reduce account rate limit issues. This will trigger new
1309 account creation on the first rebuild following this update.
1310 No issues are expected to arise from this, thanks to the new
···1304 <listitem>
1305 <para>
1306 In the ACME module, the data used to build the hash for the
1307+ account directory has changed to accommodate new features to
1308 reduce account rate limit issues. This will trigger new
1309 account creation on the first rebuild following this update.
1310 No issues are expected to arise from this, thanks to the new
···328 <listitem>
329 <para>
330 <link xlink:href="https://maddy.email/">Maddy</link>, a free
331- an open source mail server. Availabe as
332 <link linkend="opt-services.maddy.enable">services.maddy</link>.
333 </para>
334 </listitem>
···1422 derivation if <literal>name</literal> is
1423 <literal>"vim"</literal> (the default). This
1424 makes the <literal>wrapManual</literal> argument obsolete,
1425- but this behavior can be overriden by setting the
1426 <literal>standalone</literal> argument.
1427 </para>
1428 </listitem>
···328 <listitem>
329 <para>
330 <link xlink:href="https://maddy.email/">Maddy</link>, a free
331+ an open source mail server. Available as
332 <link linkend="opt-services.maddy.enable">services.maddy</link>.
333 </para>
334 </listitem>
···1422 derivation if <literal>name</literal> is
1423 <literal>"vim"</literal> (the default). This
1424 makes the <literal>wrapManual</literal> argument obsolete,
1425+ but this behavior can be overridden by setting the
1426 <literal>standalone</literal> argument.
1427 </para>
1428 </listitem>
···1280 </listitem>
1281 <listitem>
1282 <para>
1283- Option descriptions, examples, and defaults writting in
1284- DocBook are now deprecated. Using CommonMark is preferred and
1285- will become the default in a future release.
1286 </para>
1287 </listitem>
1288 <listitem>
···1280 </listitem>
1281 <listitem>
1282 <para>
1283+ Option descriptions, examples, and defaults writing in DocBook
1284+ are now deprecated. Using CommonMark is preferred and will
1285+ become the default in a future release.
1286 </para>
1287 </listitem>
1288 <listitem>
···114 <link linkend="opt-services.snapserver.openFirewall">services.snapserver.openFirewall</link>
115 module option default value has been changed from
116 <literal>true</literal> to <literal>false</literal>. You will
117- need to explicitely set this option to
118- <literal>true</literal>, or configure your firewall.
119 </para>
120 </listitem>
121 <listitem>
···124 <link linkend="opt-services.tmate-ssh-server.openFirewall">services.tmate-ssh-server.openFirewall</link>
125 module option default value has been changed from
126 <literal>true</literal> to <literal>false</literal>. You will
127- need to explicitely set this option to
128- <literal>true</literal>, or configure your firewall.
129 </para>
130 </listitem>
131 <listitem>
···134 <link linkend="opt-services.unifi-video.openFirewall">services.unifi-video.openFirewall</link>
135 module option default value has been changed from
136 <literal>true</literal> to <literal>false</literal>. You will
137- need to explicitely set this option to
138- <literal>true</literal>, or configure your firewall.
139 </para>
140 </listitem>
141 <listitem>
···114 <link linkend="opt-services.snapserver.openFirewall">services.snapserver.openFirewall</link>
115 module option default value has been changed from
116 <literal>true</literal> to <literal>false</literal>. You will
117+ need to explicitly set this option to <literal>true</literal>,
118+ or configure your firewall.
119 </para>
120 </listitem>
121 <listitem>
···124 <link linkend="opt-services.tmate-ssh-server.openFirewall">services.tmate-ssh-server.openFirewall</link>
125 module option default value has been changed from
126 <literal>true</literal> to <literal>false</literal>. You will
127+ need to explicitly set this option to <literal>true</literal>,
128+ or configure your firewall.
129 </para>
130 </listitem>
131 <listitem>
···134 <link linkend="opt-services.unifi-video.openFirewall">services.unifi-video.openFirewall</link>
135 module option default value has been changed from
136 <literal>true</literal> to <literal>false</literal>. You will
137+ need to explicitly set this option to <literal>true</literal>,
138+ or configure your firewall.
139 </para>
140 </listitem>
141 <listitem>
···9- Combine them with (any of) your host config(s)
1011System images, such as the live installer ones, know how to enforce configuration settings
12-on wich they immediately depend in order to work correctly.
1314However, if you are confident, you can opt to override those
15enforced values with `mkForce`.
···75For example, the iso base image overrides those file systems which it needs at a minimum
76for correct functioning, while the installer base image overrides the entire file system
77layout because there can't be any other guarantees on a live medium than those given
78-by the live medium itself. The latter is especially true befor formatting the target
79block device(s). On the other hand, the netboot iso only overrides its minimum dependencies
80since netboot images are always made-to-target.
···9- Combine them with (any of) your host config(s)
1011System images, such as the live installer ones, know how to enforce configuration settings
12+on which they immediately depend in order to work correctly.
1314However, if you are confident, you can opt to override those
15enforced values with `mkForce`.
···75For example, the iso base image overrides those file systems which it needs at a minimum
76for correct functioning, while the installer base image overrides the entire file system
77layout because there can't be any other guarantees on a live medium than those given
78+by the live medium itself. The latter is especially true before formatting the target
79block device(s). On the other hand, the netboot iso only overrides its minimum dependencies
80since netboot images are always made-to-target.
···158159 You\'ll likely want to set a root password for your first boot using
160 the configuration files because you won\'t have a chance to enter a
161- password until after you reboot. You can initalize the root password
162 to an empty one with this line: (and of course don\'t forget to set
163 one once you\'ve rebooted or to lock the account with
164 `sudo passwd -l root` if you use `sudo`)
···158159 You\'ll likely want to set a root password for your first boot using
160 the configuration files because you won\'t have a chance to enter a
161+ password until after you reboot. You can initialize the root password
162 to an empty one with this line: (and of course don\'t forget to set
163 one once you\'ve rebooted or to lock the account with
164 `sudo passwd -l root` if you use `sudo`)
···1-# Installing in a VirtualBox guest {#sec-instaling-virtualbox-guest}
23Installing NixOS into a VirtualBox guest is convenient for users who
4want to try NixOS without installing it on bare metal. If you want to
···1+# Installing in a VirtualBox guest {#sec-installing-virtualbox-guest}
23Installing NixOS into a VirtualBox guest is convenient for users who
4want to try NixOS without installing it on bare metal. If you want to
···162`systemctl stop NetworkManager`.
163164On the minimal installer, NetworkManager is not available, so
165-configuration must be perfomed manually. To configure the wifi, first
166start wpa_supplicant with `sudo systemctl start wpa_supplicant`, then
167run `wpa_cli`. For most home networks, you need to type in the following
168commands:
···162`systemctl stop NetworkManager`.
163164On the minimal installer, NetworkManager is not available, so
165+configuration must be performed manually. To configure the wifi, first
166start wpa_supplicant with `sudo systemctl start wpa_supplicant`, then
167run `wpa_cli`. For most home networks, you need to type in the following
168commands:
+1-1
nixos/doc/manual/release-notes/rl-1603.section.md
···202 }
203 ```
204205-- `services.udev.extraRules` option now writes rules to `99-local.rules` instead of `10-local.rules`. This makes all the user rules apply after others, so their results wouldn\'t be overriden by anything else.
206207- Large parts of the `services.gitlab` module has been been rewritten. There are new configuration options available. The `stateDir` option was renamned to `statePath` and the `satellitesDir` option was removed. Please review the currently available options.
208
···202 }
203 ```
204205+- `services.udev.extraRules` option now writes rules to `99-local.rules` instead of `10-local.rules`. This makes all the user rules apply after others, so their results wouldn\'t be overridden by anything else.
206207- Large parts of the `services.gitlab` module has been been rewritten. There are new configuration options available. The `stateDir` option was renamned to `statePath` and the `satellitesDir` option was removed. Please review the currently available options.
208
+1-1
nixos/doc/manual/release-notes/rl-1709.section.md
···238239- `cc-wrapper`\'s setup-hook now exports a number of environment variables corresponding to binutils binaries, (e.g. `LD`, `STRIP`, `RANLIB`, etc). This is done to prevent packages\' build systems guessing, which is harder to predict, especially when cross-compiling. However, some packages have broken due to this---their build systems either not supporting, or claiming to support without adequate testing, taking such environment variables as parameters.
240241-- `services.firefox.syncserver` now runs by default as a non-root user. To accomodate this change, the default sqlite database location has also been changed. Migration should work automatically. Refer to the description of the options for more details.
242243- The `compiz` window manager and package was removed. The system support had been broken for several years.
244
···238239- `cc-wrapper`\'s setup-hook now exports a number of environment variables corresponding to binutils binaries, (e.g. `LD`, `STRIP`, `RANLIB`, etc). This is done to prevent packages\' build systems guessing, which is harder to predict, especially when cross-compiling. However, some packages have broken due to this---their build systems either not supporting, or claiming to support without adequate testing, taking such environment variables as parameters.
240241+- `services.firefox.syncserver` now runs by default as a non-root user. To accommodate this change, the default sqlite database location has also been changed. Migration should work automatically. Refer to the description of the options for more details.
242243- The `compiz` window manager and package was removed. The system support had been broken for several years.
244
+1-1
nixos/doc/manual/release-notes/rl-1903.section.md
···7374- OpenSMTPD has been upgraded to version 6.4.0p1. This release makes backwards-incompatible changes to the configuration file format. See `man smtpd.conf` for more information on the new file format.
7576-- The versioned `postgresql` have been renamed to use underscore number seperators. For example, `postgresql96` has been renamed to `postgresql_9_6`.
7778- Package `consul-ui` and passthrough `consul.ui` have been removed. The package `consul` now uses upstream releases that vendor the UI into the binary. See [\#48714](https://github.com/NixOS/nixpkgs/pull/48714#issuecomment-433454834) for details.
79
···7374- OpenSMTPD has been upgraded to version 6.4.0p1. This release makes backwards-incompatible changes to the configuration file format. See `man smtpd.conf` for more information on the new file format.
7576+- The versioned `postgresql` have been renamed to use underscore number separators. For example, `postgresql96` has been renamed to `postgresql_9_6`.
7778- Package `consul-ui` and passthrough `consul.ui` have been removed. The package `consul` now uses upstream releases that vendor the UI into the binary. See [\#48714](https://github.com/NixOS/nixpkgs/pull/48714#issuecomment-433454834) for details.
79
+2-2
nixos/doc/manual/release-notes/rl-1909.section.md
···154155- The setopt declarations will be evaluated at the end of `/etc/zshrc`, so any code in [programs.zsh.interactiveShellInit](options.html#opt-programs.zsh.interactiveShellInit), [programs.zsh.loginShellInit](options.html#opt-programs.zsh.loginShellInit) and [programs.zsh.promptInit](options.html#opt-programs.zsh.promptInit) may break if it relies on those options being set.
156157-- The `prometheus-nginx-exporter` package now uses the offical exporter provided by NGINX Inc. Its metrics are differently structured and are incompatible to the old ones. For information about the metrics, have a look at the [official repo](https://github.com/nginxinc/nginx-prometheus-exporter).
158159- The `shibboleth-sp` package has been updated to version 3. It is largely backward compatible, for further information refer to the [release notes](https://wiki.shibboleth.net/confluence/display/SP3/ReleaseNotes) and [upgrade guide](https://wiki.shibboleth.net/confluence/display/SP3/UpgradingFromV2).
160161 Nodejs 8 is scheduled EOL under the lifetime of 19.09 and has been dropped.
162163-- By default, prometheus exporters are now run with `DynamicUser` enabled. Exporters that need a real user, now run under a seperate user and group which follow the pattern `<exporter-name>-exporter`, instead of the previous default `nobody` and `nogroup`. Only some exporters are affected by the latter, namely the exporters `dovecot`, `node`, `postfix` and `varnish`.
164165- The `ibus-qt` package is not installed by default anymore when [i18n.inputMethod.enabled](options.html#opt-i18n.inputMethod.enabled) is set to `ibus`. If IBus support in Qt 4.x applications is required, add the `ibus-qt` package to your [environment.systemPackages](options.html#opt-environment.systemPackages) manually.
166
···154155- The setopt declarations will be evaluated at the end of `/etc/zshrc`, so any code in [programs.zsh.interactiveShellInit](options.html#opt-programs.zsh.interactiveShellInit), [programs.zsh.loginShellInit](options.html#opt-programs.zsh.loginShellInit) and [programs.zsh.promptInit](options.html#opt-programs.zsh.promptInit) may break if it relies on those options being set.
156157+- The `prometheus-nginx-exporter` package now uses the official exporter provided by NGINX Inc. Its metrics are differently structured and are incompatible to the old ones. For information about the metrics, have a look at the [official repo](https://github.com/nginxinc/nginx-prometheus-exporter).
158159- The `shibboleth-sp` package has been updated to version 3. It is largely backward compatible, for further information refer to the [release notes](https://wiki.shibboleth.net/confluence/display/SP3/ReleaseNotes) and [upgrade guide](https://wiki.shibboleth.net/confluence/display/SP3/UpgradingFromV2).
160161 Nodejs 8 is scheduled EOL under the lifetime of 19.09 and has been dropped.
162163+- By default, prometheus exporters are now run with `DynamicUser` enabled. Exporters that need a real user, now run under a separate user and group which follow the pattern `<exporter-name>-exporter`, instead of the previous default `nobody` and `nogroup`. Only some exporters are affected by the latter, namely the exporters `dovecot`, `node`, `postfix` and `varnish`.
164165- The `ibus-qt` package is not installed by default anymore when [i18n.inputMethod.enabled](options.html#opt-i18n.inputMethod.enabled) is set to `ibus`. If IBus support in Qt 4.x applications is required, add the `ibus-qt` package to your [environment.systemPackages](options.html#opt-environment.systemPackages) manually.
166
+1-1
nixos/doc/manual/release-notes/rl-2105.section.md
···369370- The zookeeper package does not provide `zooInspector.sh` anymore, as that \"contrib\" has been dropped from upstream releases.
371372-- In the ACME module, the data used to build the hash for the account directory has changed to accomodate new features to reduce account rate limit issues. This will trigger new account creation on the first rebuild following this update. No issues are expected to arise from this, thanks to the new account creation handling.
373374- [users.users._name_.createHome](options.html#opt-users.users._name_.createHome) now always ensures home directory permissions to be `0700`. Permissions had previously been ignored for already existing home directories, possibly leaving them readable by others. The option\'s description was incorrect regarding ownership management and has been simplified greatly.
375
···369370- The zookeeper package does not provide `zooInspector.sh` anymore, as that \"contrib\" has been dropped from upstream releases.
371372+- In the ACME module, the data used to build the hash for the account directory has changed to accommodate new features to reduce account rate limit issues. This will trigger new account creation on the first rebuild following this update. No issues are expected to arise from this, thanks to the new account creation handling.
373374- [users.users._name_.createHome](options.html#opt-users.users._name_.createHome) now always ensures home directory permissions to be `0700`. Permissions had previously been ignored for already existing home directories, possibly leaving them readable by others. The option\'s description was incorrect regarding ownership management and has been simplified greatly.
375
+2-2
nixos/doc/manual/release-notes/rl-2205.section.md
···107108- [kanidm](https://kanidm.github.io/kanidm/stable/), an identity management server written in Rust. Available as [services.kanidm](#opt-services.kanidm.enableServer)
109110-- [Maddy](https://maddy.email/), a free an open source mail server. Availabe as [services.maddy](#opt-services.maddy.enable).
111112- [matrix-conduit](https://conduit.rs/), a simple, fast and reliable chat server powered by matrix. Available as [services.matrix-conduit](option.html#opt-services.matrix-conduit.enable).
113···562- `pkgs._7zz` is now correctly licensed as LGPL3+ and BSD3 with optional unfree unRAR licensed code
563564- The `vim.customize` function produced by `vimUtils.makeCustomizable` now has a slightly different interface:
565- * The wrapper now includes everything in the given Vim derivation if `name` is `"vim"` (the default). This makes the `wrapManual` argument obsolete, but this behavior can be overriden by setting the `standalone` argument.
566 * All the executables present in the given derivation (or, in `standalone` mode, only the `*vim` ones) are wrapped. This makes the `wrapGui` argument obsolete.
567 * The `vimExecutableName` and `gvimExecutableName` arguments were replaced by a single `executableName` argument in which the shell variable `$exe` can be used to refer to the wrapped executable's name.
568
···107108- [kanidm](https://kanidm.github.io/kanidm/stable/), an identity management server written in Rust. Available as [services.kanidm](#opt-services.kanidm.enableServer)
109110+- [Maddy](https://maddy.email/), a free an open source mail server. Available as [services.maddy](#opt-services.maddy.enable).
111112- [matrix-conduit](https://conduit.rs/), a simple, fast and reliable chat server powered by matrix. Available as [services.matrix-conduit](option.html#opt-services.matrix-conduit.enable).
113···562- `pkgs._7zz` is now correctly licensed as LGPL3+ and BSD3 with optional unfree unRAR licensed code
563564- The `vim.customize` function produced by `vimUtils.makeCustomizable` now has a slightly different interface:
565+ * The wrapper now includes everything in the given Vim derivation if `name` is `"vim"` (the default). This makes the `wrapManual` argument obsolete, but this behavior can be overridden by setting the `standalone` argument.
566 * All the executables present in the given derivation (or, in `standalone` mode, only the `*vim` ones) are wrapped. This makes the `wrapGui` argument obsolete.
567 * The `vimExecutableName` and `gvimExecutableName` arguments were replaced by a single `executableName` argument in which the shell variable `$exe` can be used to refer to the wrapped executable's name.
568
+1-1
nixos/doc/manual/release-notes/rl-2211.section.md
···385386- memtest86+ was updated from 5.00-coreboot-002 to 6.00-beta2. It is now the upstream version from https://www.memtest.org/, as coreboot's fork is no longer available.
387388-- Option descriptions, examples, and defaults writting in DocBook are now deprecated. Using CommonMark is preferred and will become the default in a future release.
389390- The `documentation.nixos.options.allowDocBook` option was added to ease the transition to CommonMark option documentation. Setting this option to `false` causes an error for every option included in the manual that uses DocBook documentation; it defaults to `true` to preserve the previous behavior and will be removed once the transition to CommonMark is complete.
391
···385386- memtest86+ was updated from 5.00-coreboot-002 to 6.00-beta2. It is now the upstream version from https://www.memtest.org/, as coreboot's fork is no longer available.
387388+- Option descriptions, examples, and defaults writing in DocBook are now deprecated. Using CommonMark is preferred and will become the default in a future release.
389390- The `documentation.nixos.options.allowDocBook` option was added to ease the transition to CommonMark option documentation. Setting this option to `false` causes an error for every option included in the manual that uses DocBook documentation; it defaults to `true` to preserve the previous behavior and will be removed once the transition to CommonMark is complete.
391
+3-3
nixos/doc/manual/release-notes/rl-2305.section.md
···3738- `services.sourcehut.dispatch` and the corresponding package (`sourcehut.dispatchsrht`) have been removed due to [upstream deprecation](https://sourcehut.org/blog/2022-08-01-dispatch-deprecation-plans/).
3940-- The [services.snapserver.openFirewall](#opt-services.snapserver.openFirewall) module option default value has been changed from `true` to `false`. You will need to explicitely set this option to `true`, or configure your firewall.
4142-- The [services.tmate-ssh-server.openFirewall](#opt-services.tmate-ssh-server.openFirewall) module option default value has been changed from `true` to `false`. You will need to explicitely set this option to `true`, or configure your firewall.
4344-- The [services.unifi-video.openFirewall](#opt-services.unifi-video.openFirewall) module option default value has been changed from `true` to `false`. You will need to explicitely set this option to `true`, or configure your firewall.
4546- The EC2 image module previously detected and automatically mounted ext3-formatted instance store devices and partitions in stage-1 (initramfs), storing `/tmp` on the first discovered device. This behaviour, which only catered to very specific use cases and could not be disabled, has been removed. Users relying on this should provide their own implementation, and probably use ext4 and perform the mount in stage-2.
47
···3738- `services.sourcehut.dispatch` and the corresponding package (`sourcehut.dispatchsrht`) have been removed due to [upstream deprecation](https://sourcehut.org/blog/2022-08-01-dispatch-deprecation-plans/).
3940+- The [services.snapserver.openFirewall](#opt-services.snapserver.openFirewall) module option default value has been changed from `true` to `false`. You will need to explicitly set this option to `true`, or configure your firewall.
4142+- The [services.tmate-ssh-server.openFirewall](#opt-services.tmate-ssh-server.openFirewall) module option default value has been changed from `true` to `false`. You will need to explicitly set this option to `true`, or configure your firewall.
4344+- The [services.unifi-video.openFirewall](#opt-services.unifi-video.openFirewall) module option default value has been changed from `true` to `false`. You will need to explicitly set this option to `true`, or configure your firewall.
4546- The EC2 image module previously detected and automatically mounted ext3-formatted instance store devices and partitions in stage-1 (initramfs), storing `/tmp` on the first discovered device. This behaviour, which only catered to very specific use cases and could not be disabled, has been removed. Users relying on this should provide their own implementation, and probably use ext4 and perform the mount in stage-2.
47
+1-1
nixos/lib/make-options-doc/default.nix
···19{ pkgs
20, lib
21, options
22-, transformOptions ? lib.id # function for additional tranformations of the options
23, documentType ? "appendix" # TODO deprecate "appendix" in favor of "none"
24 # and/or rename function to moduleOptionDoc for clean slate
25
···19{ pkgs
20, lib
21, options
22+, transformOptions ? lib.id # function for additional transformations of the options
23, documentType ? "appendix" # TODO deprecate "appendix" in favor of "none"
24 # and/or rename function to moduleOptionDoc for clean slate
25
+1-1
nixos/modules/hardware/gpgsmartcards.nix
···8 # https://salsa.debian.org/debian/gnupg2/-/blob/debian/main/debian/scdaemon.udev
910 # the latest rev of the entire debian gnupg2 repo as of 2021-04-28
11- # the scdaemon.udev file was last commited on 2021-01-05 (7817a03):
12 scdaemonUdevRev = "01898735a015541e3ffb43c7245ac1e612f40836";
1314 scdaemonRules = pkgs.fetchurl {
···8 # https://salsa.debian.org/debian/gnupg2/-/blob/debian/main/debian/scdaemon.udev
910 # the latest rev of the entire debian gnupg2 repo as of 2021-04-28
11+ # the scdaemon.udev file was last committed on 2021-01-05 (7817a03):
12 scdaemonUdevRev = "01898735a015541e3ffb43c7245ac1e612f40836";
1314 scdaemonRules = pkgs.fetchurl {
+1-1
nixos/modules/hardware/openrazer.nix
···110 boot.extraModulePackages = [ kernelPackages.openrazer ];
111 boot.kernelModules = drivers;
112113- # Makes the man pages available so you can succesfully run
114 # > systemctl --user help openrazer-daemon
115 environment.systemPackages = [ pkgs.python3Packages.openrazer-daemon.man ];
116
···110 boot.extraModulePackages = [ kernelPackages.openrazer ];
111 boot.kernelModules = drivers;
112113+ # Makes the man pages available so you can successfully run
114 # > systemctl --user help openrazer-daemon
115 environment.systemPackages = [ pkgs.python3Packages.openrazer-daemon.man ];
116
+1-1
nixos/modules/hardware/printers.nix
···100 default = {};
101 description = lib.mdDoc ''
102 Sets PPD options for the printer.
103- {command}`lpoptions [-p printername] -l` shows suported PPD options for the given printer.
104 '';
105 };
106 };
···100 default = {};
101 description = lib.mdDoc ''
102 Sets PPD options for the printer.
103+ {command}`lpoptions [-p printername] -l` shows supported PPD options for the given printer.
104 '';
105 };
106 };
+1-1
nixos/modules/installer/cd-dvd/iso-image.nix
···8182 # The configuration file for syslinux.
8384- # Notes on syslinux configuration and UNetbootin compatiblity:
85 # * Do not use '/syslinux/syslinux.cfg' as the path for this
86 # configuration. UNetbootin will not parse the file and use it as-is.
87 # This results in a broken configuration if the partition label does
···8182 # The configuration file for syslinux.
8384+ # Notes on syslinux configuration and UNetbootin compatibility:
85 # * Do not use '/syslinux/syslinux.cfg' as the path for this
86 # configuration. UNetbootin will not parse the file and use it as-is.
87 # This results in a broken configuration if the partition label does
+1-1
nixos/modules/misc/label.nix
···27 variable (defaults to the value of
28 {option}`system.nixos.version`).
2930- Can be overriden by setting {env}`NIXOS_LABEL`.
3132 Useful for not loosing track of configurations built from different
33 nixos branches/revisions, e.g.:
···27 variable (defaults to the value of
28 {option}`system.nixos.version`).
2930+ Can be overridden by setting {env}`NIXOS_LABEL`.
3132 Useful for not loosing track of configurations built from different
33 nixos branches/revisions, e.g.:
+2-2
nixos/modules/security/acme/default.nix
···714 default = false;
715 description = lib.mdDoc ''
716 Whether to use the root user when generating certs. This is not recommended
717- for security + compatiblity reasons. If a service requires root owned certificates
718 consider following the guide on "Using ACME with services demanding root
719 owned certificates" in the NixOS manual, and only using this as a fallback
720 or for testing.
···765 To use the let's encrypt staging server, use security.acme.server =
766 "https://acme-staging-v02.api.letsencrypt.org/directory".
767 '')
768- (mkRemovedOptionModule [ "security" "acme" "directory" ] "ACME Directory is now hardcoded to /var/lib/acme and its permisisons are managed by systemd. See https://github.com/NixOS/nixpkgs/issues/53852 for more info.")
769 (mkRemovedOptionModule [ "security" "acme" "preDelay" ] "This option has been removed. If you want to make sure that something executes before certificates are provisioned, add a RequiredBy=acme-\${cert}.service to the service you want to execute before the cert renewal")
770 (mkRemovedOptionModule [ "security" "acme" "activationDelay" ] "This option has been removed. If you want to make sure that something executes before certificates are provisioned, add a RequiredBy=acme-\${cert}.service to the service you want to execute before the cert renewal")
771 (mkChangedOptionModule [ "security" "acme" "validMin" ] [ "security" "acme" "defaults" "validMinDays" ] (config: config.security.acme.validMin / (24 * 3600)))
···714 default = false;
715 description = lib.mdDoc ''
716 Whether to use the root user when generating certs. This is not recommended
717+ for security + compatibility reasons. If a service requires root owned certificates
718 consider following the guide on "Using ACME with services demanding root
719 owned certificates" in the NixOS manual, and only using this as a fallback
720 or for testing.
···765 To use the let's encrypt staging server, use security.acme.server =
766 "https://acme-staging-v02.api.letsencrypt.org/directory".
767 '')
768+ (mkRemovedOptionModule [ "security" "acme" "directory" ] "ACME Directory is now hardcoded to /var/lib/acme and its permissions are managed by systemd. See https://github.com/NixOS/nixpkgs/issues/53852 for more info.")
769 (mkRemovedOptionModule [ "security" "acme" "preDelay" ] "This option has been removed. If you want to make sure that something executes before certificates are provisioned, add a RequiredBy=acme-\${cert}.service to the service you want to execute before the cert renewal")
770 (mkRemovedOptionModule [ "security" "acme" "activationDelay" ] "This option has been removed. If you want to make sure that something executes before certificates are provisioned, add a RequiredBy=acme-\${cert}.service to the service you want to execute before the cert renewal")
771 (mkChangedOptionModule [ "security" "acme" "validMin" ] [ "security" "acme" "defaults" "validMinDays" ] (config: config.security.acme.validMin / (24 * 3600)))
+1-1
nixos/modules/security/apparmor.nix
···202 # (indirectly read from /etc/apparmor.d/*, without recursing into sub-directory).
203 # Note that this does not remove profiles dynamically generated by libvirt.
204 [ "${pkgs.apparmor-utils}/bin/aa-remove-unknown" ] ++
205- # Optionaly kill the processes which are unconfined but now have a profile loaded
206 # (because AppArmor can only start to confine new processes).
207 optional cfg.killUnconfinedConfinables killUnconfinedConfinables;
208 ExecStop = "${pkgs.apparmor-utils}/bin/aa-teardown";
···202 # (indirectly read from /etc/apparmor.d/*, without recursing into sub-directory).
203 # Note that this does not remove profiles dynamically generated by libvirt.
204 [ "${pkgs.apparmor-utils}/bin/aa-remove-unknown" ] ++
205+ # Optionally kill the processes which are unconfined but now have a profile loaded
206 # (because AppArmor can only start to confine new processes).
207 optional cfg.killUnconfinedConfinables killUnconfinedConfinables;
208 ExecStop = "${pkgs.apparmor-utils}/bin/aa-teardown";
+2-2
nixos/modules/security/pam.nix
···282 defaultText = literalExpression "config.security.pam.mount.enable";
283 type = types.bool;
284 description = lib.mdDoc ''
285- Enable PAM mount (pam_mount) system to mount fileystems on user login.
286 '';
287 };
288···305 default = false;
306 type = types.bool;
307 description = lib.mdDoc ''
308- Wheather the delay after typing a wrong password should be disabled.
309 '';
310 };
311
···282 defaultText = literalExpression "config.security.pam.mount.enable";
283 type = types.bool;
284 description = lib.mdDoc ''
285+ Enable PAM mount (pam_mount) system to mount filesystems on user login.
286 '';
287 };
288···305 default = false;
306 type = types.bool;
307 description = lib.mdDoc ''
308+ Whether the delay after typing a wrong password should be disabled.
309 '';
310 };
311
+1-1
nixos/modules/security/pam_mount.nix
···24 type = types.bool;
25 default = false;
26 description = lib.mdDoc ''
27- Enable PAM mount system to mount fileystems on user login.
28 '';
29 };
30
···24 type = types.bool;
25 default = false;
26 description = lib.mdDoc ''
27+ Enable PAM mount system to mount filesystems on user login.
28 '';
29 };
30
+1-1
nixos/modules/security/wrappers/default.nix
···202 internal = true;
203 description = lib.mdDoc ''
204 This option defines the path to the wrapper programs. It
205- should not be overriden.
206 '';
207 };
208 };
···202 internal = true;
203 description = lib.mdDoc ''
204 This option defines the path to the wrapper programs. It
205+ should not be overridden.
206 '';
207 };
208 };
+1-1
nixos/modules/services/audio/icecast.nix
···4849 hostname = mkOption {
50 type = types.nullOr types.str;
51- description = lib.mdDoc "DNS name or IP address that will be used for the stream directory lookups or possibily the playlist generation if a Host header is not provided.";
52 default = config.networking.domain;
53 defaultText = literalExpression "config.networking.domain";
54 };
···4849 hostname = mkOption {
50 type = types.nullOr types.str;
51+ description = lib.mdDoc "DNS name or IP address that will be used for the stream directory lookups or possibly the playlist generation if a Host header is not provided.";
52 default = config.networking.domain;
53 defaultText = literalExpression "config.networking.domain";
54 };
+2-2
nixos/modules/services/backup/zfs-replication.nix
···12 enable = mkEnableOption (lib.mdDoc "ZFS snapshot replication.");
1314 followDelete = mkOption {
15- description = lib.mdDoc "Remove remote snapshots that don't have a local correspondant.";
16 default = true;
17 type = types.bool;
18 };
···30 };
3132 localFilesystem = mkOption {
33- description = lib.mdDoc "Local ZFS fileystem from which snapshots should be sent. Defaults to the attribute name.";
34 example = "pool/file/path";
35 type = types.str;
36 };
···12 enable = mkEnableOption (lib.mdDoc "ZFS snapshot replication.");
1314 followDelete = mkOption {
15+ description = lib.mdDoc "Remove remote snapshots that don't have a local correspondent.";
16 default = true;
17 type = types.bool;
18 };
···30 };
3132 localFilesystem = mkOption {
33+ description = lib.mdDoc "Local ZFS filesystem from which snapshots should be sent. Defaults to the attribute name.";
34 example = "pool/file/path";
35 type = types.str;
36 };
+3-3
nixos/modules/services/backup/znapzend.nix
···9 The znapzend backup plan to use for the source.
1011 The plan specifies how often to backup and for how long to keep the
12- backups. It consists of a series of retention periodes to interval
13 associations:
1415 ```
···268269 mkSrcAttrs = srcCfg: with srcCfg; {
270 enabled = onOff enable;
271- # mbuffer is not referenced by its full path to accomodate non-NixOS systems or differing mbuffer versions between source and target
272 mbuffer = with mbuffer; if enable then "mbuffer"
273 + optionalString (port != null) ":${toString port}" else "off";
274 mbuffer_size = mbuffer.size;
···372 compressed feature which adds the options `-Lce` to
373 the {command}`zfs send` command. When this is enabled, make
374 sure that both the sending and receiving pool have the same relevant
375- features enabled. Using `-c` will skip unneccessary
376 decompress-compress stages, `-L` is for large block
377 support and -e is for embedded data support. see
378 {manpage}`znapzend(1)`
···9 The znapzend backup plan to use for the source.
1011 The plan specifies how often to backup and for how long to keep the
12+ backups. It consists of a series of retention periods to interval
13 associations:
1415 ```
···268269 mkSrcAttrs = srcCfg: with srcCfg; {
270 enabled = onOff enable;
271+ # mbuffer is not referenced by its full path to accommodate non-NixOS systems or differing mbuffer versions between source and target
272 mbuffer = with mbuffer; if enable then "mbuffer"
273 + optionalString (port != null) ":${toString port}" else "off";
274 mbuffer_size = mbuffer.size;
···372 compressed feature which adds the options `-Lce` to
373 the {command}`zfs send` command. When this is enabled, make
374 sure that both the sending and receiving pool have the same relevant
375+ features enabled. Using `-c` will skip unnecessary
376 decompress-compress stages, `-L` is for large block
377 support and -e is for embedded data support. see
378 {manpage}`znapzend(1)`
···51 type = types.bool;
52 default = false;
53 description = lib.mdDoc ''
54- Explictly disables syncing of deposit logs from the execution node.
55 This overrides any previous option that depends on it.
56 Useful if you intend to run a non-validating beacon node.
57 '';
···51 type = types.bool;
52 default = false;
53 description = lib.mdDoc ''
54+ Explicitly disables syncing of deposit logs from the execution node.
55 This overrides any previous option that depends on it.
56 Useful if you intend to run a non-validating beacon node.
57 '';
···2223 bootstrapAddons = mkOption {
24 description = lib.mdDoc ''
25- Bootstrap addons are like regular addons, but they are applied with cluster-admin rigths.
26 They are applied at addon-manager startup only.
27 '';
28 default = { };
···2223 bootstrapAddons = mkOption {
24 description = lib.mdDoc ''
25+ Bootstrap addons are like regular addons, but they are applied with cluster-admin rights.
26 They are applied at addon-manager startup only.
27 '';
28 default = { };
+1-1
nixos/modules/services/cluster/kubernetes/pki.nix
···323 systemctl restart flannel
324 ''}
325326- echo "Node joined succesfully"
327 '')];
328329 # isolate etcd on loopback at the master node
···323 systemctl restart flannel
324 ''}
325326+ echo "Node joined successfully"
327 '')];
328329 # isolate etcd on loopback at the master node
···49 registration token on startup as needed. Make sure the PAT has a scope of
50 `admin:org` for organization-wide registrations or a scope of
51 `repo` for a single repository. Fine-grained PATs need read and write permission
52- to the "Adminstration" resources.
5354 Changing this option or the file's content triggers a new runner registration.
55 '';
···49 registration token on startup as needed. Make sure the PAT has a scope of
50 `admin:org` for organization-wide registrations or a scope of
51 `repo` for a single repository. Fine-grained PATs need read and write permission
52+ to the "Administration" resources.
5354 Changing this option or the file's content triggers a new runner registration.
55 '';
···141 default = false;
142 description = lib.mdDoc ''
143 Finish all remaining jobs before stopping.
144- If not set gitlab-runner will stop immediatly without waiting
145 for jobs to finish, which will lead to failed builds.
146 '';
147 };
···141 default = false;
142 description = lib.mdDoc ''
143 Finish all remaining jobs before stopping.
144+ If not set gitlab-runner will stop immediately without waiting
145 for jobs to finish, which will lead to failed builds.
146 '';
147 };
···15 default = false;
16 description = lib.mdDoc ''
17 Enables the Hail Auto Update Service. Hail can automatically deploy artifacts
18- built by a Hydra Continous Integration server. A common use case is to provide
19- continous deployment for single services or a full NixOS configuration.'';
20 };
21 profile = mkOption {
22 type = types.str;
···15 default = false;
16 description = lib.mdDoc ''
17 Enables the Hail Auto Update Service. Hail can automatically deploy artifacts
18+ built by a Hydra Continuous Integration server. A common use case is to provide
19+ continuous deployment for single services or a full NixOS configuration.'';
20 };
21 profile = mkOption {
22 type = types.str;
+1-1
nixos/modules/services/databases/firebird.nix
···14#
15# Be careful, virtuoso-opensource also provides a different isql command !
1617-# There are at least two ways to run firebird. superserver has been choosen
18# however there are no strong reasons to prefer this or the other one AFAIK
19# Eg superserver is said to be most efficiently using resources according to
20# http://www.firebirdsql.org/manual/qsg25-classic-or-super.html
···14#
15# Be careful, virtuoso-opensource also provides a different isql command !
1617+# There are at least two ways to run firebird. superserver has been chosen
18# however there are no strong reasons to prefer this or the other one AFAIK
19# Eg superserver is said to be most efficiently using resources according to
20# http://www.firebirdsql.org/manual/qsg25-classic-or-super.html
···45 default = !(cfg.settings ? initial_session);
46 defaultText = literalExpression "!(config.services.greetd.settings ? initial_session)";
47 description = lib.mdDoc ''
48- Wether to restart greetd when it terminates (e.g. on failure).
49 This is usually desirable so a user can always log in, but should be disabled when using 'settings.initial_session' (autologin),
50 because every greetd restart will trigger the autologin again.
51 '';
···45 default = !(cfg.settings ? initial_session);
46 defaultText = literalExpression "!(config.services.greetd.settings ? initial_session)";
47 description = lib.mdDoc ''
48+ Whether to restart greetd when it terminates (e.g. on failure).
49 This is usually desirable so a user can always log in, but should be disabled when using 'settings.initial_session' (autologin),
50 because every greetd restart will trigger the autologin again.
51 '';
+3-3
nixos/modules/services/games/asf.nix
···35 description = lib.mdDoc ''
36 If enabled, starts the ArchisSteamFarm service.
37 For configuring the SteamGuard token you will need to use the web-ui, which is enabled by default over on 127.0.0.1:1242.
38- You cannot configure ASF in any way outside of nix, since all the config files get wiped on restart and replaced with the programatically set ones by nix.
39 '';
40 default = false;
41 };
···98 ipcPasswordFile = mkOption {
99 type = types.nullOr types.path;
100 default = null;
101- description = lib.mdDoc "Path to a file containig the password. The file must be readable by the `asf` user/group.";
102 };
103104 ipcSettings = mkOption {
···129 };
130 passwordFile = mkOption {
131 type = types.path;
132- description = lib.mdDoc "Path to a file containig the password. The file must be readable by the `asf` user/group.";
133 };
134 enabled = mkOption {
135 type = types.bool;
···35 description = lib.mdDoc ''
36 If enabled, starts the ArchisSteamFarm service.
37 For configuring the SteamGuard token you will need to use the web-ui, which is enabled by default over on 127.0.0.1:1242.
38+ You cannot configure ASF in any way outside of nix, since all the config files get wiped on restart and replaced with the programnatically set ones by nix.
39 '';
40 default = false;
41 };
···98 ipcPasswordFile = mkOption {
99 type = types.nullOr types.path;
100 default = null;
101+ description = lib.mdDoc "Path to a file containing the password. The file must be readable by the `asf` user/group.";
102 };
103104 ipcSettings = mkOption {
···129 };
130 passwordFile = mkOption {
131 type = types.path;
132+ description = lib.mdDoc "Path to a file containing the password. The file must be readable by the `asf` user/group.";
133 };
134 enabled = mkOption {
135 type = types.bool;
+1-1
nixos/modules/services/games/minetest-server.nix
···62 Path to logfile for logging.
6364 If set to null, logging will be output to stdout which means
65- all output will be catched by systemd.
66 '';
67 };
68
···62 Path to logfile for logging.
6364 If set to null, logging will be output to stdout which means
65+ all output will be caught by systemd.
66 '';
67 };
68
···141 description = lib.mdDoc ''
142 Enable saned network daemon for remote connection to scanners.
143144- saned would be runned from `scanner` user; to allow
145 access to hardware that doesn't have `scanner` group
146 you should add needed groups to this user.
147 '';
···141 description = lib.mdDoc ''
142 Enable saned network daemon for remote connection to scanners.
143144+ saned would be run from `scanner` user; to allow
145 access to hardware that doesn't have `scanner` group
146 you should add needed groups to this user.
147 '';
+1-1
nixos/modules/services/logging/logrotate.nix
···163 default = null;
164 description = lib.mdDoc ''
165 How often to rotate the logs. Defaults to previously set global setting,
166- which itself defauts to weekly.
167 '';
168 };
169
···163 default = null;
164 description = lib.mdDoc ''
165 How often to rotate the logs. Defaults to previously set global setting,
166+ which itself defaults to weekly.
167 '';
168 };
169
+1-1
nixos/modules/services/mail/mailman.nix
···113 type = types.str;
114 example = "/run/secrets/ldap-bind";
115 description = lib.mdDoc ''
116- Path to the file containing the bind password of the servie account
117 defined by [](#opt-services.mailman.ldap.bindDn).
118 '';
119 };
···113 type = types.str;
114 example = "/run/secrets/ldap-bind";
115 description = lib.mdDoc ''
116+ Path to the file containing the bind password of the service account
117 defined by [](#opt-services.mailman.ldap.bindDn).
118 '';
119 };
···39 '';
4041 description = lib.mdDoc ''
42- The package which contains roundcube's sources. Can be overriden to create
43 an environment which contains roundcube and third-party plugins.
44 '';
45 };
···92 default = [];
93 example = literalExpression "with pkgs.aspellDicts; [ en fr de ]";
94 description = lib.mdDoc ''
95- List of aspell dictionnaries for spell checking. If empty, spell checking is disabled.
96 '';
97 };
98
···39 '';
4041 description = lib.mdDoc ''
42+ The package which contains roundcube's sources. Can be overridden to create
43 an environment which contains roundcube and third-party plugins.
44 '';
45 };
···92 default = [];
93 example = literalExpression "with pkgs.aspellDicts; [ en fr de ]";
94 description = lib.mdDoc ''
95+ List of aspell dictionaries for spell checking. If empty, spell checking is disabled.
96 '';
97 };
98
···105 `MAUTRIX_TELEGRAM_TELEGRAM_BOT_TOKEN`.
106107 These environment variables can also be used to set other options by
108- replacing hierachy levels by `.`, converting the name to uppercase
109 and prepending `MAUTRIX_TELEGRAM_`.
110 For example, the first value above maps to
111 {option}`settings.appservice.as_token`.
···140 path = [ pkgs.lottieconverter ];
141142 # mautrix-telegram tries to generate a dotfile in the home directory of
143- # the running user if using a postgresql databse:
144 #
145 # File "python3.10/site-packages/asyncpg/connect_utils.py", line 257, in _dot_postgre>
146 # return (pathlib.Path.home() / '.postgresql' / filename).resolve()
···105 `MAUTRIX_TELEGRAM_TELEGRAM_BOT_TOKEN`.
106107 These environment variables can also be used to set other options by
108+ replacing hierarchy levels by `.`, converting the name to uppercase
109 and prepending `MAUTRIX_TELEGRAM_`.
110 For example, the first value above maps to
111 {option}`settings.appservice.as_token`.
···140 path = [ pkgs.lottieconverter ];
141142 # mautrix-telegram tries to generate a dotfile in the home directory of
143+ # the running user if using a postgresql database:
144 #
145 # File "python3.10/site-packages/asyncpg/connect_utils.py", line 257, in _dot_postgre>
146 # return (pathlib.Path.home() / '.postgresql' / filename).resolve()
+1-1
nixos/modules/services/matrix/synapse.nix
···80 (mkRemovedOptionModule [ "services" "matrix-synapse" "user_creation_max_duration" ] "It is no longer supported by synapse." )
81 (mkRemovedOptionModule [ "services" "matrix-synapse" "verbose" ] "Use a log config instead." )
8283- # options that were moved into rfc42 style settigns
84 (mkRemovedOptionModule [ "services" "matrix-synapse" "app_service_config_files" ] "Use settings.app_service_config_files instead" )
85 (mkRemovedOptionModule [ "services" "matrix-synapse" "database_args" ] "Use settings.database.args instead" )
86 (mkRemovedOptionModule [ "services" "matrix-synapse" "database_name" ] "Use settings.database.args.database instead" )
···80 (mkRemovedOptionModule [ "services" "matrix-synapse" "user_creation_max_duration" ] "It is no longer supported by synapse." )
81 (mkRemovedOptionModule [ "services" "matrix-synapse" "verbose" ] "Use a log config instead." )
8283+ # options that were moved into rfc42 style settings
84 (mkRemovedOptionModule [ "services" "matrix-synapse" "app_service_config_files" ] "Use settings.app_service_config_files instead" )
85 (mkRemovedOptionModule [ "services" "matrix-synapse" "database_args" ] "Use settings.database.args instead" )
86 (mkRemovedOptionModule [ "services" "matrix-synapse" "database_name" ] "Use settings.database.args.database instead" )
+1-1
nixos/modules/services/misc/dysnomia.nix
···114 };
115116 components = mkOption {
117- description = lib.mdDoc "An atttribute set in which each key represents a container and each value an attribute set in which each key represents a component and each value a derivation constructing its initial state";
118 default = {};
119 type = types.attrsOf types.attrs;
120 };
···114 };
115116 components = mkOption {
117+ description = lib.mdDoc "An attribute set in which each key represents a container and each value an attribute set in which each key represents a component and each value a derivation constructing its initial state";
118 default = {};
119 type = types.attrsOf types.attrs;
120 };
+1-1
nixos/modules/services/misc/gammu-smsd.nix
···192 password = mkOption {
193 type = types.nullOr types.str;
194 default = null;
195- description = lib.mdDoc "User password used for connetion to the database";
196 };
197 };
198 };
···192 password = mkOption {
193 type = types.nullOr types.str;
194 default = null;
195+ description = lib.mdDoc "User password used for connection to the database";
196 };
197 };
198 };
+2-2
nixos/modules/services/misc/gitea.nix
···183 file = mkOption {
184 type = types.nullOr types.str;
185 default = null;
186- description = lib.mdDoc "Filename to be used for the dump. If `null` a default name is choosen by gitea.";
187 example = "gitea-dump";
188 };
189 };
···487488 # In older versions the secret naming for JWT was kind of confusing.
489 # The file jwt_secret hold the value for LFS_JWT_SECRET and JWT_SECRET
490- # wasn't persistant at all.
491 # To fix that, there is now the file oauth2_jwt_secret containing the
492 # values for JWT_SECRET and the file jwt_secret gets renamed to
493 # lfs_jwt_secret.
···183 file = mkOption {
184 type = types.nullOr types.str;
185 default = null;
186+ description = lib.mdDoc "Filename to be used for the dump. If `null` a default name is chosen by gitea.";
187 example = "gitea-dump";
188 };
189 };
···487488 # In older versions the secret naming for JWT was kind of confusing.
489 # The file jwt_secret hold the value for LFS_JWT_SECRET and JWT_SECRET
490+ # wasn't persistent at all.
491 # To fix that, there is now the file oauth2_jwt_secret containing the
492 # values for JWT_SECRET and the file jwt_secret gets renamed to
493 # lfs_jwt_secret.
+1-1
nixos/modules/services/misc/gitlab.xml
···141 </para>
142143 <para>
144- A list of all availabe rake tasks can be obtained by running:
145<screen>
146<prompt>$ </prompt>sudo -u git -H gitlab-rake -T
147</screen>
···141 </para>
142143 <para>
144+ A list of all available rake tasks can be obtained by running:
145<screen>
146<prompt>$ </prompt>sudo -u git -H gitlab-rake -T
147</screen>
···609610 By default, pseudo-features `nixos-test`, `benchmark`,
611 and `big-parallel` used in Nixpkgs are set, `kvm`
612- is also included in it is avaliable.
613 '';
614 };
615···642 description = lib.mdDoc ''
643 Configuration for Nix, see
644 <https://nixos.org/manual/nix/stable/#sec-conf-file> or
645- {manpage}`nix.conf(5)` for avalaible options.
646 The value declared here will be translated directly to the key-value pairs Nix expects.
647648 You can use {command}`nix-instantiate --eval --strict '<nixpkgs/nixos>' -A config.nix.settings`
···609610 By default, pseudo-features `nixos-test`, `benchmark`,
611 and `big-parallel` used in Nixpkgs are set, `kvm`
612+ is also included in it is available.
613 '';
614 };
615···642 description = lib.mdDoc ''
643 Configuration for Nix, see
644 <https://nixos.org/manual/nix/stable/#sec-conf-file> or
645+ {manpage}`nix.conf(5)` for available options.
646 The value declared here will be translated directly to the key-value pairs Nix expects.
647648 You can use {command}`nix-instantiate --eval --strict '<nixpkgs/nixos>' -A config.nix.settings`
+1-1
nixos/modules/services/misc/podgrab.nix
···12 example = "/run/secrets/password.env";
13 description = lib.mdDoc ''
14 The path to a file containing the PASSWORD environment variable
15- definition for Podgrab's authentification.
16 '';
17 };
18
···12 example = "/run/secrets/password.env";
13 description = lib.mdDoc ''
14 The path to a file containing the PASSWORD environment variable
15+ definition for Podgrab's authentication.
16 '';
17 };
18
+1-1
nixos/modules/services/misc/portunus.nix
···135 type = types.bool;
136 default = false;
137 description = lib.mdDoc ''
138- Wether to enable LDAPS protocol.
139 This also adds two entries to the `/etc/hosts` file to point [](#opt-services.portunus.domain) to localhost,
140 so that CLIs and programs can use ldaps protocol and verify the certificate without opening the firewall port for the protocol.
141
···135 type = types.bool;
136 default = false;
137 description = lib.mdDoc ''
138+ Whether to enable LDAPS protocol.
139 This also adds two entries to the `/etc/hosts` file to point [](#opt-services.portunus.domain) to localhost,
140 so that CLIs and programs can use ldaps protocol and verify the certificate without opening the firewall port for the protocol.
141
···71 # Note that each systemd service gets its own ${runDir}/config.ini file.
72 ExecStartPre = mkBefore [("+"+pkgs.writeShellScript "${serviceName}-credentials" ''
73 set -x
74- # Replace values begining with a '<' by the content of the file whose name is after.
75 gawk '{ if (match($0,/^([^=]+=)<(.+)/,m)) { getline f < m[2]; print m[1] f } else print $0 }' ${configIni} |
76 ${optionalString (!allowStripe) "gawk '!/^stripe-secret-key=/' |"}
77 install -o ${srvCfg.user} -g root -m 400 /dev/stdin ${runDir}/config.ini
···71 # Note that each systemd service gets its own ${runDir}/config.ini file.
72 ExecStartPre = mkBefore [("+"+pkgs.writeShellScript "${serviceName}-credentials" ''
73 set -x
74+ # Replace values beginning with a '<' by the content of the file whose name is after.
75 gawk '{ if (match($0,/^([^=]+=)<(.+)/,m)) { getline f < m[2]; print m[1] f } else print $0 }' ${configIni} |
76 ${optionalString (!allowStripe) "gawk '!/^stripe-secret-key=/' |"}
77 install -o ${srvCfg.user} -g root -m 400 /dev/stdin ${runDir}/config.ini
···145 in lib.mdDoc ''
146 Whether to enable the Taskwarrior server.
147148- More instructions about NixOS in conjuction with Taskserver can be
149 found [in the NixOS manual](${url}).
150 '';
151 };
···251 client id (such as `task 2.3.0`).
252253 The values `all` or `none` have
254- special meaning. Overidden by any entry in the option
255 {option}`services.taskserver.disallowedClientIDs`.
256 '';
257 };
···145 in lib.mdDoc ''
146 Whether to enable the Taskwarrior server.
147148+ More instructions about NixOS in conjunction with Taskserver can be
149 found [in the NixOS manual](${url}).
150 '';
151 };
···251 client id (such as `task 2.3.0`).
252253 The values `all` or `none` have
254+ special meaning. Overridden by any entry in the option
255 {option}`services.taskserver.disallowedClientIDs`.
256 '';
257 };
+2-2
nixos/modules/services/monitoring/graphite.nix
···154 };
155156 blacklist = mkOption {
157- description = lib.mdDoc "Any metrics received which match one of the experssions will be dropped.";
158 default = null;
159 type = types.nullOr types.str;
160 example = "^some\\.noisy\\.metric\\.prefix\\..*";
161 };
162163 whitelist = mkOption {
164- description = lib.mdDoc "Only metrics received which match one of the experssions will be persisted.";
165 default = null;
166 type = types.nullOr types.str;
167 example = ".*";
···154 };
155156 blacklist = mkOption {
157+ description = lib.mdDoc "Any metrics received which match one of the expressions will be dropped.";
158 default = null;
159 type = types.nullOr types.str;
160 example = "^some\\.noisy\\.metric\\.prefix\\..*";
161 };
162163 whitelist = mkOption {
164+ description = lib.mdDoc "Only metrics received which match one of the expressions will be persisted.";
165 default = null;
166 type = types.nullOr types.str;
167 example = ".*";
···37 by default</link>, via http under <literal>/metrics</literal>. In this
38 example the firewall should just allow incoming connections to the
39 exporter's port on the bridge interface <literal>br0</literal> (this would
40- have to be configured seperately of course). For more information about
41 configuration see <literal>man configuration.nix</literal> or search through
42 the
43 <link xlink:href="https://nixos.org/nixos/options.html#prometheus.exporters">available
···179 # for the exporter's systemd service. One of
180 # `serviceOpts.script` and `serviceOpts.serviceConfig.ExecStart`
181 # has to be specified here. This will be merged with the default
182- # service confiuration.
183 # Note that by default 'DynamicUser' is 'true'.
184 serviceOpts = {
185 serviceConfig = {
···37 by default</link>, via http under <literal>/metrics</literal>. In this
38 example the firewall should just allow incoming connections to the
39 exporter's port on the bridge interface <literal>br0</literal> (this would
40+ have to be configured separately of course). For more information about
41 configuration see <literal>man configuration.nix</literal> or search through
42 the
43 <link xlink:href="https://nixos.org/nixos/options.html#prometheus.exporters">available
···179 # for the exporter's systemd service. One of
180 # `serviceOpts.script` and `serviceOpts.serviceConfig.ExecStart`
181 # has to be specified here. This will be merged with the default
182+ # service configuration.
183 # Note that by default 'DynamicUser' is 'true'.
184 serviceOpts = {
185 serviceConfig = {
···17 settings that can all be used here: https://github.com/martin-helmich/prometheus-nginxlog-exporter
1819 The `listen` object is already generated by `port`, `listenAddress` and `metricsEndpoint` and
20- will be merged with the value of `settings` before writting it as JSON.
21 '';
22 };
23
···17 settings that can all be used here: https://github.com/martin-helmich/prometheus-nginxlog-exporter
1819 The `listen` object is already generated by `port`, `listenAddress` and `metricsEndpoint` and
20+ will be merged with the value of `settings` before writing it as JSON.
21 '';
22 };
23
+1-1
nixos/modules/services/monitoring/thanos.nix
···300 max-time = mkParamDef types.str "9999-12-31T23:59:59Z" ''
301 End of time range limit to serve.
302303- Thanos Store serves only blocks, which happened eariler than this
304 value. Option can be a constant time in RFC3339 format or time duration
305 relative to current time, such as -1d or 2h45m. Valid duration units are
306 ms, s, m, h, d, w, y.
···300 max-time = mkParamDef types.str "9999-12-31T23:59:59Z" ''
301 End of time range limit to serve.
302303+ Thanos Store serves only blocks, which happened earlier than this
304 value. Option can be a constant time in RFC3339 format or time duration
305 relative to current time, such as -1d or 2h45m. Valid duration units are
306 ms, s, m, h, d, w, y.
+2-2
nixos/modules/services/monitoring/ups.nix
···12 upsOptions = {name, config, ...}:
13 {
14 options = {
15- # This can be infered from the UPS model by looking at
16 # /nix/store/nut/share/driver.list
17 driver = mkOption {
18 type = types.str;
···228 "}
229 '';
230 "nut/upssched.conf".source = cfg.schedulerRules;
231- # These file are containing private informations and thus should not
232 # be stored inside the Nix store.
233 /*
234 "nut/upsd.conf".source = "";
···12 upsOptions = {name, config, ...}:
13 {
14 options = {
15+ # This can be inferred from the UPS model by looking at
16 # /nix/store/nut/share/driver.list
17 driver = mkOption {
18 type = types.str;
···228 "}
229 '';
230 "nut/upssched.conf".source = cfg.schedulerRules;
231+ # These file are containing private information and thus should not
232 # be stored inside the Nix store.
233 /*
234 "nut/upsd.conf".source = "";
···21 fileSystems = mkOption {
22 description = lib.mdDoc ''
23 The orangefs file systems to be mounted.
24- This option is prefered over using {option}`fileSystems` directly since
25 the pvfs client service needs to be running for it to be mounted.
26 '';
27
···21 fileSystems = mkOption {
22 description = lib.mdDoc ''
23 The orangefs file systems to be mounted.
24+ This option is preferred over using {option}`fileSystems` directly since
25 the pvfs client service needs to be running for it to be mounted.
26 '';
27
···209 after = [ "network-online.target" ];
210211 serviceConfig = {
212- # Run as "simple" in forground mode.
213 # This is more reliable
214 ExecStart = ''
215 ${pkgs.orangefs}/bin/pvfs2-server -d \
···209 after = [ "network-online.target" ];
210211 serviceConfig = {
212+ # Run as "simple" in foreground mode.
213 # This is more reliable
214 ExecStart = ''
215 ${pkgs.orangefs}/bin/pvfs2-server -d \
+1-1
nixos/modules/services/networking/3proxy.nix
···158 description = lib.mdDoc ''
159 List of target IP ranges, use empty list for any.
160 May also contain host names instead of addresses.
161- It's possible to use wildmask in the begginning and in the the end of hostname, e.g. `*badsite.com` or `*badcontent*`.
162 Hostname is only checked if hostname presents in request.
163 '';
164 };
···158 description = lib.mdDoc ''
159 List of target IP ranges, use empty list for any.
160 May also contain host names instead of addresses.
161+ It's possible to use wildmask in the beginning and in the the end of hostname, e.g. `*badsite.com` or `*badcontent*`.
162 Hostname is only checked if hostname presents in request.
163 '';
164 };
+2-2
nixos/modules/services/networking/biboumi.nix
···45 default = "/etc/ssl/certs/ca-certificates.crt";
46 description = lib.mdDoc ''
47 Specifies which file should be used as the list of trusted CA
48- when negociating a TLS session.
49 '';
50 };
51 options.db_name = mkOption {
···111 description = lib.mdDoc ''
112 A directory that should contain the policy files,
113 used to customize Botan’s behaviour
114- when negociating the TLS connections with the IRC servers.
115 '';
116 };
117 options.port = mkOption {
···45 default = "/etc/ssl/certs/ca-certificates.crt";
46 description = lib.mdDoc ''
47 Specifies which file should be used as the list of trusted CA
48+ when negotiating a TLS session.
49 '';
50 };
51 options.db_name = mkOption {
···111 description = lib.mdDoc ''
112 A directory that should contain the policy files,
113 used to customize Botan’s behaviour
114+ when negotiating the TLS connections with the IRC servers.
115 '';
116 };
117 options.port = mkOption {
+1-1
nixos/modules/services/networking/bitcoind.nix
···95 }
96 '';
97 type = types.attrsOf (types.submodule rpcUserOpts);
98- description = lib.mdDoc "RPC user information for JSON-RPC connnections.";
99 };
100 };
101
···95 }
96 '';
97 type = types.attrsOf (types.submodule rpcUserOpts);
98+ description = lib.mdDoc "RPC user information for JSON-RPC connections.";
99 };
100 };
101
+1-1
nixos/modules/services/networking/bitlbee.nix
···60 type = types.str;
61 default = "127.0.0.1";
62 description = lib.mdDoc ''
63- The interface the BitlBee deamon will be listening to. If `127.0.0.1`,
64 only clients on the local host can connect to it; if `0.0.0.0`, clients
65 can access it from any network interface.
66 '';
···60 type = types.str;
61 default = "127.0.0.1";
62 description = lib.mdDoc ''
63+ The interface the BitlBee daemon will be listening to. If `127.0.0.1`,
64 only clients on the local host can connect to it; if `0.0.0.0`, clients
65 can access it from any network interface.
66 '';
···32 default = "[::]:4369";
33 description = lib.mdDoc ''
34 the listenStream used by the systemd socket.
35- see https://www.freedesktop.org/software/systemd/man/systemd.socket.html#ListenStream= for more informations.
36 use this to change the port epmd will run on.
37 if not defined, epmd will use "[::]:4369"
38 '';
···32 default = "[::]:4369";
33 description = lib.mdDoc ''
34 the listenStream used by the systemd socket.
35+ see https://www.freedesktop.org/software/systemd/man/systemd.socket.html#ListenStream= for more information.
36 use this to change the port epmd will run on.
37 if not defined, epmd will use "[::]:4369"
38 '';
···268 type = types.attrsOf types.str;
269 default = { };
270 description = lib.mdDoc ''
271- Domain map is used to map incomming users (by their email) to
272 a namespace. The key can be a string, or regex.
273 '';
274 example = {
···326 type = types.nullOr types.path;
327 default = null;
328 description = lib.mdDoc ''
329- Path to a file containg ACL policies.
330 '';
331 };
332
···268 type = types.attrsOf types.str;
269 default = { };
270 description = lib.mdDoc ''
271+ Domain map is used to map incoming users (by their email) to
272 a namespace. The key can be a string, or regex.
273 '';
274 example = {
···326 type = types.nullOr types.path;
327 default = null;
328 description = lib.mdDoc ''
329+ Path to a file containing ACL policies.
330 '';
331 };
332
···96 hardenService =
97 # Add some common systemd service hardening settings,
98 # but allow each service (here) to override
99- # settings by explicitely setting those to `null`.
100 # More hardening would be nice but makes
101 # customizing hylafax setups very difficult.
102 # If at all, it should only be added along
···96 hardenService =
97 # Add some common systemd service hardening settings,
98 # but allow each service (here) to override
99+ # settings by explicitly setting those to `null`.
100 # More hardening would be nice but makes
101 # customizing hylafax setups very difficult.
102 # If at all, it should only be added along
+1-1
nixos/modules/services/networking/i2pd.nix
···473 type = with types; nullOr str;
474 default = null;
475 description = lib.mdDoc ''
476- Router Familiy to trust for first hops.
477 '';
478 };
479
···473 type = with types; nullOr str;
474 default = null;
475 description = lib.mdDoc ''
476+ Router Family to trust for first hops.
477 '';
478 };
479
+1-1
nixos/modules/services/networking/iperf3.nix
···7 port = mkOption {
8 type = types.ints.u16;
9 default = 5201;
10- description = lib.mdDoc "Server port to listen on for iperf3 client requsts.";
11 };
12 affinity = mkOption {
13 type = types.nullOr types.ints.unsigned;
···7 port = mkOption {
8 type = types.ints.u16;
9 default = 5201;
10+ description = lib.mdDoc "Server port to listen on for iperf3 client requests.";
11 };
12 affinity = mkOption {
13 type = types.nullOr types.ints.unsigned;
+4-4
nixos/modules/services/networking/kea.nix
···47 type = listOf str;
48 default = [];
49 description = lib.mdDoc ''
50- List of additonal arguments to pass to the daemon.
51 '';
52 };
53···86 type = listOf str;
87 default = [];
88 description = lib.mdDoc ''
89- List of additonal arguments to pass to the daemon.
90 '';
91 };
92···146 type = listOf str;
147 default = [];
148 description = lib.mdDoc ''
149- List of additonal arguments to pass to the daemon.
150 '';
151 };
152···207 type = listOf str;
208 default = [];
209 description = lib.mdDoc ''
210- List of additonal arguments to pass to the daemon.
211 '';
212 };
213
···47 type = listOf str;
48 default = [];
49 description = lib.mdDoc ''
50+ List of additional arguments to pass to the daemon.
51 '';
52 };
53···86 type = listOf str;
87 default = [];
88 description = lib.mdDoc ''
89+ List of additional arguments to pass to the daemon.
90 '';
91 };
92···146 type = listOf str;
147 default = [];
148 description = lib.mdDoc ''
149+ List of additional arguments to pass to the daemon.
150 '';
151 };
152···207 type = listOf str;
208 default = [];
209 description = lib.mdDoc ''
210+ List of additional arguments to pass to the daemon.
211 '';
212 };
213
+1-1
nixos/modules/services/networking/knot.nix
···43 type = types.listOf types.str;
44 default = [];
45 description = lib.mdDoc ''
46- List of additional command line paramters for knotd
47 '';
48 };
49
···43 type = types.listOf types.str;
44 default = [];
45 description = lib.mdDoc ''
46+ List of additional command line parameters for knotd
47 '';
48 };
49
+1-1
nixos/modules/services/networking/libreswan.nix
···106 type = types.bool;
107 default = true;
108 description = lib.mdDoc ''
109- Whether to disable send and accept redirects for all nework interfaces.
110 See the Libreswan [
111 FAQ](https://libreswan.org/wiki/FAQ#Why_is_it_recommended_to_disable_send_redirects_in_.2Fproc.2Fsys.2Fnet_.3F) page for why this is recommended.
112 '';
···106 type = types.bool;
107 default = true;
108 description = lib.mdDoc ''
109+ Whether to disable send and accept redirects for all network interfaces.
110 See the Libreswan [
111 FAQ](https://libreswan.org/wiki/FAQ#Why_is_it_recommended_to_disable_send_redirects_in_.2Fproc.2Fsys.2Fnet_.3F) page for why this is recommended.
112 '';
···87 };
88 };
89 })
90- # this is seperate so it can be enabled on mirrored hosts
91 (mkIf (cfg.nginx.enable) {
92 # https://github.com/Avature/lxd-image-server/blob/master/resources/nginx/includes/lxd-image-server.pkg.conf
93 services.nginx.virtualHosts = {
···87 };
88 };
89 })
90+ # this is separate so it can be enabled on mirrored hosts
91 (mkIf (cfg.nginx.enable) {
92 # https://github.com/Avature/lxd-image-server/blob/master/resources/nginx/includes/lxd-image-server.pkg.conf
93 services.nginx.virtualHosts = {
+1-1
nixos/modules/services/networking/mosquitto.nix
···479 Directories to be scanned for further config files to include.
480 Directories will processed in the order given,
481 `*.conf` files in the directory will be
482- read in case-sensistive alphabetical order.
483 '';
484 default = [];
485 };
···479 Directories to be scanned for further config files to include.
480 Directories will processed in the order given,
481 `*.conf` files in the directory will be
482+ read in case-sensitive alphabetical order.
483 '';
484 default = [];
485 };
+1-1
nixos/modules/services/networking/ncdns.nix
···85 ```
86 bit. IN NS ns1.example.com.
87 ```
88- If unset ncdns will generate an internal psuedo-hostname under the
89 zone, which will resolve to the value of
90 {option}`services.ncdns.identity.address`.
91 If you are only using ncdns locally you can ignore this.
···85 ```
86 bit. IN NS ns1.example.com.
87 ```
88+ If unset ncdns will generate an internal pseudo-hostname under the
89 zone, which will resolve to the value of
90 {option}`services.ncdns.identity.address`.
91 If you are only using ncdns locally you can ignore this.
+2-2
nixos/modules/services/networking/ndppd.nix
···43 timeout = mkOption {
44 type = types.int;
45 description = lib.mdDoc ''
46- Controls how long to wait for a Neighbor Advertisment Message before
47 invalidating the entry, in milliseconds.
48 '';
49 default = 500;
···74 type = types.nullOr types.str;
75 description = lib.mdDoc ''
76 This is the target address is to match against. If no netmask
77- is provided, /128 is assumed. The addresses of serveral rules
78 may or may not overlap.
79 Defaults to the name of the attrset.
80 '';
···43 timeout = mkOption {
44 type = types.int;
45 description = lib.mdDoc ''
46+ Controls how long to wait for a Neighbor Advertisement Message before
47 invalidating the entry, in milliseconds.
48 '';
49 default = 500;
···74 type = types.nullOr types.str;
75 description = lib.mdDoc ''
76 This is the target address is to match against. If no netmask
77+ is provided, /128 is assumed. The addresses of several rules
78 may or may not overlap.
79 Defaults to the name of the attrset.
80 '';
+1-1
nixos/modules/services/networking/nftables.nix
···37 # Check out https://wiki.nftables.org/ for better documentation.
38 # Table for both IPv4 and IPv6.
39 table inet filter {
40- # Block all incomming connections traffic except SSH and "ping".
41 chain input {
42 type filter hook input priority 0;
43
···37 # Check out https://wiki.nftables.org/ for better documentation.
38 # Table for both IPv4 and IPv6.
39 table inet filter {
40+ # Block all incoming connections traffic except SSH and "ping".
41 chain input {
42 type filter hook input priority 0;
43
+1-1
nixos/modules/services/networking/nsd.nix
···371 default = null;
372 example = "2000::1@1234";
373 description = lib.mdDoc ''
374- This address will be used for zone-transfere requests if configured
375 as a secondary server or notifications in case of a primary server.
376 Supply either a plain IPv4 or IPv6 address with an optional port
377 number (ip@port).
···371 default = null;
372 example = "2000::1@1234";
373 description = lib.mdDoc ''
374+ This address will be used for zone-transfer requests if configured
375 as a secondary server or notifications in case of a primary server.
376 Supply either a plain IPv4 or IPv6 address with an optional port
377 number (ip@port).
+1-1
nixos/modules/services/networking/ostinato.nix
···54 default = "0.0.0.0";
55 description = lib.mdDoc ''
56 By default, the Drone RPC server will listen on all interfaces and
57- local IPv4 adresses for incoming connections from clients. Specify
58 a single IPv4 or IPv6 address if you want to restrict that.
59 To listen on any IPv6 address, use ::
60 '';
···54 default = "0.0.0.0";
55 description = lib.mdDoc ''
56 By default, the Drone RPC server will listen on all interfaces and
57+ local IPv4 addresses for incoming connections from clients. Specify
58 a single IPv4 or IPv6 address if you want to restrict that.
59 To listen on any IPv6 address, use ::
60 '';
+1-1
nixos/modules/services/networking/pleroma.nix
···52 the right place to store any secret
5354 Have a look to Pleroma section in the NixOS manual for more
55- informations.
56 '';
57 };
58
···52 the right place to store any secret
5354 Have a look to Pleroma section in the NixOS manual for more
55+ information.
56 '';
57 };
58
+4-4
nixos/modules/services/networking/prosody.nix
···309 type = types.int;
310 default = 300;
311 description = lib.mdDoc ''
312- Timout after which the room is destroyed or unlocked if not
313 configured, in seconds
314 '';
315 };
···489490 Setting this option to true will prevent you from building a
491 NixOS configuration which won't comply with this standard.
492- You can explicitely decide to ignore this standard if you
493 know what you are doing by setting this option to false.
494495 [1] https://xmpp.org/extensions/xep-0423.html
···649 extraPluginPaths = mkOption {
650 type = types.listOf types.path;
651 default = [];
652- description = lib.mdDoc "Addtional path in which to look find plugins/modules";
653 };
654655 uploadHttp = mkOption {
···733734 Having a server not XEP-0423-compliant might make your XMPP
735 experience terrible. See the NixOS manual for further
736- informations.
737738 If you know what you're doing, you can disable this warning by
739 setting config.services.prosody.xmppComplianceSuite to false.
···309 type = types.int;
310 default = 300;
311 description = lib.mdDoc ''
312+ Timeout after which the room is destroyed or unlocked if not
313 configured, in seconds
314 '';
315 };
···489490 Setting this option to true will prevent you from building a
491 NixOS configuration which won't comply with this standard.
492+ You can explicitly decide to ignore this standard if you
493 know what you are doing by setting this option to false.
494495 [1] https://xmpp.org/extensions/xep-0423.html
···649 extraPluginPaths = mkOption {
650 type = types.listOf types.path;
651 default = [];
652+ description = lib.mdDoc "Additional path in which to look find plugins/modules";
653 };
654655 uploadHttp = mkOption {
···733734 Having a server not XEP-0423-compliant might make your XMPP
735 experience terrible. See the NixOS manual for further
736+ information.
737738 If you know what you're doing, you can disable this warning by
739 setting config.services.prosody.xmppComplianceSuite to false.
+1-1
nixos/modules/services/networking/radicale.nix
···77 <https://radicale.org/3.0.html#documentation/authentication-and-rights>.
78 This option only works in conjunction with {option}`settings`.
79 Setting this will also set {option}`settings.rights.type` and
80- {option}`settings.rights.file` to approriate values.
81 '';
82 default = { };
83 example = literalExpression ''
···77 <https://radicale.org/3.0.html#documentation/authentication-and-rights>.
78 This option only works in conjunction with {option}`settings`.
79 Setting this will also set {option}`settings.rights.type` and
80+ {option}`settings.rights.file` to appropriate values.
81 '';
82 default = { };
83 example = literalExpression ''
+2-2
nixos/modules/services/networking/searx.nix
···124 description = lib.mdDoc ''
125 Whether to run searx in uWSGI as a "vassal", instead of using its
126 built-in HTTP server. This is the recommended mode for public or
127- large instances, but is unecessary for LAN or local-only use.
128129 ::: {.warning}
130 The built-in HTTP server logs all queries by default.
···223 module = "searx.webapp";
224 env = [
225 "SEARX_SETTINGS_PATH=${cfg.settingsFile}"
226- # searxng compatiblity https://github.com/searxng/searxng/issues/1519
227 "SEARXNG_SETTINGS_PATH=${cfg.settingsFile}"
228 ];
229 buffer-size = 32768;
···124 description = lib.mdDoc ''
125 Whether to run searx in uWSGI as a "vassal", instead of using its
126 built-in HTTP server. This is the recommended mode for public or
127+ large instances, but is unnecessary for LAN or local-only use.
128129 ::: {.warning}
130 The built-in HTTP server logs all queries by default.
···223 module = "searx.webapp";
224 env = [
225 "SEARX_SETTINGS_PATH=${cfg.settingsFile}"
226+ # searxng compatibility https://github.com/searxng/searxng/issues/1519
227 "SEARXNG_SETTINGS_PATH=${cfg.settingsFile}"
228 ];
229 buffer-size = 32768;
+1-1
nixos/modules/services/networking/stunnel.nix
···7879 servers = mkOption {
80 description = lib.mdDoc ''
81- Define the server configuations.
8283 See "SERVICE-LEVEL OPTIONS" in {manpage}`stunnel(8)`.
84 '';
···7879 servers = mkOption {
80 description = lib.mdDoc ''
81+ Define the server configurations.
8283 See "SERVICE-LEVEL OPTIONS" in {manpage}`stunnel(8)`.
84 '';
+1-1
nixos/modules/services/networking/unbound.nix
···245 NotifyAccess = "main";
246 Type = "notify";
247248- # FIXME: Which of these do we actualy need, can we drop the chroot flag?
249 AmbientCapabilities = [
250 "CAP_NET_BIND_SERVICE"
251 "CAP_NET_RAW"
···245 NotifyAccess = "main";
246 Type = "notify";
247248+ # FIXME: Which of these do we actually need, can we drop the chroot flag?
249 AmbientCapabilities = [
250 "CAP_NET_BIND_SERVICE"
251 "CAP_NET_RAW"
+1-1
nixos/modules/services/networking/unifi.nix
···76 default = null;
77 example = 4096;
78 description = lib.mdDoc ''
79- Set the maximimum heap size for the JVM in MB. If this option isn't set, the
80 JVM will decide this value at runtime.
81 '';
82 };
···76 default = null;
77 example = 4096;
78 description = lib.mdDoc ''
79+ Set the maximum heap size for the JVM in MB. If this option isn't set, the
80 JVM will decide this value at runtime.
81 '';
82 };
+1-1
nixos/modules/services/networking/vsftpd.nix
···168169 The default is a file containing the users from {option}`userlist`.
170171- If explicitely set to null userlist_file will not be set in vsftpd's config file.
172 '';
173 };
174
···168169 The default is a file containing the users from {option}`userlist`.
170171+ If explicitly set to null userlist_file will not be set in vsftpd's config file.
172 '';
173 };
174
+1-1
nixos/modules/services/networking/wireguard.nix
···303 set -e
304305 # If the parent dir does not already exist, create it.
306- # Otherwise, does nothing, keeping existing permisions intact.
307 mkdir -p --mode 0755 "${dirOf values.privateKeyFile}"
308309 if [ ! -f "${values.privateKeyFile}" ]; then
···303 set -e
304305 # If the parent dir does not already exist, create it.
306+ # Otherwise, does nothing, keeping existing permissions intact.
307 mkdir -p --mode 0755 "${dirOf values.privateKeyFile}"
308309 if [ ! -f "${values.privateKeyFile}" ]; then
+2-2
nixos/modules/services/networking/yggdrasil.xml
···30 settings = {
31 Peers = [
32 # Yggdrasil will automatically connect and "peer" with other nodes it
33- # discovers via link-local multicast annoucements. Unless this is the
34 # case (it probably isn't) a node needs peers within the existing
35 # network that it can tunnel to.
36 "tcp://1.2.3.4:1024"
···78 }];
7980 services.radvd = {
81- # Annouce the 300::/8 prefix to eth0.
82 enable = true;
83 config = ''
84 interface eth0
···30 settings = {
31 Peers = [
32 # Yggdrasil will automatically connect and "peer" with other nodes it
33+ # discovers via link-local multicast announcements. Unless this is the
34 # case (it probably isn't) a node needs peers within the existing
35 # network that it can tunnel to.
36 "tcp://1.2.3.4:1024"
···78 }];
7980 services.radvd = {
81+ # Announce the 300::/8 prefix to eth0.
82 enable = true;
83 config = ''
84 interface eth0
···161 type = types.str;
162 example = "2 4 16 128";
163 description = lib.mdDoc ''
164- "bantime-increment.multipliers" used to calculate next value of ban time instead of formula, coresponding
165 previously ban count and given "bantime.factor" (for multipliers default is 1);
166 following example grows ban time by 1, 2, 4, 8, 16 ... and if last ban count greater as multipliers count,
167 always used last multiplier (64 in example), for factor '1' and original ban time 600 - 10.6 hours
···174 example = true;
175 description = lib.mdDoc ''
176 "bantime-increment.overalljails" (if true) specifies the search of IP in the database will be executed
177- cross over all jails, if false (dafault), only current jail of the ban IP will be searched
178 '';
179 };
180
···161 type = types.str;
162 example = "2 4 16 128";
163 description = lib.mdDoc ''
164+ "bantime-increment.multipliers" used to calculate next value of ban time instead of formula, corresponding
165 previously ban count and given "bantime.factor" (for multipliers default is 1);
166 following example grows ban time by 1, 2, 4, 8, 16 ... and if last ban count greater as multipliers count,
167 always used last multiplier (64 in example), for factor '1' and original ban time 600 - 10.6 hours
···174 example = true;
175 description = lib.mdDoc ''
176 "bantime-increment.overalljails" (if true) specifies the search of IP in the database will be executed
177+ cross over all jails, if false (default), only current jail of the ban IP will be searched
178 '';
179 };
180
+2-2
nixos/modules/services/security/shibboleth-sp.nix
···27 fastcgi.shibAuthorizerPort = mkOption {
28 type = types.int;
29 default = 9100;
30- description = lib.mdDoc "Port for shibauthorizer FastCGI proccess to bind to";
31 };
3233 fastcgi.shibResponderPort = mkOption {
34 type = types.int;
35 default = 9101;
36- description = lib.mdDoc "Port for shibauthorizer FastCGI proccess to bind to";
37 };
38 };
39 };
···27 fastcgi.shibAuthorizerPort = mkOption {
28 type = types.int;
29 default = 9100;
30+ description = lib.mdDoc "Port for shibauthorizer FastCGI process to bind to";
31 };
3233 fastcgi.shibResponderPort = mkOption {
34 type = types.int;
35 default = 9101;
36+ description = lib.mdDoc "Port for shibauthorizer FastCGI process to bind to";
37 };
38 };
39 };
···118 description = lib.mdDoc ''
119 The USBGuard daemon modifies some attributes of controller
120 devices like the default authorization state of new child device
121- instances. Using this setting, you can controll whether the daemon
122 will try to restore the attribute values to the state before
123- modificaton on shutdown.
124 '';
125 };
126
···118 description = lib.mdDoc ''
119 The USBGuard daemon modifies some attributes of controller
120 devices like the default authorization state of new child device
121+ instances. Using this setting, you can control whether the daemon
122 will try to restore the attribute values to the state before
123+ modification on shutdown.
124 '';
125 };
126
+1-1
nixos/modules/services/system/cloud-init.nix
···2728 This configuration is not completely compatible with the
29 NixOS way of doing configuration, as configuration done by
30- cloud-init might be overriden by a subsequent nixos-rebuild
31 call. However, some parts of cloud-init fall outside of
32 NixOS's responsibility, like filesystem resizing and ssh
33 public key provisioning, and cloud-init is useful for that
···2728 This configuration is not completely compatible with the
29 NixOS way of doing configuration, as configuration done by
30+ cloud-init might be overridden by a subsequent nixos-rebuild
31 call. However, some parts of cloud-init fall outside of
32 NixOS's responsibility, like filesystem resizing and ssh
33 public key provisioning, and cloud-init is useful for that
···66 `true`. String values must be quoted, integer and
67 boolean values must not. See
68 <https://git.deluge-torrent.org/deluge/tree/deluge/core/preferencesmanager.py#n41>
69- for the availaible options.
70 '';
71 };
72···117 when {option}`services.deluge.declarative` is set to
118 `true`.
119 See <https://dev.deluge-torrent.org/wiki/UserGuide/Authentication> for
120- more informations.
121 '';
122 };
123
···66 `true`. String values must be quoted, integer and
67 boolean values must not. See
68 <https://git.deluge-torrent.org/deluge/tree/deluge/core/preferencesmanager.py#n41>
69+ for the available options.
70 '';
71 };
72···117 when {option}`services.deluge.declarative` is set to
118 `true`.
119 See <https://dev.deluge-torrent.org/wiki/UserGuide/Authentication> for
120+ more information.
121 '';
122 };
123
+1-1
nixos/modules/services/torrent/magnetico.nix
···143 The path to the file holding the credentials to access the web
144 interface. If unset no authentication will be required.
145146- The file must constain user names and password hashes in the format
147 `username:hash `, one for each line. Usernames must
148 start with a lowecase ([a-z]) ASCII character, might contain
149 non-consecutive underscores except at the end, and consists of
···143 The path to the file holding the credentials to access the web
144 interface. If unset no authentication will be required.
145146+ The file must contain user names and password hashes in the format
147 `username:hash `, one for each line. Usernames must
148 start with a lowecase ([a-z]) ASCII character, might contain
149 non-consecutive underscores except at the end, and consists of
+1-1
nixos/modules/services/torrent/rtorrent.nix
···82 type = types.lines;
83 default = "";
84 description = lib.mdDoc ''
85- The content of {file}`rtorrent.rc`. The [modernized configuration template](https://rtorrent-docs.readthedocs.io/en/latest/cookbook.html#modernized-configuration-template) with the values specified in this module will be prepended using mkBefore. You can use mkForce to overwrite the config completly.
86 '';
87 };
88 };
···82 type = types.lines;
83 default = "";
84 description = lib.mdDoc ''
85+ The content of {file}`rtorrent.rc`. The [modernized configuration template](https://rtorrent-docs.readthedocs.io/en/latest/cookbook.html#modernized-configuration-template) with the values specified in this module will be prepended using mkBefore. You can use mkForce to overwrite the config completely.
86 '';
87 };
88 };
+2-2
nixos/modules/services/torrent/transmission.nix
···44 (each time the service starts).
4546 See [Transmission's Wiki](https://github.com/transmission/transmission/wiki/Editing-Configuration-Files)
47- for documentation of settings not explicitely covered by this module.
48 '';
49 default = {};
50 type = types.submodule {
···355 PrivateUsers = true;
356 ProtectClock = true;
357 ProtectControlGroups = true;
358- # ProtectHome=true would not allow BindPaths= to work accross /home,
359 # and ProtectHome=tmpfs would break statfs(),
360 # preventing transmission-daemon to report the available free space.
361 # However, RootDirectory= is used, so this is not a security concern
···44 (each time the service starts).
4546 See [Transmission's Wiki](https://github.com/transmission/transmission/wiki/Editing-Configuration-Files)
47+ for documentation of settings not explicitly covered by this module.
48 '';
49 default = {};
50 type = types.submodule {
···355 PrivateUsers = true;
356 ProtectClock = true;
357 ProtectControlGroups = true;
358+ # ProtectHome=true would not allow BindPaths= to work across /home,
359 # and ProtectHome=tmpfs would break statfs(),
360 # preventing transmission-daemon to report the available free space.
361 # However, RootDirectory= is used, so this is not a security concern
+1-1
nixos/modules/services/video/unifi-video.nix
···159 default = 1024;
160 example = 4096;
161 description = lib.mdDoc ''
162- Set the maximimum heap size for the JVM in MB.
163 '';
164 };
165
···159 default = 1024;
160 example = 4096;
161 description = lib.mdDoc ''
162+ Set the maximum heap size for the JVM in MB.
163 '';
164 };
165
···98 description = lib.mdDoc ''
99 Environment variables which are read by healthchecks `(local)_settings.py`.
100101- Settings which are explictly covered in options bewlow, are type-checked and/or transformed
102 before added to the environment, everything else is passed as a string.
103104 See <https://healthchecks.io/docs/self_hosted_configuration/>
···98 description = lib.mdDoc ''
99 Environment variables which are read by healthchecks `(local)_settings.py`.
100101+ Settings which are explicitly covered in options bewlow, are type-checked and/or transformed
102 before added to the environment, everything else is passed as a string.
103104 See <https://healthchecks.io/docs/self_hosted_configuration/>
···68 example = {
69 http = ":8000";
70 };
71- description = lib.mdDoc "Additionnal configuration of the UWSGI vassal running ihatemoney. It should notably specify on which interfaces and ports the vassal should listen.";
72 };
73 defaultSender = {
74 name = mkOption {
···68 example = {
69 http = ":8000";
70 };
71+ description = lib.mdDoc "Additional configuration of the UWSGI vassal running ihatemoney. It should notably specify on which interfaces and ports the vassal should listen.";
72 };
73 defaultSender = {
74 name = mkOption {
+1-1
nixos/modules/services/web-apps/invidious.nix
···171 description = lib.mdDoc ''
172 A file including Invidious settings.
173174- It gets merged with the setttings specified in {option}`services.invidious.settings`
175 and can be used to store secrets like `hmac_key` outside of the nix store.
176 '';
177 };
···171 description = lib.mdDoc ''
172 A file including Invidious settings.
173174+ It gets merged with the settings specified in {option}`services.invidious.settings`
175 and can be used to store secrets like `hmac_key` outside of the nix store.
176 '';
177 };
+1-1
nixos/modules/services/web-apps/invoiceplane.nix
···74 type = types.path;
75 default = "/var/lib/invoiceplane/${name}";
76 description = lib.mdDoc ''
77- This directory is used for uploads of attachements and cache.
78 The directory passed here is automatically created and permissions
79 adjusted as required.
80 '';
···74 type = types.path;
75 default = "/var/lib/invoiceplane/${name}";
76 description = lib.mdDoc ''
77+ This directory is used for uploads of attachments and cache.
78 The directory passed here is automatically created and permissions
79 adjusted as required.
80 '';
+1-1
nixos/modules/services/web-apps/jitsi-meet.nix
···28 '');
2930 # Essential config - it's probably not good to have these as option default because
31- # types.attrs doesn't do merging. Let's merge explicitly, can still be overriden if
32 # user desires.
33 defaultCfg = {
34 hosts = {
···28 '');
2930 # Essential config - it's probably not good to have these as option default because
31+ # types.attrs doesn't do merging. Let's merge explicitly, can still be overridden if
32 # user desires.
33 defaultCfg = {
34 hosts = {
+1-1
nixos/modules/services/web-apps/matomo.nix
···174 CURRENT_PACKAGE=$(readlink ${dataDir}/current-package)
175 NEW_PACKAGE=${cfg.package}
176 if [ "$CURRENT_PACKAGE" != "$NEW_PACKAGE" ]; then
177- # keeping tmp arround between upgrades seems to bork stuff, so delete it
178 rm -rf ${dataDir}/tmp
179 fi
180 elif [ -e ${dataDir}/tmp ]; then
···174 CURRENT_PACKAGE=$(readlink ${dataDir}/current-package)
175 NEW_PACKAGE=${cfg.package}
176 if [ "$CURRENT_PACKAGE" != "$NEW_PACKAGE" ]; then
177+ # keeping tmp around between upgrades seems to bork stuff, so delete it
178 rm -rf ${dataDir}/tmp
179 fi
180 elif [ -e ${dataDir}/tmp ]; then
+1-1
nixos/modules/services/web-apps/mattermost.nix
···170 type = types.attrs;
171 default = { };
172 description = lib.mdDoc ''
173- Addtional configuration options as Nix attribute set in config.json schema.
174 '';
175 };
176
···170 type = types.attrs;
171 default = { };
172 description = lib.mdDoc ''
173+ Additional configuration options as Nix attribute set in config.json schema.
174 '';
175 };
176
+1-1
nixos/modules/services/web-apps/mediawiki.nix
···129130 ## Set $wgCacheDirectory to a writable directory on the web server
131 ## to make your wiki go slightly faster. The directory should not
132- ## be publically accessible from the web.
133 $wgCacheDirectory = "${cacheDir}";
134135 # Site language code, should be one of the list in ./languages/data/Names.php
···129130 ## Set $wgCacheDirectory to a writable directory on the web server
131 ## to make your wiki go slightly faster. The directory should not
132+ ## be publicly accessible from the web.
133 $wgCacheDirectory = "${cacheDir}";
134135 # Site language code, should be one of the list in ./languages/data/Names.php
+1-1
nixos/modules/services/web-apps/netbox.nix
···135 type = types.path;
136 default = "";
137 description = lib.mdDoc ''
138- Path to the Configuration-File for LDAP-Authentification, will be loaded as `ldap_config.py`.
139 See the [documentation](https://netbox.readthedocs.io/en/stable/installation/6-ldap/#configuration) for possible options.
140 '';
141 };
···135 type = types.path;
136 default = "";
137 description = lib.mdDoc ''
138+ Path to the Configuration-File for LDAP-Authentication, will be loaded as `ldap_config.py`.
139 See the [documentation](https://netbox.readthedocs.io/en/stable/installation/6-ldap/#configuration) for possible options.
140 '';
141 };
+7-7
nixos/modules/services/web-apps/nextcloud.nix
···16 # disable default openssl extension
17 (lib.filter (e: e.pname != "php-openssl") enabled)
18 # use OpenSSL 1.1 for RC4 Nextcloud encryption if user
19- # has acknowledged the brokeness of the ciphers (RC4).
20 # TODO: remove when https://github.com/nextcloud/server/issues/32003 is fixed.
21 ++ (if cfg.enableBrokenCiphersForSSE then [ cfg.phpPackage.extensions.openssl-legacy ] else [ cfg.phpPackage.extensions.openssl ])
22 ++ optional cfg.enableImagemagick imagick
···76 * setting `listen.owner` & `listen.group` in the phpfpm-pool to a different value
7778 Further details about this can be found in the `Nextcloud`-section of the NixOS-manual
79- (which can be openend e.g. by running `nixos-help`).
80 '')
81 (mkRemovedOptionModule [ "services" "nextcloud" "disableImagemagick" ] ''
82 Use services.nextcloud.nginx.enableImagemagick instead.
···388 default = [];
389 description = lib.mdDoc ''
390 Trusted domains, from which the nextcloud installation will be
391- acessible. You don't need to add
392 `services.nextcloud.hostname` here.
393 '';
394 };
···698699 services.nextcloud.enableBrokenCiphersForSSE = false;
700701- If you need to use server-side encryption you can ignore this waring.
702 Otherwise you'd have to disable server-side encryption first in order
703 to be able to safely disable this option and get rid of this warning.
704 See <https://docs.nextcloud.com/server/latest/admin_manual/configuration_files/encryption_configuration.html#disabling-encryption> on how to achieve this.
···758759 nextcloud-setup = let
760 c = cfg.config;
761- writePhpArrary = a: "[${concatMapStringsSep "," (val: ''"${toString val}"'') a}]";
762 requiresReadSecretFunction = c.dbpassFile != null || c.objectstore.s3.enable;
763 objectstoreConfig = let s3 = c.objectstore.s3; in optionalString s3.enable ''
764 'objectstore' => [
···838 ''
839 }
840 'dbtype' => '${c.dbtype}',
841- 'trusted_domains' => ${writePhpArrary ([ cfg.hostName ] ++ c.extraTrustedDomains)},
842- 'trusted_proxies' => ${writePhpArrary (c.trustedProxies)},
843 ${optionalString (c.defaultPhoneRegion != null) "'default_phone_region' => '${c.defaultPhoneRegion}',"}
844 ${optionalString (nextcloudGreaterOrEqualThan "23") "'profile.enabled' => ${boolToString cfg.globalProfiles},"}
845 ${objectstoreConfig}
···16 # disable default openssl extension
17 (lib.filter (e: e.pname != "php-openssl") enabled)
18 # use OpenSSL 1.1 for RC4 Nextcloud encryption if user
19+ # has acknowledged the brokenness of the ciphers (RC4).
20 # TODO: remove when https://github.com/nextcloud/server/issues/32003 is fixed.
21 ++ (if cfg.enableBrokenCiphersForSSE then [ cfg.phpPackage.extensions.openssl-legacy ] else [ cfg.phpPackage.extensions.openssl ])
22 ++ optional cfg.enableImagemagick imagick
···76 * setting `listen.owner` & `listen.group` in the phpfpm-pool to a different value
7778 Further details about this can be found in the `Nextcloud`-section of the NixOS-manual
79+ (which can be opened e.g. by running `nixos-help`).
80 '')
81 (mkRemovedOptionModule [ "services" "nextcloud" "disableImagemagick" ] ''
82 Use services.nextcloud.nginx.enableImagemagick instead.
···388 default = [];
389 description = lib.mdDoc ''
390 Trusted domains, from which the nextcloud installation will be
391+ accessible. You don't need to add
392 `services.nextcloud.hostname` here.
393 '';
394 };
···698699 services.nextcloud.enableBrokenCiphersForSSE = false;
700701+ If you need to use server-side encryption you can ignore this warning.
702 Otherwise you'd have to disable server-side encryption first in order
703 to be able to safely disable this option and get rid of this warning.
704 See <https://docs.nextcloud.com/server/latest/admin_manual/configuration_files/encryption_configuration.html#disabling-encryption> on how to achieve this.
···758759 nextcloud-setup = let
760 c = cfg.config;
761+ writePhpArray = a: "[${concatMapStringsSep "," (val: ''"${toString val}"'') a}]";
762 requiresReadSecretFunction = c.dbpassFile != null || c.objectstore.s3.enable;
763 objectstoreConfig = let s3 = c.objectstore.s3; in optionalString s3.enable ''
764 'objectstore' => [
···838 ''
839 }
840 'dbtype' => '${c.dbtype}',
841+ 'trusted_domains' => ${writePhpArray ([ cfg.hostName ] ++ c.extraTrustedDomains)},
842+ 'trusted_proxies' => ${writePhpArray (c.trustedProxies)},
843 ${optionalString (c.defaultPhoneRegion != null) "'default_phone_region' => '${c.defaultPhoneRegion}',"}
844 ${optionalString (nextcloudGreaterOrEqualThan "23") "'profile.enabled' => ${boolToString cfg.globalProfiles},"}
845 ${objectstoreConfig}
+1-1
nixos/modules/services/web-apps/nextcloud.xml
···283284 <para>
285 If major-releases will be abandoned by upstream, we should check first if those are needed
286- in NixOS for a safe upgrade-path before removing those. In that case we shold keep those
287 packages, but mark them as insecure in an expression like this (in
288 <literal><nixpkgs/pkgs/servers/nextcloud/default.nix></literal>):
289<programlisting>/* ... */
···283284 <para>
285 If major-releases will be abandoned by upstream, we should check first if those are needed
286+ in NixOS for a safe upgrade-path before removing those. In that case we should keep those
287 packages, but mark them as insecure in an expression like this (in
288 <literal><nixpkgs/pkgs/servers/nextcloud/default.nix></literal>):
289<programlisting>/* ... */
+1-1
nixos/modules/services/web-apps/onlyoffice.nix
···54 postgresName = mkOption {
55 type = types.str;
56 default = "onlyoffice";
57- description = lib.mdDoc "The name of databse OnlyOffice should user.";
58 };
5960 postgresPasswordFile = mkOption {
···54 postgresName = mkOption {
55 type = types.str;
56 default = "onlyoffice";
57+ description = lib.mdDoc "The name of database OnlyOffice should user.";
58 };
5960 postgresPasswordFile = mkOption {
+1-1
nixos/modules/services/web-apps/outline.nix
···465 options = {
466 host = lib.mkOption {
467 type = lib.types.str;
468- description = lib.mdDoc "Host name or IP adress of the SMTP server.";
469 };
470 port = lib.mkOption {
471 type = lib.types.port;
···465 options = {
466 host = lib.mkOption {
467 type = lib.types.str;
468+ description = lib.mdDoc "Host name or IP address of the SMTP server.";
469 };
470 port = lib.mkOption {
471 type = lib.types.port;
···130 ldapConfigPath = mkOption {
131 type = types.path;
132 description = lib.mdDoc ''
133- Path to the Configuration-File for LDAP-Authentification, will be loaded as `ldap_config.py`.
134 See the [documentation](https://peering-manager.readthedocs.io/en/stable/setup/6-ldap/#configuration) for possible options.
135 '';
136 };
···130 ldapConfigPath = mkOption {
131 type = types.path;
132 description = lib.mdDoc ''
133+ Path to the Configuration-File for LDAP-Authentication, will be loaded as `ldap_config.py`.
134 See the [documentation](https://peering-manager.readthedocs.io/en/stable/setup/6-ldap/#configuration) for possible options.
135 '';
136 };
···41 defaultText = literalExpression "head config.${sksOpt.hkpAddress}";
42 type = types.str;
43 description = lib.mdDoc ''
44- Wich ip address the sks-keyserver is listening on.
45 '';
46 };
47
···41 defaultText = literalExpression "head config.${sksOpt.hkpAddress}";
42 type = types.str;
43 description = lib.mdDoc ''
44+ Which IP address the sks-keyserver is listening on.
45 '';
46 };
47
···49 Replacement-filepath mapping for sogo.conf.
50 Every key is replaced with the contents of the file specified as value.
5152- In the example, every occurence of LDAP_BINDPW will be replaced with the text of the
53 specified file.
54 '';
55 type = attrsOf str;
···49 Replacement-filepath mapping for sogo.conf.
50 Every key is replaced with the contents of the file specified as value.
5152+ In the example, every occurrence of LDAP_BINDPW will be replaced with the text of the
53 specified file.
54 '';
55 type = attrsOf str;
+1-1
nixos/modules/services/web-apps/wiki-js.nix
···17 default = null;
18 example = "/root/wiki-js.env";
19 description = lib.mdDoc ''
20- Environment fiel to inject e.g. secrets into the configuration.
21 '';
22 };
23
···17 default = null;
18 example = "/root/wiki-js.env";
19 description = lib.mdDoc ''
20+ Environment file to inject e.g. secrets into the configuration.
21 '';
22 };
23
+1-1
nixos/modules/services/web-servers/agate.nix
···43 type = types.listOf types.str;
44 description = lib.mdDoc ''
45 Domain name of this Gemini server, enables checking hostname and port
46- in requests. (multiple occurences means basic vhosts)
47 '';
48 };
49
···43 type = types.listOf types.str;
44 description = lib.mdDoc ''
45 Domain name of this Gemini server, enables checking hostname and port
46+ in requests. (multiple occurrences means basic vhosts)
47 '';
48 };
49
···6162 description = lib.mdDoc ''
63 Listen addresses for this virtual host.
64- Compared to `listen` this only sets the addreses
65 and the ports are chosen automatically.
66 '';
67 default = [ "*" ];
···6162 description = lib.mdDoc ''
63 Listen addresses for this virtual host.
64+ Compared to `listen` this only sets the addresses
65 and the ports are chosen automatically.
66 '';
67 default = [ "*" ];
···140141 # On deploy this will load our app, by moving it into the incoming dir
142 # If the bundle content changes, this will run again.
143- # Because the bundle content contains the nix path to the exectuable,
144 # we inherit nix based cache busting.
145 systemd.services.load-keter-bundle = {
146 description = "load keter bundle into incoming folder";
···140141 # On deploy this will load our app, by moving it into the incoming dir
142 # If the bundle content changes, this will run again.
143+ # Because the bundle content contains the nix path to the executable,
144 # we inherit nix based cache busting.
145 systemd.services.load-keter-bundle = {
146 description = "load keter bundle into incoming folder";
···5455 description = lib.mdDoc ''
56 Listen addresses for this virtual host.
57- Compared to `listen` this only sets the addreses
58- and the ports are choosen automatically.
5960 Note: This option overrides `enableIPv6`
61 '';
···5455 description = lib.mdDoc ''
56 Listen addresses for this virtual host.
57+ Compared to `listen` this only sets the addresses
58+ and the ports are chosen automatically.
5960 Note: This option overrides `enableIPv6`
61 '';
+1-1
nixos/modules/services/web-servers/ttyd.nix
···163 assertions =
164 [ { assertion = cfg.enableSSL
165 -> cfg.certFile != null && cfg.keyFile != null && cfg.caFile != null;
166- message = "SSL is enabled for ttyd, but no certFile, keyFile or caFile has been specefied."; }
167 { assertion = ! (cfg.interface != null && cfg.socket != null);
168 message = "Cannot set both interface and socket for ttyd."; }
169 { assertion = (cfg.username != null) == (cfg.passwordFile != null);
···163 assertions =
164 [ { assertion = cfg.enableSSL
165 -> cfg.certFile != null && cfg.keyFile != null && cfg.caFile != null;
166+ message = "SSL is enabled for ttyd, but no certFile, keyFile or caFile has been specified."; }
167 { assertion = ! (cfg.interface != null && cfg.socket != null);
168 message = "Cannot set both interface and socket for ttyd."; }
169 { assertion = (cfg.username != null) == (cfg.passwordFile != null);
+1-1
nixos/modules/services/web-servers/zope2.nix
···95 };
96 }
97 '';
98- description = lib.mdDoc "zope2 instances to be created automaticaly by the system.";
99 };
100 };
101
···95 };
96 }
97 '';
98+ description = lib.mdDoc "zope2 instances to be created automatically by the system.";
99 };
100 };
101
···123 };
124 };
125 description = lib.mdDoc ''
126- Extra settings merged in and overwritting defaults in sddm.conf.
127 '';
128 };
129
···123 };
124 };
125 description = lib.mdDoc ''
126+ Extra settings merged in and overwriting defaults in sddm.conf.
127 '';
128 };
129
+1-1
nixos/modules/services/x11/hardware/libinput.nix
···171 lib.mdDoc ''
172 Enables or disables drag lock during tapping behavior. When enabled, a finger up during tap-
173 and-drag will not immediately release the button. If the finger is set down again within the
174- timeout, the draging process continues.
175 '';
176 };
177
···171 lib.mdDoc ''
172 Enables or disables drag lock during tapping behavior. When enabled, a finger up during tap-
173 and-drag will not immediately release the button. If the finger is set down again within the
174+ timeout, the dragging process continues.
175 '';
176 };
177
+2-2
nixos/modules/services/x11/imwheel.nix
···37 Window class translation rules.
38 /etc/X11/imwheelrc is generated based on this config
39 which means this config is global for all users.
40- See [offical man pages](http://imwheel.sourceforge.net/imwheel.1.html)
41- for more informations.
42 '';
43 };
44 };
···37 Window class translation rules.
38 /etc/X11/imwheelrc is generated based on this config
39 which means this config is global for all users.
40+ See [official man pages](http://imwheel.sourceforge.net/imwheel.1.html)
41+ for more information.
42 '';
43 };
44 };
+1-1
nixos/modules/services/x11/xautolock.nix
···71 type = types.nullOr types.str;
7273 description = lib.mdDoc ''
74- The script to use when nothing has happend for as long as {option}`killtime`
75 '';
76 };
77
···71 type = types.nullOr types.str;
7273 description = lib.mdDoc ''
74+ The script to use when nothing has happened for as long as {option}`killtime`
75 '';
76 };
77
+1-1
nixos/modules/virtualisation/appvm.nix
···20 user = mkOption {
21 type = types.str;
22 description = lib.mdDoc ''
23- AppVM user login. Currenly only AppVMs are supported for a single user only.
24 '';
25 };
26 };
···20 user = mkOption {
21 type = types.str;
22 description = lib.mdDoc ''
23+ AppVM user login. Currently only AppVMs are supported for a single user only.
24 '';
25 };
26 };
+1-1
nixos/modules/virtualisation/proxmox-image.nix
···28 default = "local-lvm:vm-9999-disk-0";
29 example = "ceph:vm-123-disk-0";
30 description = lib.mdDoc ''
31- Configuration for the default virtio disk. It can be used as a cue for PVE to autodetect the target sotrage.
32 This parameter is required by PVE even if it isn't used.
33 '';
34 };
···28 default = "local-lvm:vm-9999-disk-0";
29 example = "ceph:vm-123-disk-0";
30 description = lib.mdDoc ''
31+ Configuration for the default virtio disk. It can be used as a cue for PVE to autodetect the target storage.
32 This parameter is required by PVE even if it isn't used.
33 '';
34 };
···277 };
278 };
279280- # Test compatiblity with Caddy
281 # It only supports useACMEHost, hence not using mkServerConfigs
282 } // (let
283 baseCaddyConfig = { nodes, config, ... }: {
···277 };
278 };
279280+ # Test compatibility with Caddy
281 # It only supports useACMEHost, hence not using mkServerConfigs
282 } // (let
283 baseCaddyConfig = { nodes, config, ... }: {
+1-1
nixos/tests/cockroachdb.nix
···8# Cluster joins that are outside this window will fail, and nodes that skew
9# outside the window after joining will promptly get kicked out.
10#
11-# To accomodate this, we use QEMU/virtio infrastructure and load the 'ptp_kvm'
12# driver inside a guest. This driver allows the host machine to pass its clock
13# through to the guest as a hardware clock that appears as a Precision Time
14# Protocol (PTP) Clock device, generally /dev/ptp0. PTP devices can be measured
···8# Cluster joins that are outside this window will fail, and nodes that skew
9# outside the window after joining will promptly get kicked out.
10#
11+# To accommodate this, we use QEMU/virtio infrastructure and load the 'ptp_kvm'
12# driver inside a guest. This driver allows the host machine to pass its clock
13# through to the guest as a hardware clock that appears as a Precision Time
14# Protocol (PTP) Clock device, generally /dev/ptp0. PTP devices can be measured
+1-1
nixos/tests/common/ec2.nix
···46 # Note: we use net=169.0.0.0/8 rather than
47 # net=169.254.0.0/16 to prevent dhcpcd from getting horribly
48 # confused. (It would get a DHCP lease in the 169.254.*
49- # range, which it would then configure and prompty delete
50 # again when it deletes link-local addresses.) Ideally we'd
51 # turn off the DHCP server, but qemu does not have an option
52 # to do that.
···46 # Note: we use net=169.0.0.0/8 rather than
47 # net=169.254.0.0/16 to prevent dhcpcd from getting horribly
48 # confused. (It would get a DHCP lease in the 169.254.*
49+ # range, which it would then configure and promptly delete
50 # again when it deletes link-local addresses.) Ideally we'd
51 # turn off the DHCP server, but qemu does not have an option
52 # to do that.
···120 start_all()
121122 # Parse the package path out of the systemd unit, as we cannot
123- # access the final package, that is overriden inside the module,
124 # by any other means.
125 pattern = re.compile(r"path=(?P<path>[\/a-z0-9-.]+)\/bin\/hass")
126 response = hass.execute("systemctl show -p ExecStart home-assistant.service")[1]
···120 start_all()
121122 # Parse the package path out of the systemd unit, as we cannot
123+ # access the final package, that is overridden inside the module,
124 # by any other means.
125 pattern = re.compile(r"path=(?P<path>[\/a-z0-9-.]+)\/bin\/hass")
126 response = hass.execute("systemctl show -p ExecStart home-assistant.service")[1]
+1-1
nixos/tests/networking-proxy.nix
···37 default-config //
38 {
39 networking.proxy = {
40- # useless because overriden by the next options
41 default = "http://user:pass@host:port";
42 # advanced proxy setup
43 httpProxy = "123-http://user:pass@http-host:port";
···37 default-config //
38 {
39 networking.proxy = {
40+ # useless because overridden by the next options
41 default = "http://user:pass@host:port";
42 # advanced proxy setup
43 httpProxy = "123-http://user:pass@http-host:port";
+1-1
nixos/tests/pgadmin4-standalone.nix
···1import ./make-test-python.nix ({ pkgs, lib, ... }:
2- # This is seperate from pgadmin4 since we don't want both running at once
34 {
5 name = "pgadmin4-standalone";
···1import ./make-test-python.nix ({ pkgs, lib, ... }:
2+ # This is separate from pgadmin4 since we don't want both running at once
34 {
5 name = "pgadmin4-standalone";
+1-1
nixos/tests/pgadmin4.nix
···106 && sed -i 's|driver_local.maximize_window()||' web/regression/runtests.py"
107 )
108109- # Don't bother to test LDAP or kerberos authentification
110 with subtest("run browser test"):
111 machine.succeed(
112 'cd ${pgadmin4SrcDir}/pgadmin4-${pkgs.pgadmin4.version}/web \
···106 && sed -i 's|driver_local.maximize_window()||' web/regression/runtests.py"
107 )
108109+ # Don't bother to test LDAP or kerberos authentication
110 with subtest("run browser test"):
111 machine.succeed(
112 'cd ${pgadmin4SrcDir}/pgadmin4-${pkgs.pgadmin4.version}/web \
+1-1
nixos/tests/vaultwarden.nix
···164 with subtest("configure the cli"):
165 client.succeed("bw --nointeraction config server http://server")
166167- with subtest("can't login to nonexistant account"):
168 client.fail(
169 "bw --nointeraction --raw login ${userEmail} ${userPassword}"
170 )
···164 with subtest("configure the cli"):
165 client.succeed("bw --nointeraction config server http://server")
166167+ with subtest("can't login to nonexistent account"):
168 client.fail(
169 "bw --nointeraction --raw login ${userEmail} ${userPassword}"
170 )
+1-1
pkgs/applications/audio/mp3val/default.nix
···24 files' integrity. It can be useful for finding corrupted files (e.g.
25 incompletely downloaded, truncated, containing garbage). MP3val is
26 also able to fix most of the problems. Being a multiplatform application,
27- MP3val can be runned both under Windows and under Linux (or BSD). The most
28 common MPEG audio file type is MPEG 1 Layer III (mp3), but MP3val supports
29 also other MPEG versions and layers. The tool is also aware of the most
30 common types of tags (ID3v1, ID3v2, APEv2).
···24 files' integrity. It can be useful for finding corrupted files (e.g.
25 incompletely downloaded, truncated, containing garbage). MP3val is
26 also able to fix most of the problems. Being a multiplatform application,
27+ MP3val can be run both under Windows and under Linux (or BSD). The most
28 common MPEG audio file type is MPEG 1 Layer III (mp3), but MP3val supports
29 also other MPEG versions and layers. The tool is also aware of the most
30 common types of tags (ID3v1, ID3v2, APEv2).
···1# Deprecated aliases - for backward compatibility
23-lib: overriden:
45-with overriden;
67let
8 # Removing recurseForDerivation prevents derivations of aliased attribute
···2122 # Make sure that we are not shadowing something from
23 # all-packages.nix.
24- checkInPkgs = n: alias: if builtins.hasAttr n overriden
25 then throw "Alias ${n} is still in kakounePlugins"
26 else alias;
27
···1# Deprecated aliases - for backward compatibility
23+lib: overridden:
45+with overridden;
67let
8 # Removing recurseForDerivation prevents derivations of aliased attribute
···2122 # Make sure that we are not shadowing something from
23 # all-packages.nix.
24+ checkInPkgs = n: alias: if builtins.hasAttr n overridden
25 then throw "Alias ${n} is still in kakounePlugins"
26 else alias;
27
···133 };
134 jdk = jdk8_headless;
135 # not using native libs because of broken openssl_1_0_2 dependency
136- # can be manually overriden
137 tests = nixosTests.hadoop_3_2;
138 };
139 hadoop2 = common rec {
···133 };
134 jdk = jdk8_headless;
135 # not using native libs because of broken openssl_1_0_2 dependency
136+ # can be manually overridden
137 tests = nixosTests.hadoop_3_2;
138 };
139 hadoop2 = common rec {
···12, gsettings-desktop-schemas
13, glib
14, gobject-introspection
15-# Available plugins (can be overriden)
16, availablePlugins
17# Used in the withPlugins interface at passthru, can be overrided directly, or
18# prefarably via e.g: `mailnag.withPlugins([mailnag.availablePlugins.goa])`
···12, gsettings-desktop-schemas
13, glib
14, gobject-introspection
15+# Available plugins (can be overridden)
16, availablePlugins
17# Used in the withPlugins interface at passthru, can be overrided directly, or
18# prefarably via e.g: `mailnag.withPlugins([mailnag.availablePlugins.goa])`
+1-1
pkgs/applications/radio/gnuradio/3.8.nix
···250 })
251 ];
252 passthru = shared.passthru // {
253- # Deps that are potentially overriden and are used inside GR plugins - the same version must
254 inherit
255 boost
256 volk
···250 })
251 ];
252 passthru = shared.passthru // {
253+ # Deps that are potentially overridden and are used inside GR plugins - the same version must
254 inherit
255 boost
256 volk
+1-1
pkgs/applications/radio/gnuradio/3.9.nix
···280 ./modtool-newmod-permissions.patch
281 ];
282 passthru = shared.passthru // {
283- # Deps that are potentially overriden and are used inside GR plugins - the same version must
284 inherit
285 boost
286 volk
···280 ./modtool-newmod-permissions.patch
281 ];
282 passthru = shared.passthru // {
283+ # Deps that are potentially overridden and are used inside GR plugins - the same version must
284 inherit
285 boost
286 volk
+1-1
pkgs/applications/radio/gnuradio/default.nix
···299 ./modtool-newmod-permissions.patch
300 ];
301 passthru = shared.passthru // {
302- # Deps that are potentially overriden and are used inside GR plugins - the same version must
303 inherit
304 boost
305 volk
···299 ./modtool-newmod-permissions.patch
300 ];
301 passthru = shared.passthru // {
302+ # Deps that are potentially overridden and are used inside GR plugins - the same version must
303 inherit
304 boost
305 volk
+1-1
pkgs/applications/radio/gnuradio/shared.nix
···7, features
8, versionAttr
9, sourceSha256
10-# If overriden. No need to set default values, as they are given defaults in
11# the main expressions
12, overrideSrc
13, fetchFromGitHub
···7, features
8, versionAttr
9, sourceSha256
10+# If overridden. No need to set default values, as they are given defaults in
11# the main expressions
12, overrideSrc
13, fetchFromGitHub
···1{ lib, stdenv, fetchpatch, fetchFromGitHub, cmake, zlib, gmp, jdk8,
2- # The JDK we use on Darwin currenly makes extensive use of rpaths which are
3 # annoying and break the python library, so let's not bother for now
4 includeJava ? !stdenv.hostPlatform.isDarwin, includeGplCode ? true }:
5
···1{ lib, stdenv, fetchpatch, fetchFromGitHub, cmake, zlib, gmp, jdk8,
2+ # The JDK we use on Darwin currently makes extensive use of rpaths which are
3 # annoying and break the python library, so let's not bother for now
4 includeJava ? !stdenv.hostPlatform.isDarwin, includeGplCode ? true }:
5
+1-1
pkgs/applications/science/math/LiE/default.nix
···15 longDescription = ''
16 LiE is a computer algebra system that is specialised in computations
17 involving (reductive) Lie groups and their representations. It is
18- publically available for free in source code. For a description of its
19 characteristics, we refer to the following sources of information.
20 ''; # take from the website
21
···15 longDescription = ''
16 LiE is a computer algebra system that is specialised in computations
17 involving (reductive) Lie groups and their representations. It is
18+ publicly available for free in source code. For a description of its
19 characteristics, we refer to the following sources of information.
20 ''; # take from the website
21
···35 for pack in ${lib.concatStringsSep " " packages}; do make "yes-$pack" SHELL=$SHELL; done
36 '';
3738- # Must do manual build due to LAMMPS requiring a seperate build for
39 # the libraries and executable. Also non-typical make script
40 buildPhase = ''
41 make mode=exe ${if withMPI then "mpi" else "serial"} SHELL=$SHELL LMP_INC="${lammps_includes}" FFT_PATH=-DFFT_FFTW3 FFT_LIB=-lfftw3 JPG_LIB=-lpng
···35 for pack in ${lib.concatStringsSep " " packages}; do make "yes-$pack" SHELL=$SHELL; done
36 '';
3738+ # Must do manual build due to LAMMPS requiring a separate build for
39 # the libraries and executable. Also non-typical make script
40 buildPhase = ''
41 make mode=exe ${if withMPI then "mpi" else "serial"} SHELL=$SHELL LMP_INC="${lammps_includes}" FFT_PATH=-DFFT_FFTW3 FFT_LIB=-lfftw3 JPG_LIB=-lpng
+1-1
pkgs/applications/video/epgstation/update.nix
···39 # Fix issue with old sqlite3 version pinned that depends on very old node-gyp 3.x
40 ${gnused}/bin/sed -i -e 's/"sqlite3":\s*"5.0.[0-9]\+"/"sqlite3": "5.0.11"/' package.json
4142- # Regenerate node packages to update the pre-overriden epgstation derivation.
43 # This must come *after* package.json has been regenerated.
44 pushd ../../../development/node-packages
45 ./generate.sh
···39 # Fix issue with old sqlite3 version pinned that depends on very old node-gyp 3.x
40 ${gnused}/bin/sed -i -e 's/"sqlite3":\s*"5.0.[0-9]\+"/"sqlite3": "5.0.11"/' package.json
4142+ # Regenerate node packages to update the pre-overridden epgstation derivation.
43 # This must come *after* package.json has been regenerated.
44 pushd ../../../development/node-packages
45 ./generate.sh
+1-1
pkgs/applications/video/kodi/unwrapped.nix
···34, buildPackages
35}:
3637-assert usbSupport -> !udevSupport; # libusb-compat-0_1 won't be used if udev is avaliable
38assert gbmSupport || waylandSupport || x11Support;
3940let
···34, buildPackages
35}:
3637+assert usbSupport -> !udevSupport; # libusb-compat-0_1 won't be used if udev is available
38assert gbmSupport || waylandSupport || x11Support;
3940let
···70 python3.pkgs.pytestCheckHook
71 ];
7273- # make the package's module avalaible
74 preCheck = ''
75 export PYTHONPATH="$PYTHONPATH:../python"
76 '';
···70 python3.pkgs.pytestCheckHook
71 ];
7273+ # make the package's module available
74 preCheck = ''
75 export PYTHONPATH="$PYTHONPATH:../python"
76 '';
+1-1
pkgs/build-support/docker/default.nix
···879 contentsList = if builtins.isList contents then contents else [ contents ];
880881 # We store the customisation layer as a tarball, to make sure that
882- # things like permissions set on 'extraCommands' are not overriden
883 # by Nix. Then we precompute the sha256 for performance.
884 customisationLayer = symlinkJoin {
885 name = "${baseName}-customisation-layer";
···879 contentsList = if builtins.isList contents then contents else [ contents ];
880881 # We store the customisation layer as a tarball, to make sure that
882+ # things like permissions set on 'extraCommands' are not overridden
883 # by Nix. Then we precompute the sha256 for performance.
884 customisationLayer = symlinkJoin {
885 name = "${baseName}-customisation-layer";
···111 deps = [ _nugetDeps ] ++ lib.optional (localDeps != null) localDeps;
112 };
113114- # this contains all the nuget packages that are implictly referenced by the dotnet
115 # build system. having them as separate deps allows us to avoid having to regenerate
116 # a packages dependencies when the dotnet-sdk version changes
117 sdkDeps = mkNugetDeps {
···111 deps = [ _nugetDeps ] ++ lib.optional (localDeps != null) localDeps;
112 };
113114+ # this contains all the nuget packages that are implicitly referenced by the dotnet
115 # build system. having them as separate deps allows us to avoid having to regenerate
116 # a packages dependencies when the dotnet-sdk version changes
117 sdkDeps = mkNugetDeps {
···1718stdenv.mkDerivation (
1920- # First, attributes that can be overriden by the caller (via args):
21 {
22 # By default, only configure and build a source distribution.
23 # Some packages can only build a distribution after a general
···1718stdenv.mkDerivation (
1920+ # First, attributes that can be overridden by the caller (via args):
21 {
22 # By default, only configure and build a source distribution.
23 # Some packages can only build a distribution after a general
···576 expectedFiles = [
577 "./bin/test_binary1"
578 ] ++ lib.optionals stdenv.isDarwin [
579- # On Darwin, the debug symbols are in a seperate directory.
580 "./bin/test_binary1.dSYM/Contents/Info.plist"
581 "./bin/test_binary1.dSYM/Contents/Resources/DWARF/test_binary1"
582 ];
···576 expectedFiles = [
577 "./bin/test_binary1"
578 ] ++ lib.optionals stdenv.isDarwin [
579+ # On Darwin, the debug symbols are in a separate directory.
580 "./bin/test_binary1.dSYM/Contents/Info.plist"
581 "./bin/test_binary1.dSYM/Contents/Resources/DWARF/test_binary1"
582 ];
···2931 /* Returns a crate which depends on successful test execution
2932 of crate given as the second argument.
29332934- testCrateFlags: list of flags to pass to the test exectuable
2935 testInputs: list of packages that should be available during test execution
2936 */
2937 crateWithTest = { crate, testCrate, testCrateFlags, testInputs, testPreRun, testPostRun }:
···2931 /* Returns a crate which depends on successful test execution
2932 of crate given as the second argument.
29332934+ testCrateFlags: list of flags to pass to the test executable
2935 testInputs: list of packages that should be available during test execution
2936 */
2937 crateWithTest = { crate, testCrate, testCrateFlags, testInputs, testPreRun, testPostRun }:
+1-1
pkgs/build-support/vm/default.nix
···1156 of the default image parameters can be given. In particular,
1157 `extraPackages' specifies the names of additional packages from
1158 the distribution that should be included in the image; `packages'
1159- allows the entire set of packages to be overriden; and `size'
1160 sets the size of the disk in megabytes. E.g.,
1161 `diskImageFuns.ubuntu1004x86_64 { extraPackages = ["firefox"];
1162 size = 8192; }' builds an 8 GiB image containing Firefox in
···1156 of the default image parameters can be given. In particular,
1157 `extraPackages' specifies the names of additional packages from
1158 the distribution that should be included in the image; `packages'
1159+ allows the entire set of packages to be overridden; and `size'
1160 sets the size of the disk in megabytes. E.g.,
1161 `diskImageFuns.ubuntu1004x86_64 { extraPackages = ["firefox"];
1162 size = 8192; }' builds an 8 GiB image containing Firefox in
+1-1
pkgs/data/fonts/google-fonts/default.nix
···8 pname = "google-fonts";
9 version = "unstable-2022-11-14";
1011- # Adobe Blank is split out in a seperate output,
12 # because it causes crashes with `libfontconfig`.
13 # It has an absurd number of symbols
14 outputs = [ "out" "adobeBlank" ];
···8 pname = "google-fonts";
9 version = "unstable-2022-11-14";
1011+ # Adobe Blank is split out in a separate output,
12 # because it causes crashes with `libfontconfig`.
13 # It has an absurd number of symbols
14 outputs = [ "out" "adobeBlank" ];
+1-1
pkgs/data/fonts/profont/default.nix
···5 version = "2019-11";
67 # Note: stripRoot doesn't work because the archive
8- # constains the metadata directory `__MACOSX`.
9 src = fetchzip {
10 url = "https://tobiasjung.name/downloadfile.php?file=profont-x11.zip";
11 sha256 = "12dbm87wvcpmn7nzgzwlk45cybp091diara8blqm6129ps27z6kb";
···5 version = "2019-11";
67 # Note: stripRoot doesn't work because the archive
8+ # contains the metadata directory `__MACOSX`.
9 src = fetchzip {
10 url = "https://tobiasjung.name/downloadfile.php?file=profont-x11.zip";
11 sha256 = "12dbm87wvcpmn7nzgzwlk45cybp091diara8blqm6129ps27z6kb";
+1-1
pkgs/data/fonts/tamzen/default.nix
···22 meta = with lib; {
23 description = "Bitmapped programming font based on Tamsyn";
24 longDescription = ''
25- Tamzen is a monospace bitmap font. It is programatically forked
26 from Tamsyn version 1.11, which backports glyphs from older
27 versions while deleting deliberately empty glyphs to allow
28 secondary/fallback fonts to provide real glyphs at those codepoints.
···22 meta = with lib; {
23 description = "Bitmapped programming font based on Tamsyn";
24 longDescription = ''
25+ Tamzen is a monospace bitmap font. It is programmatically forked
26 from Tamsyn version 1.11, which backports glyphs from older
27 versions while deleting deliberately empty glyphs to allow
28 secondary/fallback fonts to provide real glyphs at those codepoints.
+1-1
pkgs/data/misc/cacert/update.sh
···1#!/usr/bin/env nix-shell
2#!nix-shell -i bash -p nix common-updater-scripts jq
34-# Build both the cacert package and an overriden version where we use the source attribute of NSS.
5# Cacert and NSS are both from the same upstream sources. They are decoupled as
6# the cacert output only cares about a few infrequently changing files in the
7# sources while the NSS source code changes frequently.
···1#!/usr/bin/env nix-shell
2#!nix-shell -i bash -p nix common-updater-scripts jq
34+# Build both the cacert package and an overridden version where we use the source attribute of NSS.
5# Cacert and NSS are both from the same upstream sources. They are decoupled as
6# the cacert output only cares about a few infrequently changing files in the
7# sources while the NSS source code changes frequently.
+1-1
pkgs/desktops/enlightenment/efl/default.nix
···147 mesonFlags = [
148 "--buildtype=release"
149 "-D build-tests=false" # disable build tests, which are not working
150- "-D ecore-imf-loaders-disabler=ibus,scim" # ibus is disabled by default, scim is not availabe in nixpkgs
151 "-D embedded-lz4=false"
152 "-D fb=true"
153 "-D network-backend=connman"
···147 mesonFlags = [
148 "--buildtype=release"
149 "-D build-tests=false" # disable build tests, which are not working
150+ "-D ecore-imf-loaders-disabler=ibus,scim" # ibus is disabled by default, scim is not available in nixpkgs
151 "-D embedded-lz4=false"
152 "-D fb=true"
153 "-D network-backend=connman"
···28 # Upstream relies on /etc/skel to initiate a new users home directory with plank's dockitems.
29 #
30 # That is not possible within nixos, but we can achieve this easily with a simple script that copies
31- # them. We then use a xdg autostart and initalize it during the "EarlyInitialization" phase of a gnome session
32 # which is most appropriate for installing files into $HOME.
33 #
34
···28 # Upstream relies on /etc/skel to initiate a new users home directory with plank's dockitems.
29 #
30 # That is not possible within nixos, but we can achieve this easily with a simple script that copies
31+ # them. We then use a xdg autostart and initialize it during the "EarlyInitialization" phase of a gnome session
32 # which is most appropriate for installing files into $HOME.
33 #
34
+2-2
pkgs/development/compilers/dotnet/update.sh
···91 # would fail due to missing dependencies.
92 #
93 # Moving them to a separate list stored alongside the SDK package definitions,
94- # and implictly including them along in buildDotnetModule allows us
95 # to make updating .NET SDK packages a lot easier - we now just update
96 # the versions of these packages in one place, and all packages that
97 # use buildDotnetModule continue building with the new .NET version without changes.
···141 # would fail due to missing dependencies.
142 #
143 # Moving them to a separate list stored alongside the SDK package definitions,
144- # and implictly including them along in buildDotnetModule allows us
145 # to make updating .NET SDK packages a lot easier - we now just update
146 # the versions of these packages in one place, and all packages that
147 # use buildDotnetModule continue building with the new .NET version without changes.
···91 # would fail due to missing dependencies.
92 #
93 # Moving them to a separate list stored alongside the SDK package definitions,
94+ # and implicitly including them along in buildDotnetModule allows us
95 # to make updating .NET SDK packages a lot easier - we now just update
96 # the versions of these packages in one place, and all packages that
97 # use buildDotnetModule continue building with the new .NET version without changes.
···141 # would fail due to missing dependencies.
142 #
143 # Moving them to a separate list stored alongside the SDK package definitions,
144+ # and implicitly including them along in buildDotnetModule allows us
145 # to make updating .NET SDK packages a lot easier - we now just update
146 # the versions of these packages in one place, and all packages that
147 # use buildDotnetModule continue building with the new .NET version without changes.
+1-1
pkgs/development/compilers/elm/default.nix
···23let
45- # To controll nodejs version we pass down
6 nodejs = pkgs.nodejs-14_x;
78 fetchElmDeps = pkgs.callPackage ./fetchElmDeps.nix { };
···23let
45+ # To control nodejs version we pass down
6 nodejs = pkgs.nodejs-14_x;
78 fetchElmDeps = pkgs.callPackage ./fetchElmDeps.nix { };
+1-1
pkgs/development/compilers/gcc/4.9/default.nix
···147148 hardeningDisable = [ "format" "pie" ];
149150- # When targetting darwin, libgcc_ext.10.{4,5}.dylib are created as
151 # MH_DYLIB_STUB files, which install_name_tool can't change, so we
152 # get a cycle between $out and $lib.
153 outputs = if langJava || langGo || targetPlatform.isDarwin then ["out" "man" "info"]
···147148 hardeningDisable = [ "format" "pie" ];
149150+ # When targeting darwin, libgcc_ext.10.{4,5}.dylib are created as
151 # MH_DYLIB_STUB files, which install_name_tool can't change, so we
152 # get a cycle between $out and $lib.
153 outputs = if langJava || langGo || targetPlatform.isDarwin then ["out" "man" "info"]
···16 # };
17 # }
18 config
19- # GraalVM version that will be used unless overriden by `config.<platform>.version`
20, defaultVersion
21 # Java version used by GraalVM
22, javaVersion
···16 # };
17 # }
18 config
19+ # GraalVM version that will be used unless overridden by `config.<platform>.version`
20, defaultVersion
21 # Java version used by GraalVM
22, javaVersion
+1-1
pkgs/development/haskell-modules/lib/compose.nix
···355 */
356 triggerRebuild = i: overrideCabal (drv: { postUnpack = ": trigger rebuild ${toString i}"; });
357358- /* Override the sources for the package and optionaly the version.
359 This also takes of removing editedCabalFile.
360 */
361 overrideSrc = { src, version ? null }: drv:
···355 */
356 triggerRebuild = i: overrideCabal (drv: { postUnpack = ": trigger rebuild ${toString i}"; });
357358+ /* Override the sources for the package and optionally the version.
359 This also takes of removing editedCabalFile.
360 */
361 overrideSrc = { src, version ? null }: drv:
+1-1
pkgs/development/haskell-modules/lib/default.nix
···279 */
280 triggerRebuild = drv: i: compose.triggerRebuild i drv;
281282- /* Override the sources for the package and optionaly the version.
283 This also takes of removing editedCabalFile.
284 */
285 overrideSrc = drv: src: compose.overrideSrc src drv;
···279 */
280 triggerRebuild = drv: i: compose.triggerRebuild i drv;
281282+ /* Override the sources for the package and optionally the version.
283 This also takes of removing editedCabalFile.
284 */
285 overrideSrc = drv: src: compose.overrideSrc src drv;
···33 # `self` as second, and returns a set of haskell packages
34 package-set
3536-, # The final, fully overriden package set usable with the nixpkgs fixpoint
37 # overriding functionality
38 extensible-self
39}:
···7374 mkDerivation = makeOverridable mkDerivationImpl;
7576- # manualArgs are the arguments that were explictly passed to `callPackage`, like:
77 #
78 # callPackage foo { bar = null; };
79 #
···33 # `self` as second, and returns a set of haskell packages
34 package-set
3536+, # The final, fully overridden package set usable with the nixpkgs fixpoint
37 # overriding functionality
38 extensible-self
39}:
···7374 mkDerivation = makeOverridable mkDerivationImpl;
7576+ # manualArgs are the arguments that were explicitly passed to `callPackage`, like:
77 #
78 # callPackage foo { bar = null; };
79 #
···29, blas, lapack
30# These two should use the same lapack and blas as the above
31, qrupdate, arpack, suitesparse ? null
32-# If set to true, the above 5 deps are overriden to use the blas and lapack
33# with 64 bit indexes support. If all are not compatible, the build will fail.
34, use64BitIdx ? false
35, libwebp
···82 ;
83 qrupdate' = qrupdate.override {
84 # If use64BitIdx is false, this override doesn't evaluate to a new
85- # derivation, as blas and lapack are not overriden.
86 blas = blas';
87 lapack = lapack';
88 };
···29, blas, lapack
30# These two should use the same lapack and blas as the above
31, qrupdate, arpack, suitesparse ? null
32+# If set to true, the above 5 deps are overridden to use the blas and lapack
33# with 64 bit indexes support. If all are not compatible, the build will fail.
34, use64BitIdx ? false
35, libwebp
···82 ;
83 qrupdate' = qrupdate.override {
84 # If use64BitIdx is false, this override doesn't evaluate to a new
85+ # derivation, as blas and lapack are not overridden.
86 blas = blas';
87 lapack = lapack';
88 };
···1213 namePrefix = python.libPrefix + "-";
1415- # Derivations built with `buildPythonPackage` can already be overriden with `override`, `overrideAttrs`, and `overrideDerivation`.
16 # This function introduces `overridePythonAttrs` and it overrides the call to `buildPythonPackage`.
17 makeOverridablePythonPackage = f: origArgs:
18 let
···1213 namePrefix = python.libPrefix + "-";
1415+ # Derivations built with `buildPythonPackage` can already be overridden with `override`, `overrideAttrs`, and `overrideDerivation`.
16 # This function introduces `overridePythonAttrs` and it overrides the call to `buildPythonPackage`.
17 makeOverridablePythonPackage = f: origArgs:
18 let
···248}
249250def _determine_fetcher(text):
251- # Count occurences of fetchers.
252 nfetchers = sum(text.count('src = {}'.format(fetcher)) for fetcher in FETCHERS.keys())
253 if nfetchers == 0:
254 raise ValueError("no fetcher.")
···248}
249250def _determine_fetcher(text):
251+ # Count occurrences of fetchers.
252 nfetchers = sum(text.count('src = {}'.format(fetcher)) for fetcher in FETCHERS.keys())
253 if nfetchers == 0:
254 raise ValueError("no fetcher.")
+1-1
pkgs/development/libraries/glib/default.nix
···32# $out/bin/gtester-report' to postInstall if this is solved
33/*
34 * Use --enable-installed-tests for GNOME-related packages,
35- and use them as a separately installed tests runned by Hydra
36 (they should test an already installed package)
37 https://wiki.gnome.org/GnomeGoals/InstalledTests
38 * Support org.freedesktop.Application, including D-Bus activation from desktop files
···32# $out/bin/gtester-report' to postInstall if this is solved
33/*
34 * Use --enable-installed-tests for GNOME-related packages,
35+ and use them as a separately installed tests run by Hydra
36 (they should test an already installed package)
37 https://wiki.gnome.org/GnomeGoals/InstalledTests
38 * Support org.freedesktop.Application, including D-Bus activation from desktop files
···163 # fails 1 tests with "Unexpected critical/warning: g_object_set_is_valid_property: object class 'GstRtpStorage' has no property named ''"
164 doCheck = false;
165166- # must be explicitely set since 5590e365
167 dontWrapQtApps = true;
168169 meta = with lib; {
···163 # fails 1 tests with "Unexpected critical/warning: g_object_set_is_valid_property: object class 'GstRtpStorage' has no property named ''"
164 doCheck = false;
165166+ # must be explicitly set since 5590e365
167 dontWrapQtApps = true;
168169 meta = with lib; {
···2021 dontUseQmakeConfigure = true;
22 configureFlags = [ "-config" "release" ]
23- # Build mixes up dylibs/frameworks if one is not explicitely specified.
24 ++ lib.optionals stdenv.isDarwin [ "-config" "qt_framework" ];
2526 dontWrapQtApps = true;
···2021 dontUseQmakeConfigure = true;
22 configureFlags = [ "-config" "release" ]
23+ # Build mixes up dylibs/frameworks if one is not explicitly specified.
24 ++ lib.optionals stdenv.isDarwin [ "-config" "qt_framework" ];
2526 dontWrapQtApps = true;
+1-1
pkgs/development/libraries/ndn-cxx/default.nix
···4344 meta = with lib; {
45 homepage = "https://named-data.net/";
46- description = "A Named Data Neworking (NDN) or Content Centric Networking (CCN) abstraction";
47 longDescription = ''
48 ndn-cxx is a C++ library, implementing Named Data Networking (NDN)
49 primitives that can be used to implement various NDN applications.
···4344 meta = with lib; {
45 homepage = "https://named-data.net/";
46+ description = "A Named Data Networking (NDN) or Content Centric Networking (CCN) abstraction";
47 longDescription = ''
48 ndn-cxx is a C++ library, implementing Named Data Networking (NDN)
49 primitives that can be used to implement various NDN applications.
···3536 makeFlags = [ "CC=${stdenv.cc.targetPrefix}cc" ];
3738- # Tuning (either autotuning or with hand-written paramters) is possible
39 # but not implemented here.
40 # It seems buggy anyways (see homepage).
41 buildFlags = [ "all" "${libbasename}${libext}" ];
···3536 makeFlags = [ "CC=${stdenv.cc.targetPrefix}cc" ];
3738+ # Tuning (either autotuning or with hand-written parameters) is possible
39 # but not implemented here.
40 # It seems buggy anyways (see homepage).
41 buildFlags = [ "all" "${libbasename}${libext}" ];
···19 PLAT_FLAGS = lib.optionalString stdenv.isx86_64 "-mfpmath=sse -mssse3";
2021 patches = [
22- # Remove unecessary tests (valgrind, coverage)
23 ./Makefile.patch
2425 # Fix for building on darwin
···19 PLAT_FLAGS = lib.optionalString stdenv.isx86_64 "-mfpmath=sse -mssse3";
2021 patches = [
22+ # Remove unnecessary tests (valgrind, coverage)
23 ./Makefile.patch
2425 # Fix for building on darwin
+1-1
pkgs/development/octave-modules/vibes/default.nix
···29 VIBes API that enables your program to communicate with the viewer in order
30 to draw figures. This package integrates the VIBes API into Octave. The
31 VIBes application is required for operation and must be installed
32- seperately. Data types from third-party interval arithmetic libraries for
33 Octave are also supported.
34 '';
35 # Marked this way until KarlJoad gets around to packaging the vibes program.
···29 VIBes API that enables your program to communicate with the viewer in order
30 to draw figures. This package integrates the VIBes API into Octave. The
31 VIBes application is required for operation and must be installed
32+ separately. Data types from third-party interval arithmetic libraries for
33 Octave are also supported.
34 '';
35 # Marked this way until KarlJoad gets around to packaging the vibes program.
···9 pname = "backports.shutil_get_terminal_size";
10 version = "unstable-2016-02-21";
1112- # there have been numerous fixes commited since the initial release.
13 # Most notably fixing a problem where the backport would always return
14 # terminal size 0. See https://trac.sagemath.org/ticket/25320#comment:5.
15 # Unfortunately the maintainer seems inactive and has not responded to
···9 pname = "backports.shutil_get_terminal_size";
10 version = "unstable-2016-02-21";
1112+ # there have been numerous fixes committed since the initial release.
13 # Most notably fixing a problem where the backport would always return
14 # terminal size 0. See https://trac.sagemath.org/ticket/25320#comment:5.
15 # Unfortunately the maintainer seems inactive and has not responded to
···39 Docverif is the "Document Verification" plugin for beancount, fulfilling the following functions:
4041 - Require that every transaction touching an account have an accompanying document on disk.
42- - Explictly declare the name of a document accompanying a transaction.
43 - Explicitly declare that a transaction is expected not to have an accompanying document.
44 - Look for an "implicit" PDF document matching transaction data.
45 - Associate (and require) a document with any type of entry, including open entries themselves.
···39 Docverif is the "Document Verification" plugin for beancount, fulfilling the following functions:
4041 - Require that every transaction touching an account have an accompanying document on disk.
42+ - Explicitly declare the name of a document accompanying a transaction.
43 - Explicitly declare that a transaction is expected not to have an accompanying document.
44 - Look for an "implicit" PDF document matching transaction data.
45 - Associate (and require) a document with any type of entry, including open entries themselves.
···27 checkInputs = [ pytestCheckHook matplotlib mock pytest-xdist torchvision ];
28 propagatedBuildInputs = [ packaging torch scikit-learn tqdm ];
2930- # runs succesfully in 3.9, however, async isn't correctly closed so it will fail after test suite.
31 doCheck = pythonOlder "3.9";
3233 # Some packages are not in NixPkgs; other tests try to build distributed
···27 checkInputs = [ pytestCheckHook matplotlib mock pytest-xdist torchvision ];
28 propagatedBuildInputs = [ packaging torch scikit-learn tqdm ];
2930+ # runs successfully in 3.9, however, async isn't correctly closed so it will fail after test suite.
31 doCheck = pythonOlder "3.9";
3233 # Some packages are not in NixPkgs; other tests try to build distributed
···55 # Tests Fail Due to Syntax Warning, Fixed for v3.1.11+
56 doCheck = false;
5758- # sed calls will be unecessary in v3.1.11+
59 preConfigure = ''
60 sed -i 's/==/>=/' setup.py
61 '';
···55 # Tests Fail Due to Syntax Warning, Fixed for v3.1.11+
56 doCheck = false;
5758+ # sed calls will be unnecessary in v3.1.11+
59 preConfigure = ''
60 sed -i 's/==/>=/' setup.py
61 '';
···23 ];
2425 doCheck = false;
26- # Mouseinfo requires a X server running to import succesfully
27 # pythonImportsCheck = [ "mouseinfo" ];
2829 propagatedBuildInputs = [
···23 ];
2425 doCheck = false;
26+ # Mouseinfo requires a X server running to import successfully
27 # pythonImportsCheck = [ "mouseinfo" ];
2829 propagatedBuildInputs = [
+1-1
pkgs/development/python-modules/stone/default.nix
···28 checkInputs = [ pytestCheckHook mock ];
2930 # try to import from `test` directory, which is exported by the python interpreter
31- # and cannot be overriden without removing some py3 to py2 support
32 disabledTestPaths = [
33 "test/test_tsd_types.py"
34 "test/test_js_client.py"
···28 checkInputs = [ pytestCheckHook mock ];
2930 # try to import from `test` directory, which is exported by the python interpreter
31+ # and cannot be overridden without removing some py3 to py2 support
32 disabledTestPaths = [
33 "test/test_tsd_types.py"
34 "test/test_js_client.py"
···14# gems that don't behave correctly, fixes are already provided in the form of
15# derivations.
16#
17-# This seperates "what to build" (the exact gem versions) from "how to build"
18# (to make gems behave if necessary).
1920{ lib, fetchurl, writeScript, ruby, libkrb5, libxml2, libxslt, python2, stdenv, which
···14# gems that don't behave correctly, fixes are already provided in the form of
15# derivations.
16#
17+# This separates "what to build" (the exact gem versions) from "how to build"
18# (to make gems behave if necessary).
1920{ lib, fetchurl, writeScript, ruby, libkrb5, libxml2, libxslt, python2, stdenv, which
···325 # Script to create deps.nix file for dotnet dependencies. Run it with
326 # $(nix-build -A github-runner.passthru.createDepsFile)/bin/create-deps-file
327 #
328- # Default output path is /tmp/${pname}-deps.nix, but can be overriden with cli argument.
329 #
330 # Inspired by passthru.fetch-deps in pkgs/build-support/build-dotnet-module/default.nix
331 passthru.createDepsFile = writeShellApplication {
···325 # Script to create deps.nix file for dotnet dependencies. Run it with
326 # $(nix-build -A github-runner.passthru.createDepsFile)/bin/create-deps-file
327 #
328+ # Default output path is /tmp/${pname}-deps.nix, but can be overridden with cli argument.
329 #
330 # Inspired by passthru.fetch-deps in pkgs/build-support/build-dotnet-module/default.nix
331 passthru.createDepsFile = writeShellApplication {
···171172 # Turn on --enable-new-dtags by default to make the linker set
173 # RUNPATH instead of RPATH on binaries. This is important because
174- # RUNPATH can be overriden using LD_LIBRARY_PATH at runtime.
175 "--enable-new-dtags"
176177 # force target prefix. Some versions of binutils will make it empty if
···171172 # Turn on --enable-new-dtags by default to make the linker set
173 # RUNPATH instead of RPATH on binaries. This is important because
174+ # RUNPATH can be overridden using LD_LIBRARY_PATH at runtime.
175 "--enable-new-dtags"
176177 # force target prefix. Some versions of binutils will make it empty if
+1-1
pkgs/development/tools/misc/binutils/default.nix
···167168 # Turn on --enable-new-dtags by default to make the linker set
169 # RUNPATH instead of RPATH on binaries. This is important because
170- # RUNPATH can be overriden using LD_LIBRARY_PATH at runtime.
171 "--enable-new-dtags"
172173 # force target prefix. Some versions of binutils will make it empty if
···167168 # Turn on --enable-new-dtags by default to make the linker set
169 # RUNPATH instead of RPATH on binaries. This is important because
170+ # RUNPATH can be overridden using LD_LIBRARY_PATH at runtime.
171 "--enable-new-dtags"
172173 # force target prefix. Some versions of binutils will make it empty if
+1-1
pkgs/development/tools/misc/dura/default.nix
···30 ];
3132 meta = with lib; {
33- description = "A background process that saves uncommited changes on git";
34 longDescription = ''
35 Dura is a background process that watches your Git repositories and
36 commits your uncommitted changes without impacting HEAD, the current
···30 ];
3132 meta = with lib; {
33+ description = "A background process that saves uncommitted changes on git";
34 longDescription = ''
35 Dura is a background process that watches your Git repositories and
36 commits your uncommitted changes without impacting HEAD, the current
···482 /*
483 The default list of poetry2nix override overlays
484485- Can be overriden by calling defaultPoetryOverrides.overrideOverlay which takes an overlay function
486 */
487 defaultPoetryOverrides = self.mkDefaultPoetryOverrides (import ./overrides { inherit pkgs lib poetryLib; });
488
···482 /*
483 The default list of poetry2nix override overlays
484485+ Can be overridden by calling defaultPoetryOverrides.overrideOverlay which takes an overlay function
486 */
487 defaultPoetryOverrides = self.mkDefaultPoetryOverrides (import ./overrides { inherit pkgs lib poetryLib; });
488
···27 maintainers = with maintainers; [ atemu ];
28 description = "A very basic OpenGL demo for testing NVIDIA's G-SYNC technology on Linux";
29 longDescription = ''
30- The demo simply draws a vertical bar moving accross the screen at constant speed, but deliberately rendered at a variable frame rate.
3132 The min and max frame rates can be manually changed at runtime, by step of 10 fps and with a min of 10 fps.
33
···27 maintainers = with maintainers; [ atemu ];
28 description = "A very basic OpenGL demo for testing NVIDIA's G-SYNC technology on Linux";
29 longDescription = ''
30+ The demo simply draws a vertical bar moving across the screen at constant speed, but deliberately rendered at a variable frame rate.
3132 The min and max frame rates can be manually changed at runtime, by step of 10 fps and with a min of 10 fps.
33
+1-1
pkgs/games/openra/default.nix
···13let
14 /* Building an engine or out-of-tree mod is very similar,
15 but different enough not to be able to build them with the same package definition,
16- so instaed we define what is common between them in a seperate file.
1718 Although `callPackage` could be used, it would require undoing `makeOverridable`,
19 because `common.nix` does not define a package, but just an attribute set,
···13let
14 /* Building an engine or out-of-tree mod is very similar,
15 but different enough not to be able to build them with the same package definition,
16+ so instaed we define what is common between them in a separate file.
1718 Although `callPackage` could be used, it would require undoing `makeOverridable`,
19 because `common.nix` does not define a package, but just an attribute set,
+1-1
pkgs/games/openra/packages.nix
···3let
4 /* Building an engine or out-of-tree mod is very similar,
5 but different enough not to be able to build them with the same package definition,
6- so instaed we define what is common between them in a seperate file.
78 Although `callPackage` could be used, it would require undoing `makeOverridable`,
9 because `common.nix` does not define a package, but just an attribute set,
···3let
4 /* Building an engine or out-of-tree mod is very similar,
5 but different enough not to be able to build them with the same package definition,
6+ so instaed we define what is common between them in a separate file.
78 Although `callPackage` could be used, it would require undoing `makeOverridable`,
9 because `common.nix` does not define a package, but just an attribute set,
+1-1
pkgs/misc/screensavers/alock/default.nix
···32 description = "Simple screen lock application for X server";
33 longDescription = ''
34 alock locks the X server until the user enters a password
35- via the keyboard. If the authentification was successful
36 the X server is unlocked and the user can continue to work.
3738 alock does not provide any fancy animations like xlock or
···32 description = "Simple screen lock application for X server";
33 longDescription = ''
34 alock locks the X server until the user enters a password
35+ via the keyboard. If the authentication was successful
36 the X server is unlocked and the user can continue to work.
3738 alock does not provide any fancy animations like xlock or
···136 '';
137138 # Defining this here exposes it as a passthru attribute, which is useful because it allows us to run `builtins.hashFile` on it in pure-eval mode.
139- # With that we can programatically generate an `/etc/sudoers.d` entry which disables the password requirement, so that a user-agent can run it at login.
140 loadScriptingAddition = writeShellScript "yabai-load-sa" ''
141 # For whatever reason the regular commands to load the scripting addition do not work, yabai will throw an error.
142 # The installation command mutably installs binaries to '/System', but then fails to start them. Manually running
···136 '';
137138 # Defining this here exposes it as a passthru attribute, which is useful because it allows us to run `builtins.hashFile` on it in pure-eval mode.
139+ # With that we can programmatically generate an `/etc/sudoers.d` entry which disables the password requirement, so that a user-agent can run it at login.
140 loadScriptingAddition = writeShellScript "yabai-load-sa" ''
141 # For whatever reason the regular commands to load the scripting addition do not work, yabai will throw an error.
142 # The installation command mutably installs binaries to '/System', but then fails to start them. Manually running
+2-2
pkgs/os-specific/linux/systemd/default.nix
···524 ];
525 preConfigure =
526 let
527- # A list of all the runtime binaries that the systemd exectuables, tests and libraries are referencing in their source code, scripts and unit files.
528 # As soon as a dependency isn't required anymore we should remove it from the list. The `where` attribute for each of the replacement patterns must be exhaustive. If another (unhandled) case is found in the source code the build fails with an error message.
529 binaryReplacements = [
530 { search = "/usr/bin/getent"; replacement = "${getent}/bin/getent"; where = [ "src/nspawn/nspawn-setuid.c" ]; }
···578 "src/import/import-tar.c"
579 ];
580 ignore = [
581- # occurences here refer to the tar sub command
582 "src/sysupdate/sysupdate-resource.c"
583 "src/sysupdate/sysupdate-transfer.c"
584 "src/import/pull.c"
···524 ];
525 preConfigure =
526 let
527+ # A list of all the runtime binaries that the systemd executables, tests and libraries are referencing in their source code, scripts and unit files.
528 # As soon as a dependency isn't required anymore we should remove it from the list. The `where` attribute for each of the replacement patterns must be exhaustive. If another (unhandled) case is found in the source code the build fails with an error message.
529 binaryReplacements = [
530 { search = "/usr/bin/getent"; replacement = "${getent}/bin/getent"; where = [ "src/nspawn/nspawn-setuid.c" ]; }
···578 "src/import/import-tar.c"
579 ];
580 ignore = [
581+ # occurrences here refer to the tar sub command
582 "src/sysupdate/sysupdate-resource.c"
583 "src/sysupdate/sysupdate-transfer.c"
584 "src/import/pull.c"
+1-1
pkgs/servers/nextcloud/default.nix
···46 in your NixOS config.
4748 WARNING: if you were on Nextcloud 22 on NixOS 22.05 you have to upgrade to Nextcloud 23
49- first on 22.05 because Nextcloud doesn't support upgrades accross multiple major versions!
50 '';
5152 nextcloud24 = generic {
···46 in your NixOS config.
4748 WARNING: if you were on Nextcloud 22 on NixOS 22.05 you have to upgrade to Nextcloud 23
49+ first on 22.05 because Nextcloud doesn't support upgrades across multiple major versions!
50 '';
5152 nextcloud24 = generic {
···192193 # Note: the duplication of executables is about 4MB size.
194 # So a nicer solution was patching postgresql to allow setting the
195- # libdir explicitely.
196 postBuild = ''
197 mkdir -p $out/bin
198 rm $out/bin/{pg_config,postgres,pg_ctl}
···192193 # Note: the duplication of executables is about 4MB size.
194 # So a nicer solution was patching postgresql to allow setting the
195+ # libdir explicitly.
196 postBuild = ''
197 mkdir -p $out/bin
198 rm $out/bin/{pg_config,postgres,pg_ctl}
+1-1
pkgs/servers/web-apps/netbox/default.nix
···33 # Allow setting the STATIC_ROOT from within the configuration and setting a custom redis URL
34 ./config.patch
35 ./graphql-3_2_0.patch
36- # fix compatiblity ith django 4.1
37 (fetchpatch {
38 url = "https://github.com/netbox-community/netbox/pull/10341/commits/ce6bf9e5c1bc08edc80f6ea1e55cf1318ae6e14b.patch";
39 sha256 = "sha256-aCPQp6k7Zwga29euASAd+f13hIcZnIUu3RPAzNPqgxc=";
···33 # Allow setting the STATIC_ROOT from within the configuration and setting a custom redis URL
34 ./config.patch
35 ./graphql-3_2_0.patch
36+ # fix compatibility ith django 4.1
37 (fetchpatch {
38 url = "https://github.com/netbox-community/netbox/pull/10341/commits/ce6bf9e5c1bc08edc80f6ea1e55cf1318ae6e14b.patch";
39 sha256 = "sha256-aCPQp6k7Zwga29euASAd+f13hIcZnIUu3RPAzNPqgxc=";
+1-1
pkgs/stdenv/generic/check-meta.nix
···73 allowUnfreePredicate = config.allowUnfreePredicate or (x: false);
7475 # Check whether unfree packages are allowed and if not, whether the
76- # package has an unfree license and is not explicitely allowed by the
77 # `allowUnfreePredicate` function.
78 hasDeniedUnfreeLicense = attrs:
79 hasUnfreeLicense attrs &&
···73 allowUnfreePredicate = config.allowUnfreePredicate or (x: false);
7475 # Check whether unfree packages are allowed and if not, whether the
76+ # package has an unfree license and is not explicitly allowed by the
77 # `allowUnfreePredicate` function.
78 hasDeniedUnfreeLicense = attrs:
79 hasUnfreeLicense attrs &&
+1-1
pkgs/tools/admin/azure-cli/default.nix
···12 sha256 = "sha256-Y1P+cTOK7NbV7k9rg38vE7EPuZQo88IQW3IYYou8ZOI=";
13 };
1415- # put packages that needs to be overriden in the py package scope
16 py = import ./python-packages.nix {
17 inherit stdenv lib src version python3;
18 };
···12 sha256 = "sha256-Y1P+cTOK7NbV7k9rg38vE7EPuZQo88IQW3IYYou8ZOI=";
13 };
1415+ # put packages that needs to be overridden in the py package scope
16 py = import ./python-packages.nix {
17 inherit stdenv lib src version python3;
18 };
+1-1
pkgs/tools/admin/pgadmin/default.nix
···181 # checks will be run through nixos/tests
182 doCheck = false;
183184- # speaklater3 is seperate because when passing buildDeps
185 # to the test, it fails there due to a collision with speaklater
186 propagatedBuildInputs = buildDeps ++ [ pythonPackages.speaklater3 ];
187
···181 # checks will be run through nixos/tests
182 doCheck = false;
183184+ # speaklater3 is separate because when passing buildDeps
185 # to the test, it fails there due to a collision with speaklater
186 propagatedBuildInputs = buildDeps ++ [ pythonPackages.speaklater3 ];
187
+1-1
pkgs/tools/misc/fpart/default.nix
···3536 Fpart also includes a live mode, which allows it to crawl very large
37 filesystems and produce partitions in live. Hooks are available to act on
38- those partitions (e.g. immediatly start a transfer using rsync(1))
39 without having to wait for the filesystem traversal job to be finished.
40 Used this way, fpart can be seen as a powerful data migration tool.
41 '';
···3536 Fpart also includes a live mode, which allows it to crawl very large
37 filesystems and produce partitions in live. Hooks are available to act on
38+ those partitions (e.g. immediately start a transfer using rsync(1))
39 without having to wait for the filesystem traversal job to be finished.
40 Used this way, fpart can be seen as a powerful data migration tool.
41 '';
+1-1
pkgs/tools/misc/librespeed-cli/default.nix
···1617 vendorSha256 = "sha256-psZyyySpY06J+ji+9uHUtX7Ks1hzZC3zINszYP75NfQ=";
1819- # Tests have additonal requirements
20 doCheck = false;
2122 meta = with lib; {
···1617 vendorSha256 = "sha256-psZyyySpY06J+ji+9uHUtX7Ks1hzZC3zINszYP75NfQ=";
1819+ # Tests have additional requirements
20 doCheck = false;
2122 meta = with lib; {
+1-1
pkgs/tools/misc/sqlite3-to-mysql/default.nix
···35 # tests require a mysql server instance
36 doCheck = false;
3738- # run package tests as a seperate nixos test
39 passthru.tests = {
40 nixosTest = nixosTests.sqlite3-to-mysql;
41 };
···35 # tests require a mysql server instance
36 doCheck = false;
3738+ # run package tests as a separate nixos test
39 passthru.tests = {
40 nixosTest = nixosTests.sqlite3-to-mysql;
41 };
+1-1
pkgs/tools/networking/ipfetch/default.nix
···30 '';
3132 meta = with lib; {
33- description = "Neofetch but for ip adresses";
34 license = licenses.gpl3Only;
35 platforms = platforms.all;
36 maintainers = with maintainers; [ annaaurora ];
···30 '';
3132 meta = with lib; {
33+ description = "Neofetch but for ip addresses";
34 license = licenses.gpl3Only;
35 platforms = platforms.all;
36 maintainers = with maintainers; [ annaaurora ];
+1-1
pkgs/tools/networking/ndn-tools/default.nix
···3940 meta = with lib; {
41 homepage = "https://named-data.net/";
42- description = "Named Data Neworking (NDN) Essential Tools";
43 license = licenses.gpl3Plus;
44 platforms = platforms.unix;
45 maintainers = with maintainers; [ bertof ];
···3940 meta = with lib; {
41 homepage = "https://named-data.net/";
42+ description = "Named Data Networking (NDN) Essential Tools";
43 license = licenses.gpl3Plus;
44 platforms = platforms.unix;
45 maintainers = with maintainers; [ bertof ];
+1-1
pkgs/tools/typesetting/docbook2odf/default.nix
···35 meta = with lib; {
36 description = "Convert DocBook to OpenDocument Format (ODF)";
37 longDescription = ''
38- Docbook2odf is a toolkit that automaticaly converts DocBook to OASIS
39 OpenDocument (ODF, the ISO standardized format used for texts,
40 spreadsheets and presentations). Conversion is based on a XSLT which
41 makes it easy to convert DocBook->ODF, ODT, ODS and ODP as all these
···35 meta = with lib; {
36 description = "Convert DocBook to OpenDocument Format (ODF)";
37 longDescription = ''
38+ Docbook2odf is a toolkit that automatically converts DocBook to OASIS
39 OpenDocument (ODF, the ISO standardized format used for texts,
40 spreadsheets and presentations). Conversion is based on a XSLT which
41 makes it easy to convert DocBook->ODF, ODT, ODS and ODP as all these
+1-1
pkgs/tools/wayland/wev/default.nix
···33 homepage = "https://git.sr.ht/~sircmpwn/wev";
34 description = "Wayland event viewer";
35 longDescription = ''
36- This is a tool for debugging events on a Wayland window, analagous to the
37 X11 tool xev.
38 '';
39 license = licenses.mit;
···33 homepage = "https://git.sr.ht/~sircmpwn/wev";
34 description = "Wayland event viewer";
35 longDescription = ''
36+ This is a tool for debugging events on a Wayland window, analogous to the
37 X11 tool xev.
38 '';
39 license = licenses.mit;
+2-2
pkgs/top-level/all-packages.nix
···4412 extrude = callPackage ../tools/security/extrude { };
44134414 fastly = callPackage ../misc/fastly {
4415- # If buildGoModule is overriden, provide a matching version of the go attribute
4416 };
44174418 f2 = callPackage ../tools/misc/f2 {};
···1456614567 fstar = callPackage ../development/compilers/fstar {
14568 # Work around while compatibility with ppxlib >= 0.26 is unavailable
14569- # Should be removed when a fix is availaible
14570 # See https://github.com/FStarLang/FStar/issues/2681
14571 ocamlPackages =
14572 ocamlPackages.overrideScope' (self: super: {
···4412 extrude = callPackage ../tools/security/extrude { };
44134414 fastly = callPackage ../misc/fastly {
4415+ # If buildGoModule is overridden, provide a matching version of the go attribute
4416 };
44174418 f2 = callPackage ../tools/misc/f2 {};
···1456614567 fstar = callPackage ../development/compilers/fstar {
14568 # Work around while compatibility with ppxlib >= 0.26 is unavailable
14569+ # Should be removed when a fix is available
14570 # See https://github.com/FStarLang/FStar/issues/2681
14571 ocamlPackages =
14572 ocamlPackages.overrideScope' (self: super: {
···1617 callPackage = self.newScope ({
18 inherit (gnuradio)
19- # Packages that are potentially overriden and used as deps here.
20 boost
21 volk
22 ;
···1617 callPackage = self.newScope ({
18 inherit (gnuradio)
19+ # Packages that are potentially overridden and used as deps here.
20 boost
21 volk
22 ;
+1-1
pkgs/top-level/php-packages.nix
···67 # source, based on the php version.
68 #
69 # Name passed is the name of the extension and is automatically used
70- # to add the configureFlag "--enable-${name}", which can be overriden.
71 #
72 # Build inputs is used for extra deps that may be needed. And zendExtension
73 # will mark the extension as a zend extension or not.
···67 # source, based on the php version.
68 #
69 # Name passed is the name of the extension and is automatically used
70+ # to add the configureFlag "--enable-${name}", which can be overridden.
71 #
72 # Build inputs is used for extra deps that may be needed. And zendExtension
73 # will mark the extension as a zend extension or not.