{ config, lib, pkgs, ... }: let inherit (lib) mkIf mkEnableOption; cfg = config.snowhawk.dwm; in { options.snowhawk.dwm = { enable = mkEnableOption "niri home-manager module"; useXFixes = mkEnableOption "using unclutter-xfixes instead of unclutter"; }; config = mkIf cfg.enable { # WM Stuff xsession.numlock.enable = true; services.unclutter = { enable = true; package = if cfg.useXFixes then pkgs.unclutter-xfixes else pkgs.unclutter; }; systemd.user.services.unclutter.Service.ExecStart = let cfg = config.services.unclutter; in lib.mkForce '' ${cfg.package}/bin/unclutter \ --timeout ${toString cfg.timeout} \ --jitter ${toString (cfg.threshold - 1)} \ ${lib.concatStrings cfg.extraOptions} ''; home.file.".xinitrc".text = '' [ -f ~/.Xresources ] && ${lib.getExe pkgs.xorg.xrdb} -merge ~/.Xresources ''; xresources.properties = { "Xft.lcdfilter" = "lcddefault"; "Xft.hintstyle" = "hintslight"; "Xft.hinting" = "1"; "Xft.antialias" = "1"; "Xft.rgba" = "none"; }; }; }