1 { pkgs, lib, config, ... }:
3 config = lib.mkIf config.xsession.windowManager.xmonad.enable {
5 ".xmonad/xmobar.hs".source = xmonad/xmobar.hs;
8 scriptPath = ".hm-xsession";
10 xset dpms 380 640 1200
11 ${pkgs.xorg.xsetroot}/bin/xsetroot -solid black -fg black -bg white -cursor_name left_ptr
12 ${pkgs.rxvt-unicode}/bin/urxvtd -f -o
13 ${pkgs.parcellite}/bin/parcellite &
14 ${pkgs.pasystray}/bin/pasystray &
16 windowManager.xmonad = {
17 haskellPackages = pkgs.haskellPackages;
18 #extraPackages = haskellPackages: [ ];
19 enableContribAndExtras = true;
20 config = xmonad/xmonad.hs;
23 services.screen-locker = {
25 lockCmd = toString (pkgs.writeShellScript "xsecurelock" ''
26 export PATH=${with pkgs; lib.makeBinPath [coreutils gnugrep xsecurelock xorg.xset]}
27 XSECURELOCK_BLANK_DPMS_STATE=off \
28 XSECURELOCK_BLANK_TIMEOUT=1 \
29 XSECURELOCK_DIM_TIME_MS=2000 \
30 XSECURELOCK_DISCARD_FIRST_KEYPRESS=0 \
31 XSECURELOCK_SAVER=saver_blank \
32 XSECURELOCK_SHOW_DATETIME=1 \
33 XSECURELOCK_SHOW_HOSTNAME=1 \
34 XSECURELOCK_SHOW_USERNAME=1 \
35 XSECURELOCK_WAIT_TIME_MS=2000 \
36 ${pkgs.xsecurelock}/bin/xsecurelock
38 #XSECURELOCK_SWITCH_USER_COMMAND="${pkgs.lightdm}/bin/dm-tool switch-to-greeter" \
39 enableDetectSleep = true;
40 inactiveInterval = lib.mkDefault 3; # minutes
41 xssLockExtraOptions = [
42 "--transfer-sleep-lock"
43 #"-n" "${pkgs.xss-lock}/share/doc/xss-lock/dim-screen.sh"