diff --git a/modules/config/system-path.nix b/modules/config/system-path.nix index 38be78876fb..18afb71e7b5 100644 --- a/modules/config/system-path.nix +++ b/modules/config/system-path.nix @@ -116,5 +116,5 @@ in require = [options]; environment.systemPackages = requiredPackages; - environment.pathsToLink = ["/bin" "/sbin" "/lib" "/share/man" "/share/info" "/man" "/info"]; + environment.pathsToLink = ["/bin" "/sbin" "/lib" "/share/man" "/share/info" "/man" "/info" "/etc/xdg"]; } diff --git a/modules/module-list.nix b/modules/module-list.nix index fbea5e66fe6..4ff6ac24978 100644 --- a/modules/module-list.nix +++ b/modules/module-list.nix @@ -124,6 +124,7 @@ ./services/x11/display-managers/slim.nix ./services/x11/hardware/synaptics.nix ./services/x11/hardware/wacom.nix + ./services/x11/window-managers/awesome.nix ./services/x11/window-managers/compiz.nix ./services/x11/window-managers/default.nix ./services/x11/window-managers/icewm.nix diff --git a/modules/services/x11/window-managers/awesome.nix b/modules/services/x11/window-managers/awesome.nix new file mode 100644 index 00000000000..0746bd34b9d --- /dev/null +++ b/modules/services/x11/window-managers/awesome.nix @@ -0,0 +1,42 @@ +{ config, pkgs, ... }: + +with pkgs.lib; + +let + + cfg = config.services.xserver.windowManager.awesome; + +in + +{ + + ###### interface + + options = { + + services.xserver.windowManager.awesome.enable = mkOption { + default = false; + description = "Enable the Awesome window manager."; + }; + + }; + + + ###### implementation + + config = mkIf cfg.enable { + + services.xserver.windowManager.session = singleton + { name = "awesome"; + start = + '' + ${pkgs.awesome}/bin/awesome & + waitPID=$! + ''; + }; + + environment.x11Packages = [ pkgs.awesome ]; + + }; + +}