diff options
author | Chris Darnell <chris@cedeel.com> | 2016-10-07 23:35:31 -0400 |
---|---|---|
committer | Chris Darnell <chris@cedeel.com> | 2016-10-16 01:28:11 -0400 |
commit | 137ce58317ac7afcfe5477848c8f34b5fbfd14d1 (patch) | |
tree | 9a6bdd6103df4815ee8e39deddf51af980e06c43 /nixos | |
parent | 02d7fbb678b7ee1749466143202c9651b428cd0f (diff) |
bspwm-unstable: init at 2016-09-30
Diffstat (limited to 'nixos')
-rw-r--r-- | nixos/modules/module-list.nix | 1 | ||||
-rw-r--r-- | nixos/modules/services/x11/window-managers/bspwm-unstable.nix | 48 | ||||
-rw-r--r-- | nixos/modules/services/x11/window-managers/default.nix | 1 |
3 files changed, 50 insertions, 0 deletions
diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index dbbc8c7f67076..cd023ae03ca1e 100644 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -523,6 +523,7 @@ ./services/x11/window-managers/fluxbox.nix ./services/x11/window-managers/icewm.nix ./services/x11/window-managers/bspwm.nix + ./services/x11/window-managers/bspwm-unstable.nix ./services/x11/window-managers/metacity.nix ./services/x11/window-managers/none.nix ./services/x11/window-managers/twm.nix diff --git a/nixos/modules/services/x11/window-managers/bspwm-unstable.nix b/nixos/modules/services/x11/window-managers/bspwm-unstable.nix new file mode 100644 index 0000000000000..3282e0d0851f0 --- /dev/null +++ b/nixos/modules/services/x11/window-managers/bspwm-unstable.nix @@ -0,0 +1,48 @@ +{ config, lib, pkgs, ... }: + +with lib; + +let + cfg = config.services.xserver.windowManager.bspwm-unstable; +in + +{ + options = { + services.xserver.windowManager.bspwm-unstable = { + enable = mkEnableOption "bspwm-unstable"; + startThroughSession = mkOption { + type = with types; bool; + default = false; + description = " + Start the window manager through the script defined in + sessionScript. Defaults to the the bspwm-session script + provided by bspwm + "; + }; + sessionScript = mkOption { + default = "${pkgs.bspwm-unstable}/bin/bspwm-session"; + defaultText = "(pkgs.bspwm-unstable)/bin/bspwm-session"; + description = " + The start-session script to use. Defaults to the + provided bspwm-session script from the bspwm package. + + Does nothing unless `bspwm.startThroughSession` is enabled + "; + }; + }; + }; + + config = mkIf cfg.enable { + services.xserver.windowManager.session = singleton { + name = "bspwm-unstable"; + start = if cfg.startThroughSession + then cfg.sessionScript + else '' + export _JAVA_AWT_WM_NONREPARENTING=1 + SXHKD_SHELL=/bin/sh ${pkgs.sxhkd-unstable}/bin/sxhkd -f 100 & + ${pkgs.bspwm-unstable}/bin/bspwm + ''; + }; + environment.systemPackages = [ pkgs.bspwm-unstable ]; + }; +} diff --git a/nixos/modules/services/x11/window-managers/default.nix b/nixos/modules/services/x11/window-managers/default.nix index f005decfa33c2..dabe2c26a72ff 100644 --- a/nixos/modules/services/x11/window-managers/default.nix +++ b/nixos/modules/services/x11/window-managers/default.nix @@ -10,6 +10,7 @@ in imports = [ ./afterstep.nix ./bspwm.nix + ./bspwm-unstable.nix ./compiz.nix ./dwm.nix ./exwm.nix |