diff options
author | pennae <github@quasiparticle.net> | 2021-12-05 21:45:35 +0100 |
---|---|---|
committer | pennae <github@quasiparticle.net> | 2021-12-09 01:14:16 +0100 |
commit | ed673a69dbf5f9be67183621eb0f5c1759d48299 (patch) | |
tree | c5c2aa29c87a0f517e66f805d593fc74deb6ae79 /nixos/modules/services/x11 | |
parent | fb0e5be84331188a69b3edd31679ca6576edb75a (diff) | |
download | nixpkgs-ed673a69dbf5f9be67183621eb0f5c1759d48299.tar nixpkgs-ed673a69dbf5f9be67183621eb0f5c1759d48299.tar.gz nixpkgs-ed673a69dbf5f9be67183621eb0f5c1759d48299.tar.bz2 nixpkgs-ed673a69dbf5f9be67183621eb0f5c1759d48299.tar.lz nixpkgs-ed673a69dbf5f9be67183621eb0f5c1759d48299.tar.xz nixpkgs-ed673a69dbf5f9be67183621eb0f5c1759d48299.tar.zst nixpkgs-ed673a69dbf5f9be67183621eb0f5c1759d48299.zip |
treewide: add defaultText for options with simple cfg.* expression defaults
adds defaultText for options with defaults that use only literals, full config.* paths, and the cfg shortcut binding.
Diffstat (limited to 'nixos/modules/services/x11')
-rw-r--r-- | nixos/modules/services/x11/display-managers/default.nix | 10 | ||||
-rw-r--r-- | nixos/modules/services/x11/picom.nix | 14 |
2 files changed, 18 insertions, 6 deletions
diff --git a/nixos/modules/services/x11/display-managers/default.nix b/nixos/modules/services/x11/display-managers/default.nix index bdc46faa7fd..3adb50c678e 100644 --- a/nixos/modules/services/x11/display-managers/default.nix +++ b/nixos/modules/services/x11/display-managers/default.nix @@ -7,13 +7,14 @@ # (e.g., KDE, Gnome or a plain xterm), and optionally the *window # manager* (e.g. kwin or twm). -{ config, lib, pkgs, ... }: +{ config, lib, options, pkgs, ... }: with lib; let cfg = config.services.xserver; + opt = options.services.xserver; xorg = pkgs.xorg; fontconfig = config.fonts.fontconfig; @@ -337,11 +338,12 @@ in # Configuration for automatic login. Common for all DM. autoLogin = mkOption { - type = types.submodule { + type = types.submodule ({ config, options, ... }: { options = { enable = mkOption { type = types.bool; - default = cfg.displayManager.autoLogin.user != null; + default = config.user != null; + defaultText = literalExpression "config.${options.user} != null"; description = '' Automatically log in as <option>autoLogin.user</option>. ''; @@ -355,7 +357,7 @@ in ''; }; }; - }; + }); default = {}; description = '' diff --git a/nixos/modules/services/x11/picom.nix b/nixos/modules/services/x11/picom.nix index dbd4b1cefef..b40e20bcd35 100644 --- a/nixos/modules/services/x11/picom.nix +++ b/nixos/modules/services/x11/picom.nix @@ -1,10 +1,11 @@ -{ config, lib, pkgs, ... }: +{ config, lib, options, pkgs, ... }: with lib; let cfg = config.services.picom; + opt = options.services.picom; pairOf = x: with types; addCheck (listOf x) (y: length y == 2) @@ -178,7 +179,16 @@ in { wintypes = mkOption { type = types.attrs; - default = { popup_menu = { opacity = cfg.menuOpacity; }; dropdown_menu = { opacity = cfg.menuOpacity; }; }; + default = { + popup_menu = { opacity = cfg.menuOpacity; }; + dropdown_menu = { opacity = cfg.menuOpacity; }; + }; + defaultText = literalExpression '' + { + popup_menu = { opacity = config.${opt.menuOpacity}; }; + dropdown_menu = { opacity = config.${opt.menuOpacity}; }; + } + ''; example = {}; description = '' Rules for specific window types. |