1{ config, lib, pkgs, ... }:
2
3with lib;
4
5let
6 cfg = config.services.xserver.windowManager.bspwm;
7in
8
9{
10 options = {
11 services.xserver.windowManager.bspwm.enable = mkOption {
12 type = types.bool;
13 default = false;
14 example = true;
15 description = "Enable the bspwm window manager.";
16 };
17 };
18
19 config = mkIf cfg.enable {
20 services.xserver.windowManager.session = singleton {
21 name = "bspwm";
22 start = "
23 ${pkgs.sxhkd}/bin/sxhkd &
24 ${pkgs.bspwm}/bin/bspwm
25 ";
26 };
27 environment.systemPackages = [ pkgs.bspwm ];
28 };
29}