hyprland.conf.tmpl

  1#
  2# Please note not all available settings / options are set here.
  3# For a full list, see the wiki
  4#
  5
  6# See https://wiki.hyprland.org/Configuring/Monitors/
  7{{- if eq .chezmoi.hostname "angmar" }}
  8monitor=DisplayPort-0,2560x1440@165,auto,auto
  9{{- else if eq .chezmoi.hostname "sidhe" }}
 10monitor=eDP-1,2256x1504@60,auto,1.333333
 11{{- end }}
 12
 13xwayland {
 14    force_zero_scaling = true
 15}
 16
 17# See https://wiki.hyprland.org/Configuring/Keywords/ for more
 18
 19# Execute your favorite apps at launch
 20# exec-once = waybar & hyprpaper & firefox
 21
 22# Source a file (multi-file configs)
 23# source = ~/.config/hypr/myColors.conf
 24
 25# Set programs that you use
 26$terminal = alacritty
 27$fileManager = nautilus
 28$menu = wofi --show drun
 29
 30# Some default env vars.
 31env = XCURSOR_SIZE,24
 32
 33# For all categories, see https://wiki.hyprland.org/Configuring/Variables/
 34input {
 35    kb_layout    = us
 36    kb_variant   =
 37    kb_model     =
 38    kb_options   =
 39    kb_rules     =
 40    repeat_rate  = 60
 41    repeat_delay = 300
 42
 43    follow_mouse = 1
 44
 45    touchpad {
 46        natural_scroll       = no
 47        disable_while_typing = yes
 48        clickfinger_behavior = yes
 49        tap-to-click         = yes
 50        drag_lock            = yes
 51        tap-and-drag         = yes
 52    }
 53
 54    sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
 55}
 56
 57general {
 58    # See https://wiki.hyprland.org/Configuring/Variables/ for more
 59
 60    gaps_in     = 10
 61    gaps_out    = 10
 62    border_size = 2
 63    col.active_border   = rgba(33ccffee) rgba(00ff99ee) 45deg
 64    col.inactive_border = rgba(595959aa)
 65
 66    resize_on_border        = yes
 67    extend_border_grab_area = yes
 68    hover_icon_on_border    = yes
 69
 70    layout = dwindle
 71
 72    # Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on
 73    allow_tearing = false
 74}
 75
 76decoration {
 77    # See https://wiki.hyprland.org/Configuring/Variables/ for more
 78
 79    rounding = 10
 80
 81    blur {
 82        enabled = true
 83        size = 3
 84        passes = 1
 85    }
 86
 87    drop_shadow = yes
 88    shadow_range = 4
 89    shadow_render_power = 3
 90    col.shadow = rgba(1a1a1aee)
 91}
 92
 93animations {
 94    enabled = yes
 95
 96    # Some default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more
 97
 98    bezier = myBezier, 0.05, 0.9, 0.1, 1.05
 99
100    animation = windows    , 1, 7 , myBezier,
101    animation = windowsOut , 1, 7 , default , popin 80%
102    animation = border     , 1, 10, default ,
103    animation = borderangle, 1, 8 , default ,
104    animation = fade       , 1, 7 , default ,
105    animation = workspaces , 1, 6 , default ,
106}
107
108dwindle {
109    # See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
110    pseudotile = yes # master switch for pseudotiling. Enabling is bound to mod + P in the keybinds section below
111    preserve_split = yes # you probably want this
112    no_gaps_when_only = yes
113}
114
115master {
116    # See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
117    new_is_master = true
118}
119
120gestures {
121    # See https://wiki.hyprland.org/Configuring/Variables/ for more
122    {{- if eq .chezmoi.hostname "angmar" }}
123    workspace_swipe = off
124    {{- else if eq .chezmoi.hostname "sidhe" }}
125    workspace_swipe = yes
126    workspace_swipe_forever = yes
127    {{- else }}
128    workspace_swipe = off
129    {{- end }}
130}
131
132misc {
133    # See https://wiki.hyprland.org/Configuring/Variables/ for more
134    disable_hyprland_logo   = true
135    force_default_wallpaper = 0 # Set to 0 to disable the anime mascot wallpapers
136    enable_swallow          = yes
137    focus_on_activate       = no
138    background_color        = rgb(24273A)
139}
140
141# Example windowrule v1
142# windowrule = float, ^(kitty)$
143# Example windowrule v2
144# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$
145# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
146windowrulev2 = nomaximizerequest, class:.* # You'll probably like this.
147
148
149# See https://wiki.hyprland.org/Configuring/Keywords/ for more
150$mod = SUPER
151
152# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
153# Applications
154bindr = $mod      , Z                    , exec          , rofi -show drun
155bindr = $mod SHIFT, Z                    , exec          , rofi -show run
156bind  = $mod      , RETURN               , exec          , $terminal
157bind  = $mod      , E                    , exec          , $fileManager
158
159# System controls
160bind  = $mod SHIFT, Q                    , killactive    ,
161bind  = $mod      , M                    , exit          ,
162bind  = $mod      , V                    , togglefloating,
163bind  = $mod      , P                    , pseudo        , # dwindle
164bind  = $mod      , J                    , togglesplit   , # dwindle
165bind  =           , XF86AudioRaiseVolume , exec          , pactl set-sink-volume @DEFAULT_SINK@ +10%
166bind  =           , XF86AudioLowerVolume , exec          , pactl set-sink-volume @DEFAULT_SINK@ -10%
167bind  =           , XF86AudioMute        , exec          , pactl set-sink-mute @DEFAULT_SINK@ toggle
168bind  =           , XF86AudioMicMute     , exec          , pactl set-source-mute @DEFAULT_SOURCE@ toggle
169bind  =           , XF86AudioPlay        , exec          , playerctl play-pause
170bind  =           , XF86AudioNext        , exec          , playerctl next
171bind  =           , XF86AudioPrev        , exec          , playerctl previous
172bind  =           , XF86MonBrightnessUp  , exec          , xbacklight +5
173bind  =           , XF86MonBrightnessDown, exec          , xbacklight -5
174
175# Notification controls
176bind  = $mod      , N, exec, dunstctl close-all
177bind  = $mod SHIFT, N, exec, dunstctl history-pop
178bind  = $mod CTRL , N, exec, dunstctl context
179
180# Move focus with mod + arrow keys
181bind = $mod, left , movefocus, l
182bind = $mod, right, movefocus, r
183bind = $mod, up   , movefocus, u
184bind = $mod, down , movefocus, d
185
186# Switch workspaces with mod + [0-9]
187bind = $mod, 1, workspace, 1
188bind = $mod, 2, workspace, 2
189bind = $mod, 3, workspace, 3
190bind = $mod, 4, workspace, 4
191bind = $mod, 5, workspace, 5
192bind = $mod, 6, workspace, 6
193bind = $mod, 7, workspace, 7
194bind = $mod, 8, workspace, 8
195bind = $mod, 9, workspace, 9
196bind = $mod, 0, workspace, 10
197
198# Move active window to a workspace with mod + SHIFT + [0-9]
199bind = $mod SHIFT, 1, movetoworkspace, 1
200bind = $mod SHIFT, 2, movetoworkspace, 2
201bind = $mod SHIFT, 3, movetoworkspace, 3
202bind = $mod SHIFT, 4, movetoworkspace, 4
203bind = $mod SHIFT, 5, movetoworkspace, 5
204bind = $mod SHIFT, 6, movetoworkspace, 6
205bind = $mod SHIFT, 7, movetoworkspace, 7
206bind = $mod SHIFT, 8, movetoworkspace, 8
207bind = $mod SHIFT, 9, movetoworkspace, 9
208bind = $mod SHIFT, 0, movetoworkspace, 10
209
210# Example special workspace (scratchpad)
211bind = $mod      , S, togglespecialworkspace, magic
212bind = $mod SHIFT, S, movetoworkspace       , special:magic
213
214# Scroll through existing workspaces with mod + scroll
215bind = $mod, mouse_down, workspace, e+1
216bind = $mod, mouse_up  , workspace, e-1
217
218# Move/resize windows with mod + LMB/RMB and dragging
219bindm = $mod, mouse:272, movewindow
220bindm = $mod, mouse:273, resizewindow