Instead of having a nullable `base16Scheme` option, the default will
throw when `stylix.image` is null. Not only does this better represent
the "required" nature of this option, it also ensures the assertion is
evaluated early enough to actually be checked.
This causes the assertion to evaluate when the default definition is
read, instead of later when the `assertions` option is checked.
Link: https://github.com/nix-community/stylix/pull/1446
Tested-by: https://github.com/NovaViper
Approved-by: https://github.com/NovaViper
Reviewed-by: NAHO <90870942+trueNAHO@users.noreply.github.com>
Closes: https://github.com/nix-community/stylix/issues/1189
Link: https://github.com/nix-community/stylix/pull/1377
Reviewed-by: Adam M. Szalkowski <a.szalkowski@datahow.ch>
Tested-by: Adam M. Szalkowski <a.szalkowski@datahow.ch>
Reviewed-by: Matt Sturgeon <matt@sturgeon.me.uk>
Tested-by: NAHO <90870942+trueNAHO@users.noreply.github.com>
Reviewed-by: NAHO <90870942+trueNAHO@users.noreply.github.com>
BREAKING CHANGE: The fontconfig target no longer enables Home Manager's
fonts.fontconfig.enable option and now sets Home Manager's
fonts.fontconfig.defaultFonts option instead.
Link: https://github.com/nix-community/stylix/pull/1292
Reviewed-by: awwpotato <awwpotato@voidq.com>
Reviewed-by: Flameopathic <64027365+Flameopathic@users.noreply.github.com>
Reviewed-by: Matt Sturgeon <matt@sturgeon.me.uk>
Reviewed-by: NAHO <90870942+trueNAHO@users.noreply.github.com>
Use the new `mkEnableTargetWith` function for dynamic `autoEnable`
conditions to prevent the evaluation of dynamic conditions during
documentation rendering.
The "same as `stylix.autoEnable`" `defaultText` is replaced with
`stylix.autoEnable` or `stylix.autoEnable && ${autoEnableExpr}`,
depending on whether `autoEnableExpr` is provided. For readability,
`autoEnable` expressions containing Nix operators of lower precedence
than `&&` are automatically wrapped in parentheses, unless
`autoWrapExpr` is disabled.
Closes: https://github.com/nix-community/stylix/issues/98
Link: https://github.com/nix-community/stylix/pull/1244
Reviewed-by: awwpotato <awwpotato@voidq.com>
Reviewed-by: NAHO <90870942+trueNAHO@users.noreply.github.com>
Reviewed-by: Daniel Thwaites <danth@danth.me>
Use the new `perSystem.stylix.aliases` option to rename
`packages.«system».docs` and `apps.«system».docs` to `doc`.
The alias will be defined until 25.11 and will always warn when
evaluated.
This allows correctly documenting dynamic enable conditions.
E.g:
```nix
enable = mkEnableTargetWith {
name = "QT";
autoEnable = pkgs.stdenv.hostPlatform.isLinux;
autoEnableExpr = "pkgs.stdenv.hostPlatform.isLinux";
};
```
`autoEnableExpr` will be wrapped in parentheses if it contains a nix
operator with lower precedence than `&&`.
Added a note in the docs mentioning `mkEnableTarget` should either have
a static `autoEnable` or specify `autoEnableExpr`.
Adds:
- `serve-docs` to the default devShell
- `packages.serve-docs`
- `apps.docs`
Having `apps.docs` defined causes `nix run .#docs` to run the "app"
instead of `packages.docs`. `nix build .#docs` will still build the
"package", not the "app".
The `serve-docs` script added to the devShell runs `nix run .#docs`
instead of having `packages.serve-docs` in its closure. This avoids the
devShell actually building the docs.
Added a note to `doc/src/modules.md`.
Link: https://github.com/nix-community/stylix/pull/1328
Reviewed-by: awwpotato <awwpotato@voidq.com>
Co-authored-by: NAHO <90870942+trueNAHO@users.noreply.github.com>
Reviewed-by: NAHO <90870942+trueNAHO@users.noreply.github.com>
To reduce the surprise factor when comparing to the other color specs in
this file.
Link: https://github.com/nix-community/stylix/pull/1449
Reviewed-by: NAHO <90870942+trueNAHO@users.noreply.github.com>
Reviewed-by: NukDokPlex <nukdokplex@gmail.com>