nixos-configs/modules/desktop/xmonad/xmonad.nix

75 lines
1.5 KiB
Nix
Raw Normal View History

2023-03-23 19:01:42 +01:00
{ options, config, lib, pkgs, ... }:
with lib;
with lib.my;
let cfg = config.modules.desktop.xmonad;
in {
options.modules.desktop.xmonad = { enable = mkBoolOpt false; };
config = mkIf cfg.enable {
2023-03-27 04:31:58 +02:00
modules = {
2023-03-27 09:28:51 +02:00
desktop = {
polybar.enable = true;
2023-03-28 16:52:54 +02:00
picom.enable = true;
2023-03-27 09:28:51 +02:00
themes = {
gtk.enable = true;
qt.enable = true;
};
};
2023-03-27 04:31:58 +02:00
apps.rofi.enable = true;
};
2023-03-23 19:01:42 +01:00
services.xserver = {
enable = true;
layout = "fr";
2023-03-27 21:08:05 +02:00
autoRepeatDelay = 400;
autoRepeatInterval = 25;
2023-03-23 19:01:42 +01:00
desktopManager.xterm.enable = false;
windowManager.xmonad.enable = true;
displayManager.lightdm = {
enable = true;
background = ../wallpaper.png;
greeters.mini = {
enable = true;
user = config.user.name;
extraConfig = ''
text-color = "#fbf1c7"
password-background-color = "#3c3836"
window-color = "#282828"
border-color = "#458588"
'';
};
};
};
home-manager.users.${config.user.name} = {
xsession = {
windowManager.xmonad = {
enable = true;
enableContribAndExtras = true;
config = ./xmonad.hs;
};
};
2023-03-27 01:56:07 +02:00
services.picom.enable = true;
2023-03-23 19:01:42 +01:00
home = {
file.".xmonad/scripts" = {
source = ./scripts;
recursive = true;
};
packages = with pkgs.unstable; [
i3lock
feh
scrot
];
};
};
};
}