22
0
mirror of https://github.com/SuperSandro2000/nixos-modules.git synced 2024-06-10 10:14:06 +02:00

Add lib.mkOpinionatedOption and use it

This commit is contained in:
Sandro - 2023-01-03 02:05:36 +01:00
parent 3d9678ed60
commit f089f7fecc
Signed by: sandro
GPG Key ID: 3AF5A43A3EECC2E5
3 changed files with 18 additions and 8 deletions

View File

@ -1,5 +1,10 @@
{ lib, ... }: { config, lib, ... }:
{ {
mkRecursiveDefault = lib.mapAttrsRecursive (path: value: lib.mkDefault value); mkRecursiveDefault = lib.mapAttrsRecursive (path: value: lib.mkDefault value);
mkOpinionatedOption = text: lib.mkOption {
type = lib.types.bool;
default = config.opinionatedDefaults;
description = lib.mdDoc "Wether to ${text}.";
};
} }

View File

@ -4,10 +4,8 @@ let
cfg = config.services.grafana; cfg = config.services.grafana;
in in
{ {
options.services.grafana.opinionatedDefaults = lib.mkOption { options = {
type = lib.types.bool; services.grafana.recommendedDefaults = libS.mkOpinionatedOption "set recommended, secure default settings";
default = config.opinionatedDefaults;
description = lib.mdDoc "Wether to enable set opinionated default settings.";
}; };
config = lib.mkIf cfg.enable { config = lib.mkIf cfg.enable {

View File

@ -1,11 +1,18 @@
{ config, lib, ... }: { config, lib, libS, ... }:
let let
cfg = config.boot.zfs; cfg = config.boot.zfs;
in in
{ {
config = lib.mkIf cfg.enabled { options = {
boot.kernelPackages = config.boot.zfs.package.latestCompatibleLinuxPackages; boot.zfs.recommendedDefaults = libS.mkOpinionatedOption "enable recommended ZFS settings";
};
config = lib.mkIf (cfg.recommendedDefaults && cfg.enabled) {
boot = {
kernelPackages = config.boot.zfs.package.latestCompatibleLinuxPackages;
zfs.forceImportRoot = false;
};
services.zfs.autoScrub.enable = true; services.zfs.autoScrub.enable = true;
}; };