diff options
author | sils <sils@sils.li> | 2023-08-12 12:37:21 +0200 |
---|---|---|
committer | sils <sils@sils.li> | 2023-08-12 12:37:21 +0200 |
commit | 066ee3077bb7a07cd0429df0de08e53ebf46a116 (patch) | |
tree | 3d2ae72b652f7dcf567ebba9761481d5fc238b6e | |
parent | Feat(u/sils/packages): Add swaybg (diff) | |
download | nix-config-066ee3077bb7a07cd0429df0de08e53ebf46a116.tar.gz nix-config-066ee3077bb7a07cd0429df0de08e53ebf46a116.zip |
Feat(u/sils): Add hyprland config
This is only a conversion of the default config.
Diffstat (limited to '')
-rw-r--r-- | users/sils/default.nix | 1 | ||||
-rw-r--r-- | users/sils/hyprland/default.nix | 175 |
2 files changed, 176 insertions, 0 deletions
diff --git a/users/sils/default.nix b/users/sils/default.nix index 1011e72..91dfa65 100644 --- a/users/sils/default.nix +++ b/users/sils/default.nix @@ -5,6 +5,7 @@ ./gpg #./grades ./hyfetch + ./hyprland ./mako ./nixneovim ./packages diff --git a/users/sils/hyprland/default.nix b/users/sils/hyprland/default.nix new file mode 100644 index 0000000..55401d2 --- /dev/null +++ b/users/sils/hyprland/default.nix @@ -0,0 +1,175 @@ +{...}: { + wayland.windowManager.hyprland = { + enable = true; + settings = { + # See https://wiki.hyprland.org/Configuring/Monitors/ + monitor = ",preferred,auto,auto"; + + # See https://wiki.hyprland.org/Configuring/Keywords/ for more + + # Execute your favorite apps at launch + # exec-once = waybar & hyprpaper & firefox + + # Source a file (multi-file configs) + # source = ~/.config/hypr/myColors.conf + + # Some default env vars. + env = "XCURSOR_SIZE,24"; + + # For all categories, see https://wiki.hyprland.org/Configuring/Variables/ + input = { + kb_layout = "de"; + kb_variant = ""; + kb_model = ""; + kb_options = ""; + kb_rules = ""; + + follow_mouse = "1"; + + touchpad = { + natural_scroll = "no"; + }; + + sensitivity = "0"; # -1.0 - 1.0, 0 means no modification. + }; + + general = { + # See https://wiki.hyprland.org/Configuring/Variables/ for more + + gaps_in = "5"; + gaps_out = "20"; + border_size = "2"; + "col.active_border" = "rgba(33ccffee) rgba(00ff99ee) 45deg"; + "col.inactive_border" = "rgba(595959aa)"; + + layout = "dwindle"; + }; + + decoration = { + # See https://wiki.hyprland.org/Configuring/Variables/ for more + + rounding = "10"; + blur = "yes"; + blur_size = "3"; + blur_passes = "1"; + blur_new_optimizations = "on"; + + drop_shadow = "yes"; + shadow_range = "4"; + shadow_render_power = "3"; + "col.shadow" = "rgba(1a1a1aee)"; + }; + + animations = { + enabled = "yes"; + + # Some default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more + + bezier = "myBezier, 0.05, 0.9, 0.1, 1.05"; + + animation = [ + "windows, 1, 7, myBezier" + "windowsOut, 1, 7, default, popin 80%" + "border, 1, 10, default" + "borderangle, 1, 8, default" + "fade, 1, 7, default" + "workspaces, 1, 6, default" + ]; + }; + + dwindle = { + # See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more + pseudotile = "yes"; # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below + preserve_split = "yes"; # you probably want this + }; + + master = { + # See https://wiki.hyprland.org/Configuring/Master-Layout/ for more + new_is_master = "true"; + }; + + gestures = { + # See https://wiki.hyprland.org/Configuring/Variables/ for more + workspace_swipe = "off"; + }; + + # Example per-device config + # See https://wiki.hyprland.org/Configuring/Keywords/#executing for more + "device:epic-mouse-v1" = { + sensitivity = "-0.5"; + }; + + # Example windowrule v1 + # windowrule = float, ^(kitty)$ + # Example windowrule v2 + # windowrulev2 = float,class:^(kitty)$,title:^(kitty)$ + # See https://wiki.hyprland.org/Configuring/Window-Rules/ for more + + # See https://wiki.hyprland.org/Configuring/Keywords/ for more + "$mainMod" = "SUPER"; + + # Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more + bind = [ + "$mainMod, T, exec, alacritty" + "$mainMod, C, killactive, " + "$mainMod, M, exit, " + "$mainMod, E, exec, dolphin " + "$mainMod, V, togglefloating, " + "$mainMod, R, exec, rofi -show drun" + "$mainMod, P, pseudo, " # dwindle + "$mainMod, J, togglesplit, " # dwindle + "$mainMod, L, exec, swaylock" # screenlock + ''$mainMod, S, exec, grim -l 0 -g "$(slurp)" - | wl-copy'' # screenshots + ''$mainMod, K, exec, zsh -exec "ssh-agent && keepassxc"'' # opens keepass after starting ssh-agent + + # Move focus with mainMod + arrow keys + "$mainMod, left, movefocus, l" + "$mainMod, right, movefocus, r" + "$mainMod, up, movefocus, u" + "$mainMod, down, movefocus, d" + + # Switch workspaces with mainMod + [0-9] + "$mainMod, 1, workspace, 1" + "$mainMod, 2, workspace, 2" + "$mainMod, 3, workspace, 3" + "$mainMod, 4, workspace, 4" + "$mainMod, 5, workspace, 5" + "$mainMod, 6, workspace, 6" + "$mainMod, 7, workspace, 7" + "$mainMod, 8, workspace, 8" + "$mainMod, 9, workspace, 9" + "$mainMod, 0, workspace, 10" + + # Move active window to a workspace with mainMod + SHIFT + [0-9] + "$mainMod SHIFT, 1, movetoworkspace, 1" + "$mainMod SHIFT, 2, movetoworkspace, 2" + "$mainMod SHIFT, 3, movetoworkspace, 3" + "$mainMod SHIFT, 4, movetoworkspace, 4" + "$mainMod SHIFT, 5, movetoworkspace, 5" + "$mainMod SHIFT, 6, movetoworkspace, 6" + "$mainMod SHIFT, 7, movetoworkspace, 7" + "$mainMod SHIFT, 8, movetoworkspace, 8" + "$mainMod SHIFT, 9, movetoworkspace, 9" + "$mainMod SHIFT, 0, movetoworkspace, 10" + + # Scroll through existing workspaces with mainMod + scroll + "$mainMod, mouse_down, workspace, e+1" + "$mainMod, mouse_up, workspace, e-1" + ]; + + # Move/resize windows with mainMod + LMB/RMB and dragging + bindm = [ + "$mainMod, mouse:272, movewindow" + "$mainMod, mouse:273, resizewindow" + ]; + #exec-once=bash ~/.config/hypr/start.sh + #exec-once=swww init & + exec-once = [ + "nm-applet --indicator" + "eww open-many bar0 bar1" + "mako" + "swaybg -i ~/repos/nix-config/files/wallpaper.jpg" + ]; + }; + }; +} |