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