depot/third_party/nixpkgs/nixos/modules/services/x11/window-managers/dwm.nix
Default email 5e7c2d6cef Project import generated by Copybara.
GitOrigin-RevId: f99e5f03cc0aa231ab5950a15ed02afec45ed51a
2023-10-09 21:29:22 +02:00

58 lines
1.2 KiB
Nix

{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.services.xserver.windowManager.dwm;
in
{
###### interface
options = {
services.xserver.windowManager.dwm = {
enable = mkEnableOption (lib.mdDoc "dwm");
package = mkOption {
type = types.package;
default = pkgs.dwm;
defaultText = literalExpression "pkgs.dwm";
example = literalExpression ''
pkgs.dwm.overrideAttrs (oldAttrs: rec {
patches = [
(super.fetchpatch {
url = "https://dwm.suckless.org/patches/steam/dwm-steam-6.2.diff";
sha256 = "sha256-f3lffBjz7+0Khyn9c9orzReoLTqBb/9gVGshYARGdVc=";
})
];
})
'';
description = lib.mdDoc ''
dwm package to use.
'';
};
};
};
###### implementation
config = mkIf cfg.enable {
services.xserver.windowManager.session = singleton
{ name = "dwm";
start =
''
export _JAVA_AWT_WM_NONREPARENTING=1
dwm &
waitPID=$!
'';
};
environment.systemPackages = [ cfg.package ];
};
}