diff --git a/modules/services/x11/window-managers/default.nix b/modules/services/x11/window-managers/default.nix index c201b789ae..37facc0a93 100644 --- a/modules/services/x11/window-managers/default.nix +++ b/modules/services/x11/window-managers/default.nix @@ -17,6 +17,7 @@ in ./xmonad.nix ./i3.nix ./xbmc.nix + ./fvwm.nix ]; options = { diff --git a/modules/services/x11/window-managers/fvwm.nix b/modules/services/x11/window-managers/fvwm.nix new file mode 100644 index 0000000000..98a968d380 --- /dev/null +++ b/modules/services/x11/window-managers/fvwm.nix @@ -0,0 +1,42 @@ +{ config, pkgs, ... }: + +with pkgs.lib; + +let + + cfg = config.services.xserver.windowManager.fvwm; + +in + +{ + + ###### interface + + options = { + + services.xserver.windowManager.fvwm.enable = mkOption { + default = false; + description = "Enable the FVWM window manager."; + }; + + }; + + + ###### implementation + + config = mkIf cfg.enable { + + services.xserver.windowManager.session = singleton + { name = "fvwm"; + start = + '' + ${pkgs.fvwm}/bin/fvwm & + waitPID=$! + ''; + }; + + environment.x11Packages = [ pkgs.fvwm ]; + + }; + +}