-
-
Notifications
You must be signed in to change notification settings - Fork 5
/
hyprland.conf
281 lines (248 loc) · 9.99 KB
/
hyprland.conf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
# __ __ __ __
# / / / /_ ______ _____/ /___ _____ ____/ /
# / /_/ / / / / __ \/ ___/ / __ `/ __ \/ __ /
# / __ / /_/ / /_/ / / / / /_/ / / / / /_/ /
# /_/ /_/\__, / .___/_/ /_/\__,_/_/ /_/\__,_/
# /____/_/
#
monitor=eDP-1, 1920x1080, 0x0, 1
monitor=HDMI-A-2, 1920x1080@60, 1920x0, 1
monitor=DP-1, 1920x1080@60, 3840x0, 1
# set backgrounds
exec-once = swaybg -o DP-1 -i /home/babkock/.config/hypr/sunset.jpg -o eDP-1 -i /home/babkock/.config/hypr/purplepink.jpg -o HDMI-A-2 -i /home/babkock/.config/hypr/bluered.jpg
# launch Waybar
exec-once = waybar -c /home/babkock/.config/waybar/hconfig.json -s /home/babkock/.config/waybar/hyprland.css >/dev/null 2>&1
# launch Swaylock from script
#exec-once = /home/babkock/bin/hylock
exec-once = pgrep mpdas | xargs kill 2>/dev/null
exec-once = mpdas -d
# kill Pulseaudio and Pipewire, restart Pipewire
exec-once = pgrep pulseaudio | xargs kill 2>/dev/null
exec-once = pgrep pipewire | xargs kill 2> /dev/null
exec-once = pkill -x pipewire
exec-once = pipewire &
exec-once = pkill -x xdg-desktop-p
exec-once = /usr/libexec/xdg-desktop-portal-wlr
exec-once = pgrep mako | xargs kill 2> /dev/null
exec-once = mako &
exec-once = pgrep wob | xargs kill 2> /dev/null
exec-once = pkill -x tail
# Wob for volume/brightness
exec-once = rm -f /home/babkock/.wob.sock && mkfifo /home/babkock/.wob.sock && tail -f /home/babkock/.wob.sock | wob &
exec-once = dbus-update-activation-environment --all DISPLAY I3SOCK WAYLAND_DISPLAY XDG_SESSION_TYPE QT_QPA_PLATFORM QT_WAYLAND_DISABLE_WINDOWDECORATION GTK_THEME MOZ_ENABLE_WAYLAND XCURSOR_THEME XCURSOR_SIZE XDG_CURRENT_DESKTOP
exec = hyprctl setcursor Adwaita 30
exec-once = hydroxide imap &
exec-once = hydroxide smtp &
# Emacs daemon has to be started after DBus-update
exec-once = pgrep emacs | xargs kill 2> /dev/null
exec-once = emacs --daemon
env = GTK_THEME,Sunset-Dark
env = XCURSOR_SIZE,30
env = XCURSOR_THEME,Adwaita
env = XDG_CURRENT_DESKTOP,Hyprland
env = XDG_SESSION_TYPE,wayland
env = XDG_SESSION_DESKTOP,Hyprland
env = QT_QPA_PLATFORM,wayland-egl
env = QT_QPA_PLATFORMTHEME,qt6ct
env = QT_WAYLAND_DISABLE_WINDOWDECORATION,1
env = GDK_BACKEND,wayland,x11
env = CLUTTER_BACKEND,wayland
# workspace rules
workspace=1, monitor:eDP-1, default:true
workspace=2, monitor:HDMI-A-2, default:true, bordersize:2
workspace=3, monitor:eDP-1, bordersize:1, gapsin:3, gapsout:3
workspace=4, monitor:HDMI-A-2, bordersize:1, gapsin:2, gapsout:2
workspace=5, monitor:DP-1, bordersize:2
workspace=6, monitor:HDMI-A-2, bordersize:2
workspace=7, monitor:DP-1, default:true, bordersize:3, gapsin:2, gapsout:2
workspace=8, monitor:eDP-1, bordersize:1, gapsin:2, gapsout:2
workspace=9, monitor:DP-1, bordersize:3, gapsin:2, gapsout:2
input {
kb_layout = us
follow_mouse = 1
repeat_rate = 60
repeat_delay = 300
accel_profile = adaptive
touchpad {
natural_scroll = yes
clickfinger_behavior = yes
scroll_factor = 1.1
}
sensitivity = 0.5 # -1.0 - 1.0, 0 means no modification.
}
general {
gaps_in = 3
gaps_out = 4
border_size = 2
no_cursor_warps = yes
hover_icon_on_border = no
col.active_border = rgba(25c192dd) rgba(15b082dd) 90deg
#col.active_border = rgba(ffee10ef) rgba(10bbefef) 90deg
col.inactive_border = rgba(d0484edd) rgba(b0283edd) 90deg
layout = dwindle
cursor_inactive_timeout = 6
}
decoration {
rounding = 25
multisample_edges = yes
fullscreen_opacity = 1.0
inactive_opacity = 0.95
drop_shadow = yes
shadow_range = 6
shadow_scale = 1.5
shadow_render_power = 2
#shadow_offset = [2, 2]
col.shadow = rgba(006600ee)
col.shadow_inactive = rgba(660000dd)
dim_inactive = true
dim_strength = 0.1
blur {
enabled = yes
size = 1
passes = 1
ignore_opacity = true
brightness = 1.1
}
}
animations {
enabled = yes
bezier = myBezier, 0.1, 0.1, 0.2, 1
bezier = upp, 0.2, 0.9, 0.3, 1
bezier = downn, 0.9, 0.2, 1, 0.3
#animation = windows, 1, 7, myBezier
animation = windows, 1, 7, upp, slide
animation = windowsOut, 1, 7, downn, slide
animation = border, 1, 7, default
animation = fadeIn, 1, 7, default
animation = fadeOut, 1, 7, default
animation = fadeSwitch, 1, 5, default
animation = fadeShadow, 1, 5, default
animation = fadeDim, 1, 4, default
animation = border, 1, 5, default
animation = workspaces, 1, 7, upp, slidefadevert
}
dwindle {
pseudotile = yes # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
preserve_split = yes # you probably want this
no_gaps_when_only = yes
}
master {
new_is_master = true
new_on_top = yes
orientation = right
no_gaps_when_only = yes
}
gestures {
# See https://wiki.hyprland.org/Configuring/Variables/ for more
workspace_swipe = yes
workspace_swipe_fingers = 3
workspace_swipe_distance = 400
workspace_swipe_cancel_ratio = 0.7
}
# Example per-device config
# See https://wiki.hyprland.org/Configuring/Keywords/#executing for more
device:SynPS/2 Synaptics TouchPad {
sensitivity = 0.9
scroll_method = 2fg
natural_scroll = yes
}
device:GamingMouseI Gaming Mouse {
sensitivity = 0.8
natural_scroll = yes
}
windowrulev2 = idleinhibit always,class:^(mpv)$
windowrulev2 = idleinhibit always,class:^(com.obsproject.Studio)$
windowrulev2 = idleinhibit always,class:^(com\.obsproject\.Studio)$
windowrulev2 = float,class:^(mpv)$
windowrulev2 = opacity 0.9 0.8,class:^(Emacs)$,title:^(.*Emacs.*)$
windowrulev2 = forceinput,class:^(Emacs)$,title:^(.*Emacs.*)$
windowrulev2 = workspace 4,class:^(Emacs)$,title:^(.*Emacs.*)$
windowrulev2 = monitor HDMI-A-2,class:^(Emacs)$,title:^(.*Emacs.*)$
#windowrulev2 = workspace 7,class:^(mpv)$
#windowrulev2 = monitor DP-1,class:^(mpv)$
windowrulev2 = workspace 8,class:^(com.obsproject.Studio)$
windowrulev2 = workspace 8,class:^(com\.obsproject\.Studio)$
windowrulev2 = monitor eDP-1,class:^(com.obsproject.Studio)$
windowrulev2 = monitor eDP-1,class:^(com\.obsproject\.Studio)$
windowrulev2 = workspace 5,class:^(org.nicotine_plus.Nicotine)$
windowrulev2 = workspace 5,class:^(org\.nicotine_plus\.Nicotine)$
windowrulev2 = monitor HDMI-A-2,class:^(steam)$
windowrulev2 = workspace 6,class:^(steam)
windowrulev2 = float,class:^(swayimg.*)$
windowrulev2 = float,title:^(.*swayimg.*)$
windowrulev2 = workspace 5,class:^(Gimp)$
windowrulev2 = monitor DP-1,class:^(Gimp)$
windowrulev2 = float,class:^(Gimp)$
windowrulev2 = noanim,class:^(Gimp)$
windowrulev2 = opacity 1.0 0.9,class:^(foot)$
windowrulev2 = opacity 1.0 0.9,class:^(Alacritty)$
windowrulev2 = opacity 0.95 0.85,class:^(org.nicotine_plus.Nicotine)$
windowrulev2 = rounding 0,noanim,class:^(steam)$
$mainMod = SUPER
bind = $mainMod, Return, exec, alacritty
bind = $mainMod SHIFT, C, killactive,
bind = $mainMod SHIFT, Q, exit,
bind = $mainMod, S, togglefloating,
bind = $mainMod, Slash, exec, subl3
bind = $mainMod, Backslash, exec, alacritty -e neomutt -F "/home/babkock/.muttrc"
bind = $mainMod, Backspace, exec, alacritty -e tremc
bind = $mainMod SHIFT, Backspace, exec, [workspace 5] transmission-remote-gtk
bind = $mainMod SHIFT, Backslash, exec, [workspace 5] discord
bind = $mainMod SHIFT, Slash, exec, [workspace 4] chromium
bind = $mainMod, Period, exec, [workspace 2] qutebrowser --qt-arg stylesheet "/home/babkock/.local/share/qutebrowser/fix-tooltips.qss"
bind = $mainMod SHIFT, Period, exec, [workspace 2] firefox-wayland
bind = $mainMod, Comma, exec, [workspace 3] alacritty -e ncmpcpp
bind = $mainMod SHIFT, Comma, exec, [workspace 4] emacsclient -c -a 'emacs'
bind = $mainMod, Space, exec, dmenu_path | fuzzel -b "1312127f" -t "25c192ff" -s "2986b0cc" -S "49a6d0ee" -m "e73d7bfe" -M "f74e8bff" -f "SpaceMono Nerd Font:pixelsize=26:antialias=true" -p "$ " -r 30 -P 6 -x 6 -y 2 -B 2 -C "000000bb" -d | sh
bind = $mainMod SHIFT, Space, exec, mpv "av://v4l2:/dev/video2" --untimed --profile=low-latency --no-osc
bind = $mainMod, Semicolon, exec, nicotine
bind = $mainMod SHIFT, Semicolon, exec, [workspace 8] obs
bind = $mainMod, M, pseudo, # dwindle
bind = $mainMod, N, togglesplit, # dwindle
bind = $mainMod, B, togglegroup,
bind = $mainMod, U, changegroupactive, b,
bind = $mainMod, I, changegroupactive, f,
bind = $mainMod, R, movecurrentworkspacetomonitor, DP-1
bind = $mainMod, Y, movecurrentworkspacetomonitor, HDMI-A-2
bind = $mainMod, T, movecurrentworkspacetomonitor, eDP-1
bind = $mainMod, O, movewindow, mon:-1
bind = $mainMod, P, movewindow, mon:+1
bind = $mainMod, H, movefocus, l
bind = $mainMod, L, movefocus, r
bind = $mainMod, J, movefocus, d
bind = $mainMod, K, movefocus, u
bind = $mainMod SHIFT, K, swapnext
bind = $mainMod SHIFT, J, swapnext
bind = $mainMod SHIFT, H, splitratio, -0.1
bind = $mainMod SHIFT, L, splitratio, +0.1
bind = $mainMod, 1, workspace, 1
bind = $mainMod, 2, workspace, 2
bind = $mainMod, 3, workspace, 3
bind = $mainMod, 4, workspace, 4
bind = $mainMod, 5, workspace, 5
bind = $mainMod, 6, workspace, 6
bind = $mainMod, 7, workspace, 7
bind = $mainMod, 8, workspace, 8
bind = $mainMod, 9, workspace, 9
bind = $mainMod SHIFT, 1, movetoworkspace, 1
bind = $mainMod SHIFT, 2, movetoworkspace, 2
bind = $mainMod SHIFT, 3, movetoworkspace, 3
bind = $mainMod SHIFT, 4, movetoworkspace, 4
bind = $mainMod SHIFT, 5, movetoworkspace, 5
bind = $mainMod SHIFT, 6, movetoworkspace, 6
bind = $mainMod SHIFT, 7, movetoworkspace, 7
bind = $mainMod SHIFT, 8, movetoworkspace, 8
bind = $mainMod SHIFT, 9, movetoworkspace, 9
bind = $mainMod ALT, 1, movetoworkspacesilent, 1
bind = $mainMod ALT, 2, movetoworkspacesilent, 2
bind = $mainMod ALT, 3, movetoworkspacesilent, 3
bind = $mainMod ALT, 4, movetoworkspacesilent, 4
bind = $mainMod ALT, 5, movetoworkspacesilent, 5
bind = $mainMod ALT, 6, movetoworkspacesilent, 6
bind = $mainMod ALT, 7, movetoworkspacesilent, 7
bind = $mainMod ALT, 8, movetoworkspacesilent, 8
bind = $mainMod ALT, 9, movetoworkspacesilent, 9
bind = $mainMod, mouse_down, workspace, e+1
bind = $mainMod, mouse_up, workspace, e-1
bindm = $mainMod, mouse:272, movewindow
bindm = $mainMod, mouse:273, resizewindow