28 lines
741 B
Nix

{
pkgs,
lib,
config,
options,
...
}: let
inherit (lib) mkDefault mkIf mkEnableOption;
cfg = config.nixfiles.common.wm;
in {
config = mkIf cfg.enable {
# Common options for standalone window managers; many of these (or
# alternatives thereof) are pulled in by desktop environments.
services = {
power-profiles-daemon.enable = mkDefault true;
blueman.enable = mkDefault config.hardware.bluetooth.enable;
udisks2.enable = mkDefault true;
};
programs = {
nm-applet.enable = mkDefault config.networking.networkmanager.enable;
};
security.pam.services.swaylock = {};
};
options = {
nixfiles.common.wm.enable = mkEnableOption "common window manager configuration";
};
}