#KEYBOARD SHORTCUTS # close active window Alt+F4 # drag window Super+LB # zoom screen Super+Scroll # change opacity Super+Alt+Scroll # rotate windows Super+Ctrl+RB # fisheye Super+Ctrl+f # refresh GenMons Super+g # cube Ctrl+Alt+LB # expo Super+e # invert colors Super+i # fix systray Super+s 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,fr # xkb_variant = dvorak,bepo # xkb_options = grp:win_space_toggle # # See Input options for a complete reference. # https://github.com/WayfireWM/wayfire/wiki/Configuration#input [input] tap_to_click = true disable_while_typing = true disable_touchpad_while_mouse = false # Output configuration ───────────────────────────────────────────────────────── # Example configuration: # # [output:eDP-1] # mode = 1920x1080@60000 # position = 0,0 # transform = normal # scale = 1.000000 #[output:X11-1] #mode = 1920x1080 # # 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 \ command \ cube \ decoration \ expo \ fast-switcher \ fisheye \ foreign-toplevel \ grid \ gtk-shell \ idle \ invert \ move \ oswitch \ place \ resize \ session-lock \ shortcuts-inhibit \ switcher \ vswitch \ wayfire-shell \ window-rules \ wm-actions \ wobbly \ wrot \ 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 = KEY_Q | KEY_F4 # Workspaces arranged into a grid: 3 × 3. vwidth = 2 vheight = 2 # Prefer client-side decoration or server-side decoration preferred_decoration_mode = client # Mouse bindings ─────────────────────────────────────────────────────────────── # Drag windows by holding down Super and left mouse button. [move] activate = BTN_LEFT # Resize them with right mouse button + Super. [resize] activate = BTN_RIGHT # Zoom in the desktop by scrolling + Super. [zoom] modifier = # Change opacity by scrolling with Super + Alt. [alpha] modifier = # Rotate windows with the mouse. [wrot] activate = BTN_RIGHT # Fisheye effect. [fisheye] toggle = KEY_F [decoration] active_color = \#bfb8b1ff border_size = 1 button_order = minimize maximize close font = "Sans 8" ignore_views = none inactive_color = \#bfb8b1FF title_height = 36 #ignore_views = "app_id is gloobus-preview" # Startup commands ───────────────────────────────────────────────────────────── [autostart] session = xfce4-session # Automatically start background and panel. # Set to false if you want to override the default clients. autostart_wf_shell = true # 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 # # You may also use wf-dock, # which is included in wf-shell but is not enabled by default. # # dock = wf-dock # Output configuration # https://wayland.emersion.fr/kanshi/ #outputs = kanshi # Notifications # https://wayland.emersion.fr/mako/ #notifications = mako # Screen color temperature # https://sr.ht/~kennylevinsen/wlsunset/ #gamma = wlsunset # Idle configuration # https://github.com/swaywm/swayidle # https://github.com/swaywm/swaylock #idle = swayidle -w before-sleep "swaylock --image /usr/share/backgrounds/xfce/AbstractCube.jpg" idle = swayidle -w \ timeout 300 "swaylock --image /usr/share/backgrounds/xfce/AbstractCube.jpg" \ before-sleep "swaylock --image /usr/share/backgrounds/xfce/AbstractCube.jpg" # XDG desktop portal # Needed by some GTK applications portal = /usr/libexec/xdg-desktop-portal # Example configuration: # [idle] # toggle = KEY_Z screensaver_timeout = 300 dpms_timeout = 600 # # 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. [session-lock] # Applications ───────────────────────────────────────────────────────────────── [command] # mpc binding_mpc_play = KEY_SLASH command_mpc_play = mpc toggle binding_mpc_forward = KEY_DOT command_mpc_forward = mpc next binding_mpc_back = KEY_COMMA command_mpc_back = mpc prev # Start a terminal # https://github.com/alacritty/alacritty binding_terminal = KEY_T command_terminal = xfce4-terminal # Refresh Genmons binding_genmon = KEY_G command_genmon = genmonRefresh # 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 = KEY_F2 command_launcher = xfce4-appfinder --collapsed binding_launcher2 = command_launcher2 = xfce4-popup-applicationsmenu # Screen locker # https://github.com/swaywm/swaylock binding_lock = KEY_L command_lock = xflock4 # Logout # https://github.com/ArtsyMacaw/wlogout binding_logout = KEY_ESC command_logout = xfce4-session-logout # 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 = KEY_PRINT #command_screenshot_interactive = slurp | grim -g - $(date '+%F_%T').webp # Volume controls # https://alsa-project.org repeatable_binding_volume_up = KEY_VOLUMEUP command_volume_up = pactl set-sink-volume @DEFAULT_SINK@ +10% repeatable_binding_volume_down = KEY_VOLUMEDOWN command_volume_down = pactl set-sink-volume @DEFAULT_SINK@ -10% #binding_mute = KEY_MUTE #command_mute = amixer set Master toggle # Screen brightness # https://haikarainen.github.io/light/ repeatable_binding_light_up = KEY_BRIGHTNESSUP command_light_up = light -A 5 repeatable_binding_light_down = KEY_BRIGHTNESSDOWN command_light_down = light -U 5 # restart systray binding_systray = KEY_S command_systray = pkill -HUP -f libsystray # Windows ────────────────────────────────────────────────────────────────────── # Actions related to window management functionalities. # # Example configuration: # # [wm-actions] # toggle_fullscreen = KEY_F # toggle_always_on_top = KEY_X # toggle_sticky = 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 = KEY_KP1 slot_b = KEY_KP2 slot_br = KEY_KP3 slot_l = KEY_LEFT | KEY_KP4 slot_c = KEY_UP | KEY_KP5 slot_r = KEY_RIGHT | KEY_KP6 slot_tl = KEY_KP7 slot_t = KEY_KP8 slot_tr = KEY_KP9 # Restore default. restore = KEY_DOWN | KEY_KP0 # Change active window with an animation. [switcher] next_view = KEY_TAB prev_view = KEY_TAB # Simple active window switcher. [fast-switcher] activate = KEY_ESC # Workspaces ─────────────────────────────────────────────────────────────────── # Switch to workspace. [vswitch] binding_left = KEY_LEFT binding_down = KEY_DOWN binding_up = KEY_UP binding_right = KEY_RIGHT # Move the focused window with the same key-bindings, but add Shift. with_win_left = KEY_LEFT with_win_down = KEY_DOWN with_win_up = KEY_UP with_win_right = KEY_RIGHT # Show the current workspace row as a cube. [cube] activate = BTN_LEFT # Switch to the next or previous workspace. rotate_left = KEY_H rotate_right = KEY_L # Show an overview of all workspaces. [expo] toggle = KEY_E # 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 # Outputs ────────────────────────────────────────────────────────────────────── # Change focused output. [oswitch] # Switch to the next output. next_output = KEY_O # Same with the window. next_output_with_win = KEY_O # Invert the colors of the whole output. [invert] toggle = KEY_I # Send toggle menu event. [wayfire-shell] toggle_menu = # Rules ──────────────────────────────────────────────────────────────────────── # Example configuration: # # [window-rules] # maximize_alacritty = on created if app_id is "Alacritty" then maximize # # 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 # Workarounds ────────────────────────────────────────────────────────────────── [workarounds] use_external_output_configuration = true