build-bazel-package: added rm of extra local folders for toolchain configuration...
[NixPkgs.git] / nixos / modules / services / x11 / window-managers / wmderland.nix
blob018c152572b5c897c8dd2a79c37acfc21c2cfe99
2   config,
3   lib,
4   pkgs,
5   ...
6 }:
8 with lib;
10 let
11   cfg = config.services.xserver.windowManager.wmderland;
15   options.services.xserver.windowManager.wmderland = {
16     enable = mkEnableOption "wmderland";
18     extraSessionCommands = mkOption {
19       default = "";
20       type = types.lines;
21       description = ''
22         Shell commands executed just before wmderland is started.
23       '';
24     };
26     extraPackages = mkOption {
27       type = with types; listOf package;
28       default = with pkgs; [
29         rofi
30         dunst
31         light
32         hsetroot
33         feh
34         rxvt-unicode
35       ];
36       defaultText = literalExpression ''
37         with pkgs; [
38           rofi
39           dunst
40           light
41           hsetroot
42           feh
43           rxvt-unicode
44         ]
45       '';
46       description = ''
47         Extra packages to be installed system wide.
48       '';
49     };
50   };
52   config = mkIf cfg.enable {
53     services.xserver.windowManager.session = singleton {
54       name = "wmderland";
55       start = ''
56         ${cfg.extraSessionCommands}
58         ${pkgs.wmderland}/bin/wmderland &
59         waitPID=$!
60       '';
61     };
62     environment.systemPackages = [
63       pkgs.wmderland
64       pkgs.wmderlandc
65     ] ++ cfg.extraPackages;
66   };