···743743 "nil"
744744 else if isInt v || isFloat v || isString v || isBool v then
745745 toJSON v
746746+ else if isPath v || isDerivation v then
747747+ toJSON "${v}"
746748 else if isList v then
747749 (if v == [ ] then "{}" else
748750 "{${introSpace}${concatItems (map (value: "${toLua innerArgs value}") v)}${outroSpace}}")
···752754 "(${v.expr})"
753755 else if v == { } then
754756 "{}"
755755- else if isDerivation v then
756756- ''"${toString v}"''
757757 else
758758 "{${introSpace}${concatItems (
759759 mapAttrsToList (key: value: "[${toJSON key}] = ${toLua innerArgs value}") v
···232232 definitions cannot be merged. The regular expression is processed
233233 using `builtins.match`.
234234235235+### Specialised types {#sec-option-types-specialised}
236236+237237+`types.luaInline`
238238+239239+: A string wrapped using `lib.mkLuaInline`. Allows embedding lua expressions
240240+ inline within generated lua. Multiple definitions cannot be merged.
241241+235242## Submodule types {#sec-option-types-submodule}
236243237244Submodules are detailed in [Submodule](#section-option-types-submodule).
···402402 : Outputs the given attribute set as an Elixir map, instead of the
403403 default Elixir keyword list
404404405405+`pkgs.formats.lua { asBindings ? false, multiline ? true, columnWidth ? 100, indentWidth ? 2, indentUsingTabs ? false }`
406406+407407+: A function taking an attribute set with values
408408+409409+ `asBindings` (default `false`)
410410+411411+ : Whether to treat attributes as variable bindings
412412+413413+ `multiline` (default `true`)
414414+415415+ : Whether to procude a multiline output. The output may still wrap across
416416+ multiple lines if it would otherwise exceed `columnWidth`.
417417+418418+ `columnWidth` (default `100`)
419419+420420+ : The column width to use to attempt to wrap lines.
421421+422422+ `indentWidth` (default `2`)
423423+424424+ : The width of a single indentation level.
425425+426426+ `indentUsingTabs` (default `false`)
427427+428428+ : Whether the indentation should use tabs instead of spaces.
429429+405430`pkgs.formats.php { finalVariable }` []{#pkgs-formats-php}
406431407432: A function taking an attribute set with values
···1919 kernel = config.system.modulesTree;
2020 firmware = config.hardware.firmware;
2121 allowMissing = false;
2222+ inherit (config.boot.initrd) extraFirmwarePaths;
2223 };
23242425···481482 type = types.listOf types.str;
482483 description = ''
483484 Other initrd files to prepend to the final initrd we are building.
485485+ '';
486486+ };
487487+488488+ boot.initrd.extraFirmwarePaths = mkOption {
489489+ default = [ ];
490490+ type = types.listOf types.str;
491491+ description = ''
492492+ Other firmware files (relative to `"''${config.hardware.firmware}/lib/firmware"`) to include in the final initrd we are building.
484493 '';
485494 };
486495
···36363737If any of these questions' answer is no, then you should probably not add the package.
38383939-This is section describes a general framework of understanding and exceptions might apply.
3939+This section describes a general framework of understanding and exceptions might apply.
40404141Luckily it's pretty easy to maintain your own package set with Nix, which can then be added to the [Nix User Repository](https://github.com/nix-community/nur) project.
4242
···2727}:
28282929let
3030- version = "1.20.2";
3030+ version = "1.21.0";
31313232 # build stimuli file for PGO build and the script to generate it
3333 # independently of the foot's build, so we can cache the result
···104104 owner = "dnkl";
105105 repo = "foot";
106106 rev = version;
107107- hash = "sha256-tnBoRRKHcuvBSnqvJ/772UWuepvpUiSg6t+gx4MZ0VQ=";
107107+ hash = "sha256:19hkw4g2l00wasmk5dn34rf3bhqh6zbwwhvz98bdcv90p761jws4";
108108 };
109109110110 separateDebugInfo = true;
···895895 kbd
896896 ;
897897898898+ # Many TPM2-related units are only installed if this trio of features are
899899+ # enabled. See https://github.com/systemd/systemd/blob/876ee10e0eb4bbb0920bdab7817a9f06cc34910f/units/meson.build#L521
900900+ withTpm2Units = withTpm2Tss && withBootloader && withOpenSSL;
901901+898902 tests =
899903 let
900904 # Some entries in the `nixosTests.systemd-*` set of attributes are collections of tests,