vuls: init at 0.27.0
[NixPkgs.git] / nixos / modules / services / x11 / window-managers / default.nix
blob85eb4c6614d94129f0de67cf9d3f9d4c01be86a6
1 { config, lib, ... }:
3 let
4   inherit (lib) mkOption types;
5   cfg = config.services.xserver.windowManager;
6 in
9   imports = [
10     ./2bwm.nix
11     ./afterstep.nix
12     ./berry.nix
13     ./bspwm.nix
14     ./cwm.nix
15     ./clfswm.nix
16     ./dk.nix
17     ./dwm.nix
18     ./e16.nix
19     ./evilwm.nix
20     ./exwm.nix
21     ./fluxbox.nix
22     ./fvwm2.nix
23     ./fvwm3.nix
24     ./hackedbox.nix
25     ./herbstluftwm.nix
26     ./hypr.nix
27     ./i3.nix
28     ./jwm.nix
29     ./leftwm.nix
30     ./lwm.nix
31     ./metacity.nix
32     ./mlvwm.nix
33     ./mwm.nix
34     ./openbox.nix
35     ./pekwm.nix
36     ./notion.nix
37     ./ragnarwm.nix
38     ./ratpoison.nix
39     ./sawfish.nix
40     ./smallwm.nix
41     ./stumpwm.nix
42     ./spectrwm.nix
43     ./tinywm.nix
44     ./twm.nix
45     ./windowmaker.nix
46     ./wmderland.nix
47     ./wmii.nix
48     ./xmonad.nix
49     ./yeahwm.nix
50     ./qtile.nix
51     ./none.nix ];
53   options = {
55     services.xserver.windowManager = {
57       session = mkOption {
58         internal = true;
59         default = [];
60         example = [{
61           name = "wmii";
62           start = "...";
63         }];
64         description = ''
65           Internal option used to add some common line to window manager
66           scripts before forwarding the value to the
67           `displayManager`.
68         '';
69         apply = map (d: d // {
70           manage = "window";
71         });
72       };
74     };
76   };
78   config = {
79     services.xserver.displayManager.session = cfg.session;
80   };