-
-
Notifications
You must be signed in to change notification settings - Fork 5
/
wayfire.ini
416 lines (344 loc) · 13.4 KB
/
wayfire.ini
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
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
# _____
# _ ______ ___ __/ __(_)_______
# | | /| / / __ `/ / / / /_/ / ___/ _ \
# | |/ |/ / /_/ / /_/ / __/ / / / __/
# |__/|__/\__,_/\__, /_/ /_/_/ \___/
# /____/
# Default config for Wayfire
#
# Copy this to ~/.config/wayfire.ini and edit it to your liking.
#
# Take the tutorial to get started.
# https://github.com/WayfireWM/wayfire/wiki/Tutorial
#
# Read the Configuration document for a complete reference.
# https://github.com/WayfireWM/wayfire/wiki/Configuration
# Input configuration ──────────────────────────────────────────────────────────
# Example configuration:
#
[input]
xkb_layout = us
kb_repeat_delay = 300
kb_repeat_rate = 60
mouse_accel_profile = adaptive
touchpad_accel_profile = adaptive
mouse_cursor_speed = 0.8
touchpad_cursor_speed = 1.0
mouse_scroll_speed = 1.6
touchpad_scroll_speed = 1.6
xkb_variant = qwerty
cursor_theme = Adwaita
cursor_size = 30
#
# See Input options for a complete reference.
# https://github.com/WayfireWM/wayfire/wiki/Configuration#input
# Output configuration ─────────────────────────────────────────────────────────
# Example configuration:
#
[output:eDP-1]
mode = 1920x1080@60000
position = 0,0
transform = normal
scale = 1.000000
[output:HDMI-A-2]
mode = 1920x1080@60000
position = 1920,0
transform = normal
scale = 1.000000
[output:DP-1]
mode = 1920x1080@60000
position = 3840,0
transform = normal
scale = 1.000000
#
# You can get the names of your outputs with wlr-randr.
# https://github.com/emersion/wlr-randr
#
# See also kanshi for configuring your outputs automatically.
# https://wayland.emersion.fr/kanshi/
#
# See Output options for a complete reference.
# https://github.com/WayfireWM/wayfire/wiki/Configuration#output
# Core options ─────────────────────────────────────────────────────────────────
[core]
# List of plugins to be enabled.
# See the Configuration document for a complete list.
plugins = \
alpha \
animate \
autostart \
blur \
command \
cube \
expo \
fast-switcher \
foreign-toplevel \
grid \
idle \
move \
oswitch \
place \
resize \
switcher \
vswitch \
window-rules \
wm-actions \
wobbly \
zoom
# Note: [blur] is not enabled by default, because it can be resource-intensive.
# Feel free to add it to the list if you want it.
# You can find its documentation here:
# https://github.com/WayfireWM/wayfire/wiki/Configuration#blur
# Close focused window.
close_top_view = <super> <shift> KEY_C | <alt> KEY_F4
# Workspaces arranged into a grid: 3 × 3.
vwidth = 3
vheight = 1
# Prefer client-side decoration or server-side decoration
preferred_decoration_mode = server
[autostart]
wob = rm -f '/home/babkock/.wob.sock' && mkfifo '/home/babkock/.wob.sock' && tail -f '/home/babkock/.wob.sock' | wob -c '/home/babkock/.config/wayfire.ini' &
swaybg = swaybg -o eDP-1 -i '/home/babkock/.config/wayfire/purpletrails.png' -o HDMI-A-2 -i '/home/babkock/.config/wayfire/stainglass1.png' -o DP-1 -i '/home/babkock/.config/wayfire/stainglass2.png'
pipewire = pkill -x pipewire; pkill -x pulseaudio
pipewire2 = pipewire &
dbus = dbus-update-activation-environment DISPLAY WAYLAND_DISPLAY GTK_THEME QT_QPA_PLATFORM QT_QPA_PLATFORMTHEME MOZ_ENABLE_WAYLAND QT_WAYLAND_DISABLE_WINDOWDECORATION XDG_SESSION_TYPE XDG_CURRENT_DESKTOP XCURSOR_THEME XCURSOR_SIZE
#portal = pkill -x xdg-desktop-por
#portal1 = /usr/libexec/xdg-desktop-portal -r &
#portal2 = /usr/libexec/xdg-desktop-portal-wlr -r &
mako = pkill -x mako; mako -c '/home/babkock/.config/mako/wayfire' &
wob = rm -f '/home/babkock/.wob.sock' && mkfifo '/home/babkock/.wob.sock' && tail -f '/home/babkock/.wob.sock' | wob -c '/home/babkock/.config/wob/wayfire.ini' &
waybar = waybar -c '/home/babkock/.config/waybar/wconfig.json' -s '/home/babkock/.config/waybar/wayfire.css'
pactl = pactl set-default-sink alsa_output.pci-0000_00_1f.3.analog-stereo
pactl1 = pactl set-default-source alsa_input.pci-0000_00_1f.3.analog-stereo
emacs = pkill -x emacs; emacs --daemon
eww = eww --force-wayland daemon
eww1 = eww open waycalendar
eww2 = eww open waymem
eww3 = eww open waypower
hydrox = hydroxide smtp &
hydrox = hydroxide imap &
#swayosd = swayosd-server --top-margin=0.2 &
mpdas = mpdas &
# Mouse bindings ───────────────────────────────────────────────────────────────
[blur]
method = gaussian
gaussian_iterations = 1
blur_by_default = all
# Drag windows by holding down Super and left mouse button.
[move]
activate = <super> BTN_LEFT
# Resize them with right mouse button + Super.
[resize]
activate = <super> BTN_RIGHT
# Zoom in the desktop by scrolling + Super.
[zoom]
modifier = <super>
# Change opacity by scrolling with Super + Alt.
[alpha]
modifier = <super> <alt>
# Rotate windows with the mouse.
#[wrot]
#activate = <super> <ctrl> BTN_RIGHT
# Fisheye effect.
#[fisheye]
#toggle = <super> <ctrl> KEY_F
# Startup commands ─────────────────────────────────────────────────────────────
[autostart]
# Automatically start background and panel.
# Set to false if you want to override the default clients.
autostart_wf_shell = false
# Set the wallpaper, start a panel and dock if you want one.
# https://github.com/WayfireWM/wf-shell
#
# These are started by the autostart_wf_shell option above.
#
# background = wf-background
# panel = wf-panel
# dock = wf-dock
# Output configuration
# https://wayland.emersion.fr/kanshi/
#outputs = kanshi
# Screen color temperature
# https://sr.ht/~kennylevinsen/wlsunset/
#gamma = wlsunset
# Idle configuration
# https://github.com/swaywm/swayidle
# https://github.com/swaywm/swaylock
#idle = swayidle before-sleep swaylock
# XDG desktop portal
# Needed by some GTK applications
# Example configuration:
#
[idle]
toggle = <super> KEY_Z
screensaver_timeout = 500
dpms_timeout = 1300
#
# Disables the compositor going idle with Super + z.
# This will lock your screen after 300 seconds of inactivity, then turn off
# your displays after another 300 seconds.
# Applications ─────────────────────────────────────────────────────────────────
[command]
# Start a terminal
# https://github.com/alacritty/alacritty
binding_terminal = <super> KEY_ENTER
command_terminal = alacritty --config-file '/home/babkock/.config/alacritty/wayfire.toml'
# Start your launcher
# https://hg.sr.ht/~scoopta/wofi
# Note: Add mode=run or mode=drun to ~/.config/wofi/config.
# You can also specify the mode with --show option.
binding_launcher = <super> KEY_SPACE
command_launcher = dmenu_path | fuzzel -b d038447f -t fc3c35ff -s 72b4888f -S 92d4afef -m 96afc3ef -f "SpaceMono Nerd Font:size=16:antialias=true" -x 6 -r 0 -B 2 -C 000000aa -d | sh
binding_camera = <super> <shift> KEY_SPACE
command_camera = mpv av://v4l2:/dev/video2 --untimed --profile=low-latency --no-osc --ontop --cache=no --demuxer-lavf-format=video4linux2 --demuxer-lavf-o=video_size=960x720,input_format=mjpeg,framerate=30 --window-scale=0.5
binding_browser = <super> KEY_DOT
command_browser = qutebrowser --qt-arg stylesheet "$HOME/.local/share/qutebrowser/fix-tooltips.qss"
binding_music = <super> KEY_COMMA
command_music = alacritty --config-file '/home/babkock/.config/alacritty/wayfire.toml' -e 'ncmpcpp'
binding_emacs = <super> <shift> KEY_COMMA
command_emacs = emacsclient -c -a 'emacs'
binding_discord = <super> <shift> KEY_BACKSLASH
command_discord = discord --enable-features=UseOzonePlatform --ozone-platform=wayland --enable-features=WaylandWindowDecorations
binding_firefox = <super> <shift> KEY_DOT
command_firefox = firefox-wayland
binding_nicotine = <super> KEY_SEMICOLON
command_nicotine = nicotine
binding_vm = <super> <shift> KEY_SEMICOLON
command_vm = virt-manager
binding_sublime = <super> KEY_SLASH
command_sublime = subl3
binding_steam = <super> <shift> KEY_SLASH
command_steam = steam
binding_mail = <super> KEY_BACKSLASH
command_mail = alacritty --config-file '/home/babkock/.config/alacritty/wayfire.toml' -e neomutt -F /home/babkock/.muttrc
binding_transmission = <super> KEY_BACKSPACE
command_transmission = alacritty --config-file '/home/babkock/.config/alacritty/wayfire.toml' -e tremc --ssl -X -r -c 'tababcock0987:[email protected]:9091'
binding_transgtk = <super> <shift> KEY_BACKSPACE
command_transgtk = transmission-remote-gtk
# Logout
# https://github.com/ArtsyMacaw/wlogout
binding_logout = <super> <shift> KEY_Q
command_logout = pkill -x wayfire
# Screenshots
# https://wayland.emersion.fr/grim/
# https://wayland.emersion.fr/slurp/
binding_screenshot = KEY_PRINT
command_screenshot = grim $(date '+%F_%T').webp
binding_screenshot_interactive = <shift> KEY_PRINT
command_screenshot_interactive = slurp | grim -g - $(date '+%F_%T').webp
# Windows ──────────────────────────────────────────────────────────────────────
# Actions related to window management functionalities.
#
# Example configuration:
#
# [wm-actions]
# toggle_fullscreen = <super> KEY_F
# toggle_always_on_top = <super> KEY_X
# toggle_sticky = <super> <shift> KEY_X
# Position the windows in certain regions of the output.
[grid]
#
# ⇱ ↑ ⇲ │ 7 8 9
# ← f → │ 4 5 6
# ⇱ ↓ ⇲ d │ 1 2 3 0
# ‾ ‾
slot_bl = <super> KEY_KP1
slot_b = <super> KEY_KP2
slot_br = <super> KEY_KP3
slot_l = <super> KEY_KP4
slot_c = <super> KEY_KP5 | <super> KEY_UP
slot_r = <super> KEY_KP6
slot_tl = <super> KEY_KP7
slot_t = <super> KEY_KP8
slot_tr = <super> KEY_KP9
# Restore default.
restore = <super> KEY_KP0 | <super> KEY_DOWN
# Change active window with an animation.
[switcher]
next_view = <super> KEY_TAB
prev_view = <super> <shift> KEY_TAB
# Simple active window switcher.
[fast-switcher]
activate = <alt> KEY_ESC
# Workspaces ───────────────────────────────────────────────────────────────────
# Switch to workspace.
[vswitch]
binding_left = <super> KEY_LEFT
#binding_down = <super> KEY_DOWN
#binding_up = <super> KEY_UP
binding_right = <super> KEY_RIGHT
# Move the focused window with the same key-bindings, but add Shift.
with_win_left = <super> <ctrl> KEY_LEFT
with_win_down = <super> <ctrl> KEY_DOWN
with_win_up = <super> <ctrl> KEY_UP
with_win_right = <super> <ctrl> KEY_RIGHT
# Show the current workspace row as a cube.
[cube]
activate = <ctrl> <alt> BTN_LEFT
# Switch to the next or previous workspace.
rotate_left = <super> <ctrl> KEY_H
rotate_right = <super> <ctrl> KEY_L
#[simple-tile]
#button_move = <super> BTN_LEFT
#button_resize = <super> BTN_RIGHT
#key_focus_left = <super> KEY_H
#key_focus_below = <super> KEY_J
#key_focus_above = <super> KEY_K
#key_focus_right = <super> KEY_L
#key_toggle = <super> KEY_T
#inner_gap_size = 2
#outer_horiz_gap_size = 0
#outer_vert_gap_size = 0
# Show an overview of all workspaces.
[expo]
toggle = <super>
# Select a workspace.
# Workspaces are arranged into a grid of 3 × 3.
# The numbering is left to right, line by line.
#
# ⇱ k ⇲
# h ⏎ l
# ⇱ j ⇲
# ‾ ‾
# See core.vwidth and core.vheight for configuring the grid.
select_workspace_1 = KEY_1
select_workspace_2 = KEY_2
select_workspace_3 = KEY_3
#select_workspace_4 = KEY_4
#select_workspace_5 = KEY_5
#select_workspace_6 = KEY_6
#select_workspace_7 = KEY_7
#select_workspace_8 = KEY_8
#select_workspace_9 = KEY_9
[follow-focus]
focus_delay = 2
threshold = 1
[hide-cursor]
hide_delay = 4
# Outputs ──────────────────────────────────────────────────────────────────────
# Change focused output.
[oswitch]
# Switch to the next output.
next_output = <super> KEY_O
# Same with the window.
next_output_with_win = <super> <shift> KEY_O
# Invert the colors of the whole output.
#[invert]
#toggle = <super> KEY_I
# Rules ────────────────────────────────────────────────────────────────────────
# Example configuration:
#
[window-rules]
transparent_emacs = on created if app_id is "emacs" then set alpha 0.9
move_emacs = on created if app_id is "emacs" then assign_workspace 1 0
maximize_emacs = on created if app_id is "emacs" then maximize
maximize_firefox = on created if app_id is "Firefox" then maximize
move_firefox = on created if app_id is "Firefox" then assign_workspace 1 0
move_qutebrowser = on created if app_id is "org.qutebrowser.qutebrowser" then assign_workspace 1 0
proper_discord = on created if app_id is "discord" then start_on_output "DP-1"
#
# You can get the properties of your applications with the following command:
# $ WAYLAND_DEBUG=1 alacritty 2>&1 | kak
#
# See Window rules for a complete reference.
# https://github.com/WayfireWM/wayfire/wiki/Configuration#window-rules