{ config, lib, pkgs, ... }: let inherit (lib.modules) mkForce mkIf; inherit (lib.options) mkEnableOption; cfg = config.modules.desktops.niri; niri-config = { }; toKDL = import ./toKDL.nix lib; in { options.modules.desktops.niri.enable = mkEnableOption "Niri, a scolling tiling wayland compositor"; config = mkIf cfg.enable { programs.niri = { enable = true; package = pkgs.niri; }; # The niri module auto enables the gnome keyring, # which is something I direly want to avoid. services.gnome.gnome-keyring.enable = mkForce false; # set niri's config location to /etc/niri/config.kdl. environment.etc."niri/config.kdl".source = ./config.kdl; }; }