diff --git a/home.nix b/home.nix index f8ee09f..20487ef 100644 --- a/home.nix +++ b/home.nix @@ -73,6 +73,57 @@ in # package = latest.rxvt_unicode-with-plugins; # }; + # TODO polybar + xsession.windowManager.i3 = let + modifier = "Mod4"; + in { + enable = true; + config = { + assigns = { + # https://rycee.gitlab.io/home-manager/options.html#opt-xsession.windowManager.i3.config.assigns + }; + focus = { + mouseWarping = false; # Whether mouse cursor should be warped to the center of the window when switching focus to a window on a different output. + }; + + modifier = modifier; + + # see https://rycee.gitlab.io/home-manager/options.html#opt-xsession.windowManager.i3.config.keybindings + keybindings = pkgs.lib.mkOptionDefault { + "${modifier}+Return" = "exec urxvtc"; + + # See https://faq.i3wm.org/question/3747/enabling-multimedia-keys.1.html + # Pulse Audio controls + # bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume 0 +5% #increase sound volume + # bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume 0 -5% #decrease sound volume + # bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute 0 toggle # mute sound + + # Sreen brightness controls + # bindsym XF86MonBrightnessUp exec light -A 2 # increase screen brightness + # bindsym XF86MonBrightnessDown exec light -U 2 # decrease screen brightness + + # Touchpad controls + # bindsym XF86TouchpadToggle exec /some/path/toggletouchpad.sh # toggle touchpad + + # Media player controls + # bindsym XF86AudioPlay exec playerctl play + # bindsym XF86AudioPause exec playerctl pause + # bindsym XF86AudioNext exec playerctl next + # bindsym XF86AudioPrev exec playerctl previous + }; + + startup = [ + # { command = "dropbox start"; notification = false; } + { command = "setxkbmap -layout fr -variant bepo"; notification = false; } + { command = "urxvtd -q -o -f"; notification = false; } + { command = "udiskie"; notification = false; } + { command = "parcellite -d"; notification = false; } + { command = "numlockx on"; notification = false; } # turn verr num on + #{ command = "docker start nginx-proxy "; notification = false; }# docker run -d -p 8080:8080 -p 81:80 -v /dev/null:/etc/traefik/traefik.toml -v /var/run/docker.sock:/var/run/docker.sock --name traefik traefik --web --docker --docker.domain=test --logLevel=INFO + ]; + }; + }; + programs.zsh = { enable = true; enableAutosuggestions = true;